بخشی از مقاله
ارزيابي NIMSAD از فرايند يكپارچه منطقي (RUP)
فهرست1a
• مقدمه
• عنصر1: وضعيت مسئله
• عنصر2: روش شناسي كاربر (حل كننده مشكل يا مسئله)
• عنصر 3، مرحله1: درك وضعيت
• عنصر3، مرحله2: انجام تشخيص
• عنصر 3، مرحله3: تعريف كردن طرح كلي تشخيص
• عنصر3، مرحله4: تعريف كردن مسائل
• عنصر3، مرحله5: استنتاج يك سيستم فكري
• عنصر3، مرحله6: انجام طراحي مصنوعي/منطقي
• عنصر3، مرحله7: انجام طراحي فيزيكي
• عنصر3، مرحله8: اجراي طرح
• عنصر4: ارزيابي
• خلاصه
مقدمه:
فرايند يكپارچه منطقي (RUP) يك اسلوب سيستمهاي اطلاعاتي است كه امروزه در وسيعترين حالت استفاده ميشود. طراحان اصلي آن سه نفر هستند به نامهاي ايوار ياكوبس، جرادي بوچ و جيمز رامبو، كه همچنين زبان نمونهسازي يكپارچه را هم طرح كردهاند. اين فرايند اساساً مبتني بر خط مشي (روش) اريكسون، ابجكتوري و خط مشي منطقي (عقلاني) است كه در سال 1995 با فرايند ابجكتوري منطقي تركيب شدند. زبان مدل سازي (نمونهسازي) يكپارچه به همراه تجربهاي از شركت Rational، فرايند يكپارچه منطقي را تشكيل داد.
فرايند يكپارچه يك فرايند توسعه نرمافزاري است كه مجموعهاي است از فعاليتهاي مورد نياز براي تبديل نيازمنديهاي كاربران به يك سيستم نرمافزاري، اما به عنوان يك چارچوب كلي فرايند هم ديده ميشود كه ميتواند براي مقاصد مختلف، اختصاصي شود.
سه وجه فرايند يكپارچه عبارتند از:
- حالت كاربري(استفاده)- مورد - حالت متمركز بر ساختار
- و افزايشي
مراحل اصلي براي يك پروژه RUP با توجه به [2 ] عبارتند از:
گرد هم آوريد تيم (گروه) را
تصميم بگيريد كه كدام سيستم بنا خواهد شد (ظاهراً انتخاب ديگري به جز بناي يك سيستم وجود ندارد)؛
يك مدل استفاده- مورد و يك مدل اوليه UI را بنا كنيد؛
از توسعههاي فرايند UML براي بناي يك مدل تحليل هدف استفاده كنيد؛
از جنبههاي ديگر متداول UML براي دياگرامهاي طراحي، دستهبندي، حالت و مرحله و نظاير اينها استفاده كنيد؛
در حين اختصاص دستهها به واحدها و بستهها، به معماري آنها توجه دقيق كنيد؛
طرح خود را به وسيله مدل استفاده- مورد آزمايش كنيد اين كار نتايج عالي را خواهد داد؛
طرح را به عمل درآوريد.
عنصر1: وضعيت مسئله:
اين روش شناسي به مفهوم، مرتبط است. اين امر به خصوص در دو جريان كاري اصلي يعني نيازمنديها و تحليل، كه مهمترين عوامل در فاز اول (شروع، جزئيات) هستند، ديده ميشود اما همه اينها در طول فرايند قرار دارند به خاطر طبيعت ذاتي آن.
همانگونه كه گفته شد: فرايند يكپارچه يك فرايند پيش رونده از طريق سيستم استفاده- مورد ميباشد. يعني تمام فرايند توسط مسيري كه كاربر با سيستم تعامل ميكند، كنترل ميشود. هر مدل ايجاد شده ميتواند نشاني از يك مورد استفاده را داشته باشد. اينكه فرايند يكپارچه بر معماري متمركز است بدين معناست كه از ابتداي شروع فرايند تاكيد شديدي بر معماري سيستمهاي اطلاعاتي وجود دارد. اين شامل سختافزار و چارچوبهاي مورد استفاده و نيز گسترش و زبانهاي برنامهنويسي هم ميشود.
علاوه براين دو مفهوم اختياري در جريان كاري «نيازمنديها» وجود دارد كه تسلط يافتن بر محيط كاري تجاري را پشتيباني ميكند:
مدل قلمرو: يك دياگرام دسته UML كه مهمترين انواع اهداف را در زمينه سيستم، به دست ميآورد.
مدل تجاري: تكنيك درك فرايندهاي تجاري يك سازمان.
اين مدل يك مدل تجاري را شبيه مدل كاربري- مورد براي سيستم نرمافزاري از منظر استفاده (كاربري) و طرحهاي كلي ارائه ميكند كه چگونه براي كاربران خود، ارزش (بهاء) ميآفريند. همچنين يك مدل هدف تجاري دارد كه نهادهاي تجاري را همانند مدل قلمرو، تشريح ميكند.
اما جدا از آنچه درباره وضعيت مسئله گفته شد، اين يك روش پوزيتوسيستمي (مثبت گرايي) است. به نظر ميرسد كه فقط با مشخصات سيستم مرتبط است. RUP هيچ چيزي براي گفتن درباره نيازمنديهاي تجاري يا مدلسازي فرايند تجارت ندارد به جز اينكه موارد كاربري كافي هستند.
عنصر2: روش شناسي كاربر (حل كننده مسئله):
RUP، متدولوژي كاربر را با مفهوم كارگر (ايجاد كننده) استفاده ميكند.
ارزيابي ايجاد بناي ذهني: حل كنندگان مسئله و نقشهاي مختلف آنان، كارگران (ايجاد كنندگان) هستند. هر كارگر نوعي انتزاع انساني را به همراه قابليتهاي مورد نياز در مهندسي نرمافزار، از خود نشان ميدهد. وقتي يك پروژه كارمندان خود را جذب ميكند، يك كارگر از خود اطلاعات و قابليتهايي را نشان ميدهد كه يك نفر نياز دارد براي انجام آن كار، همانطور كه آن كارگر در اين پروژه نيازمند آن است. در روششناسي، كارگر در ابتدا در قالب مسئوليتش توصيف ميشود.
سطوح علاقه بناي ذهني: آنچه كه يك كابر بايد بداند، بيشتر به نقش او در انجام فرايند بستگي دارد يعني آنچه كه او هست. هر فرد انجام دهنده
كار (كارگر) بايد اطلاعاتي را از UML، تصوير خوبي از فرايند كلي و مسئوليت خاص وي در اين فرايند داشته باشد. عموماً انجام دهندگان كار عبارتند از:
تحليل گران سيستم و مشخص كنندگان استفاده- مورد: انجام دهندگان كار با بالاترين سطح مهارتها، آنان داراي مهارت در تحليل فرايند تجارت و سازمانها و داراي تجربه و قدرت تحليل خوبي هستند.
طراحان واسطه بين كاربر و ابزار: اينان داراي مهارتهاي فني و گرافيكي خوبي هستند.
آرشيتكت: آرشيتكت (معمار) هم نيازمند مهارت است اما بيشتر از جنبه فني. او همچنين نيازمند درك موارد استفاده جهت انجام اهداف خود ميباشد.
مهندس استفاده- مورد، مهندس اجزاء، ايجاد كننده سيستم: اينها در اصل نياز به مهارتهاي فني دارند چون فقط بر اساس موارد- استفاده، طراحي و اجراء ميكنند.
طراح آزمايش: داراي مهارتهاي فني بالا همچنين درك خوب از فرايندها
آزمايش كننده سيستم: مهارتهاي فني
عنصر سوم، مرحله اول: فهم وضعيت ارتباط
اين مرحله ارتباط كاملي با جريان كار هستهاي يعني كسب نيازمنديها دارد و نقاط شروع مختلفي را مانند مدل تجاري، يك مدل قلمرو يا يك مشخصه نيازمندي كامل و مفصل از مشتري فراهم ميكند. بعد از آن چند مرحله ديگر به انجام ميرسند. در ابتدا يك ليست جنبههاي مختلف از موضوع ايجاد ميشود كه در حين فرايند، بخاطر وسيعتر يا كوچكتر ميشود. ثانياً كاربر بايد فهم و دركي از زمينه و متن سيستم داشته باشد. براي بيان زمينه و متن يك سيستم، دو روش وجود دارند كه عبارتند از مدل تجاري و مدل قلمرو. نام نهادن اهداف هم براي ساختن فرهنگي از عبارات استفاده ميشود كه به ارتباط كمك ميكند. سومين مورد، كسب نيازمنديهاي وظيفهاي به كمك “استفاده- مورد“ هاست. نهايتاً نيازمنديهاي غيروظيفه هم كسب ميشوند. اين مورد در طبيعت تكرار گونه فرايند، تاكيد زيادي بر بازتاب-در- عمل دارد. نيازمنديها و مرزهاي سيستم به همراه هر تكرار مجدداً ارزيابي ميشوند.
تكنيكها و مدلهاي بازرسي:
همانطوري كه در بالا گفته شد ليست جنبهها توسعه مييابد، كه ممكن است شامل وضعيت، هزينه تخميني و اولويت باشد. اين امر در مديريت نيازها در خلال فرايند كمك ميكند. در عنصر1 مدل تجاري و مدل قلمرو توضيح داده شدند كه ميتوانند براي فهم و درك زمينه سيستم و كسب نيازها به كار روند. هنوز در جريان كاري “نيازمنديها“ مدلهاي استفاده- مورد وجود دارند كه توصيف يك تشخيص به كار ميروند. آنها تشريح ميكنند كه چگونه يك كاربر با سيستم كار ميكند. هر نوعي از كاربران به عنوان يك يا بيشتر نقش، عمل ميكند. هر سيستم خارجي كه اين سيستم با آن در تعادل است، هم به عنوان ايفا كننده يك نقش عمل ميكند. جريان رويدادها براي هر مورد استفاده (use- Case) ميتواند به عنوان يك توصيف جداگانه از مراحل عمل مورد استفادهها به كار آيد. همچنين دياگرامهاي وضعيت ميتوانند براي توصيف يك مورد- استفاده به كار گرفته شوند.
عنصر3، مرحله 2:
انجام تشخيص: براي انجام تشخيص RUP از دياگرامهايي كه در جريان كاري نيازمنديها توسعه يافته، استفاده ميكند. آنها در يك سطح مفهومي يا منطقي بيشترند و هيچ چيزي درباره سطح فيزيكي گفته نميشود. RUP بيان ميكند كه نيازمنديهايي ميتوانند وجود داشته باشند كه نميتوانند خودكار (اتومات) شوند و به وسيله يك سيستم اطلاعاتي حل ميشوند.
عنصر3، مرحله3:
RUP حقيقتاً با اين مرحله به دور از جريان كاري نيازمنديها، ارتباط ندارد اما قبلاً تصميمات، وضعيت مطلوب را ساختهاند. هيچ مقايسهاي بين حالت فعلي و حالت مطلوب وجود ندارد. همچنين هيچ گونه پرسش مستقيمي درباره تمايلات و نيازهاي مشتري وجود ندارد اما RUP بيان ميكند كه آنها بايد در كارگاههايي تحليل گران و مشتريان مشاركت ميكنند، تحت مطالعه و كار قرار گيرند.
عنصر3، مرحله4:
تعريف كردن مسئلهها: RUP بر قلمرو سيستمهاي اطلاعاتي تمركز ميكند. مدلسازي تجاري فقط براي زمينه سيستم و نه براي متمايزكردن و شناساندن مسائل در تجارت به كار ميآيد.
عنصر3، مرحله5:
استنتاج يك سيستم فكري (ذهني): جريانهاي اصلي كاري يعني نيازمنديها و تحليل، در اين مرحله استفاده ميشوند. از اين مرحله تاثير زيادي بر فرايند يكپارچه دارد و درباره حالت فعلي و درباره مسائل كمتر ميگويد اما راهنماييهاي مستقيمي دربارهايجاد نيازها و چگونگي به عمل آوردن اين نيازها دارد.
عنصر3، مرحله6: انجام طراحي مفهومي/ منطقي
اين مرحله، جريان كاري طراحي را در سيستم يكپارچه در بر ميگيرد. ورودي اين جريان كاري، مدل تحليلي است و مدل طراحي را ايجاد ميكند كه طرحي از اجراء دارد. اين مرحله از طريق دياگرامهاي دستهاي انجام ميشود. علاوه براين دياگرامهاي تعاملي هم وجود دارند كه مراحل عمل را در حالت استفاده مدلسازي ميكنند. اين ميتواند يك دياگرام همكاري يا يك دياگرام مرحلهاي باشد كه اين دومي بر سفارش به موقع تاكيد ميكند، همه اينها با توصيف متني به نام طراحي جريان رويدادها همراه است. اجراي نيازمنديها هم يك توصيف متني است اما نيازمنديهاي غير وظيفهاي را در اختيار ميگيرد كه بايد هنگام اجرا در خاطر سپرده
شوند. اين سيستم به دو سيستم زير مجموعه تقسيم ميشود و فصل مشتركهاي آنان از هم متمايز ميباشد. آنها در گرههاي متفاوتي در يك مدل آرايش منابع قرار دارند. توصيف معماري نمايي از مدل آرايش منابع است.
براي بعضي از اهداف در مدل، مناسب است كه رفتار از طريق يك دياگرام وضعيت مدلسازي شود كه انتقال به وضعيت متفاوت را در دسته همطراز طراحي خود، توصيف ميكند.
عنصر3، مرحله7: برنامه ريزي براي طراحي فيزيكي
در حقيقت طراحي فيزيكي از طراحي منطقي در فرايند يكپارچه جدا نيست. اين امر از طريق طراحي مستقيم دياگرامهاي دستهبنديها به زبانهاي برنامهريزي مبتني بر هدف محقق خواهد شد. علاوه بر اين، مهندس اجزاء است كه سيستمهاي زير مجموعه را طراحي و همينطور اجرا ميكند. بنابراين مرحله 7 ميتواند هم در طراحي جريان كاري و هم در انجام آن، قرار بگيرد.
مدل مهم در اجرا، اجزاء (Component) است كه شكل فيزيكي عناصر مدل است و ميتواند شامل موارد اجرائي، پروندهها، جداول و مدارك باشد. همچنين يك توصيف معماري وجود دارد كه شامل يك نماي معماري از مدل اجراء ميباشد.
عنصر3، مرحله8: اجراي طرح
اين بخشي از جريان كاري اجراء است كه در آن اجراي واقعي انجام ميشود. مدلهاي انجام كار در “عمل” قرار داده ميشوند و زير مجموعههاي سيستم كامل ميشوند. نهايتاً اجزاء در گرهها ميشوند. فرايند يكپارچه تاكيدي بر آزمايش سيستم هم دارد. يك جريان كاري هستهاي به نام آزمايش وجود دارد كه در حين هر تعاملي اجراء ميشود و مدلهاي آزمايش را ايجاد ميكند كه بر مبناي “استفاده- مورد” هاي جريانهاي كاري قبلي ميباشد. براي هر مورد آزمايش، يك يا بيشتر روند، توسعه داده ميشود. بعضي آزمايشها ميتوانند توسط اجزاء آزمايش بطور خودكار (اتومات) درآيند.
عنصر4: ارزيابي:
RUP هيچگونه فاز ارزيابي ندارد اما ارزيابي را در تمام فازها انجام ميدهد. فاز انتقال براي ارزيابي تمام پروژه است. در پايان فاز انتقال كه البته پايان پروژه در اصطلاح بودجهريزي هم هست، مدير پروژه يك گروه را گرد هم ميآورد تا جدول واقعي زمان، نفر- ساعت، هزينه، نرخهاي نقص و ساير موارد را در رابطه با موارد زير بررسي كنند كه:
آيا پروژه به اهداف از قبل برنامه ريزي شده رسيده است؟
اطمينان حاصل كنند كه چرا به اهداف خود نرسيده است (در صورت نرسيدن)
يافتهها و دادههاي پروژه را به پايگاه دادههاي شركت، جهت استفادههاي آينده، اضافه نمايند.
موفقيت اقتصادي هم با استفاده از طرح تجارتي ارزيابي ميشود و مدير پروژه يك گروه كوچك را گرد هم ميآورد تا فاز انتقالي را ايجاد و به مراحل بعدي منتقل سازند.
خلاصه:
RUP داراي چندين جنبه مثبت در مقايسه با روشهاي قديمي است و از UML استفاده ميكند و چندين تكنيك خاص OO را شامل ميشود. مهمترين اين موارد، استفاده اين سيستم از “موارد- استفاده” ها جهت شناسايي و آزمايش است. اين سيستم كاملاً پيشرونده تدريجي است و براي يك كاربر ابزار، بخوبي مناسبت دارد. RUP گفته ميشود كه بر مبناي معماري پيش ميرود، همچنين جنبهاي مثبت دارد و بايد گفت كه داراي نهاي محدودي از معماري به عنوان ساختار صرف است. RUP هيچ چيزي براي گفتن درباره نيازمنديهاي تجاري و يا مدلسازي فرايند تجاري ندارد به جز اينكه موارد- استفادهها كافي است. يك مزيت RUP هم يك عيب آن محسوب ميشود. وابسته بودن آن به ابزار يك پشتيبان، بسياري از سازمانها را در استفاده از آن مشكل ميكند. همچنين هيچ چيزي در RUP درباره طراحي GUI وجود ندارد. مقادير در RUP اختصاصي نيستند اگرچه انتظار ميرود كه جمعآوري شدهاند. شايد بدترين جنبه RUP به عنوان يك فرايند مدرن، اندازه زياد آن باشد كه بيش از 1700 صفحه است كه وزن كمي نيست.