موضوع مقاله: توسعه ویژگی‌محور | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # توسعه ویژگی‌محور | مقدمه: FDD، تعدادی از صنعت‌های به رسمیت شناخته‌شده را با بهترین شیوه به یک کل منسجم متصل می‌کند. | ## بخش 1: توسعه ویژگی‌محور | هدف اصلی آن، ارائه محسوس با روش زمانی استفاده از نرم‌افزار به صورت متناوب می‌باشد. تاریخچه FDD ابتدا توسط جف دلوکا جهت پاسخگویی به نیازهای ویژه از پروژه نرم‌افزار توسعه(۵۰ ماه، ۵۰ شخص) در یک بانک بزرگ سنگاپور در سال ۱۹۹۷ ابداع شد. جف دلوکا پنج فرایندی که روند توسعهٔ یک مدل کلی و فهرست آن، برنامه‌ریزی، طراحی، ساخت و ویژگی‌های آن را پوشش می‌دهد، ارائه می‌نماید. فرایند دوم شامل ایده‌های پیتر کود با استفاده از لیست ویژگی‌هایی برای مدیریت الزامات عملکردی و توسعهٔ وظایف، می‌باشد. فرایندهای دیگر و ترکیب دیگر فرایندها و تبدیل آن به یک کل منسجم، نتیجهٔ تجربه جف دلوکا می‌باشد. تا استفاده موفقیت‌آمیز بر روی پروژه سنگاپور، چندین اجرا برای FDD وجود داشته‌است. شرح FDD برای اولین بار در جهان، در فصل ۶ کتاب "مدلینگ در رنگ با یو ام‌ال جاواً در سال ۱۹۹۹ توسط پیتر کود، اریک لوفور و جف دلوکا، معرفی شد. سپس در کتاب‌های استیفن پالمر و مک فلشینگ با عنوان "راهنمای عملی برای پیشرفت توسعه محور"، که در سال ۲۰۰۲ منتشر شد، که جدا از کتاب مدلینگ جاوا، تعریف جدیدی از اف دی دی داده شده‌است. روند اصلی و نهایی FDD را می‌توان در وب‌سایت جف دلوکا و در زیر مجموعهٔ مقالات، جستجو کرد. هم‌چنین وب‌سایتی عمومی جهت یادگیری بیشتر راجع به FDD، پرسش سوالات و تجربه‌ها و بحث راجع به روندهای خودشان، وجود دارد. بررسی اجمالی FDD یک روند تکرار کوتاه و مدل محور است که شامل پنج فعالیت اساسی می‌باشد. برای گزارش دقیق و پیگیری پروژه توسعه نرم‌افزار، نقاط ضعف که نشانه‌های پیشرفت در هر یک از ویژگی‌ها تعریف شده می‌باشد، مشخص شده‌است. توسعه مدل جامع پروژه FDD، با خرید در سطح بالا از محدوده سیستم و متن آن شروع می‌شود. | ## بخش 2: توسعه ویژگی‌محور | قدم بعد، ارائهٔ مدل‌های دقیق با جزئیات برای هر محدوده توسط گروه‌های کوچک ایجاد شده و بررسی دقیق آن‌ها می‌باشد. یکی از مدل‌های ارائه شده یا ترکیبی از آن‌ها برای تبدیل شدن به مدل برای هر محدوده از این دامنه، انتخاب شده‌است. ساخت لیستی از طرح‌ها اطلاعات در طول مدل‌سازی اولیه برای معرفی یک لیست از طرح‌ها، جمع‌آوری شده است. محدوده موضوع هریک شامل فعالیت‌های کسب‌وکار و مراحل فعالیت پایه‌ای توسط تجزیه کاربردی محدوده مربوط به موضوع برای لیست طبقه‌بندی شده در طرح می‌باشد. طرح‌ها در این رابطه، اجزای کوچکتر عملکرد مشتری محور بیان شده در فرم می‌باشند که هریک شامل عملکرد، نتیجه و کالا می‌شوند. تکمیل طرح‌ها نباید بیش از دو هفنه زمان ببرند، بلکه باید به اجزای کوچکتر تقسیم شوند. یک برنامه‌نویس ارشد، یک گروه از طرح‌ها را که در طی دو هفته توسعه یافته‌است را انتخاب می‌کند. همراه با مکاتبه با صاحبان کلاس مربوطه، برنامه‌نویس ارشد برای هر طرح و تصفیه مدل کلی، نمودارهای متوالی دقیقی را بیرون می‌کشد. ساخت بر اساس طرح پس از فائق آمدن در بازرسی طراحی برای تولید فعالیت طراحی، عملکرد مشتری محور برنامه‌ریزی می‌شود. بعد از بازرسی برنامه‌نویس‌ها و آزمون واحدها، طرح تکمیل شده به مرحلهٔ ساخت اصلی راه می‌یابد. نقاط عطف از آن‌جا که طرح‌ها کوچک هستند، تکمیل یک طرح، نسبتاً کار کوچکی به حساب می‌آید. برای گزارش دقیق پیگیری پروژه توسعه نرم‌افزار، مشخص نمودن روند ساخته شده در هر طرح مهم می‌باشد؛ بنابراین FDD تعریفی از ۶ نقطه عطف در هر طرح می‌باشد که به تدریج تکمیل می‌شوند. سه نقطه عطف اولیه در طول فعالیت طراحی و سه مورد دیگر در طول ساخت آن تکمیل می‌شوند. | ## بخش 3: توسعه ویژگی‌محور | زمانی‌که برنامه‌نویسی برای یک طرح آغاز می‌شود، ۴۴ درصد تکمیل شده می‌باشد (دامنه خرید ۱ درصد، طراحی ۴۰ درصد، بازرسی از طراحی ۳ درصد؛ در مجموع ۴۴ درصد). بهترین شیوه ساخت توسعه روند طرح که روی مجموعه‌ای از بهترین شیوه ساخت مهندسی نرم‌افزار ساخته شده‌است، همه در یک چشم‌انداز طراحی مشتری محور هدف‌گذاری شده‌اند. مدل‌سازی دامنه کالا: مدل‌سازی دامنه کالا متشکل از کاوش و شرح دامنه حل مشکل می‌باشد. توسعه بر اساس طرح: هر عملکرد بیش از حد پیچیده‌است که بتوان در طول دو هفته اجرا شود؛ بنابراین باید به اجزای کوچکتر تقسیم شوند تا هر زیرمشکل برای تبدیل به یک طرح کافی باشد. کلاس‌های فردی مالکیت (برنامه‌نویسی): کلاس‌های فردی مالکیت که به معنای بخش‌های مختلف یا گروهی از برنامه‌نویسان که به یک مالک اختصاص داده می‌شود، می‌باشند. تیم طراحی: یک تیم طراحی، تیمی است کوچک و پویا که فعالیت‌های کوچک را توسعه می‌دهد. با انجام این کار، ذهن‌های متعدد همیشه برای تصمیم راجع به هر طرح آماده می‌باشد و گزینه‌های مختلف همیشه قبل از انتخاب ارزیابی می‌شوند. بازرسی: بازرسی‌ها برای اطمینان از طراحی و برنامه‌نویسی با کیفیت خوب در درجه اول با تشخیص نقص‌های آن‌ها انجام می‌گیرد. مدیریت شکل‌گیری: میریت شکل‌گیری کمک می‌کند تا تیم طراحی با شناسایی منبع برنامه‌نویسی برای همهٔ طرح‌ها که در تاریخ مشخص انجام شده‌اند و برای حفظ سابقهٔ تغییرات برای کلاس‌ها، آن‌ها را ارتقا می‌دهند. چشم‌انداز روند و نتایج: با پیشرفت‌های مکرر، مناسب و گزارش دقیق در تمامی سطوح داخلی و خارجی پروژه، بر اساس کار تکمیل شده، مدیران در اداره کردن صحیح پروژه یاری می‌شوند. متامدل جدول۲- مدل داده‌ها برای اف دی دی متامدل به تجسم هر دو فرایند و داده‌های یک روش کمک می‌کند تا این روش‌ها بتوانند مقایسه شوند و اجزای این روش بتوانند در روشی مهندسی به راحتی دوباره استفاده شوند. مزیت این روش، آن است که واضح، جمع‌وجور و مطابق با استانداردهای یو ام‌ال می‌باشد. پنج فعالیت اساسی درگیر در یک پروژه توسعه نرم‌افزار با استفاده از اف دی دی نشان داده می‌شود. | ## جمع‌بندی | فعالیت‌ها همه شامل زیرفعالیت‌هایی که مطابق با زیرفعالیت‌های موجود در روند شرح اف دی دی در وب‌سایت جف دلوکا، می‌باشند.