***2
تجزیه تحلیل و طراحی سیستمها بخش مهمی از فرایند تولید نرم افزار و سیستمهای نرم افزاری است.
فرایند تولید نرم افزار چگونگی ایجاد کد برنامه برای حل یک مسئله  پیچیده را که شامل مراحل گوناگونی است توصیف می کند.
 
***3
مقدمه
حل مسئله حداقل شامل مراحل زیر است :
درک صورت مسئله یا تجزیه و تحلیل ( نیازمندیها ، معلومات و مجهولات ، ورودیها و خروجیها ، گردش فعالیتها و فرایندها و ... )
ارائه  راه حل ( طراحی )
پیاده سازی
 
***4
وقتی مسئله بزرگ و پیچیده می شود ، فرایند درک مسئله ، کشف راه حل و پیاده سازی آنهم به همان نسبت دشوار ، طولانی و پیچیده خواهد شد.
هر فرایند پیچیده ایی در صورتیکه به درستی و با اتخاذ روشهای و متدهای مناسب مدیریت نشود ، زمینه را برای وقوع اشتباهات بعضاً جبران ناپذیر فراهم می کند.
بسیاری از پروژه های بزرگ  تنها به دلیل اینکه تحلیلگر و طراح آنها به درک دقیق و درست مسئله دست نیافته است شکست خورده و در بعضی موارد به فاجعه تبدیل شده اند.
 
***5
یکی از تلخترین شکستهای بشر که خسارات مادی و معنوی بسیاری را به همراه داشت ، تنها تنیجه  یک اشتباه در طراحی نرم افزار کنترل فضاپیمای شاتل بود.
 
***8
فرایند تولید نرم افزار چگونگی تحلیل ، طراحی و پیاده سازی سیستمهای اطلاعاتی را توصیف می کند
–روش ها و متدها Methodologies
 فرایند دقیق و چند مرحله ایی جهت تولید نرم افزار
–Techniques
  مجموعه ایی از فنون مدلسازی که امکان ایجاد محصولات هر مرحله از فرایند را فراهم می کند
–Tools
 نرم افزارها و برنامه های کامپیوتری که فرایند مدلسازی و بهره گیری از تکنیکها را امکان پذیر می کند
 
***9
فرایند تولید نرم افزار
تولید نرم افزار فرایندی مرحله به مرحله و گام به گام است
مجموعه  مراحل و گامهای مورد نیاز ، محصولات هر مرحله ، قواعد و دستوراتی که باید در ایجاد محصولات میانی رعایت گردد و چگونگی بدست آوردن هر یک از آنها را اصطلاحاً چرخه  حیات نرم افزار ( SDLC ) می نامند.
Software Development Life Cycle = SDLC
 
***10
فرایند تولید نرم افزار
–مراحل فرایند تولید لزوماً ترتیبی نیستند بلکه می توانند :
بازگشتی
 موازی
محاوره ایی
چرخشی
–هر مرحله حداقل یک محصول معین ارائه خواهد کرد