مقدمه:
فرایند یکپارچه منطقی (RUP) یک اسلوب سیستم های اطلاعاتی است که امروزه در وسیعترین حالت استفاده میشود. طراحان اصلی آن سه نفر هستند به نامهای ایوار یاکوبس، جرادی بوچ و جیمز رامبو، که همچنین زبان نمونهسازی یکپارچه را هم طرح کردهاند. این فرایند اساساً مبتنی بر خط مشی (روش) اریکسون، ابجکتوری و خط مشی منطقی (عقلانی) است که در سال 1995 با فرایند ابجکتوری منطقی ترکیب شدند. زبان مدل سازی (نمونهسازی) یکپارچه به همراه تجربهای از شرکت Rational، فرایند یکپارچه منطقی را تشکیل داد.
فرایند یکپارچه یک فرایند توسعه نرم افزاری است که مجموعهای است از فعالیتهای مورد نیاز برای تبدیل نیازمندیهای کاربران به یک سیستم نرمافزاری، اما به عنوان یک چارچوب کلی فرایند هم دیده میشود که میتواند برای مقاصد مختلف، اختصاصی شود.
سه وجه فرایند یکپارچه عبارتند از:
- حالت کاربری(استفاده)- مورد - حالت متمرکز بر ساختار
- و افزایشی
مراحل اصلی برای یک پروژه RUP با توجه به [2 ] عبارتند از:
گرد هم آورید تیم (گروه) را
تصمیم بگیرید که کدام سیستم بنا خواهد شد (ظاهراً انتخاب دیگری به جز بنای یک سیستم وجود ندارد)؛
یک مدل استفاده- مورد و یک مدل اولیه UI را بنا کنید؛
از توسعه های فرایند UML برای بنای یک مدل تحلیل هدف استفاده کنید؛
از جنبههای دیگر متداول UML برای دیاگرام های طراحی، دستهبندی، حالت و مرحله و نظایر اینها استفاده کنید؛
در حین اختصاص دستهها به واحدها و بستهها، به معماری آنها توجه دقیق کنید؛
طرح خود را به وسیله مدل استفاده- مورد آزمایش کنید این کار نتایج عالی را خواهد داد؛
طرح را به عمل درآورید.
عنصر1: وضعیت مسئله:
این روش شناسی به مفهوم، مرتبط است. این امر به خصوص در دو جریان کاری اصلی یعنی نیازمندیها و تحلیل، که مهمترین عوامل در فاز اول (شروع، جزئیات) هستند، دیده میشود اما همه اینها در طول فرایند قرار دارند به خاطر طبیعت ذاتی آن.
همانگونه که گفته شد: فرایند یکپارچه یک فرایند پیش رونده از طریق سیستم استفاده- مورد میباشد. یعنی تمام فرایند توسط مسیری که کاربر با سیستم تعامل میکند، کنترل میشود. هر مدل ایجاد شده میتواند نشانی از یک مورد استفاده را داشته باشد. اینکه فرایند یکپارچه بر معماری متمرکز است بدین معناست که از ابتدای شروع فرایند تاکید شدیدی بر معماری سیستمهای اطلاعاتی وجود دارد. این شامل سختافزار و چارچوبهای مورد استفاده و نیز گسترش و زبانهای برنامهنویسی هم میشود.
علاوه براین دو مفهوم اختیاری در جریان کاری «نیازمندیها» وجود دارد که تسلط یافتن بر محیط کاری تجاری را پشتیبانی میکند:
مدل قلمرو: یک دیاگرام دسته UML که مهمترین انواع اهداف را در زمینه سیستم، به دست میآورد.
مدل تجاری: تکنیک درک فرایندهای تجاری یک سازمان.
این مدل یک مدل تجاری را شبیه مدل کاربری- مورد برای سیستم نرمافزاری از منظر استفاده (کاربری) و طرحهای کلی ارائه میکند که چگونه برای کاربران خود، ارزش (بهاء) میآفریند. همچنین یک مدل هدف تجاری دارد که نهادهای تجاری را همانند مدل قلمرو، تشریح میکند.
اما جدا از آنچه درباره وضعیت مسئله گفته شد، این یک روش پوزیتوسیستمی (مثبت گرایی) است. به نظر میرسد که فقط با مشخصات سیستم مرتبط است. RUP هیچ چیزی برای گفتن درباره نیازمندیهای تجاری یا مدلسازی فرایند تجارت ندارد به جز اینکه موارد کاربری کافی هستند.
عنصر2: روش شناسی کاربر (حل کننده مسئله):
RUP، متدولوژی کاربر را با مفهوم کارگر (ایجاد کننده) استفاده میکند.
ارزیابی ایجاد بنای ذهنی: حل کنندگان مسئله و نقشهای مختلف آنان، کارگران (ایجاد کنندگان) هستند. هر کارگر نوعی انتزاع انسانی را به همراه قابلیتهای مورد نیاز در مهندسی نرمافزار، از خود نشان میدهد. وقتی یک پروژه کارمندان خود را جذب میکند، یک کارگر از خود اطلاعات و قابلیتهایی را نشان میدهد که یک نفر نیاز دارد برای انجام آن کار، همانطور که آن کارگر در این پروژه نیازمند آن است. در روششناسی، کارگر در ابتدا در قالب مسئولیتش توصیف میشود.
سطوح علاقه بنای ذهنی: آنچه که یک کابر باید بداند، بیشتر به نقش او در انجام فرایند بستگی دارد یعنی آنچه که او هست. هر فرد انجام دهنده کار (کارگر) باید اطلاعاتی را از UML، تصویر خوبی از فرایند کلی و مسئولیت خاص وی در این فرایند داشته باشد. عموماً انجام دهندگان کار عبارتند از:
تحلیل گران سیستم و مشخص کنندگان استفاده- مورد: انجام دهندگان کار با بالاترین سطح مهارتها، آنان دارای مهارت در تحلیل فرایند تجارت و سازمانها و دارای تجربه و قدرت تحلیل خوبی هستند.
طراحان واسطه بین کاربر و ابزار: اینان دارای مهارتهای فنی و گرافیکی خوبی هستند.
آرشیتکت: آرشیتکت (معمار) هم نیازمند مهارت است اما بیشتر از جنبه فنی. او همچنین نیازمند درک موارد استفاده جهت انجام اهداف خود میباشد.
مهندس استفاده- مورد، مهندس اجزاء، ایجاد کننده سیستم: اینها در اصل نیاز به مهارتهای فنی دارند چون فقط بر اساس موارد- استفاده، طراحی و اجراء میکنند.
طراح آزمایش: دارای مهارتهای فنی بالا همچنین درک خوب از فرایندها
آزمایش کننده سیستم: مهارتهای فنی
عنصر سوم، مرحله اول: فهم وضعیت ارتباط
این مرحله ارتباط کاملی با جریان کار هستهای یعنی کسب نیازمندیها دارد و نقاط شروع مختلفی را مانند مدل تجاری، یک مدل قلمرو یا یک مشخصه نیازمندی کامل و مفصل از مشتری فراهم میکند. بعد از آن چند مرحله دیگر به انجام میرسند. در ابتدا یک لیست جنبههای مختلف از موضوع ایجاد میشود که در حین فرایند، بخاطر وسیعتر یا کوچکتر میشود. ثانیاً کاربر باید فهم و درکی از زمینه و متن سیستم داشته باشد. برای بیان زمینه و متن یک سیستم، دو روش وجود دارند که عبارتند از مدل تجاری و مدل قلمرو. نام نهادن اهداف هم برای ساختن فرهنگی از عبارات استفاده میشود که به ارتباط کمک میکند. سومین مورد، کسب نیازمندیهای وظیفهای به کمک “استفاده- مورد“ هاست. نهایتاً نیازمندیهای غیروظیفه هم کسب میشوند. این مورد در طبیعت تکرار گونه فرایند، تاکید زیادی بر بازتاب-در- عمل دارد. نیازمندیها و مرزهای سیستم به همراه هر تکرار مجدداً ارزیابی میشوند.
تکنیکها و مدلهای بازرسی:
همانطوری که در بالا گفته شد لیست جنبهها توسعه مییابد، که ممکن است شامل وضعیت، هزینه تخمینی و اولویت باشد. این امر در مدیریت نیازها در خلال فرایند کمک میکند. در عنصر1 مدل تجاری و مدل قلمرو توضیح داده شدند که میتوانند برای فهم و درک زمینه سیستم و کسب نیازها به کار روند. هنوز در جریان کاری “نیازمندیها“ مدلهای استفاده- مورد وجود دارند که توصیف یک تشخیص به کار میروند. آنها تشریح میکنند که چگونه یک کاربر با سیستم کار میکند. هر نوعی از کاربران به عنوان یک یا بیشتر نقش، عمل میکند. هر سیستم خارجی که این سیستم با آن در تعادل است، هم به عنوان ایفا کننده یک نقش عمل میکند. جریان رویدادها برای هر مورد استفاده (use- Case) میتواند به عنوان یک توصیف جداگانه از مراحل عمل مورد استفادهها به کار آید. همچنین دیاگرامهای وضعیت میتوانند برای توصیف یک مورد- استفاده به کار گرفته شوند.