Section 04 SDLC

Download Report

Transcript Section 04 SDLC

‫تحلیل سیستمها‬
‫متدولوژي هاي ساخت يافته توسعه سيستم ها ( ‪Structured Systems‬‬
‫‪)Methodologies Development‬‬
‫محورهای بحث‬
‫‪‬مفاهیم مرتبط با نیازمندی‌های سیستم‬
‫‪‬چرخه زندگی توسعه سیستم (‪)SDLC: System Development Life Cycle‬‬
‫‪‬متدولوژی توسعه سیستم‬
‫‪‬مفاهیم مرتبط با مدل سازی سیستم‬
‫‪‬متدولوژی ‪)Structural Systems Analysis and Design Method( SSADM‬‬
‫ابزار‬
‫دانش‌مورد‌نیاز‌جهت‌‬
‫توسعه‌سیستم‌‌های‌‬
‫اطالعاتی‬
‫متدولوژی‬
‫تکنيک‬
‫تعيين نيازمندیهای سيستم‬
‫‪‬نیازمندی‌های وظیفه‌ای‪ :‬این نیازمندی‌ها شامل فعالیت‌ها و‬
‫خدماتی است که سیستم می‌بایست ارائه نماید‪.‬‬
‫‪‬نیازمندی‌های غیروظیفه‌ای‪ :‬این نیازمندی‌ها شامل سایر‬
‫مشخصه‌ها‪ ،‬ویژگی‌ها و محدودیت‌هایی است که برای یک‬
‫سیستم رضایتبخش تعریف می‌شود‪.‬‬
‫تعيين نيازمندیهای سيستم‬
‫نوع نيازمندی‬
‫شرح نيازمندی‬
‫نیازمندی‌های‌عملکردی‬
‫نیازمندی‌هایی‌که‌مستقیما‌به‌نحوه عملکرد‌سیستم می‌شود‌‬
‫به‌گونه‌ایی‌که‌پاسخ‌گوی‌نیازمندی‌های‌کاربران‌باشد‪.‬‬
‫‪ -1‬میزان‌تراکنش‌قابل‌اجرا‌در‌یک‌ساعت‬
‫‪ -2‬زمان‌پاسخ‌گویی‌به‌یک‌درخواست‬
‫نیازمندی‌های‌اطالعاتی‬
‫نیازمندی‌هایی‌که‌مربوط‌به‌اطالعاتی‌است‌که‌در‌‬
‫زمان‌های‌مختلف‌باید‌به‌کاربر‌داده‌شود‌و‌یا‌از‌او‌گرفته‌‬
‫شود‪.‬‬
‫‪ -1‬داده‌های مورد‌نیاز‌برای‌آغاز‌یک‌فرایند‌کاری‬
‫‪ -2‬دوره‌های‌زمانی‌که‌باید‌داده‌ها‌به‌روز‌شود‪.‬‬
‫‪ -3‬رابط‌کاربری‌مورد‌نیاز‌برای‌وارد‌کردن‌اطالعات‬
‫نیازمندی‌های‌اقصادی‬
‫میزان‌مشارکت‌سیستم‌در‌کاهش‌هزینه‌و‌صرفه‌جویی‬
‫‪ -1‬چه بخش‌هایی‌از‌هزینه‌های‌کاری‌باید‌توسط‌سیستم‌‬
‫کاهش‌داده‌شود؟‬
‫‪ -2‬محدودیت‌های‌بودجه‌ای‌در‌اجرای‌سیستم‬
‫‪ -3‬میزان‌زمان‌مورد‌نیاز‌برای‌اجرای‌سیستم‬
‫تعيين نيازمندیهای سيستم‬
‫نوع نيازمندی‬
‫شرح نيازمندی‬
‫نیازمندی‌های‌کنترلی‌و‌امنیتی سیستم‬
‫‪ -1‬حداقل نیازمندی‌های‌امنیت‌اطالعات‬
‫‪ -2‬حداقل‌نیازمندی‌های‌در‌دسترس‌بودن‌سیستم‬
‫‪ -3‬حداقل‌نیازمندی‌های‌صحیح‌بودن‌اطالعات‌سیستم‬
‫نیازمندی‌های‌کارایی‬
‫تولید‌خروجی‌با‌حداقل‌تلفات‌و‌دورریز‬
‫‪ -1‬آیا‌مراحل‌تکراری‌وجود‌دارد؟‬
‫‪ -2‬امکان‌کاهش‌دور‌ریز‌در‌خالل‌تولید‌‬
‫نیازمندی‌های‌خدماتی‬
‫نیازمندی‌هایی‌که‌به‌واسطه‌آن‌ها‌سیستم‌قابل‌اعتماد‪،‬‬
‫انعطاف‌پذیری‌و‌قابل‌گسترش‌می‌شود‪.‬‬
‫‪ -1‬چه‌کسانی‌از‌سیستم‌استفاده‌می‌کنند‌و‌محل‌آن‌ها‌‬
‫کجاست؟‬
‫‪ -2‬آیا‌استفاده‌کنندگان‌از‌دسته‌های‌مختلفی‌هستند؟‬
‫‪ -3‬فاکتورهای‌انسانی‌ضروری‌در‌تولید‌سیستم‌چیست؟‬
‫‪ -4‬نیازمندی‌های‌آموزشی‌مورد‌نیاز‌برای‌استفاده‌از‌‬
‫سیستم‌چیست؟‬
‫‪ -4‬نحوه‌توزیع‌سیستم‌باید‌چگونه‌باشد؟‬
‫تعيين نيازمندیهای سيستم‬
‫‪‬رویکردها موجود برای تعریف نیازمندی‌های سیستم جدید‬
‫‪‬نیازمندی‌های وظیفه‌ای‪ :‬با توجه به شناخت سیستم موجود و‬
‫مشکالت نیازمندی‌های اعالم شده توسط کاربران سیستم‬
‫تعدیالتی که در خصوص وظایف سیستم (فعالیت‌ها و اقدامات‬
‫سیستم) الزم است مشخص می‌شود‪.‬‬
‫تعيين نيازمندیهای سيستم‬
‫‪‬رویکردها موجود برای تعریف نیازمندی‌های سیستم جدید‬
‫‪‬نیازمندی‌های غیر وظیفه‌ای‪ :‬پس از تعیین تکلیف‬
‫نیازمندی‌های وظیفه‌ای نوبت به نیازمندی‌های غیروظیفه‌ای‬
‫می‌رسد که با بررسی موارد ذیل در سیستم نیازمندی‌های‬
‫غیروظیفه‌ای بدست می‌آید‪.‬‬
‫تعيين نيازمندیهای سيستم‬
‫‪‬رویکردها موجود برای تعریف نیازمندی‌های سیستم جدید‬
‫‪ .1‬نیازمندی‌های عملکردی‬
‫‪.2‬نیازمندی‌های اطالعاتی‬
‫‪ .3‬نیازمندی‌های اقتصادی‬
‫‪.4‬نیازمندی‌های کنترلی و امنیتی‬
‫‪ .5‬نیازمندی‌ای کارایی‬
‫‪.6‬نیازمندی‌های خدماتی‬
‫تعيين نيازمندیهای سيستم‬
‫‪‬ابهام در بیان نیازمندی‌ها‬
‫‪‬نیازمندی‪ :‬ایجاد وسیله‌ای که شخص را از خانه به محل کار‬
‫برساند‪.‬‬
‫تعيين نيازمندیهای سيستم‬
‫‪‬معیارهای تعریف نیازمندی‌های سیستم‬
‫‪ .1‬سازگار‬
‫‪ .2‬کامل و جامع‬
‫‪ .3‬موجه‬
‫‪ .4‬مورد نیاز‬
‫‪ .5‬دقیق‬
‫‪ .6‬قابل ردیابی‬
‫‪ .7‬مورد تایید‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪ ‬مراحل توسعه یک سیستم‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫‪.4‬‬
‫‪.5‬‬
‫مطالعه دقیق عملیات سیستم جاری و تعیین چگونگی اجرای فعالیت‌ها‬
‫تعیین ویژگی‌ها و قابلیت‌های سیستم جدید (نیازمندی‌های سیستم جدید)‬
‫تولید سیستم جدید و اجرای آن‬
‫آموزش سیستم جدید‬
‫بکارگیری سیستم جدید در عملیات و کارهای روزمره‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬هر موجودیتی اعم از سیستم‌های کامپیوتری و اطالعاتی یک دوره‬
‫زندگی را سپری می‌کنند بدین شکل که مانند هر موجود زنده‌ای‬
‫روزی زاده می‌شوند‪ ،‬سپس دوران رشد خود را سپری کرده و به‬
‫بلوغ (اوج) می‌رسند و سپس دوران افول تا مرگ را سپری‬
‫می‌کنند‪.‬‬
‫‪‬این مفهوم که چرخه زندگی توسعه سیستم (‪ )SDLC‬نامیده می‌شود‬
‫برای سیستم‌های اطالعاتی به صورت ‪ 4‬فاز متوالی بیان می‌شود‪.‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫• نقطه شروع برای ايجاد نياز به تولد يک سيستم جديد‬
‫برنامهريزی سيستم‬
‫• تعيين اينکه نياز به توليد چه سيستم وجود دارد؟‬
‫تحليل سيستم‬
‫• طراحی سيستم جديد و شروع زندگی سيستم جديد‬
‫طراحی سيستم‬
‫• توليد سيستم جديد‪ ،‬معرفی آن و شروع دوران رشد به دليل استفاده از سيستم در سطح وسيعتر‬
‫• استفاده از سيستم در سطح گسترده (دوران بلوغ) و حفظ آن و اينکه با توجه به تغييرات سيستم رفته رفته‬
‫میشود که جای خود را به سيستم ديگری بدهد‪.‬‬
‫پيادهسازی و عملياتی‬
‫کردن سيستم‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫برنامهريزی سيستم‬
‫(‪)System Planning‬‬
‫پيادهسازی و عملياتی کردن‬
‫سيستم ( ‪System‬‬
‫‪Implementation And‬‬
‫‪)Operation‬‬
‫تحليل سيستم ( ‪System‬‬
‫‪)Analysis‬‬
‫طراحی سيستم‬
‫(‪)System Design‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :1‬برنامه‌ریزی سیستم (‪)System Planning‬‬
‫‪‬در این فاز اهداف توسعه سیستم جدید‪ ،‬محدوده سیستم جدید و یک‬
‫امکان سنجی مقدماتی از سیستم جدید تهیه می‌شود‪.‬‬
‫‪‬نیازهای کالن سیستم برای بهبود و توسعه بررسی و اولویت‌بندی‬
‫می‌شوند و سپس یک امکان‌سنجی مقدماتی انجام می‌شود تا محدوده‬
‫کار و رویکرد توسعه سیستم مشخص شود و در نهایت برنامه‬
‫زمان‌بندی و بودجه پروژه توسعه سیستم تهیه می‌شود‪.‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :1‬برنامه‌ریزی سیستم (‪)System Planning‬‬
‫‪‬قدم اول‪ :‬بررسی نیازهای کالن سیستم اولویت‌بندی آن‌ها‬
‫‪‬قدم دوم‪ :‬ارزیابی و تعیین محدوده سیستم جدید (‪)Scope‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :1‬برنامه‌ریزی سیستم (‪)System Planning‬‬
‫‪‬قدم اول‪ :‬بررسی نیازهای کالن سیستم اولویت‌بندی آن‌ها‬
‫‪ .1‬تحلیل‌گر سیستم می‌بایست نیازهای اطالعاتی را به اولویت‌های سیستم تبدیل کرده و سپس برنامه سیستم‬
‫اطالعاتی سازمان را مستند کند‪.‬‬
‫‪ .2‬سیس برنامه‌های پیاده‌سازی سیستم اطالعاتی زمان‌بندی می‌شوند‪.‬‬
‫‪ .3‬یک امکان‌سنجی مقدماتی برای پیاده‌سازی سیستم اطالعاتی انجام می‌شود‪.‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :1‬برنامه‌ریزی سیستم (‪)System Planning‬‬
‫‪‬قدم دوم‪ :‬ارزیابی و تعیین محدوده سیستم جدید (‪)Scope‬‬
‫‪ .1‬برنامه تفضیلی اجرای پروژه‌های سیستم اطالعات‬
‫‪ .2‬خروجی‌ها و نتایجی که از سیستم اطالعاتی حاصل می‌شود‪.‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪ ‬فاز ‪ :2‬تحلیل سیستم(‪)System Analysis‬‬
‫‪ ‬در این فاز مراحل زیر انجام می‌شود‪.‬‬
‫‪ .1‬مطالعه فرایندها و رویه‌ها و دستورالعمل‌های موجود در سیستم‬
‫‪ .2‬سیستم‌های اطالعاتی که جهت انجام کارهای سازمانی وجود دارد‪.‬‬
‫‪ .3‬تحلیل‌گر می‌بایست نیازهای سیستم جدید را شناسایی نماید و تعریف نماید که کاربان از سیستم جدید چه انتظاری دارند‪.‬‬
‫‪ .4‬مطالعه دقیق سیستم‌های دستی و مکانیزه‬
‫‪ .5‬نیازها و ساختار آن‌ها (مواردی که باید حذف شوند‪ ،‬اضافه شوند و ‪)...‬‬
‫‪ .6‬طراحی اولیه آلترناتیو‌ها (راه‌کارها) برای برآوردن نیازها‬
‫‪ .7‬ارزیابی آلترناتیوها جهت برآوردن نیازها از دیدگاه هزینه‪ ،‬نیزوی انسانی و سطح دانش فنی در سیستم‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :2‬تحلیل سیستم(‪)System Analysis‬‬
‫‪‬خروجی فاز تحلیل‬
‫‪‬نیازمندی‌های سیستم جدید و آلترناتیو‌های توسعه سیستم که‬
‫توسط تیم تحلیل‌گر توصیه می‌شود‪.‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :2‬تحلیل سیستم(‪)System Analysis‬‬
‫‪‬خروجی فاز تحلیل‬
‫‪‬در واقع خروچی فاز تحلیل انتظارات و خواسته‌ها از سیستم‬
‫جدید است‪.‬‬
‫‪‬نیازمندی‌های وظیفه‌ای‬
‫‪‬نیازمندی‌های عملکردی‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :2‬تحلیل سیستم(‪)System Analysis‬‬
‫‪‬خروجی فاز تحلیل‬
‫‪‬در واقع چه بودن سیستم جدید در فاز تحلیل مشخص می‌شود‬
‫‪‬چه داده‌هایی؟‬
‫‪‬چه پردازش‌هایی؟‬
‫‪‬چه خروجی گزارشاتی؟‬
‫‪‬و ‪....‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :3‬طراحی سیستم جدید (‪)System Design‬‬
‫‪‬تبدیل نیازمندی‌ها و مشخصات و آلترناتیو‌های پیشنهاد شده‬
‫در فاز تحلیل به مشخصات منطقی و فیزیکی سیستم جدید‪.‬‬
‫‪‬چگونگی رسیدن به چه بودن سیستم جدید‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :3‬طراحی سیستم جدید (‪)System Design‬‬
‫‪‬می‌بایست تمام جنبه‌های سیستم جدید اعم به تفضیل طراحی شود‪.‬‬
‫‪ .1‬ورودی‬
‫‪ .2‬پردازش‌های کامپیوتری‬
‫‪ .3‬خروجی‬
‫‪ .4‬نحوه نمایش و ارائه گزارشات‬
‫‪ .5‬پایگاه داده‌ها‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪ ‬فاز ‪ :3‬طراحی سیستم جدید (‪)System Design‬‬
‫‪ ‬تبدیل طراحی منطقی به حالت و مشخصات سیستم جدید (چگونگی‬
‫رسیدن به نیازمندی‌های سیستم جدید)‬
‫‪‬چه زبان کامپیوتری استفاده شود؟‬
‫‪‬چه پایگاه داده و ساختار فایلی مورد استفاده قرار گیرد؟‬
‫‪‬چه سیستم عامل و چه سخت افزاری مورد نیاز است؟‬
‫‪‬چه شبکه کامپیوتری نیاز است؟‬
‫‪‬طراحی فرم‌های ورود داده‌ها و خروجی‌های سیستم به چه صورت است؟‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :4‬فاز پیاده‌سازی سیستم جدید و عملیاتی کردن آن( ‪System‬‬
‫‪)Implementation and Operation Design‬‬
‫‪‬مجموعه فعالیت‌هایی که انجام می‌شوند تا یک سیستم طراحی شده‬
‫به یک سیستم قابل نصب و بهره‌برداری و عملیاتی تبدیل شود‪.‬‬
‫‪ .1‬کد کردن برنامه (برنامه‌نویسی)‬
‫‪ .2‬تست و آزمایش سیستم (خطا‌های سیستم شناسایی و رفع می‌گردد)‬
‫‪ .3‬نصب سیستم (در عملیات جاری و روزمره سیستم پیاده می‌شود)‬
‫‪ .4‬نرم‌افزارهای کاربردی نصب و اجرا می‌گردند‪.‬‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :4‬فاز پیاده‌سازی سیستم جدید و عملیاتی کردن آن( ‪System‬‬
‫‪)Implementation and Operation Design‬‬
‫‪‬روند پیاده‌سازی سیستم به صورت کلی شامل مراحل زیر می‌شود‪.‬‬
‫‪ .1‬پشتیبانی‌های اولیه سیستم‬
‫‪ .2‬نهایی کردن مستندات و دستورالعمل‌های سیستم‬
‫‪ .3‬برنامه‌های آموزشی‬
‫‪ .4‬راهنمای کاربران‬
‫چرخه زندگی توسعه سيستم (‪)SDLC‬‬
‫‪‬فاز ‪ :4‬فاز پیاده‌سازی سیستم جدید و عملیاتی کردن‬
‫آن( ‪System Implementation and Operation‬‬
‫‪)Design‬‬
‫‪‬کاربران ممکن است به یک سری خطاهای سیستم برخورد‬
‫کنند یا فکرهایی برای بهبود سیستم داشته باشند‪.‬‬
‫‪‬برنامه‌نویس سیستم تغییرات مورد نظر کاربران را اعمال‬
‫کرده و همینطور طبق تغییر شرایط سیستم برنامه را تعدیل‬
‫می‌کند‪.‬‬
‫تمرین‌کالسی‬