بازنویسی کامل کرد. متن قبلی به شدت نخ نما و غیر علمی به نظرم رسید.
Fatranslator (بحث | مشارکتها) جز (افزودن ناوباکس> {{مهندسی نرمافزار}} (درخواست کاربر:Kian)+املا+تمیز+) |
(بازنویسی کامل کرد. متن قبلی به شدت نخ نما و غیر علمی به نظرم رسید.) |
||
{{بدون منبع}}
[[پرونده:SDLC-Maintenance-Highlighted.png|بندانگشتی|240px|چرخه حیات توسعه سیستم]]
این عبارت می تواند معادل اصطلاح (SDLC (System Development Life Cycle دانسته شود گه در مهندسی نرم افزار و رشته های مرتبط با موضوع سیستم های اطلاعاتی مورد استفاده قرار می گیرد و موضوع آن تشریح فرآیند های مرتبط با برنامه ریزی و هدف گزاری، تحلیل، تولید، آزمایش، استقرار و نگهداری سیستم های نرم افزاری است که اغلب در یک چرخه مانند آنچه در دیاگرام مشاهده می شود تداوم و تکرار پیدا می کنند. این چرخه همچنین می تواند در برگیرنده فرایندهای مربوط به تامین سخت افزار و یا ترکیبی از سخت افزارها و نرم افزارها نیز دانسته شود.
'''کلیات'''
یک چرخه توسعه سیستم علی القاعده باید ترکیبی از گا مهای به دقت تعریف شده و تفکیک شده باشد که توسط مهندسین نرم افزار و توسعه دهندگان سیستم برای تولید، عرضه، نگهداری و ارتقاء یک سیستم اطلاعاتی با کیفیت و سرعت و هزینه مناسب به کار گرفته می شوند. با این وجود روش شناسی (Methodology) های متعدد و گاه متضاد در مهندسی نرم افزار وچود دارند که در مورد بعضی از آن ها رعایت کامل و دقیق این گام ها مورد نیاز یا توصیه نیست یا عمدا بر خلاصه کردن و حتی حذف برخی مراحل تاکید می شود. از این نوع می توان به خانواده روش شناسی های توسعه نرم افزار موسوم به چابک (Agile Methodologies) و بخصوص یک شکل تعمیم یافته آن یعنی Scrum و آنچه در دهه دوم این قرن به عنوان DevOps به شدت مطرح است اشاره کرد. حتی در میان سایر متدولوژی های توسعه نرم افزار به استثنای آنچه به نام روش آبشاری شناخته می شود ( که بیش از همه مورد علاقه ارائه کننده گان درس های مربوط به سیستم های اطلاعاتی در رشته مهندسی صنایع در ایران است و در واقع امروزه دیگر باید به عنوان یک روش شناسی منسوخ طبقه بندی شود) گرایش غالب، خلاصه کردن یا حتی حذف برخی از این گا مها و اغلب تاکید بر جنبه دورانی کل فرآیند است. به عنوان مثال در روش شناسی های مبتنی بر تکرار (Iterative Methodologies) مانند RUP یا XP تاکید بر محدود کردن حوزه مسئله از ابتدا و آمادگی برای اعمال تغییرات سریع است.
به این ترتیب واضح است که نام بردن از چرخه حیات سیستم نباید توام با غفلت از پویایی و تحولی باشد که این مفهوم طی دهه های اخیر تجربه کرده است و همچنان دستخوش آن است. یک مهندس نرم افزار و کلیه افرادی که در سطوح مختلف در یک پروژه نرم افزاری با وی همکاری می کنند باید در مورد استنباط خود از مفهوم و وزن نسبی هریک از این گام ها در چارچوب متدولوژی ای که انتخاب شده است درک روشن و مشترکی داشته باشند این البته شامل مشتری نیز می شود زیرا نظارت و مدیریت پروژه و گنترل کیفیت و مدیریت محصول بدون درک چرخه حیات سیستم در چارچوب روش شناسی حاکم بر توسعه آن عملا ممکن نخواهد بود.
'''تاریخچه'''
مطابق آنچه الیوت و دیگران(2004) ابراز می کنند SDLC نخستین بار در دهه 60 قرن بیستم میلادی در پس زمینه ای از سازمان ها و بنگاه های اقتصادی بزرگ که انگیزه و توانایی به کار گرفتن سیستم های تجاری به نوبه خود بزرگ را داشتند که که عمدتا بر پردازش داده و محاسبات عددی متمرکز بودند. همزمان تعدادی از روش شناسی ها و فریم ورک های توسعه نرم افزار (مانند SSADM ) این مفهوم را در بر گرفته، مورد استفاده قرار دادند اما به تدریج و با توسعه فن آوری اطلاعات و همه گیر شدن آن گرایش واضحی به غلبه بر نقاط ضعف و محدودیت های مستتر در مفهوم چرخه حیات سیستم شکل گرفت و متدولوژی های جدید تر به طور روز افزون به خلاص کردن گریبان خود از این مفهوم و بازتعریف آن به شکلی منعطف و چابک روی آوردند.
'''مراحل'''
قدیمی ترین روش شناسی و در حقیقت مادر مفهوم چرخه حیات نرم افزار بدون شک روش آبشاری (Waterfall) است و هرچند که امروزه عملا یک روش منسوخ و قدیمی محسوب می شود اما هر زمان که شما با واژه چرخه حیات سیستم برخورد می کنید در حقیقت با میراث این روش شناسی سروگار دارید که مثلا توسط یک فرد علاقمند به حوزه سیستم های اطلاعاتی، یک مهندس صنایع با آشنایی محدود نسبت به مسائل مهندسی نرم افزار، یک مهندس ناظر نماینده مشتری که انگیزه جدی برای کاهش ریسک پروژه در خود احساس می کند و امثال ایشان سروکار دارید که دانسته یا ندانسته به روش شناسی مزبور متوسل می شوند تا درک روشنی از آنچه جریان دارد یا در پیش روست برای خود یا دیگران شکل بدهند.
در روش آبشاری نصویری ساده انگارانه از فرآیند توسعه سیستم مطرح است:
1- برنامه ریزی: نیازی، درخواستی، هدفی مطرح می شود، این احتمالا به تولید یک سند منجر خواهد شد که حوزه و دامنه مسئله را درون خود جای می دهد.
2- تجزیه و تحلیل: سند دریافتی از مرحله قبل مبنای کار قرار می گیرد و توام با بررسی وضعیت جاری سند دیگری تولید می شود که به توصیف دقیق وضعیت موچود و محددیت های احتمالی و شرایط خاص مرتبط با موضوع می پردازد.
3- طراحی: هر دو سند در یافتی از مراحل قبل مورد استفاده قرار می گیرند تا یک سیستم هدف در سطوح کلی و جزیی توصیف و به اصطلاح طراحی شود.
4- اجرا: در طول یک فعالیت اجرایی با کمک سند طراحی دریافتی از مرحله قبل سیستم تولید، آزمایش، نصب و راهبری و نگاهداری می شد.
'''تکامل'''
همچنانکه اشاره شد مفهوم "چرخه حیات سیستم" در طول زمان دستخوش تحول و تغییر بسیار گردیده است. قبل از هرچیز از شدت و حدت استفاده از این مفهوم روزبروز کاسته شد و علاوه بر آن با وارد کردن یک مسیر بازخورد از مرحله اجرا به مرحله برنامه ریزی سعی در نجات ظاهر بوروکراتیک و خطی آن شد و در ادامه با تچدید نظر در اهمیت و وزن نسبی هریک از مراحل به طور کامل از معنای اولیه خود دور شده به یک قرارداد مبهم زبانی برای اشاره به مفاهیمی کلی تبدیل گردید. {{پانویس}}
* ویکیپدیا انگلیسی
|