زبان مدلسازی UML
تا چند سال پیش همه ی رشته ها برای خود زبان مشترک داشتند،
مثلاً ریاضیدانان از زبان ریاضی و مهندسین الکترونیک از زبان مداری استفاده میکردند،
ولی مهندسین نرم افزار زبان واحدی نداشتند،
تا اینکه UML پا به عرصه وجود گذاشت و باعث شد که مهندسین نرم افزار بتوانند مفاهیم موردنیاز خود را بهراحتی با یکدیگر در میان بگذارند
و کارهایشان را مدل کنند. یک مدل یا تصویر میتواند سرعت انتقال مطلب را تا ۱۰ برابر افزایش دهد.
یک مدل خوب میتواند چهکاری انجام دهد؟
نیازمندیها را مشخص میکند.
ارتباطات بین قسمتهای مختلف پروژه را به ما نشان میدهد.
بدون وارد شدن به جزییات میتواند در نحوهی فعلوانفعالات قسمتهای مختلف پروژه تمرکز کند.
در یک تیم کاری، به علت وجود یکزبان گرافیکی مشترک، ارتباط بین افراد تیم بهبود می یابد.
Use Case Diagram:
نشاندهنده کل کارهایی که سیستم قرار است انجام دهد.
هر Use Case نشاندهنده یک سرویس است که سیستم در اختیار کاربران قرار می دهد.
خواه این کاربر یک فرد باشد یا یک سازمان یا یک سیستم دیگر وظیفه دارد از یک دید بالا کلیه فعالیت های درون سیستم را مدل کند.
Logical View:
نقشه اصلی سیستم یا طرحی است که باید پیاده سازی شود یعنی آنچه در Use Case View نمایش داده شده است اکنون کمی تخصصی تر شده است. ما با مفاهیم برنامه نویسی بیشتر سروکار خواهیم داشت.
عناصر اصلی Logical View همان کلاس ها به همراه attribute ها و متدها هستند.
عمده کار Logical View نمایش ارتباط واقعی میان کلاس ها در سیستم است.
Component View:
باید در این مرحله کلاس های ایجاد شده به Component تبدیل شوند باید ارتباط میان Component ها مشخص شود.
این ارتباطات می تواند از نوع ارتباط زمان اجرا زمان ترجمه یا زمان کامپایل باشد. این Component ها می توانند زیر سیستم ها هم باشند.
این زیر سیستم ها معمولا مجموعه ای از کلاس ها هستند که از لحاظ منطقی با هم سازگاری داشتند و در کنار هم قرار گرفته اند.
در این قسمت عمده فعالیت های طراحی به صورت کدهای برنامه نویسی در آیند.
Deployment View:
باید محل قرار گرفتن Component های مرحله قبل دقیقا مشخص کنیم. نوع platform را هم مشخص کرده و به بررسی بستر نرم افزاری و سخت افزاری سیستم می پردازد.
این اغلب برای کسانی که درصدد توسعه یک نرم افزار قدیمی هستند مورد استفاده قرار می گیرد.