Rational Rose
عناوین
Rational Rose
کاربران Rational Rose
چرا Rational Rose؟
Use case diagramها و خصوصیاتشان
Interaction diagramها و خصوصیاتشان
Class diagramها و خصوصیاتشان
State machine diagramها وخصوصیاتشان
Activity Diagram ها وخصوصیاتشان
Component diagram ها و خصوصیاتشان
Deployment diagram ها و خصوصیاتشان
Rational Rose
ROSE = Rational Object Oriented Software Engineering
کاربرد اصلی آن کمک کردن به توسعه دهندگان سیستم های اطلاعاتی در موارد زیر می باشد:
ساخت یک مدل قبل از به وجود آوردن سیستم
برقراری ارتباط بین اعضای تیم
برقراری ارتباط بین تیم و سرمایه گذاران
اطمینان از عدم نقص در معماری سیستم
هر چه سیستم پیچیده تر باشد اهمیت استفاده از تکنیک های مناسب مدل سازی بیشتر است.
مدل کردن سیستم های نرم افزاری مبتنی بر UML(Unified Modeling Language) Component Object Modeling (COM) and Object Modeling Technique (OMT)
را پشتیبانی می کند.
کاربران Rational Rose
تیم های توسعه دهنده نرم افزار
افرادی که نیاز به توسعه یا درک معماری یک نرم افزار دارند.
برنامه نویسان زبانهای زیر:
C++, Java, Ada, Visual Basic, PowerBuilder, Smalltalk, IDL, Oracle8 ,Forté (Delphi, Centura, Dynasty, JBuilder, Café via 60+ RoseLink Partners)
تحلیل گران سیستم نرم افزاری و امور تجاری
کسانی که با کاربران و یا اعضای تیم نرم افزاری ارتباط دارند.
و دیگر اعضای تیم توسعه دهنده از جمله نویسندگان مستندات و مهندسان تضمین کیفیت که نیاز به درک معماری سیستم نرم افزاری دارند.
چرا Rational Rose ؟
توسعه مبتنی بر ابزارهای Case منجر به کیفیت بالای نرم افزار می شود.
با استفاده از زبان استاندارد متداول (UML) اعضای تیم می توانند ارتباط موثرتری با هم داشته باشند.
امکانات مهندسی معکوس ، توسعه دهندگان را قادر به استفاده از سیستم های شی گرای قبلی می سازد.
مدل ها و کد ، درطول چرخه توسعه هم گام می مانند.
Standard toolbar
browser
Diagram
toolbox
Diagram window
Documentation window
واسط گرافیکی کاربر
specification
Standard toolbar
Standard toolbar
browser
Diagram
toolbox
Diagram window
Documentation window
واسط گرافیکی کاربر
specification
Diagram window
نمودارهای UML
Class Diagram
Use-Case Diagram
Collaboration Diagram
Sequence Diagram
Component Diagram
Statechart Diagram
Deployment Diagram
Activity Diagram
ساخت،نمایش،تغییر نام،حذف یک دیاگرام
محیط های کاری مدل
تصویری از تمامی دیاگرام های باز و واحد های که پیش از این بار شده اند .
امکان داشتن محیط های کاری چند گانه مرتبط با یک مدل.
به صورت پیش فرض Rational Rose محیط کاری را به صورت زیر نام گذاری می کند:
<model name>- <Operating System User Name>.ws (e.g.: MyModelName-JillUser.wsp.)
با انتخاب File > Save ModelWorkspace از منوی فایل ، Rational Rose هم مدل و هم فایل های محیط کاری را ذخیره می کند.
برای بار کردن یک محیط کاری باید گزینه File > Load Model Workspac را از منوی فایل انتخاب کرد
Standard toolbar
browser
Diagram
toolbox
Diagram window
Documentation window
واسط گرافیکی کاربر
specification
مرورگر(Browser)
یک ابزار سلسله مراتبی برای دیدن اسامی و ایکون های مرتبط با دیاگرام ها و عناصر مدل.
اگر مرورگر نمایش داده نشده است ، باید گزینه Browser را از منوی Viewانتخاب کرد.
Standard toolbar
browser
Diagram
toolbox
Diagram window
Documentation window
واسط گرافیکی کاربر
specification
Specifications
هر عنصری یک Specification دارد.
برای مشخص کردن یا تغییر ویژگی های عنصر مدل به کار گرفته می شود.
تغییرات به صورت اتوماتیک در سر تاسر مدل به روز می شوند.
زبانه General
شامل اطلاعاتی از جمله نام و
مستندات است
زبانه Detail
زبانه Detail اطلاعاتی مخصوص
عنصری است که انتخاب کرده اید.
زبانه Files
اجازه می دهد که فایل های جدید یا URL هایی را وارد کنید و یا اینکه فایل ها و یا URL هایی که پیش از این به عنصر مدل یا دیاگرام ضمیمه شده اند مشاهده کنید .
این زبانه برای نگهداری لینک هایی به مستندات تکمیلی در مورد سیستم در حال ساخت مفید می باشد.(برای مثال مستندات Vision ،پیش نویس های GUI ،طرح های پروژه و غیره)
هر URL یا فایل ضمیمه شده که در این جا لیست شده است در هنگام بسط عنصر یا دیاگرام در مرورگر نیز نمایش داده می شوند.
زبانه Buttons
مرورگر(Browse)
با کلیک بر روی مرورگر 4 انتخاب پیش رو است:
Select in Browser:آیتم انتخاب شده را در مرورگر بر جسته می کند.
Browse Parent:specification را برای پدر آیتم انتخاب شده باز می کند.
Browse Selection: specificationرا برای آیتمی که در حال حاضر انتخاب شده است باز می کند.
Show Usage:لیستی از تمام دیاگرام هایی که در آنها عنصر انتخاب شده تولید کننده است یا در حالت دیاگرام،لیستی که کاربرد یک پیغام را مشخص می کند ،نشان می دهد
Standard toolbar
browser
Diagram
toolbox
Diagram window
Documentation window
واسط گرافیکی کاربر
specification
پنجره مستندات(Documentation window)
عناصر مدل و یا روابط را توضیح می دهد.
نقش ها ، کلید ها ، محدودیت ها ، هدف و رفتار اساسی عنصر.
متن دلخواه در داخل فیلد مستندات .
Views
نمایش های مختلف پروژه جنبه های مختلف مدل را نشان می دهد:
Use Case view:
Use-case, sequence, collaboration
Logical view:
Class and state chart diagrams and activity diagrams
Component view:
Component diagram
Deployment view:
Deployment diagram
Views
Use Case view: (End user)
Logical view: (Analyst/Designer)
Component view: (System Integrator)
Deployment view: (System Engineer)
Use Case view Use-case Diagrams Interaction Diagrams Sequence Diagrams Collaboration Diagrams Logical view Class Diagrams State Machine Diagrams State chart Diagrams Activity Diagrams Component view Component diagram Deployment view Deployment diagram
Use Case View
چگونگی تقابل actorها و use caseها.
Use case Diagrams
Use Case Diagram
یک دید سطح بالا از چگونگی کاربرد سیستم آن طور که از دید یک کاربر خارجی است را نمایش می دهد.
یک use case دیاگرام شامل:
Actors (آنچه خارج از سیستم است)
Use cases(مرزهای سیستم که مشخص می کند سیستم چه می کند)
تقابلات و یا روابط بین actorها و use caseها در داخل سیستم که پیوستگی ها و وابستگی ها و تعمیم ها را در بر می گیرد.
Actors
َactorها نمایشگر کاربران سیستم هستند.
Actorها در تعامل با use caseها هستند ولی آنها را کنترل نمی کنند.
Actor کسی یا چیزی است که:
با سیستم در تقابل است و یا از آن استفاده می کند ولی جزی از سیستم نیست.
ورودی فراهم می کند و از سیستم اطلاعات در یافت میکند.
خارج سیستم است و هیچ کنترلی روی use caseها ندارد.
Actorها با چک کردن موارد زیر شناسایی می شوند:
کسی که به طور مستقیم از سیستم استفاده می کند.
کسی که مسئول حفاظت از سیستم می باشد.
سخت افزار خارجی که به وسیله سیستم استفاده می شود.
سیستم های دیگری که در تقابل و یا نیازمند به سیستم می باشند.
Use Cases
دنباله ای از تراکنش ها ی شکل گرفته توسط یک سیستم در پاسخ به محرکی که توسط actorراه اندازی شده است.
یک use case موارد زیر را نشان می دهد:
نمایش یک الگوی رفتاری از سیستم .
دنباله ای از تراکنش های انجام گرفته توسط actor و یا سیستم.
Use caseها ابزارهای فراهم می سازند تا:
نیازمندیهای سیستم را نمایش دهند.
با کاربران نهایی و کارشناسان برنامه ارتباط برقرار کنند.
تست سیستم.
A Use-Case Diagrams
جریان رویدادها
جریانی از رویدادها ، دنباله ای از تراکنش ها (یا وقایع)است که به وسیله سیستم اجرا می شود.
یک جریان از رویداد ها باید شامل:
زمان و چگونگی شروع و یا خاتمه use case .
تقابلات بین Use case وactor
داده مورد نیاز use case
دنباله وقایع برای use case
جریان رویدادها
Basic Flow :توصیف معمولی از سیستم
Alternative Flow : به توصیف حالاتی که ممکن است به وجود امده باشد
Sub Flow :زیر جریانهایی که در بعضی جریانها وجود دارد.
Interaction Diagrams
Interaction Diagrams
دنباله مهمی از تراکنش ها بین اشیا
که شامل دو نوع:
Collaboration Diagram:
نشان می دهد چگونه اشیا با یکدیگر رابطه دارند.
از طریق Sequence می تواند تولید شود.(F5)
مدلسازی جریان کنترل
Sequence Diagram:
تعامل مبتنی بر زمان شی را نشان می دهد.
مدلسازی جریان کنترل
Interaction Diagrams
Collaboration Diagram Toolbox
Sequence Diagram Toolbox
A sequence diagram
A collaboration diagram
Use Case view Use-case Diagrams Interaction Diagrams Sequence Diagrams Collaboration Diagrams Logical view Class Diagrams State Machine Diagrams State chart Diagrams Activity Diagrams Component view Component diagram Deployment view Deployment diagram
The Logical View
نشان می دهد که چگونه سیستم رفتار use caseها را پیاده سازی می کند.
شامل موارد زیر:
کلاسها :صفات و عملیات
Class Diagrams
Interaction Diagrams
State Chart Diagram
Class Diagrams
Class Diagram
یک Class Diagram تعاملات بین کلاسها در سیستم را نشان می دهد.
هر کلاس با یک مستطیل سه بخشی نمایش داده می شود.
نام کلاس
صفات
عملگر
خطوط بین کلاسها روابط بین آنها را نشان می دهد.
A Class Diagram for ATM
Class Specification
General
Detail
Operations
Attributes
Relations
Components
Nested
Files
Class specification – General Tab
Type: Parameterized Class Instantiated Class Class Utility Parameterized Class Utility Instantiated Class Utility Metaclass
Parent
والدی که کلاس به آن تعلق دارد(پکیج آن(
General Tab Continue
Export Control:چگونه یک کلاس و عناصر آن از بیرون پکیج تعریف شده مشاهده می شود.
Public :عنصر بیرون از پکیج قابل مشاهده است و می توان آن را به قسمت های دیگر مدل importکرد،عملیات برای تمام کاربران قابل دستیابی است.
2) Protected:عنصر فقط برای زیر کلاسها و خود کلاسها قابل دستیابی است.
3) Private:فقط برای خود کلاس قابل دستیابی است.
4) Implementation :عنصر فقط درداخل پکیجی که در آن تعریف شده قابل مشاهده است.
Detail Tab
Space از این فیلد برای یادداشت مقدار فضای مورد نیاز اشیای کلاس در طول اجرا استفاده میشود.
Persistence
Detail Tab Continue
Concurrency
Detail Tab Continue
Abstract کلاسی را که به عنوان کلاس پایه عمل می کند مشخص می نماید.
چنین کلاسی عملیات و حالاتی را که توسط زیر کلاسها به ارث برده می شود را تعریف شده است.
Class Specification – Operations Tab
Class Specification – attributes Tab
Class Specification – Relations Tab
Name :نام رابطه
Parent:نام مبدا
End Class :نام مقصد
State Machine Diagrams
State Machine Diagrams and Specifications
شامل دیاگرام های زیر:
statecharts diagrams:
مبتنی بر حالت
برای مدل سازی مراحل زمانی عمر یک شی به کار می رود.
activity diagrams:
مبتنی بر فعالیت
برای مدل سازی دنباله فعالیت های یک فرایند به کار می رود.
State Machine Specification
Statechart Diagrams
حالات مختلفی که شی به خودش می گیرد و رویدادهای که باعث گذار می شوند را نشان می دهد.
حالات :موقعیت های مختلفی که شی در طول عمرش به خود می گیرد.
گذارها : روابط بین حالات
a state chart Diagram
Activity Diagrams
فعالیت های یک کلاس را شرح می دهد.
مستطیل های گوشه گرد : فعالیت ها
مستطیل ها : اشیا
لوزی ها :نقاط تصمیم گیری
Swimlanes :نقش های یک مدل تجاری را نشان می دهند.
a Activity Diagram
Use Case view Use-case Diagrams Interaction Diagrams Sequence Diagrams Collaboration Diagrams Logical view Class Diagrams State Machine Diagrams State chart Diagrams Activity Diagrams Component view Component diagram Deployment view Deployment diagram
The Component View
سازماندهی نرم افزار
شامل اطلاعاتی در مورد نرم افزار،مولفه های کتابخانه ای و قابل اجرا
Component diagrams
به صورت پیش فرض شامل یک main diagram می باشد.
Component Diagrams
Component diagrams
مولفه ها : برنامه های اصلی،زیر برنامه ها ، پکیج ها و وظیفه ها
رابطه های وابستگی فیزیکی بین مولفه ها و ترتیب آنها در پکیج
A Component diagram
Use Case view Use-case Diagrams Interaction Diagrams Sequence Diagrams Collaboration Diagrams Logical view Class Diagrams State Machine Diagrams State chart Diagrams Activity Diagrams Component view Component diagram Deployment view Deployment diagram
The Deployment View
نگاشت فرایندها به سخت افزار را نشان می دهد.
محیط معماری توزیعی
مناسب برای مهندسان سیستم
Deployment Diagrams
Deployment Diagrams
ارتباطات بین پردارش گر ها و دستگاه ها و نیز تخصیص پردازش ها به پردازش گرها
A Deployment Diagram
Code Generation
Ada
Java
Oracle8
C++
XML_DTD
Code Generation
ابزاری مستقل از زبان ، برای اطمینان از سازگاری مدل
ساخت مولفه ها :فایل ها ی کد منبع ، فایل های اجرایی ، کتابخانه های زبان اجرا ، اپلت ها.
نگاشت کردن کلاسها به مولفه ها : هر مولفه کد منبع نمایشگر فایل کد منبع برای یک یا بیشتر کلاس می باشد.
مشخص کردن خصوصیات تولید کد : این خصوصیات چگونگی تولید کد را مشخص می کند.
انتخاب یک کلاس ، مولفه یا پکیج
تولید کد