توسعه ویژگی‌محور

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

توسعه‌ی روند طراحی محور[ویرایش]

در ترجمه‌ی ویکی‌پدیا، دانشنامه آزاد، توسعه ویژگی محور(FDD)، یک فرایند توسعه نرم‌افزار تکرارشونده و افزایشی می‌باشد. این مورد یکی از از روش‌های بسیار راحت یا سریع، برای توسعه نرم‌افزار است. اف دی دی، تعدادی از صنعت‌های به رسمیت شناخته‌شده را با بهترین شیوه به یک کل منسجم متصل می‌کند. این شیوه‌ها، همه از عملکرد چشم‌انداز مشتری‌محوری تبعیت می‌کنند. هدف اصلی آن، ارائه محسوس با روش زمانی استفاده از نرم‌افزار به صورت متناوب می‌باشد.

تاریخچه[ویرایش]

اف دی دی ابتدا توسط جف دلوکا جهت پاسخگویی به نیازهای ویژه از پروژه نرم‌افزار توسعه(۵۰ ماه، ۵۰ شخص) در یک بانک بزرگ سنگاپور در سال ۱۹۹۷، ابداع شد. جف دلوکا پنج فرایندی که روند توسعه‌ی یک مدل کلی و فهرست آن، برنامه‌ریزی، طراحی، ساخت و ویژگی‌های آن را پوشش می‌دهد، ارائه می‌نماید. اولین فرایند، به شدت تحت تأثیر روند مدل‌سازی پیتر کود می‌باشد. فرایند دوم شامل ایده‌های پیتر کود با استفاده از لیست ویژگی‌هایی برای مدیریت الزامات عملکردی و توسعه‌ی وظایف، می‌باشد. فرایندهای دیگر و ترکیب دیگر فرایندها و تبدیل آن به یک کل منسجم، نتیجه‌ی تجربه جف دلوکا می‌باشد تا استفاده موفقیت‌آمیز بر روی پروژه سنگاپور، چندین اجرا برای اف دی دی وجود داشته است.

شرح اف دی دی برای اولین بار در جهان، در فصل ۶ کتاب "مدلینگ در رنگ با یو ام ال جاواً در سال ۱۹۹۹ توسط پیتر کود، اریک لوفور و جف دلوکا، معرفی شد. سپس در کتاب‌های استیفن پالمر و مک فلشینگ با عنوان "راهنمای عملی برای پیشرفت توسعه محور"، که در سال ۲۰۰۲ منتشر شد، که جدا از کتاب مدلینگ جاوا، تعریف جدیدی از اف دی دی داده شده است.

روند اصلی و نهایی اف دی دی را می‌توان در وب‌سایت جف دلوکا و در زیر مجموعه‌ی مقالات، جستجو کرد. هم‌چنین وب‌سایتی عمومی جهت یادگیری بیشتر راجع به اف دی دی، پرسش سوالات و تجربه‌ها و بحث راجع به روندهای خودشان، وجود دارد.

بررسی اجمالی[ویرایش]

اف دی دی یک روند تکرار کوتاه و مدل محور است که شامل پنج فعالیت اساسی می‌شود. برای گزارش دقیق و پیگیری پروژه توسعه نرم‌افزار، نقاط ضعف که نشانه‌های پیشرفت در هر یک از ویزگی‌ها تعریف شده می‌باشد، مشخص شده است. این بخش یک بررسی اجمالی در سطح بالا از فعالیت‌ها را گزارش می‌دهد. در شکل سمت راست، روند متا برای این فعالیت‌ها نمایش داده شده است. در طول دو فعالیت پی در پی اولیه، شکل مدل کلی ایجاد شده است. سه فعالیت نهایی برای هر ویژگی تکرار می‌شود. برای کسب اطلاعات بیشتر در مورد زیرفعالیت‌های فردی، به جدول 1 نگاه بیندازید (ارائه شده از شرح روند توسعه در قسمت مقاله در وب‌سایت جف دلوکا). ایده‌های این فعالیت در جد. ل 2، شرح داده شده است.

توسعه مدل جامع[ویرایش]

پروژه اف دی دی، با خرید در سطح بالا از محدوده سیستم و متن آن شروع می‌شود. قدم بعد، ارائه‌ی مدل‌های دقیق با جزئیات برای هر محدوده توسط گروه‌های کوچک ایجاد شده و بررسی دقیق آن‌ها می‌باشد. یکی از مدل‌های ارائه شده یا ترکیبی از آن‌ها برای تبدیل شدن به مدل برای هر محدوده از این دامنه، انتخاب شده است. مدل محدوده این دامنه به تدریج به یک مدل کلی ادغام می‌شود.

ساخت لیستی از طرح‌ها[ویرایش]

اطلاعات در طول مدل‌سازی اولیه برای معرفی یک لیست از طرح‌ها، جمع‌آوری شده است. محدوده موضوع هریک شامل فعالیت‌های کسب‌وکار و مراحل فعالیت پایه‌ای توسط تجزیه کاربردی محدوده مربوط به موضوع برای لیست طبقه‌بندی شده در طرح می‌باشد. طرح‌ها در این رابطه، اجزای کوچکتر عملکرد مشتری محور بیان شده در فرم می‌باشند که هریک شامل عملکرد، نتیجه و کالا می‌شوند. به عنوان مثال مجموع فروش یا اعتبارسنجی رمز عبور یک کاربر. تکمیل طرح‌ها نباید بیش از دو هفنه زمان ببرند، بلکه باید به اجزای کوچکتر تقسیم شوند.

برنامه‌ریزی توسط طرح[ویرایش]

بعد از تکمیل لیست طرح، قدم بعد تولید برنامه توسعه می‌باشد. اختصاص مالکیت در طرح‌ها (یا مجموعه طرح‌ها) به عنوان روندی برای برنامه‌نویسان.

طراحی بر اساس راهکارها[ویرایش]

برای هریک از راهکارها یک بسته تولید شده است. یک برنامه‌نویس ارشد، یک گروه از طرح‌ها را که در طی دو هفته توسعه یافته است را انتخاب می‌کند. همراه با مکاتبه با صاحبان کلاس مربوطه، برنامه‌نویس ارشد برای هر طرح و تصفیه مدل کلی، نمودارهای متوالی دقیقی را بیرون می‌کشد. کلاس و پیش‌درآمد مکتوب شده است و در نهایت یک بازرسی از طراحی برگزار می‌گردد.

ساخت بر اساس طرح[ویرایش]

پس از فائق آمدن در بازرسی طراحی برای تولید فعالیت طراحی، عملکرد مشتری محور برنامه‌ریزی می‌شود. هریک از صاحبان کلاس‌ها، برنامه‌نویسی کلاس‌هایشان را توسعه می‌دهند. بعد از بازرسی برنامه‌نویس‌ها و آزمون واحدها، طرح تکمیل شده به مرحله‌ی ساخت اصلی راه می‌یابد.

نقاط عطف[ویرایش]

از آن‌جا که طرح‌ها کوچک هستند، تکمیل یک طرح، نسبتا کار کوچکی به حساب می‌آید. برای گزارش دقیق پیگیری پروژه توسعه نرم افزار، مشخص نمودن روند ساخته شده در هر طرح مهم می‌باشد؛ بنابراین اف دی دی تعریفی از 6 نقطه عطف در هر طرح می‌باشد که به تدریج تکمیل می‌شوند. سه نقطه عطف اولیه در طول فعالیت طراحی و سه مورد دیگر در طول ساخت آن تکمیل می‌شوند. برای کمک به ردیابی این روند، درصد کاملی به هر نقطه عطف اختصاص داده شده است. زمانی‌که برنامه‌نویسی برای یک طرح آغاز می‌شود، 44 درصد تکمیل شده می‌باشد (دامنه خرید 1 درصد، طراحی 40 درصد، بازرسی از طراحی 3 درصد؛ در مجموع 44 درصد).

بهترین شیوه ساخت[ویرایش]

توسعه روند طرح که روی مجموعه‌ای از بهترین شیوه ساخت مهندسی نرم‌افزار ساخته شده است، همه در یک چشم‌انداز طراحی مشتری محور هدف‌گذاری شده‌اند.

مدل‌سازی دامنه کالا: مدل‌سازی دامنه کالا متشکل از کاوش و شرح دامنه حل مشکل می‌باشد و نتیجه مدل محدوده کالا یک چارچوب کلی که به طرح اضافه می‌شود را فراهم می‌نماید.

توسعه بر اساس طرح: هر عملکرد بیش از حد پیچیده است که بتوان در طول دو هفته اجرا شود؛ بنابراین باید به اجزای کوچکتر تقسیم شوند تا هر زیرمشکل برای تبدیل به یک طرح کافی باشد. این روند ارائه‌ی عملکرد صحیح و گسترش ویرایش سیستم را آسانتر می‌کند.

کلاس‌های فردی مالکیت (برنامه‌نویسی): کلاس‌های فردی مالکیت که به معنای بخش‌های مختلف یا گروهی از برنامه‌نویسان که به یک مالک اختصاص داده می‌شود، می‌باشند. مالک، در برابر ثبات، عملکرد و یکپارچگی کلاس، مسئول می‌باشد.

تیم طراحی: یک تیم طراحی، تیمی است کوچک و پویا که فعالیت‌های کوچک را توسعه می‌دهد. با انجام این کار، ذهن‌های متعدد همیشه برای تصمیم راجع به هر طرح آماده می‌باشد و گزینه‌های مختلف همیشه قبل از انتخاب ارزیابی می‌شوند.

بازرسی: بازرسی‌ها برای اطمینان از طراحی و برنامه‌نویسی با کیفیت خوب در درجه اول با تشخیص نقص‌های آن‌ها انجام می‌گیرد.

مدیریت شکل‌گیری: میریت شکل‌گیری کمک می‌کند تا تیم طراحی با شناسایی منبع برنامه‌نویسی برای همه‌ی طرح‌ها که در تاریخ مشخص انجام شده‌اند و برای حفظ سابقه‌ی تغییرات برای کلاس‌ها، آن‌ها را ارتقا می‌دهند.

ساخت منظم: ساخت منظم این اطمینان را ایجاد می‌کند که همیشه یک سیستم به روز برای نشان دادن و مشخص نمودن خطاهای منابع برنامه‌نویسی برای طرح‌های اولیه به مشتریان، وجود دارد.

چشم‌انداز روند و نتایج: با پیشرفت‌های مکرر، مناسب و گزارش دقیق در تمامی سطوح داخلی و خارجی پروژه، بر اساس کار تکمیل شده، مدیران در اداره کردن صحیح پروژه یاری می‌شوند.

متامدل[ویرایش]

جدول۲- مدل داده‌ها برای اف دی دی

متامدل به تجسم هر دو فرایند و داده‌های یک روش کمک می‌کند تا این روش‌ها بتوانند مقایسه شوند و اجزای این روش بتوانند در روشی مهندسی به راحتی دوباره استفاده شوند. مزیت این روش، آن است که واضح، جمع‌وجور و مطابق با استانداردهای یو ام ال می‌باشد.

در سمت چپ مدل، ابرداده به تصویر کشیده شده است. پنج فعالیت اساسی درگیر در یک پروژه توسعه نرم‌افزار با استفاده از اف دی دی نشان داده می‌شود. فعالیت‌ها همه شامل زیرفعالیت‌هایی که مطابق با زیرفعالیت‌های موجود در روند شرح اف دی دی در وب‌سایت جف دلوکا، می‌باشند. سمت راست مدل، ایده‌های طرح را نشان می‌دهد. این ایده‌ها از فعالیت‌های به تصویر کشیده شده در سمت چپ دیاگرام نشات می‌گیرند. تعریفی از این ایده در جدول ۳، ارائه شده است

ابزار مورد استفاده[ویرایش]

  • تنظیمات موردی: ابزار شرکت‌های تجاری برای توسعه روند طراحی
  • تکنولوژی برتر در برنامه‌نویسی: مجموعه‌ای تجاری از برنامه‌های کاربردی برای توسعه روند

طراحی

  • ابزار اف دی دی: با هدف تولید یک ابزار با منبع باز و حمایت از عبور از سطح

فکر روش توسعه طرح

  • بیننده اف دی دی: ابزاری برای نمایش و چاپ تعداد زیادی پارکینگ

منابع[ویرایش]

1. ^ Coad, P., Lefebvre,E. & De Luca, J. (1999). Java Modeling In Color With UML: Enterprise Components and Process. Prentice Hall International. (ISBN 0-13-011510-X)

2. ^ Palmer, S.R. , & Felsing,J.M. (2002). A Practical Guide to Feature-Driven Development. Prentice Hall. (ISBN 0-13-067615-2)

پیوند به بیرون[ویرایش]