سناریوها نقش اساسی در توسعه سیستم های اطلاعاتی دارند. و همچنین یکی از مهمترین مزایای سناریوها در استخراج نیازمندی ها و اعتبار سنجی[۱] نیازمندی ها است که می توانند یکی از عوامل مهم در پیشرفت نرم افزار باشند. از انجا که سناریوها به طور غیر رسمی[۲] بیان میشوند بنابراین نیاز داریم یک سری از کارها را انجام بدهیم که این سناریوها را به یک زبان شبه فرمال یا رسمی تبدیل کنیم. همچنین مساله ای اساسی دیگر در بیان غیر رسمی سناریوها حالت مبهم و غیر قطعی در انها می باشد چرا که در سناریوها با یک سری اطلاعات غلط و کم مواجه هستیم که این اطلاعات غاط و کم با تجزیه و تحلیل آنها حذف می گردند. بنابراین نیاز داریم تا توسط یک راه حل سیستماتیک راهکاری را بیان نماییم که بتوانیم پس از مدل سازی سناریوهایی که به صورت غیر قطعی و فازی بیان شده اند اطلاعات نادرست موجود درانها را کشف و سپس حذف نماییم . همچنین دیگر مساله اساسی که در سناریوها با آن مواجه هستیم این است که بخش اعظمی از اطلاعاتی که در سناریوهای مختلف که بیان گر فرایند اجرای یک نرم افزار می باشند اضافی و تکراری است. از این رو نیاز داریم که راه حل ارائه شده بتواند این اطلاعات اضافی را نیز کشف نماید و با بیان یک معیار اندازه گیری مناسب شباهت میان سناریوها بررسی شود و در صورتی که دو سناریو خیلی به هم شباهت داشته باشد با بیان تکراری بودن ان اقدام به حذف آن نماییم.
برای مدل سازی سناریوها از ابزار شبکه های پتری رنگی فازی[۳] استفاده می نماییم که هم توسط نمایش گرافیکی آن سبب درک اسان تحلیل گران سناریوها می شود و همچنین توسط پشتیبانی ریاضی آن می توانیم ابزار قدرتمندی جهت تحلیل سناریوها داشته باشیم.
در این تحقیق قصد داریم که سناریوهای بیان شده برای یک سیستم نرم افزاری را توسط نمودارهای موارد کاربری و ترتیبی مدل نماییم و سپس آن ها راتوسط شبکه های پتری رنگی فازی تحلیل نموده و از روی آن اطلاعات غلط و ناقص و همچنین اطلاعات کم و از دست رفته نیز یافت شود. در گام بعدی آن شباهت میان سناریوها بررسی شده و سناریوهای اضافی حذف می گردند.
زمانیکه یک سناریو بیان شد ، هر کدام از وقایع و اشیا(شی منبع و شی هدف) باید مشخص گردد. ما سه مورد از اطلاعات از دست رفته را در این تحقیق بررسی می کنیم که شامل نام رویداد یا شی غیر مشخص، شی منبع یا شی مقصد غیر مشخص ، عدم ورود هیچ رویداد به داخل یا خارج یک شی و همچنین اطلاعات اشتباه مشمول سناریو هایی که در یک حالت غیر قابل دسترسی مشخص گردیدند که با رویداد های متناقض و یا محدودیت های زمان بندی اشتباه ایجاد گردیده اند که در صورت وجود این نوع اطلاعات در مرحله تحلیل و طراحی و پیاده ساز ی دچار مشکل خواهیم شد. و اگر این خطاها را از بین نبریم و طراحی و پیاده سازی را انجام بدهیم هزینه ای که برای پیدا کردن این اطلاعات غلط و ناقص صرف می شود بالا میرود.پس بهتر است اینگونه خطا ها را اول پیدا کرده و بعد کار طراحی و پیاده سازی را انجام دهیم.
د – اهمیت و ضرورت انجام تحقيق (شامل اختلاف نظرها و خلاءهاي تحقيقاتي موجود، ميزان نياز به موضوع، فوايد احتمالي نظري و عملي آن و همچنين مواد، روش و يا فرآيند تحقيقي احتمالاً جديدي كه در اين تحقيق مورد استفاده قرار ميگيرد:
بخش اعظمی از تحقیقات و توسعه های انجام شده حال حاضر بر روی جنبه های کاربر گرا[۴]توسعه سیستم های نرم افزار می باشد. یکی از المان های اساسی در این جنبه نمادگذاری سناریوها می باشد. یک توصیفی از انچه که کاربران قصد انجام آن را دارند. امروزه اکثر فعالیتهای تحقیقی صورت گرفته بروری ارائه روشهای مختلفی در جهت اعمال و استفاده از سناریوها در فازهای مختلف توسعه نرم افزار می باشد و کمتر تحقیقی به صورت عملی و کاربردی جنبه های مختلف سناریوها را مورد بررسی و وارسی قرار داده است و این سبب شده که نقایص موجود در سناریوها به فازهای دیگر و پایین تر فرایندتوسعه نرم افزار انتقال یابد که این سبب افزایش چشم گیر هزینه اصلاح این نقایص می شود.
بنابراین ضرورت ارائه یک راهکار سیستماتیک که بتواند با دریافت سناریوها و روش مدل سازی آن را توسط زبان مدل سازی شبه رسمی FCPN و تحلیل مدل حاصله و وارسی سناریوهای مدل شده احساس می شود. راهکار بیان شده در این تحقیق دو جنبه اصلی این ضرورت را مد نظر قرار داده است اولا با تبدیل سناریوها به شبکه های پتری یا در واقع تبدیل نمودار های توالی به شبکه های پتری و همچنین نحوه گذاشتن قیود زمانی برای سناریوها و شر ط هایی که برای قیود زمانی می گذارد تا اطلاعات غلط را شناسایی کند و دوما وارسی انجام پذیر بودن سناریوها و رسیدن به شرایط توسط خاصیت های دسترس پذیری در شبکه های پتری رنگی فازی و اعتبار سنجی ان ها می باشد.
جبنه اساسی دیگر شباهت میان سناریوهاست که با بیان معیار اندازه گیری ریاضی ارائه شده بتوانیم از حجم سناریوها و اطلاعات اضافی میان آن ها بکاهیم.
ه- مرور ادبیات و سوابق مربوطه (بيان مختصر پیشینه تحقيقات انجام شده در داخل و خارج کشور پيرامون موضوع تحقیق و نتايج آنها و مرور ادبیات و چارچوب نظري تحقیق):
در طول دو دهه گذشته تحقیقات فراوانی و روشهای زیادی در جهت به کار گیری سناریوها و مدل سازی آن ها ارایه شده اند که هر کدام سناریوها را از یک دیدگاه بررسی کرده و از آن در گام های مختلف فرایند توسعه نرم افزار و روشهای مدل سازی استفاده نموده اند. از این رو در این تحقیق برخی از اساسی ترین راهکارهای گذشته ارائه شده را مورد بررسی قرار میگیرد.
W.J. Lee et al و دیگر همکاران [۱]توسط مکانیسم CMPNs سناریو را در قالب موارد کاربری[۵] بیان نمودند که می توان مکانیزم صحت وارسی سناریو ها را از طریق شبکه های پتری زمانی مورد بررسی قرار دارد.مشکل این روش در این است که اگر در سناریو اطلاعات کم وجود داشته باشد نمی توان این اطلاعات کم را پیدا کرد. و با شلیک نکردن هر کدام از گذرها نمی تواند اطلاعات غلط را شناسایی کند .ولیکن می تواند بن بست را تشخیص دهد و اما این حالت که قیود زمانی غلط باشد را نمی تواند تشخیص بدهد.
روشی است که توسط P. Hsia et al [2] سناریوها در قالب شمای سناریو[۶] بیان می شود و سپس توسط گرامر ماشین حالت BNF عمل صحت وارسی سناریو ها را انجام میدهد. این روش مزایا و معایبی که دارد این است که نمی تواند اطلاعات کم، بن بست و قیود زمانی اشتباه را شناسایی کند ولیکن اطلاعات غلط را از روی درخت دسترسی می تواند پیدا کند. پس از آن در سال ۱۹۹۹ R. Dssouli در مقاله [۳] سناریوها را به صورت متنی و زبان گرافیکی نمایش داده است و عمل صحت وارسی سناریوها از طریق ماشین های زمانبندی انجام می شود. این روش می تواند در صورت وجود اطلاعات کم در سناریو ها این اطلاعات را پیدا کند ولی نمی تواند اطلاعات غلط در سناریو ها را یافت کند. و همچنین بن بست را از طریق تاخیرهای زمانی بین رویدادها تشخیص می دهد ودر صورت وجود قیود زمانی اشتباه نمی تواند این قیود غلط را تشخیص دهد.
Sutcliffe در [۴] مهندسی نیازمندیها را با استفاده از تحلیل سناریوها مورد بررسی قرار داده است. در این مقاله فرایند مهندسی نیازمندیها و ارتباطات میان آن ها و سناریوها و تحلیل رفتاری آن ها بیان گردیده است. ارتباط میان سناریوها و مشخصات نرم افزار و نمونه اولیه بررسی گریده است. در این تحقیق مزایا و معایب استفاده از سناریوها بیان شده است.
Lee et al در [۵,۶] با استفاده از شبکه های پتری زمانی و ارائه سناریوها در قالب شبکه های پتری زمانی اقدام به وارسی سناریوها نموده اند که از روی آن می توانستند قیود زمانی نادرست را استخراج نمایند. همچنین اطلاعات کم و ناقص نیز از روی آن ها بدست می آمدند.
در سال ۲۰۰۹ Riberio et al [۷] با بیان سناریوها توسط UML2.0 و سپس با استفاده از بیان آن ها در قالب شبکه های پتری رنگی می توانستند سناریوها را به صورت موازی اجرا نمایند و مشکلات پیش آمده در صورت اجرای موازی آن ها را بررسی نمایند . از این رو نمودارهای ترتیبی که سناریوها توسط آن ها بیان شده اند به شبکه های پتری رنگی تبدیل شده و فعالیت های جایگزین و استثنات از روی آن ها کشف شده است. در ادامهHassan reza و دیگر همکاران در [۸] با استفاده از سناریوها و CMPNs شبکه های پتری ماژولاریتی قیدی توانستند که موارد آزمون متعددی را از روی آن ها بدست آوردند. که هزینه تست نرم افزار توسط راهکار ارئه شده در این روش کاهش یافته است.
سناریو: مفهوم سناریو این است که در داخل یک موارد کاربری یک سری اشیا داریم که با یکدیگر در تعامل هستند. در واقع آن صحبت هایی که بین اشیا صورت میگیرد یا به عبارتی رویدادهایی که در یک سیستم رخ می دهد را به عنوان سناریو در نظر می گیریم . سناریوها به صورت متنی نیز بیان می گردند.
نمودار موارد کاربردی: هر مورد کاربری دنباله ای از عملیات است که یک سیستم انجام می دهد تا یک نتیجه قابل مشاهد و ارزشمند برای کاربر فراهم نماید. در نگرش سنتی که عملکردهای سیستم مورد توجه قرار میگیرند بدنبال شناسایی عملکردهای سیستم هستیم . در نگرش مبتنی بر موارد کاربری بدنبال این هستیم که سیستم به ازای هر کاربر، باید چه عملکردهایی از خود نشان دهد.
شبکه های پتری: ابزار مدل سازی بر پایه منطق ریاضی بصورت گرافیکی است و بر پایه اینکه گرافیکی است پایه قوی ریاضیات دارد. اجزای آن شامل توکن، مکان ، گذر، و کمان می باشد .
شبکه های پتری رنگی فازی: این نوع ابزار مدل سازی شبکه های پتری که در دسته شبکه های پتری سطح بالا به حساب می آیند شامل مکان ، گذر، و کمان می باشد که توکن های فازی در آن درجه عضویت هر توکن به مکان مربوطه را بیان می کند. این درجه در شبکه های پتری معمولی شامل دو مقدار {۰,۱} می باشد ولی در شبکه های پتری رنگی فازی شامل بازه بسته [۰,۱] است و همچنین توکن ها در این نوع شبکه های پتری دارای نوع می باشد.
نمودارتوالی: نمودار توالی معمولا در بیان مراحل اجرای یک مورد کاربری استفاده می گردد. در این نمودار اشیا به صورت جعبه هایی در بالای خطوط منقطع عمودی نمایش داده می شود. و به هر یک از این خطوط عمودی خط عمر شی گفته می شود.
[۱] Verification
[۲] Informal
[۳] Fuzzy colored petri net
[۴] User oriented
[۵] Use case
[۶] Scenario schema
لطفاً براي ارسال دیدگاه، ابتدا وارد حساب كاربري خود بشويد