روش توسعه سامانه‌های پویا

بندانگشتی|روش توسعه سامانه‌های پویا
توسعه سیستم‌های پویا یک چارچوب برای تحویل پروژه‌های نرم‌افزاری به روش چابک است. برای اولین بار در سال ۱۹۹۴ این روش برای برطرف ساختن برخی از اشکالات در روش توسعه سریع نرم‌افزار منتشر شد. توسعه سیستم‌های پویا یک روش تکرار شونده و افزایشی است که قوانین موجود در روش چابک (یعنی توسعه پروژه با دخالت مشتری در پروژه) را در بر می‌گیرید.Keith Richards, Agile project management: running PRINCE2 projects with DSDM Atern. OGC – Office of Government Commerce. The Stationery Office, 31 jul. 2007.Plonka, Laura, et al. "UX Design in Agile: A DSDM Case Study." Agile Processes in Software Engineering and Extreme Programming. Springer International Publishing, 2014. 1-15.

توسعه سیستم‌های پویا هزینه، کیفیت و زمان را با استفاده از اولویت بندی روش ماسکو به طرز مناسبی ثابت می‌کند تا در محدودیت زمانی اعلام شده از سوی مشتری پروژه در زمان مناسبی تحویل گردد. همان‌طور که گفته شد روش توسعه سیستم‌های پویا در مدل توسعه نرم‌افزاری چابک قرار می‌گیرد.

در سال 2007 روش توسعه سامانه‌های پویا با نام توسعه سامانه‌های پویایِ آترن ثبت شد . کلمه آترن (atern) کوتاه شده کلمه (Arctic tern) به معنای پرستوی دریای شمال - پرنده‌هایی هستند در قطب شمال که مسافت‌های زیادی را طی می‌کنند و در سفرها با یکدیگر همکاری منسجمی دارند. البته در سال 2014 این نام تغییر یافت و به نام قبلی خود یعنی روش توسعه سامانه‌های پویا بازگشت.Agile Business Consortium. The DSDM Agile Project Framework (2014 Onwards) Handbook – Principles.

 کنسرسیوم (مجمع شرکت‌ها) توسعه سامانه‌های پویا 
در اولیل دهه نود میلادی برنامه‌سازی سریع به سرعت در سطح دنیا فراگیر میشد به‌طوری‌که صنعت آی تی جهان را تحت شعاع خود قرار دارد و به این صورت که ظاهر برنامه‌ها و واسط کاربری برنامه‌ها از آن حالت سبز و ساده و قدیمی که داشتند به سمت واسطه‌های کاربری گرافیکی زیبا و جذاب حرکت می‌کرد.

ابزارهای مختلف مانند پاور بیلدر که برای برنامه‌سازی بود به سرعت در بازارها در حال رشد بود که این باعث شد برنامه نویسان راحت‌تر ایده‌ها و پیشنهادهای خود را به مشتری‌ها انتقال بدهند ، در واقع از اصل پروتوتایپینگ که یک روش کلاسیک و قدیمی بود استفاده می‌کردند . در مقابل این اصل برنامه‌سازی سریع پیشرفت آن به شکل ساختار نایافته و نامنظم بود و هیچ تعریف مشخصی که تمام برنامه نویسان و تمام سازمان‌ها آن تعریف را قبول داشته باشند و به شکل مناسبی نزد آن‌ها مقبولیت داشته باشد وجود نداشت و هر کدام از آن‌ها تعریف و برداشت مستقل خود را از روش توسعه سامانه پویا داشتند (البته همهٔ آن‌ها در این که این یک رویکرد مناسب برای تحویل پروژه است هم نظر بودند که در عین حال می‌توانست کیفیت کار را پایین بیاورد).

همانطور که در بالا گفته شد روش توسعه سامانه‌های پویا در سال 1994 توسط انجمنی از فروشندگان تجاری و متخصصین در زمینه مهندسی کامپیوتر با هدف ایجاد یک چارچوب کاری کامل و متصل برای برنامه‌سازی سریع ایجاد شد.

مبدا این کار توسط گروهی به نام باتلردر شهر لندن بود. ادمایی که در این همایش آمده بودند همگی برای سازمان بلو چیپ کار می‌کردند همانند بریتیش ایر و آمریکن اکسپرس و اوراکل و ... (بقیه شرکت‌های بزرگی که در این زمینه کار می‌کردند) البته تمامی این فعالیت‌ها هیچکدام برای برای منفعت طلبی انجام نمی گرفت بلکه همگی یک هدف یعنی ایجاد یک چارچوب کاری برای تحویل پروژه‌های نرم‌افزاری را دنبال می‌کردند.

 روش توسعه سامانه‌های پویایِ آترن 
این روش همانطور که گفته شد مستقل فروشندگی هست که نشان می‌دهد که بیشتر شسکت‌ها در پروژه‌های نرم‌افزاری بیشتر خود افراد دخیل هستند تا تکنولوژی‌هایی که در پروژه‌ها استفاده می‌شود ،بر همین اساس روش توسعه سامانه‌های پویا بر این موضوع که آدم‌های درون یک پروژه بهتر بتوانند با یکدیگر همکاری کنند تا هدف‌های تجاری خود را برآورده کنند تمرکز دارد.Agile Business Consortium. The DSDM Agile Project Framework (2014 Onwards) Handbook – Principles.

این رویکرد همچنین مستقل از ابزارها و تکنیک‌هایی است که در بسیاری از تجارت‌ها و محیط‌های فنی استفاده بشود.

 اصول 
هشت قاعده در مورد توسعه سامانه‌های پویا در زیر آمده‌است:
 توجه به نیازهای تجارتی که در حال انجام است
 به موقع تحویل دادن پروژه
 همکاری افراد گروه با یکدیگر
 هیچ وقت کیفیت را فراموش نکنید
 از پایه پروژه را شروع کنید و آن را بسازید
 به شکل تکراری افزایش توسع دهید
 با یکدیگر همیشه در ارتباط باشید و منظور یکدیگر را بدانید
 کنترل پروژه را داشته باشد

 پانویس 

رده:روش توسعه سامانه‌های پویا
رده:برنامه‌نویسی
رده:توسعه نرم‌افزاری چابک
رده:فلسفه‌های توسعه نرم‌افزار