Transcript Slide 1
فصل 4
جمع آوری نیازمندیها و تحلیل سیستم :
فاز تولید هر نرم افزار با مرحله ای به نام تعریف مسئله شروع می شود.
منظور از تعریف مسئله شناخت محیط و مدل عملکردی سیستم مورد نظر
و نیازمندیهای آن به صورت کلی می باشد .در مرحله ی تعریف مسئله
نیازمندیهای مشتری نیز مشخص می شود .پس از فاز تعریف مسئله ،فاز
تولید سیستم آغاز می گردد.
تحلیل سیستم : System Analysis
منظور از تحلیل سیستم ،مشخص کردن ویژگیهای سیستم و ساختار آن می
باشد و در این مرحله فعالیتهای زیر انجام می شود.
.1شناسایی و تحلیل نیازهای مشتری
.2ارزیابی سیستم به منظور امکان سنجی آن
(امکان سنجی :اینکه آیا سیستم با توجه به محدودیتهای زمانی ،اقتصادی و
تکنولوژیکی قابل اجرا هست یا نه).
.3انجام تحلیل های اقتصادی و تکنیکی
.4مشخص کردن نیروی انسانی ،پایگاه داده ها ،سخت افزار و نرم افزار و
سایر اجزاء مورد نیاز برای راه اندازی سیستم
.5مشخص کردن محدودیتهای برنامه ریزی و هزینه های سیستم
.6تهیه ی یک گزارش یا مستند که شامل ساختار و تعاریف کلی سیستم و
مراحل تولید آن می باشد.
امکان سنجی (:)Feasibility
منظور از امکان سنجی کنترل این نکته است که با توجه به محدودیت
های موجود ،سیستم از لحاظ پیاده سازی ،امکان پذیر و قابل قبول
می باشد و یا پیاده سازی آن میسر نیست؟ بدیهی است پس از این
مرحله مشخص می شود که پروژه می تواند ادامه یابد یا می بایست
قطع گردد.
زمان انجام فعالیت امکان سنجی:
زمان انجام فعالیت امکان سنجی پس از مرحله ی شناخت و قبل از
سایر مراحل تولید نرم افزار می باشد.
مراحل امکان سنجیFeasibility Study – Phases :
.1تحلیل نیاز
.2امکان سنجی اقتصادی
.3امکان سنجی تکنیکی
.4امکان سنجی قانونی
.5ارزیابی گزینه ها
تحلیل نیاز:
ا
ی
در این مرحله می بایست مشخص کنیم که آیا اصول نیاز به تولید یک سیستم
جدید وجود دارد یا خیر؟ در این راستا می بایست مطالعات و عملیات زیر
انجام شود:
.1شناخت تاریخچه و اطالعات زیربنایی سازمان مشتری
.2درک نیازمندیها و مشکالت مشتری
.3آشنایی با چارت سازمانی و شرح وظایف
امکان سنجی اقتصادی Economic Feasibility
در امکان سنجی اقتصادی تحلیل سود و هزینه انجام می شود و اگر مزایا یا
سود یک سیستم نسبت به هزینه های آن بیشتر باشد ،سیستم از لحاظ
امکان سنجی اقتصادی مثبت بوده و قابل پیاده سازی است.
Need Analysis
در برآورد هزینه ها می بایست هزینه های اولیه برای پروژه ،هزینه ی خرید
تجهیزات و هزینه های تکراری یا متناوب از قبیل اجاره ی محل نیز لحاظ
گردد.
امکان سنجی تکنیکی Technical Feasibility
در این مرحله می بایست تکنولوژی مورد استفاده در سیستم مشخص گردد و
در این راستا تکنولوژی های موجود در سازمان و نیازهای آموزش ی نیز هم
برای تولید کنندگان نرم افزار و هم برای استفاده کنندگان می بایست مد
نظر قرار گیرد.
امکان سنجی قانونی
این مرحله شامل بررس ی محدودیتها و موانع قانونی برای پیاده سازی سیستم می
باشد و در این مرحله مواردی نظیر وجود کپی رایتها ،طراحی یا ساخت
مناسب قرار دارد و جلوگیری از به کار بردن جمالت یا کلمات متناقض و مبهم
ا
در قرارداد می باشد .معمول این مرحله با مشاوره ی کارشناسان حقوقی
ا
انجام می شود و برای همه ی سیستم ها ،خصوصا سیستم های کوچک و
ساده ،مورد نیاز نیست.
Legal Feasibility
ارزیابی گزینه ها
در این مرحله کلیه ی گزینه های موجود برای پیاده سازی سیستم به همراه
هزینه و برنامه ریزی انجام آن مشخص شده و تحلیل گر ،یکی از گزینه ها را
انتخاب و به مشتری پیشنهاد می دهد.
گزارش امکان سنجی
پس از انجام مرحله ی امکان سنجی ،تحلیل گر گزارش ی تحت عنوان گزارش
امکان سنجی را آماده می کند که در این گزارش خالصه ی فعالیتهای انجام
شده در مرحله ی امکان سنجی و گزینه های مختلف که برای پیاده سازی
سیستم وجود دارد به همراه زمان برنامه ریزی و محدودیتهای هر گزینه ارائه
می شود.
پیشنهاد پروژه Project Proposal
شناسنامه پروژه یا proposalیک مستند یا گزارش می باشد که در
آن اطالعات جامع و کاملی در ارتباط با پروژه از طرف پیمانکار به
مشتری یا کارفرما ارائه می شود.
اما در بهترین حالت مشتری نیز گزارش ی قبل از آن به نام گزارش
درخواست برای proposalیا )RFP( Request For Proposalآماده می
کند که در آن مسائل و نیازمندیهای خود را شرح داده است .در
ا
proposalاطالعات زیر معمول وجود دارد.
.1تقویم اولیه ی زمان بندی انجام پروژه (زمان بندی در ادامه ی کار ممکن است دچار
تغییر شود).
.2محدوده ،ساختار و سرویس های کلی پروژه
.3زمان بندی و توالی انجام مراحل پروژه
ا
طبیعتا این زمان بندی و مراحل می بایست بر مبنای مدل processارائه شود.
.4مشخص کردن هزینه های سخت افزاری ،نرم افزاری و نیروی انسانی.
.5مشخص کردن نیازهای آموزش ی (تعداد و محتوای آموزش)
.6مشخص کردن هزینه ی کلی پروژه
.7ذکر مزایا و امکانات پروژه
تحلیل نیازمندیها
منظور از تحلیل نیازمندیها را می توان از دو بعد مورد بررس ی قرار داد.
در بعد اول ما می بایست شناختی از عملکرد سیستم موجود به دست
آوریم(.به این مدل ،مدل تجاری یا )business modelگفته می شود و
در بعد دوم شناخت نیازمندیها انجام می شود .که به این مدل،مدل
نیازمندیها یا request modelگفته می شود.
مدلها در دنیای نرم افزار به دو شکل کلی ساخت یافته( )structureو ش یء
گرا ( )object orientedساخته می شود.
Requirements analysis
مدلهای ساخت یافته که در حال حاضر کمتر در تولید سیستم ها مورد
استفاده قرار می گیرند یا روش ی تحت عنوان SSADM(Structured
) System Analysis and Designساخته می شود.
ا
اما مدلهای تحلیل و طراحی ش یءگرا در حال حاضر غالبا توسط زبانهای
مدلسازی UMLیا Unified Modeling Languageساخته می شود.
فارغ از نوع مدل پس از تکمیل مرحله ی تجزیه تحلیل گزارش ی ارائه شده
که در آن گزارش کلیه اطالعات مراحل تحلیل به همراه مدل ها به
کارفرما ارائه شده و کارفرما پس از مطالعه ی آن می تواند نظرات و
پیشنهادات اصالحی خود را به تولید کنندگان اعالم کند.
SSADM
اولین مدل(Context Diagram :نمودار متن)
در تحلیل و طراحی SSADMدر مرحله ی اول context diagramساخته
می شود .در نمودار DFDاز موجودیت های تولید کننده و مصرف کننده ی
اطالعات که با شکل مستطیل نشان داده می شود و پردازش یا process
که از شکل دایره استفاده می شود و جریان داده که از فلش یا پیکان
استفاده می شود و رسانه ی ذخیره سازی برای داده که از شکل
استفاده می شود ساخته شده است.
برای سیستم های بزرگ و پیچیده ،مرحله ی تجزیه تحلیل و نمودارهای DFD
ا
معمول در یک سطح یا یک levelکشیده نمی شوند و می توان در هر مرحله
جزئیات بیشتری از پروسس ها و داده را نشان داد.
در مرحله ی طراحی ،می بایست با استفاده از آخرین سطح DFDها ساختار
سیستم را به دست آوریم .منظور از ساختار معماری سیستم در مدل ساخت
یافته ،ماژول ها و ارتباط بین آنهاست.
در این مرحله می بایست دایره ها یا Bubbleها را به ماژول ها اختصاص
دهیم.اما این تبدیل می تواند همیشه تبدیل یک به یک نبوده و در بعض ی اوقات
یک دایره یا bubbleبه چند ماژول یا برعکس چند bubbleبه یک ماژول
تبدیل شوند.
تکنیکهای جمع آوری اطالعات در مرحله تجزیه تحلیل:
یک تحلیل گر می تواند با استفاده از تکنیکهایی نظیر انجام مصاحبه ی
حضوری با اشخاص مرتبط در سیستم ،ارائه ی پرسشنامه ها به اشخاص
ذینفع بررس ی سوابق عملیاتی و اجرایی یک سازمان و یا استفاده از مشاهده ی
حضوری از عملکرد یک سازمان اطالعات مورد نیاز خود را جمع آوری نماید .در
اکثر حالت ،تلفیقی از این روشها مورد استفاده قرار می گیرد.
تحلیل نیازمندیها:
ا
در این مرحله معمول فعالیتهای زیر انجام می شود:
.1درک دامنه و حوزه ی اطالعاتی سیستم
.2مشخص کردن قابلیتها و امکانات مورد نیاز سیستم.
.3ساخت یک مدل برای نمایش اطالعات فوق (همانند مدل DFDدر
SSADMو یا مدلهای activity diagram ، usecaseو ...در مدل
) UML
.4تفکیک و شکستن مدل طی مراحلی به مدلهای تفصیلی تر .
.5همواره باید در مرحله ی تجزیه تحلیل از اطالعات کلی ،مرحله به مرحله به
اطالعات تفصیلی یا جزئی رسید.
مدلهای اساس ی در تجزیه تحلیل سیستم Essential Model
.1مدل محیطی Environmental Model
.2مدل رفتاری Behavioral Model
در مدل محیطی ما کل سیستم و محیط در برگیرنده ی آن را که شامل سخت
افزار ،نرم افزارهای دیگر ،نیروی انسانی می باشد را مدل می کنیم.
نمودار متن یا Context Diagramیک نمونه از مدلهای محیطی است .در
مدلهای رفتاری ما عملکرد یک سیستم و ارتباط بین عناصر مختلف یک
سیستم را به همراه داده های مورد استفاده در سیستم مدل می کنیم.
نمودار DFDو نمودار ERDاز نمونه مدلهای رفتاری است.