چرخه حیات توسعه سیستم ها(SDLC)

چرخه حیات توسعه سیستم ها( THE SYSTEMS DEVELOPMENT LIFE CYCLE) فرآیند درک این موضوع است که چگونه یک سیستم اطلاعاتی(IS) می تواند با طراحی یک سیستم، ساخت و تحویل آن به کاربران، نیازهای کسب وکار یا سازمان را پشتیبانی کند.چرخه حیات توسعه سیستم ها - متدولوژی Agileشخص کلیدی در SDLC تحلیلگر سیستم است که کسب و کار را تجزیه و تحلیل می کند، فرصت های بهبود را شناسایی کرده و یک سیستم اطلاعاتی برای پیاده سازی آنها طراحی می کند. تجزیه و تحلیل سیستم یکی از شغل های جالب، هیجان انگیز و چالش برانگیز است. تحلیلگران سیستم با افراد متنوعی همکاری می کنند و روش انجام کار خود را همزمان توسعه می دهند. به طور خاص، آنها با تیمی از تحلیلگران سیستم، برنامه نویسان و دیگران در یک مأموریت مشترک کار می کنند. تحلیلگران سیستم با مشاهده تأثیر قابل توجه سیستم های تحلیل و طراحی شده توسط آنها در کسب و کار و سازمان؛ احساس رضایت می کنند، زیرا می دانند مهارت های منحصر به فردشان تحقق این امر را در بر داشته است.با این حال، هدف اولیه یک تحلیلگر سیستم ایجاد یک سیستم فوق العاده نیست. در عوض، ایجاد ارزش برای سازمان است، که برای بیشتر شرکت ها به معنای افزایش سود است (سازمان های دولتی و سازمان های غیر انتفاعی ارزش را متفاوت اندازه گیری می کنند). سیستم های زیادی وجودی دارد که شکست خورده رها شده اند زیرا تحلیلگران سعی کرده اند یک سیستم فوق العاده بسازند بدون اینکه به وضوح درک کنند که چگونه این سیستم با اهداف سازمان، فرآیندهای تجاری فعلی و سایر سیستم های اطلاعاتی برای ارائه ارزش مطابقت دارد. سرمایه گذاری در یک سیستم اطلاعاتی مانند هر سرمایه گذاری دیگری است. هدف دستیابی به ابزار نیست، زیرا ابزار صرفاً وسیله ای برای رسیدن به هدف است. هدف این است که سازمان را قادر سازد تا کار خود را بهتر انجام دهد تا بتواند سود بیشتری کسب کند یا به صورت موثرتر به اعضای خود خدمت کند.ساخت سیستم اطلاعاتی از بسیاری جهات مشابه ساخت خانه است. اول، خانه (یا سیستم اطلاعاتی) با یک ایده اساسی شروع می شود. دوم، این ایده به یک طراحی ساده تبدیل می شود که به مشتری نشان داده می شود و به مرور دقیق تر می شود تا زمانی که مشتری موافقت کند که تصویر آنچه را که می خواهد نشان می دهد. سوم، مجموعه ای از نقشه های اولیه طراحی شده است که اطلاعات بسیار دقیق تری در مورد خانه ارائه می دهد (به عنوان مثال، نوع شیر آب یا محل قرارگیری فیش های تلفن). سرانجام، خانه با پیروی از نقشه ها ساخته می شود، که اغلب با ایجاد تغییراتی توسط مشتری به وجود می آید.این چرخه دارای مجموعه مشابهی از چهار فاز اساسی است: برنامه ریزی، تجزیه و تحلیل، طراحی و پیاده سازی. پروژه های مختلف ممکن است قسمتهای مختلف SDLC را مورد تأکید قرار دهند یا از راه های مختلف به مراحل SDLC نزدیک شوند، اما همه پروژه ها عناصر این چهار فاز را دارند. هر فاز خود از مجموعه ای از مراحل تشکیل شده است که متکی به تکنیک هایی است که محصولات قابل تحویل را تولید می کند (اسناد و فایل های خاصی که درک درستی از پروژه را ارائه می دهند.)برنامه ریزی(Planning)فاز برنامه ریزی فرآیند اساسی درک این مسئله است که چرا باید یک سیستم اطلاعاتی ساخته شود و نحوه کار تیم پروژه برای ساختن آن مشخص شود.این فاز دو مرحله دارد:1. در حین شروع پروژه، ارزش تجاری سیستم برای سازمان مشخص می شود: چگونه هزینه ها را کاهش می دهد یا درآمد را افزایش می دهد؟ بیشتر ایده ها برای سیستم های جدید از خارج از حوزه IS (به عنوان مثال، از بخش بازاریابی، بخش حسابداری) در قالب درخواست سیستم ارائه می شوند. یک درخواست سیستم خلاصه ای از نیازهای تجاری را ارائه می دهد، و توضیح می دهد که چگونه سیستمی که این نیاز را پشتیبانی می کند، ارزش تجاری را ایجاد می کند. بخش IS با فرد یا بخشی که درخواست را ایجاد کرده است (به عنوان کارفرمای پروژه) برای انجام تجزیه و تحلیل امکان سنجی کار می کند.درخواست سیستم و تجزیه و تحلیل امکان سنجی به کمیته تأیید سیستم های اطلاعاتی (که بعضاً به عنوان کمیته راهبری نیز خوانده می شود) ارائه می شود، که تصمیم می گیرد که آیا پروژه انجام شود.2. پس از تصویب پروژه، وارد مدیریت پروژه می شود. در طول مدیریت پروژه، مدیر پروژه یک برنامه کاری ایجاد می کند، پروژه را مدیریت می کند و روشهایی را برای کمک به تیم پروژه در کنترل و هدایت پروژه از طریق کل SDLC ارائه می دهد. مورد تحویل برای مدیریت پروژه یک طرح پروژه است، که نحوه کار تیم پروژه برای توسعه سیستم را توصیف می کند.تحلیل و بررسی(Analysis)فاز تجزیه و تحلیل به این سوالات پاسخ می دهد که چه کسی از سیستم استفاده خواهد کرد، سیستم چه کاری انجام خواهد داد و کجا و چه زمانی استفاده می شود. در طول این مرحله، تیم پروژه هر سیستم (سیستم) فعلی را بررسی می کند، فرصت های بهبود را شناسایی می کند و مفهومی برای سیستم جدید ایجاد می کند.این فاز سه مرحله دارد:1. یک استراتژی تجزیه و تحلیل برای هدایت تلاش های تیم پروژه تدوین شده است. چنین استراتژی معمولاً شامل تجزیه و تحلیل سیستم فعلی (سیستم موجود) و مشکلات آن و سپس راههای طراحی سیستم جدید (به نام سیستم آینده) است.2. مرحله بعدی جمع آوری نیازها است (به عنوان مثال، از طریق مصاحبه یا پرسشنامه). تجزیه و تحلیل این اطلاعات - همراه با دریافت اطلاعاتی از طرف کارفرمای پروژه و افراد دیگر - منجر به توسعه مفهومی برای سیستم جدید می شود. سپس از مفهوم سیستم به عنوان پایه ای برای توسعه مجموعه ای از مدل های تجزیه و تحلیل کسب و کار استفاده می شود، که نحوه عملکرد کسب و کار در صورت استفاده از سیستم جدید توسعه یافته است.3. تجزیه و تحلیل ها، مفهوم سیستم و مدل ها در سندی به نام پیشنهاد سیستم ترکیب می شوند که به کارفرمای پروژه و سایر تصمیم گیرندگان اصلی (مثلاً اعضای کمیته تأیید) ارائه می شود که در مورد ادامه پروژه تصمیم می گیرند حرکت به جلو پیشنهاد سیستم تحویل اولیه است که توصیف می کند سیستم جدید چه نیازهای تجاری را باید برآورده کند.از آنجا که این فاز واقعاً اولین قدم در طراحی سیستم جدید است، برخی از کارشناسان استدلال می کنند که استفاده از اصطلاح "تجزیه و تحلیل"“analysis” به عنوان نام این مرحله نامناسب است. برخی معتقدند که نام بهتر “analysis and initial design” "تجزیه و تحلیل و طراحی اولیه" است. بیشتر سازمانها همچنان از نام تجزیه و تحلیل برای این مرحله استفاده می کنند، بنابراین ما در این کتاب نیز از آن استفاده می کنیم. فقط بخاطر داشته باشید که محصول قابل تحویل از مرحله تجزیه و تحلیل هم یک طراحی اولیه و هم سطح بالایی برای سیستم جدید است.طراحی(Design)فاز طراحی از نظر سخت افزار، نرم افزار و زیرساخت شبکه نحوه عملکرد سیستم را در مورد رابط کاربری، فرم ها و گزارش ها، برنامه ها، پایگاه های داده و موارد و فایل های مورد نیاز تعیین می کند. اگرچه بیشتر تصمیمات استراتژیک در مورد سیستم در توسعه مفهوم سیستم در مرحله تجزیه و تحلیل گرفته شده است، مراحل انجام مرحله طراحی دقیقاً نحوه عملکرد سیستم را تعیین می کند.مرحله طراحی دارای چهار مرحله است:1. استراتژی طراحی(The design strategy) ابتدا تدوین می شود. این روش روشن می کند که آیا سیستم توسط برنامه نویسان شرکت توسعه می یابد، آیا سیستم به شرکت دیگری (معمولاً یک شرکت مشاور) سپرده می شود، یا اینکه این شرکت بسته نرم افزاری موجود را خریداری می کند.2. این امر منجر به توسعه طراحی معماری اساسی برای سیستم می شود که شامل سخت افزار، نرم افزار و زیرساخت شبکه مورد استفاده است. در بیشتر موارد، سیستم زیرساخت های موجود در سازمان را اضافه یا تغییر می دهد. طراحی رابط Navigation کاربران از طریق سیستم (به عنوان مثال، روشهای Navigation مانند منوها و دکمه های روی صفحه) و فرم ها و گزارش هایی را که سیستم استفاده خواهد کرد، مشخص می کند.3. توسعه پایگاه داده ها و مدیریت و توسعه فایل. این موارد دقیقاً مشخص می کنند چه داده هایی ذخیره می شوند و در کجا ذخیره می شوند.4- تیم تحلیل گر طراحی برنامه را توسعه می دهد، که برنامه هایی را که باید نوشته شوند و دقیقاً کاری که هر برنامه انجام می دهد تعریف می کند.این مجموعه قابل تحویل (طراحی معماری، طراحی رابط، مشخصات پایگاه داده و فایل و طراحی برنامه) مشخصات سیستم است که برای پیاده سازی به تیم برنامه نویسی تحویل داده می شود. در پایان مرحله طراحی، تجزیه و تحلیل امکان سنجی و برنامه پروژه مورد بررسی مجدد و بازنگری قرار می گیرد و تصمیم دیگری توسط کارفرمای پروژه و کمیته تصویب پروژه در مورد خاتمه پروژه یا ادامه آن گرفته می شود.پیاده سازی Implementationمرحله نهایی در SDLC مرحله پیاده سازی است که طی آن سیستم در واقع ساخته می شود (یا به صورت بسته نرم افزار خریداری می شود). این مرحله ای است که معمولاً بیشترین توجه را به خود جلب می کند، زیرا برای اکثر سیستم ها طولانی ترین و گرانترین قسمت تک فرآیند است. این فاز سه مرحله دارد:1. ساخت سیستم اولین قدم است. این سیستم برای اطمینان از عملکرد مطابق طراحی، ساخته و آزمایش شده است. از آنجا که هزینه اشکالات می تواند بسیار زیاد باشد، آزمایش یکی از مهمترین مراحل پیاده سازی است. بیشتر سازمانها بیشتر از نوشتن برنامه ها به تست زدن زمان و توجه بیشتری می دهند.2. سیستم نصب شده است. نصب فرآیندی است که در آن سیستم قدیمی خاموش و سیستم جدید روشن می شود. یکی از مهمترین جنبه های تبدیل، تهیه یک برنامه آموزشی برای آموزش نحوه استفاده از سیستم جدید و کمک به مدیریت تغییرات ناشی از سیستم جدید به کاربران است.3- تیم آنالیزور یک طرح پشتیبانی برای سیستم ایجاد می کند. این طرح معمولاً شامل بازبینی رسمی یا غیررسمی پس از اجرا و همچنین روشی سیستماتیک برای شناسایی تغییرات عمده و جزئی مورد نیاز سیستم است.منبع:Systems Analysis and Design: An Object-Oriented Approach with UML, 5th Edition by Dennis, Wixom, and Tegarden