فرایند یکپارچۀ منطقی (قسمت چهارم)
در قسمت قبلی این مقاله دیدیم که چگونه میتوان فرایند را در دو بُعد مدلسازی کرد و چرخۀ توسعۀ فرایند یکپارچۀ منطقی از 4 فاز تکوین، جزئیات ماهرانه، ساخت و گذار تشکیل شده است. پس از اینکه مرحلۀ تکوین (Inception Phase) را بررسی کردیم، در ادامه به مرحلۀ جزئیات ماهرانه (Elaboration Phase) میپردازیم.
مایلستون: معماری چرخه حیات
در انتهای فاز تکوین (یا Inception) اولین مایلستون مهم پروژه قرار دارد: مایلستون اهداف چرخۀ حیات [1]. معیار ارزیابی برای فاز تکوین به قرار زیر است:
- توافق ذینفعان در تعریف محدوده و تخمینها در خصوص هزینه/زمانبندی؛
- درک نیازمندیها؛ که تداوم موارد استفادۀ اولیه، گواه بر آن است؛
- اعتبار تخمینهای زمانبندی/هزینه، اولویتها، ریسکها، و فرایند توسعه؛
- عمق و گسترۀ هرکدام از پیشنمونههای توسعهیافتۀ معماری؛
- هزینههای واقعی در مقابل هزینههای محاسبهشده در برنامه.
اگر پروژه نتواند از این مایلستون عبور کند، ممکن است که لغو شود یا به بازبینی زیادی نیاز داشته باشد.
فاز جزئیات ماهرانه (Elaboration Phase)
هدف از فاز جزئیات ماهرانه (یا Elaboration Phase) تحلیل محدودۀ مشکل، ایجاد یک مبنای استوار معماری، توسعۀ برنامۀ پروژه و حذف مؤلفههای مخاطرهانگیز پروژه است. برای تحقق این اهداف، باید نسبت به سیستم با دیدِ «وسیع و کمعمق» بنگرید. تصمیمات مربوط به معماری باید با درک کل سیستم اتخاذ شوند؛ درک سیستم مشتمل از درک محدودۀ آن، کارکرد اصلی، و نیازمندیهای غیرکارکردی مانند نیازمندیهای اجرایی است.
بهراحتی میتوان اثبات کرد که فاز جزئیات ماهرانه، اصلیترین فاز از این چهار فاز است. در پایان این فاز، «مهندسی» سخت، باید تکمیل شده باشد و پروژه متحمل مهمترین بخش محاسباتی خود میشود: باید تصمیم گرفت که آیا پروژه به فازهای گذار و ساخت وارد شود یا خیر. بهعلاوه برای بیشتر پروژهها، این بخش متناظر با گذار از عملیات متحرک، منعطف و سبک، و کمخطر به عملیات پرخطر و پرهزینه با سکون ذاتی است. درحالیکه فرایند همیشه باید با تغییرات همساز باشد، در فعالیتهای فاز جزئیات ماهرانه، از پایداری کافی معماری، نیازمندیها و برنامهها، و کاهش مکفیِ خطرات اطمینان حاصل میشود؛ بنابراین میتوانید هزینه و زمانبندی را برای تکمیلِ توسعه، پیشبینی و تعیین کنید. این سطح از تداوم [2]، به معنای متناظر بودن و برخورداری از سطحی است که یک سازمان برای عبور به یک فاز ساخت با هزینۀ ثابت لازم دارد.
در فاز جزئیات ماهرانه (Elaboration Phase) پیشنمونۀ قابلاجرایی از معماری، در یک یا تعداد بیشتری از تکرارها، برحسب محدوده، مقیاس، ریسک و بداعتِ پروژه ساخته میشود. در تلاش برای این فاز، حداقل باید موردهای استفاده ضروری که در فاز تکوین (Inception Phase) تشخیص داده شدهاند و عموماً خطرهای پروژه را آشکار میکنند، در نظر گرفته شوند. درحالیکه همیشه هدف، یک پیشنمونۀ (Prototyping) تکاملیافته از یک جزء مرتبط با کیفیت محصول است، در این فاز برای کاهش خطرات معینی مثل مصالحات بین نیازمندیها و طراحی، بررسی امکانپذیری اجزا، یا ارائهها به سرمایهگذاران، مشتریان و کاربران انتهایی، توسعه یک یا تعداد بیشتری از پیشنمونههای توضیحی و یکبار مصرف مستثنا نمیشود.
خروجی فاز جزئیات ماهرانه به قرار زیر است:
- مدل مورداستفاده ( حداقل تا 80 درصد تکمیل)؛ تمام موارد استفاده و بازیگران شناسایی و شرحهای موردهای استفاده بسط داده شدهاند؛
- نیازمندیهای تکمیلی؛ که نمایانگر نیازمندیهای غیرکارکردی و هر نیازمندی بدون مورداستفاده معین است؛
- شرح معماری نرمافزار [3]؛
- یک پیشنمونۀ معماری قابلاجرا؛
- یک فهرست از خطرات بازبینیشده و یک مورد تجاری بازبینیشده؛
- یک برنامۀ توسعه برای کل پروژه، شامل یک برنامۀ پروژه تقریبیتر و کلیتری که تکرارها را و معیار ارزیابی برای هر تکرار نشان میدهد؛
- مورد توسعه بهروزرسانیشده که فرایند به کارگرفتهشده را تعیین میکند؛
- یک کتابچه راهنمایی مقدماتی برای کاربر (اختیاری).
در انتهای فاز جزئیات ماهرانه (Elaboration Phase)، دومین مایلستون مهم پروژه قرار دارد، مایلستون معماری چرخۀ حیات. در این نقطه، محدوده و اهداف سیستم با جزئیات، انتخاب معماری و میزان تفکیک خطرات اصلی بررسی میشود.
معیار ارزیابی اصلی برای فاز جزئیات ماهرانه، شامل جواب به این پرسشها است:
- آیا تصویر محصول پایدار است؟
- آیا معماری پایدار است؟
- آیا در ارائه قابلاجرا، مؤلفههای اصلی ریسک در نظر گرفته شدهاند و بهطور قابلاطمینانی برطرف میشوند؟
- آیا برنامه برای فاز ساخت به میزان کافی از جزئیات و دقت برخوردار است؟ آیا با یک مبنای تخمینی موثقی پشتیبانی میشود؟
- آیا تمام ذینفعان موافقت میکنند که اگر برای توسعۀ کامل سیستم، برنامۀ فعلی با معماری فعلی اجرا شود، میتوان به تصویر فعلی دست یافت؟
- آیا هزینۀ واقعی منابع نسبت به هزینههای محاسبهشده در برنامه قابلقبول است؟
اگر عبور از این مایلستون موفقیتآمیز نباشد، ممکن است که پروژه بینتیجه بماند یا نیاز به بازبینی فراوانی داشته باشد.
آنچه بررسی کردیم:
فرایند یکپارچۀ منطقی چیست؟ (URP قسمت اول)
6 روش مؤثر در فرایند یکپارچۀ منطقی (URP قسمت دوم)
مدلسازی فرایند و فاز اولیۀ فرایند (URP قسمت سوم)
فاز سوم فرایند، فاز ساخت یا Construction است. در قسمت پنجم این مقاله این فاز را بررسی میکنیم.
[1] Lifecycle Objectives Milestone
[2] fidelity
[3] Software Architecture Description