طرح اولیه نرم‌افزار

طرح اولیه نرم‌افزار محصول آخر فرایند نقشه‌برداری نرم‌افزار است. نامش از یک تشبیه، با اصطلاح طرح در صنعت ساخت و ساز سنتی گرفته می‌شود؛ بنابراین، یک طرح اصلی نرم‌افزار باید تعدادی از ویژگی‌های اصلی را با نسخه اصلی خود بنویسد.

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

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

 خواص 
نقشه‌های نرم‌افزاری برای شفافیت ارائه و اطمینان از محلی بودن تمام منطق مربوط، بر یک جنبه کاربرد تمرکز می‌کنند. محلی سازی منطق جنبه برای بهبود قابلیت هدایت در نظر گرفته شده است و این بر اساس این فرض است که معمولاً برنامه‌نویس برنامه می‌خواهد جنبه‌های برنامه را به‌طور مستقل مرور کند.

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

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

 زبانهای هماهنگی قابل ترجمه ماشین (به عنوان مثال CDL) 
زبانهایی مانند زبان توصیف همزمان (CDL) منطق ماکروسکوپی یک برنامه (ارتباطات، همگام سازی و نظارت) را از برنامه‌های پیچیده چند رشته‌ای AND/OR چند فرآیندی به یک نمایش بصری پیوسته تبدیل می‌کند. ماهیت تجویزی این توصیف به این معنی است که می‌توان آن را به یک چارچوب اجرایی ترجمه کرد که ممکن است قبل از در دسترس بودن منطق میکروسکوپی، از نظر یکپارچگی ساختاری (تشخیص وضعیت رقابت، بن‌بست‌ها و غیره) آزمایش شود.

 طراحان کلاس 
طراحان کلاس خصوصیات ساختارهای داده دلخواه پیچیده را به شکلی راحت مجاز می‌دانند و ماهیت تجویزی این توضیحات، به تولید کد اجرایی اجازه می‌دهد تا مدیریت لیست، ترجمه قالب، تعویض اندین و غیره را انجام دهد..

 طراحان نرم‌افزار 
کلاسها به عنوان بلوکهای سازنده توسط طراحان نرم‌افزار برای مدل‌سازی ساختارهای پیچیده‌تر استفاده می‌شوند. در معماری نرم‌افزار، زبان مدل‌سازی یکپارچه(UML) یک استاندارد صنعتی است که برای مدل‌سازی نقشه اولیه نرم‌افزار استفاده می‌شود. UML نشان دهنده ساختار، ارتباطات و تعاملات بین عناصر مختلف نرم‌افزار، مانند کلاس‌ها، اشیا or یا اجزا است. این به طراح نرم‌افزار کمک می‌کند تا ایده‌ها را با سایر اعضای جامعه نرم‌افزار طراحی، تحلیل و ارتباط برقرار کند.

 جستارهای وابسته 
 طراحی نرم‌افزار

 پیوند به بیرون 
رده:معماری نرم‌افزار