بخشی از مقاله
توسعه فرآیند CLEAN ROOM در مهندسی نرم افزار
چکیده
صنعت نرم افزار در حال سوویچ کامل از کار مهارت یافته به تیم مهندسی می باشد.اما توسعه ،عملیات،و نگهداری لایه های خروجی هنوز هم با ارزش و مداوم می باشد.در سناریو فعلی از صنعت نرم افزار ، اینجا فاکتورهای مشخصی وجود دارد که برای موفقیت نرم افزار خیلی متغیر می باشد.این روزها یک تعداد کمی از مدلهای مهندسی نرم افزار وجود دارد که کاملا مشهور می باشند.مدل V و رویکردهای توسعه نرم افزار agile ها کاملا مورد استفاده قرار می گیرند.در عبارت دیگر ،در بین مزایای مهندسی نرم افزار مهندسی نرم افزار رویکردی است که متمرکز در توسعه صفر موثر در نرم افزار می باشد.این مقاله متقاعد برای مطالعه مدل مرجع مهندسی نرم افزار Clean room می باشد که یک پارادایم نرم افزار افزایشی دقیق برای توسعه صفر و نرم افزاری با توانمندی بالا می باشد که از ویژگی های ساختار جعبه ،کنترل کیفی ایستا و مشخص استفاده می کند.مهندسی نرم افزار Clean room یک توسعه کاربردی و رویکردی مناسب است که از کنترل کیفی آماری برای کاهش قیمت ها و تاثیرات نرم افزار استفاده می کند.علارغم مزایای بی شمار مزایای این رویکرد هنوز این روش مشهور نمی باشد زیرا که ملازم به بها ،ارزش و مقدار کار توسعه یافته بیشتر می باشد.مقاله سعی به آرایش مزایای پتانسیل بیرونی از این مدل با کاربرد عملی در صنعت نرم افزار دارد.
کلمات کلیدی: مفهوم شیب،مهندسی نرم افزار اتاق تمیز ،نرم افزار چرخه زندگی ،شفافیت ارجاعی
مقدمه
هدف اصلی استفاده از مهندسی نرم افزار اتاق تمیز این است که برای تبدیل ازبررسی ساخت فردی مهندسی به توسعه دست یافته استفاده می کند .توسعه متوالی به صورت تست واحد فرد به تیم تایید صحت - تبدیل قابلیت اطمینان اندازه گیری نشده به قابلیت اطمینان اندازه گیری شده است.مرکز اساسی فرایند نرم افزار اتاق تمیز توسعه نرم افزار است . بر اساس روش های رسمی و پیاده سازی کنترل تحت اندازه گیری کیفیت آماری فرآیند مهندسی نرم افزار اتاق
تمیز با تخفیف روش های مختلف مشخصات نرم افزار - طراحی و تایید / آزمون اعتبار سنجی و کیفیت و در نهایت به دریافت صدور گواهینامه منجر می شود و یا به طور کامل محصول با استفاده از روش بالا به پایین یکپارچه می شود. مهندسی نرم افزار clean room مرحله ای مهم در تحقیق درست ریاضی قبل از شروع برنامه پیاده سازی و توانمندی مشخص نرم افزار است. پیشنهادی برای سال 1980 بود اما مزایای زیادی نداشت که دارای دلایل زیراست : اولین دلیل این است که این متودولوژی خیلی تئوری ،خیلی ریاضی ،و خیلی رادیکالی و ریشه ای برای استفاده در توسعه نرم افزار واقعی است .دوم،هدف آن تست واحدهای صفر برای توسعه دهنگان . و دلیل آخر این بود که منتهی به این است که آنها شدیدا طبیعت کاربردیشان در همه فازهای چرخه زندگی قابل کاربرد برای سازماندهی ها در سطوح پایین فرایند تکامل عمل می کنند .اینها همه دلایل اصرار در فرهنگ مقاومت در هسته هایشان است اما هنوز مزایای مهندسی نرم افزار clean room بسیار است.
تعریف اتاق تمیز
نیاز به روش های رسمی و طراحی با استفاده از تست های آماری برای تولید نرم افزار با نزدیک به هیچ و یا نقص صفر انجام پذیر است. مهندسی نرم افزار زیر یک مدل فرایند است که جدا بر الزامات، طراحی، برنامه نویسی، تست و مراحل دیگر. در یک چارچوب تحت کنترل کیفیت آماری انجام می گیرد .
فرآیندهای توسعه نرم افزارریاضی مبتنی بر استخدام برای ایجاد نرم افزاری است که درست طراحی شده باشد و توسط مراحل تست آمار کاربردی به کار گرفته شود، که باعث ارائه استنتاج در مورد قابلیت اطمینان نرم افزار است. این نظام مند فرایند دسترسی و کنترل کیفیت نرم افزار در طول توسعه اجازه از صدور گواهینامه از نرم افزار تناسب اندام برای استفاده در تحویل مدیریت اتاق تمیز مبتنی بر توسعه و بر اساس صدور گواهینامه از خط لوله از شیب تابع کاربر که اجرا در یک محیط سیستم و جمع بالا را به محصول نهایی تبدیل می کند.
مهندسی نرم افزار Clean room نیاز به چرخه توسعه ساخت همزمان دارد همانند مشخصات محصول افزایشی است که در سیستم برای واگذاری جمع شده است.فرایند Clean room دارای طرحی برای انجام تمرین تکرار شده از اندازه نهایی در مدت توسعه نرم افزار می باشد و فرایند توسعه را برای دریافت سطح درخواستی از کیفیت آماری تغییر می دهد.هدف برای تست آماری و فرایند مشخص برای اثبات اجرای نرم افزار در یک تجربه آماری رسمی میباشد. هدف برای تست آمار و فرایند مشخص برای اثبات اجرای نرم افزار در یک تجربه آماری رسمی اثبات شده می باشد.اهداف معین در طرح اندازه گیری نرم افزار ایجاد می شود و در مستند طرح تست افزایشی مجددا تعریف می شود.این اهداف در دوره ای از توانمندی نرم افزار،نرخ رشد ،پوشش کاربرد بیان می شود.نرم افزار متحمل اولین اجرایش در این فرایند
می باشد.افزایش ها کامپایل شده و سیستم ایجاد شده ،موارد تست ها اجرا شده و تست ها ارزیابی می شود.موفقیت با مقایسه رفتار نرم افزار تعیین کننده است و با وجود آنکه در ویژگی های تابع حاضر می شود.عدم موفقیت در طول آزمایش مستندات در گزارش تست آماری یافت شده می باشد.مقادیر مقیاس اندازه گیری شده قابل مقایسه با اهداف مشخص و تصمیماتی است که برای حالت تست ساخته می شود.این مباحث تعیین کننده است ویا اینکه تست ها ادامه پیدا نمی کند و تست متوقف میشود برای تغییرات برای نرم افزار و یا برای ادامه در مشخصات نهایی نرم افزار می باشد.ارزیابی ها و تصمیمات وابسته به کیفیت محصول و کنترل فرایندی است که در گزارشی مشخص مستند شده است.
هدف اصلی استفاده از نرم افزار مهندسی اتاق تمیز این است که ازبررسی ساخت فردی مهندسی به توسعه دست یافته تبدیل شود. توسعه متوالی به صورت تست واحد فرد به تیم تایید صحت - تبدیل قابلیت اطمینان اندازه گیری نشده به قابلیت اطمینان اندازه گیری شده است.
مرکز اساسی فرایند نرم افزار اتاق تمیز توسعه نرم افزار است . بر اساس روش های رسمی و پیاده سازی کنترل تحت اندازه گیری کیفیت آماری فرآیند مهندسی نرم افزار اتاق تمیز با تخفیف روش های مختلف مشخصات نرم افزار -
طراحی و تایید / آزمون اعتبار سنجی و کیفیت و در نهایت به دریافت صدور گواهینامه منجر می شود و یا به طور کامل محصول با استفاده از روش بالا به پایین یکپارچه می شود .
استراتژی اتاق تمیز چهار بخش است :
-1شامل برنامه ریزی افزایشی - جمع آوری ساختار مورد نیازخصوصیات جعبه است -2شامل طراحی رسمی و تایید صحت است -3شامل تولید کد - بازرسی تست های آماری است -4شامل تست استفاده آماری و صدور گواهینامه است
شکل - 1 فرآیند مهندسی نرم افزار اتاق تمیز
اساس سه تیم فعالیت های مشخصی دارند که عبارت است از :
-1تیم مشخصات :با سخت افزار به آن می پردازد / مشخصات نرم افزار مورد نیاز / طراحی و اجرای شیب نرم افزار
-2تیم صدور گواهینامه:با استفاده از روش های مختلف تضمین شده به کیفیت آن می پردازد -3تیم توسعه: در حال توسعه و تایید نرم افزار است / این تیم بررسی صحت کد بازرسی را بر عهده دارد -1کنترل مناسب بر روی فرآیند
این روش کنترل مناسبی می دهد بردانه بندی توسعه نرم افزار از طریق خواص: - شفافیت
- ارجاعی -تاریخ
با تایید نتیجه یا نتایج قبلی می توان کنترل و بهبود روی هر روند را انجام داد این ترکیب بسیاری از روش های زسمی و روش کیفیت نرم افزار است و به دریافت تصمیم بهتر کمک می کند.
شکل -2 فرآیند کنترل:
-1اتاق تمیز
این تیم را قادر می سازد برای انجام فعالیت های مختلف به طور همزمان محصول افزایش خوبی خواهد داشت تحت دریافت بازخورد به طوری که با بسیاری از مشخصات و مدل های کمک حفظ دوره محصول طولانی تر خواهد شد . -2صفر شکست در زمینه
هدف اصلی از این مقاله این است که آن را با کمتر از پنج شکست در هر مرحله می دهد .
تیم های جدید باید تجربه افزایش بهره وری داشته باشند با استفاده از سوالات صحت خواسته شده را تایید و پاسخ رسمی ریاضی انجام شده است
-3به تدریج با کیفیت بالاتر اجرا
مزیت قابل توجهی از نرم افزار اتاق تمیز مهندسی است که می توان آن را به تدریج توسعه داد در حالی که فعالیت های درگیر در اتاق تمیز مهندسی نرم افزار بسیار سخت است پس از آن با رسیدن به کیفیت بالاتربه آن عمیق تر می پردازد درک از الزامات، طراحی و کد های همه تأییدکنندگان در این کار دخالت دارند -4تخفیف با طراحی رسمی
مهندسی نرم افزار اتاق تمیز با استفاده از مشخصات ساختار جعبه برای تعریف محصولات کار می کند به طوری که مشخصات در حال مکر رابه تصفیه تبدیل شدن و طرح معماری و طرح سطح تبدیل می کند هنگامی که این مورد نیاز ثابت شد پس از آن رفتار عملکرد ی و دانه بندی باید تعریف شود. در پایان هر فرآیند دو تیم دارای طراحی شبیه بهم اند و برنامه نویسی ساختار زبان خود را انتخاب کنند .
gradational ، یا رتبه بندی یا درجه بندی هدف کلی از توسعه رشد یک سیستم با هر شیب جدید را به عنوان شرح و بسط از توابع اجرا در شیب های قبلی است. تابع جدید در شیب باید نسبت به پلاگین شیب قبلی در نقطه از پیش تعریف شده در ساختار آن باشد وبا برآورده شدن مشخصات زیر در ارتباط با پردازش در آن نقطه است.
این فرایند از تخصیص تابع اجرای عملی است که ازشفافیت ارجاعی به مفهوم gradational می باشد.بنابراین، تخصیص منطقی از توابع به میان عملکرد و وابستگی تابعی ذاتی در غالب تعریف محتوای شیب بر اساس رابطه شیب است . در یک سیستم پایگاه داده، به عنوان مثال، توابع به اضافه کردن اطلاعات به طور معمول قبل و یا حذف داده می پردازند. در یک سیستم آماری، توابع برای جمع آوری و ورود داده ها به طور معمول به تجزیه و تحلیل داده ها و نتایج گزارش می پردازد..
مدل مرجعی مهندسی نرم افزار clean room
در اینجا یک پارادایم نرم افزار افزایشی دقیقی برای توسعه کاهش صفر وجود دارد که از ویژگی های ساختار جعبه ،کنترل کیفی ایستا و مشخصی استفاده می شود.Clean room یک فرایند مبتنی بر تیم است که مولف متدهای رسمی از ویژگی های نرم افزار ،طراحی و رسیدگی دقیق می باشد.یک هدف اصلی از فرایند Clean room توسعه نرم افزاری است که بدون نقص در استفاده باشد.عقیده مهندسی نرم افزار Clean room منطبق بر طراحی Clean roomاستفاده شده ایست که در طراحی چرخه ارتقا یافته برای بهبود دوره تاثیرات ساخت نیم رسانا ها با تاکید بر ترتیب و کاهش تمرکز در مهندسی می باشد..پروژه های Clean room دارای گزارش های قابل توجهی در کسب کیفیت و بهره وری می باشد. برخی مشخصات قابل تمایز از CSE شامل:
-1مدل پردازش توسعه افزایشی -2متد های رسمی از طراحی و ویژگی ها -3 رسیدگی دقیق و درست -4 مبنای آماری ،تست مستقل
فاز های مدل فرایند Clean room
چرخه زندگی از یک پروژه clean room متفاوت از چرخه حیات سنتی می باشد.فاز های ضروری شامل طراحی پروژه ،مدیریت پروژه ،بهبود اجرا و تغییر مهندسی می باشد.که بعدا فرایند حرکت رو به افزایشی خواهد داشت.هر افزایش شامل طرح ریزی افزایشی ،تجمع نیازمندی ها ،ویژگی ساختار جعبه ،طراحی رسمی ،رسیدگی دقیق ،کد اصلی ،بازرسی و تحقیق ،طرح ریزی استفاده از آمار ،مشخصات و تست مورد استفاده ایستا می باشد.این روند از ساختارهای جعبه (جعبه سیاه ،جعبه حالت و جعبه شفاف)با طراحی رسمی برای طراحی ویژه استفاده می شود.در یک توسعه Clean room رسیدگی درست جایگزین واحد تست و اجرا می شود.بعد از تکمیل کد ،نرم افزار فورا وارد تست سیستم بدون اجرا می شود.در پایان ، تابع تست سیستم برای تایید کیفیت نرم افزار با توجه به ویژگی های سیستم ها می باشد.فازهای مختلف CSE در زیر شمارش می شود:
- A فرایندهای مدیریتClean room
موضوع اصلی از این فاز برای انجام طرح ریزی ضروری ،مدیریت و بهبود ها می باشد.این فاز ضروری از CSE است که شامل طرح ریزی پروژه ،مدیریت پروژه ،بهبود اجرا و تغییرات مهندسی می باشد.:
-1طرح ریزی پروژه
این فاز شامل طرح ریزی نکات ذکر شده و استفاده شده در آغاز فرایند توسعه نرم افزار همچون آغاز یک افزایش جدید می باشد: