مراحل تولید نرم افزار سفارشی
معمولاً شرکت های تولیدکننده نرم افزار با بهره بردن از افراد با تخصص های مختلف اقدام به تولید نرم افزار می کنند. ساخت یک نرم افزار سفارشی هم مشابه تولید یک نرم افزار عمومی است با این تفاوت که نرم افزار سفارشی برای یک نفر یا یک مجموعه ساخته می شود و نیازهای آن ها را پوشش می دهد ولی نرم افزارهای عمومی برای کلیت از جامعه ایجاد و ساخته می شود. تمامی اصول طراحی سایت در نرم افزار سفارشی دیده می شود.
SDLC حروف اختصاری Software Development Life Cycle می باشد که به معنی چرخه تولید نرم افزار است که تحلیلگر ها آن را روند تولید نرم افزار می نامند. در واقع روند تولید نرم افزار، چارچوبی است که تمامی عملیاتی را که در هر مرحله از تولید نرم افزار انجام می گیرد، تعریف می کند.
تست و آزمایش محصول
افرادی جهت تست نرم افزار در نظر گرفته می شوند که زیر بار و تست های مختلف اشکالات نرم افزار استخراج می شود و مجدد به تیم اجرایی فیدبک داده می شود. اگر تست نرم افزار با دقت انجام شود، از تبدیل شدن باگ ها به نقص های بزرگ جلوگیری خواهد شد. علاوه بر این، تست نرم افزار کیفیت نیازمندی های کاربردی و غیرکاربردی نرم افزار را تعیین می کند، همچنین تعداد و اهمیت خطاهای پیدا شده از طریق تست نرم افزار، اعتبار آن سیستم را مشخص می کند.
بعد از تست؛ تکمیل آموزش ها و مستندات مهم است. تیم های آموزشی شرکت برای نرم افزار تولید این آموزش ها و مستنداتی تولید می کنند و در اختیار کارفرما قرار داده می شود تا با تیم خود به اشتراک بگذارد.
استقرار و پشتیبانی
نرم افزار تولیدی بر روی سرور و هاست مورد نظر پیاده می شود و دسترسی ها برای کارفرما ایجاد می شود و شروع به کار با سیستم نماید.
تیم پشتیبان از این مرحله تا زمان تعریف شده همراه کاربران نرم افزار است و در صورت نیاز پشتیبانی های لازم را در اختیار آن ها قرار می دهند. حتی اگر درخواست جدیدی باشد که جلسات به تیم طراحی و اجرا ارجاع می دهد تا در این نرم افزار گنجانده شوند نرم افزار یک موجود زنده است و باید مثل یک باغچه و علف های هرز آن رسیدگی کرد و همیشه پویا باشد. در نتیجه یک بار برای همیشه نیست. در شرکت دات نرم افزار می توانید از سیستم پشتیبانی تیکتینگ و تماس تلفنی استفاده کنید.
مدل های روند تولید نرم افزار
این روند مدل های متفاوتی دارد که برخی از آن ها به شرح زیر است:
- مدل آبشاری Waterfall Model
- مدل تکراری Iterative Model
- مدل حلزونی یا مارپیچ Spiral Model
- مدل وی V Model
- مدل بینگ بنگ Big Bang Model
- مدل سریع Agile Model
- مدل تولید سریع برنامه کاربردی RAD-Rapid Application Development
مدل آبشاری و مدل V مدل های سنتی و از نوع افزایشی هستند. منظور از افزایشی این است که مرحله بعدی صرفاً می تواند پس از تکمیل مرحله قبلی آغاز گردد. این مدل ها برای پروژه هایی مطلوب هستند که نیازمندی های محصول روشن و آشکار بوده و این نیاز ها در طول دوره و تا تکمیل پروژه تغییر نخواهد کرد.
مدل های تکراری یا مدل حلزونی با تغییرات سازگار بوده و برای پروژه هایی که نیازها به نحوی تعریف و مشخص نشده اند و یا نیاز بازار غالباً دچار تغییر می گردند مناسب می باشند.
مدل بیگ بنگ از زمره روش های نادر در تولید نرم افزار بوده و صرفاً جهت پروژه های کوچک و یا آکادمیک مناسب است.
مدل چابک معروف ترین مدل در صنعت است. مدل چابک با استفاده از شیوه مدل سازی توان تحویل سریع محصول به مشتری را دارا می باشد. مدل چابک پروژه را به بخش های تکراری کوچک که هر یک دارای ویژگی خاصی است تقسیم می کند. تعامل مشتری، در این مدل ستون فقرات متدولوژی را تشکیل داده و ارتباط باز با حداقل مستندات از مشخصات بارز محیط تولید چابک محسوب می گردد.
مدل تولید سریع و نمونه سازی نرم افزار، تکنیکی نوین در جهت شناخت نیازمندی ها در مراحل اولیه چرخه پروژه بشمار می رود. در این مدل و تکنیک، یک مدل نمونه و کاری جهت مشاهده و ارایه نظریات به مشتریان و ذینفعان ارایه می گردد. بازخورد مشتریان با شیوه ای منظم و متشکل جهت اصلاح و تکمیل محصول مورد استفاده قرار می گیرد.
معرفی کتاب در حوزه چرخه تولید نرم افزار و مدل هایش
1- توسعه نرم افزار، طراحی و کدنویسی
اصول طراحی نرم افزار خوب و نحوه تبدیل آن اصول به کدی عالی را خواهید آموخت. این کتاب، شما را با مهندسی نرم افزار، از کاربرد اصول مهندسی تا توسعه نرم افزار آشنا می کند.
مطالبی که در کتاب Software Development, Design and Coding: With Patterns, Debugging, Unit Testing, and Refactoring یاد خواهید گرفت:
- مرور روش های چابک مدرن از جمله اسکرام و برنامه نویسی Lean
- استفاده از توانایی های سیستم های کامپیوتری مدرن با برنامه نویسی موازی
- کار با الگو های طراحی به منظور بهره برداری از بهترین شیوه های توسعه
- استفاده از ابزار های مدرن برای توسعه، همکاری و کنترل سورس کد
2- هنر تست نرم افزار
The Art of Software Testing-By Glenford J Myers
در چند دهه گذشته تست نرم افزار به طور قابل توجهی تغییر کرده است، تحلیل زیربنایی قدرتمند این کتاب را متمایز می کند. در حالی که بیشتر کتاب های تست نرم افزار تکنیک های توسعه، زبان ها یا روش های آزمایشی خاصی را هدف قرار می دهند، هنر تست نرم افزار، ارائه ای مختصر اما قدرتمند و جامع از روش های تست نرم افزار اثبات شده در طول زمان است. اگر پروژه توسعه نرم افزار شما برایتان مهم است، این کتاب را بعنوان سرمایه گذاری ببینید.
3- مدیریت پروژه چابک با اسکرام
Agile Project Management with Scrum – by Ken Schwaber
قوانین و شیوه های اسکرام – فرآیندی ساده برای مدیریت پروژه های پیچیده – اندک، ساده و آسان برای یادگیری هستند. اما سادگی خود اسکرام – عدم تجویز آن – می تواند خلع سلاح شود، و پزشکان جدید اغلب در حال بازگشت به عادات و ابزارهای مدیریت پروژه قدیمی هستند و نتایج کمتری به همراه دارند. در این سری از مطالعات موردی روشنگر، کن شوابر، خالق و مبشر اسکرام، درس های دنیای واقعی – موفقیت ها و شکست ها – را که از سال ها تجربه خود در مربیگری شرکت ها در مدیریت پروژه چابک استخراج شده است، شناسایی می کند. از طریق آن ها، نحوه استفاده از Scrum را برای حل مشکلات پیچیده و کسب نتایج بهتر – ارائه سریعتر نرم افزارهای ارزشمندتر، درک خواهید کرد.
پایه و اساس نظریه اسکرام – و عمل – را به دست آورید، باید:
• حتی پیچیده ترین و سخت ترین پروژه ها را مهار کنید
• نیازهای محصول ناشناخته یا در حال تغییر را به طور مؤثر مدیریت کنید
• زنجیره فرماندهی را با تیم های توسعه خود مدیریتی ساده کنید
• مشخصات واضح تری – و بازخورد – از مشتریان دریافت کنید
• زمان برنامه ریزی پروژه و ابزارهای مورد نیاز را بسیار کاهش دهید
• محصولات را در چرخه های 30 روزه بسازید و عرضه کنید تا مشتریان زودتر محصولات قابل تحویل را دریافت کنند
• با بازرسی منظم، گزارش دهی و تنظیم دقیق پروژه ها از گام های اشتباه اجتناب کنید
• پشتیبانی از تیم های متعددی که بر روی یک پروژه در مقیاس بزرگ از بسیاری از مکان های جغرافیایی کار می کنند
• بازگشت سرمایه را به حداکثر برسانید!
مطالبی که در کتاب Software Development, Design and Coding: With Patterns, Debugging, Unit Testing, and Refactoring یاد خواهید گرفت:
پایه و اساس نظریه اسکرام – و عمل – را به دست آورید، باید:
• حتی پیچیده ترین و سخت ترین پروژه ها را مهار کنید
• نیازهای محصول ناشناخته یا در حال تغییر را به طور مؤثر مدیریت کنید
• زنجیره فرماندهی را با تیم های توسعه خود مدیریتی ساده کنید
• مشخصات واضح تری – و بازخورد – از مشتریان دریافت کنید
• زمان برنامه ریزی پروژه و ابزارهای مورد نیاز را بسیار کاهش دهید
• محصولات را در چرخه های 30 روزه بسازید و عرضه کنید تا مشتریان زودتر محصولات قابل تحویل را دریافت کنند
• با بازرسی منظم، گزارش دهی و تنظیم دقیق پروژه ها از گام های اشتباه اجتناب کنید
• پشتیبانی از تیم های متعددی که بر روی یک پروژه در مقیاس بزرگ از بسیاری از مکان های جغرافیایی کار می کنند
• بازگشت سرمایه را به حداکثر برسانید!
درباره این مطلب دیدگاهی بنویسید...
آدرس پست الکترونیک شما منتشر نخواهد شد.