فصل 5 - مرور سريع UML برگرفته از کتاب

Slides:



Advertisements
Similar presentations
Queue theory.
Advertisements

Logic Block Architectures. 2 Crosspoint Solution  Requires the use of large amounts of programmable interconnect −  suffer from area-inefficiency 
تمرينات در LSS سری سوم افشين لامعی دانشجوی دکترای نرم افزار
Stranded Costs مقدمه 1 - آشنايی با پديده های غيرخطی ( ياد آوری و تکميل ) 2 - مبانی رياضی ( مهم )
Artificial Intelligent Systems Laboratory 1 تيم‌هاي نرم افزاري فصل 21 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش تهيه كننده : پويا جافريان.
1 آزمايشگاه سيستم های هوشمند ( Domain-specific Architecture.
Computer Programming برنامه سازی کامپيوتر1 مدل های رياضی مهندسی يعنی کاربرد علوم مختلف (رياضی، فيزيک) در حل مسائل کاربردی مدل های رياضی برای پيش بينی رفتار.
طراحي و مدل کردن مؤلفه ها فصل 7 معماري نرم افزار هاي بزرگ دانيال مؤذن استاد : دکتر عبدالله زاده.
فاکتورهای مهم در ایجاد یک مقاله علمی
Computer Programming برنامه سازی کامپيوتر1 طراحی الگوريتم ها Algorithm Design.
طراحي و ساخت سيستم ‌ هاي تجارت الکترونيک چارچوب و الگوي سازمان ‌ هاي تجاري.
مهندسی نرم افزار مبتنی بر عامل
ارائه روشي براي شناسايي کاراکترهاي دستنويس، برپايه شبکه LVQ.
Decision Tree.
Amirkabir University of Technology Department of Computer engineering & IT Software Engineering II Unified modeling Language (UML) April 2006 In the Name.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه ارتباط بين component ها.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک ساخت سيستم‌هاي تجارت الکترونيک ECSE.
1 فصل 8 - طراحي زيرسيستم ها برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony فرنوش گلشن آزمايشگاه سيستم هاي هوشمند بهار.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه Process and Deployment Design.
برنامه سازی کامپيوتری 1 نرم افزار در کامپيوتر. برنامه سازی کامپيوتری 2 نرم افزارها سخت افزار کامپيوتر بدون نرم افزار ان غير قابل استفاده است نرم افزار.
1 تدوين راهبرد برای يک برنامه جلب حمايت همه جانبه Mohsen Shams, MD. PhD Candidate in Health Education, School of Public Health, Tehran University of Medical.
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي.
1 فصل 9 - طراحي ساختار داده و تراکنش ها برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony فرنوش گلشن آزمايشگاه سيستم هاي.
1 آزمايشگاه سيستم های هوشمند ( ارزيابي معماري نرم افزار.
برنامه سازی کامپيوتر 1 زبانهای برنامه سازی Programming Languages.
1 فصل 5 - مرور سريع UML برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony افشين لامعی بهار 87.
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي تخصيص منابع.
اصول و مفاهيم جلب حمايت همه جانبه Mohsen Shams, MD. PhD Candidate in Health Education, School of Public Health, Tehran University of Medical Sciences.
مراحل مختلف اجرای يک برنامه
Artificial Intelligent Systems Laboratory 1 الگو‌هاي فرايند (Process Patterns) فصل 2 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش تهيه كننده :
In the name of God Sharif University of Technology, International Branch, Kish Island Dr. Mohsen Sadighi Moshkenani Chapter 12.
مهندسی سيستم ‌ هاي تجارت الکترونيکی هفته ( چهارم ) – جلسه ( اول )
انواع Middleware و معرفی دو نمونه
1 Network Address Translation (NAT). 2 Private Network شبکه خصوصی شبکه ای است که بطور مستقیم به اینترنت متصل نیست در یک شبکه خصوصی آدرس های IP به دلخواه.
فارسی سازی يکپارچه در سيستم عاملهای OS/390 & Windows واحد 1 مهندسی سيستم Integrated Farsi support on OS/390 & Windows.
1 فصل دوم تبديلات. 2 فصل دوم سرفصل مطالب مقدمه ضرب بردارها دستگاه ‌ هاي مختصات دوران ‌ ها مختصات همگن دوران ‌ ها و انتقال ‌ ها تبديلات تركيبي همگن تبديل.
پیاده سازی کنترلر PC/104. Contents PC/104 پیاده سازی کنترلر HILتست 1.
[c.
Frameworks And Patterns
نظریه رفتار برنامه ريزي شده Theory of Planned Behavior
“Unified Modeling Languge“
دانشگاه صنعتي اميرکبير
دانلود جدیدترین مقالات برق الکترونیک و کامپیوتر
پردازنده هاي چند هسته اي
تکنیک دیماتل DEMATEL: decision making trial and evaluation laboratory.
تبدیل فوریه (Fourier Transform)
نمايش اعداد در کامپيوتر چهار عمل اصلي
نرم افزار گمبيت Gambit Software Features
Data Mining By : Alireza Abazari.
ساختمان داده‌ها پیمایش درخت دودویی
هیدرولیک جریان در کانالهای باز
آشنایی با پایگاه ساینس دایرکت
1.
نظریه رفتار برنامه ريزي شده Theory of Planned Behavior
وبلاگ جامع مهندسی برق و الکترونیک
Test آزمون نرم افزار Mansooreh Jalalyazdi.
نام طرح.
تدريس يار: ميثم نظرياني
به نام خدا اين فايل راهنما جهت آشنايی کاربران گرامی با پايگاه اطلاعاتی Sciencedirect و نحوه جستجوی اطلاعات در آن تهيه شده است لطفاً اسلايدهای بعد را مشاهده.
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
سمینار SharePoint رانندگی در بزرگراه پرتال ها
آشنايي با نرم افزار.
نرم افزار عملي دوره كارداني كامپيوتر دانشگاه کردستان دانشكده فني
به نام یکتای دانا فصل اول: متدها و قواعد.
آزمايشگاه مهندسي نرم افزار
فصل 8 –Process and Deployment
کتابخانه دانشکده پرستاری و مامایی دانشگاه علوم پزشکی شهید بهشتی
مقدمه ای بر مهندسی نرم افزار An Introduction to Software Engineering
ساختمان داده ها مرتب سازی درجی
AntNet :Routing in Communication Networks
Presentation transcript:

فصل 5 - مرور سريع UML برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony افشين لامعی بهار 87

آزمايشگاه سيستم های همشمند خلاصه دياگرام های UML 9 نوع دياگرام در UML وجود دارد. Class Diagram Object Diagram * Component Diagram Deployment Diagram Use case Diagram * Sequence Diagram Collaboration Diagram State chart Diagram Activity Diagram * Not Applicable for architecture description. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند … خلاصه دياگرام های UML برخی اجزای UML برای توصيف Runtime ، برخی برای Design/Build Time و برخی برای توصيف هر دو به کار ميروند. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند … خلاصه دياگرام های UML آزمايشگاه سيستم های همشمند

اجزای دياگرام های و دوره حيات آنها Object (R) Class (B/R) Package (B) Sub-system (B) Layer (B) Component (R) Interface (B/R) Process (R) آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند قراردادها يک نمونه دياگرام آزمايشگاه سيستم های همشمند

... قراردادها General UML Features Stereotype : مکانيزمی جهت ايجاد المان های جديد از طريق افزودن semantic ، constraint يا property (هايي) به المانهای اصلی UML . درون << >> يا با آيکون مخصوصی نشان داده ميشود. مثال: Subsystem يک Stereotyped Package است که آيکون خاص خود را دارد. آزمايشگاه سيستم های همشمند

... قراردادها General UML Features Tagged Value : امکان افزودن ليستی از property ها به يک المان. از ديد معماری نرم افزار، برای component ها، process ها، interface ها، thread ها، association ها، dependency ها و node ها مفيد است. نام و مقدار آن درون {} نوشته ميشود. آزمايشگاه سيستم های همشمند

... قراردادها General UML Features Multi-instance : نمايش خلاصه يک المان که در Runtime بيش از يک نمونه دارد. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند ... قراردادها View Labels برچسبی شامل مشخصه های اصلی يک View شامل Title: Description of the view. Type: Based on the viewpoint name. Date: Last date updated. Responsible: Person(s) responsible for creating the view. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند دياگرام ها دياگرام هايي که ميتوانند در توسعه view های مختلف معماری نرم افزار استفاده شوند. آزمايشگاه سيستم های همشمند

Component instance diagram component در اينجا به معنای component instance (زمان اجرا) استفاده ميشود. اين دياگرام کلاً مربوط به runtime است. برای Build/Design Time از دياگرام Subsystem استفاده ميکنيم. آزمايشگاه سيستم های همشمند

…Component instance diagram آزمايشگاه سيستم های همشمند

Class and subsystem diagrams تمرکز Class diagram روی گروهی از المانهای مدل مانند کلاس ها، بسته ها، زيرسيستم ها، موجوديتهای ديتابيس يا table های آن است. Subsystem Diagram گروهی از زيرسيستم ها و ارتباطات آنها را (از طريق اينترفيس ها) نشان ميدهد. کلاس های مهم و سيستم های خارجی هم نمايش داده ميشوند. آزمايشگاه سيستم های همشمند

…Class and subsystem diagrams آزمايشگاه سيستم های همشمند

Interaction (sequence & collaboration) diagram Interaction diagram نمونه هايي از المان های مدل و پيام های تبادلی ميان آنها را نشان ميدهد. به طور سنتی از Object استفاده ميشده اما نمونه المانهای ديگر هم قابل استفاده است. در معماری، تمرکز بر Component ها و نمونه process ها حائز اهميت است. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند Sequence diagram پيام ها ميان نمونه ها ممکن است همزمان يا غير همزمان باشند. آزمايشگاه سيستم های همشمند

Collaboration diagram شبيه دياگرام sequence اما با وضوح بيشتر. مناسب برای تعداد نمونه ها و ارتباطات کم. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند Deployment diagram ارتباط ميان نودها، component های درون آنها و فرآيندها را نشان ميدهد. Process Diagram هم نوعی از اين دياگرام است که نودها و component ها در آن نيستند. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند Statechart diagram نمايش رفتار پويا (ديناميک) المان های سيستم است. در معماری، برای نمايش حالت component ها، فرآيند ها و thread ها به کار ميرود. برای کلاسهای اصلی سيستم هم قابل ارائه است. جهت انجام تست در معماری کاربرد دارد. مثال: حالات مختلف بخش هشدار در يک سيستم هشدار دهنده سخت افزاری. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند … Statechart Diagram آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند Activity diagram نوعی از state diagram که جريان فعاليت های سيستم را نشان ميدهد. آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند مديريت پيچيدگی کم کردن پيچيدگی، رمز موفقيت در توسعه سيستم های بزرگ است که بايد به صورت سازماندهی شده و با حفظ سازگاری انجام شود. ساده سازی صريح (Explicit) ارجح است، يعنی دياگرام ها بايد به وضوح بيان کننده ساده سازی های انجام شده روی آنها باشند. تمرکز هر دياگرام روی موضوع خاصی از سيستم باشد. آزمايشگاه سيستم های همشمند

استراتژی های مديريت پيچيدگی Use case focused modeling Element focused modeling Level of details Controlling the number of models Use supplemental textual information آزمايشگاه سيستم های همشمند

Use case focused modeling تمرکز روی يک use case يا سناريو (مسير خاصی از use case) برای توسعه معماری بسيار مفيد است چون تمام المان های درگير در اجرای يک use case را در بر ميگيرد. Interaction diagram روی يک سناريو متمرکز است. بقيه نمودارها هم با اين شيوه قابل توليد هستند. آزمايشگاه سيستم های همشمند

Element focused modeling مثال: توليد يک view برای نمايش وابستگی های يک subsystem نمايش ارتباطات اصلی يک مجموعه خاص از المان های مدل (چند component ، چند subsystem يا چند object) آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند Level of details گاهی بيان جزئيات از اهداف مورد نظر يک view نيست. مثلاً: در نمايش وابستگی اينترفيس subsystem ها، بيان وابستگی کافی است و جزئيات اينترفيس ها مد نظر نيست. بيان پارارمترهای متدها در بخش تحليل، مورد نياز نيست. آزمايشگاه سيستم های همشمند

Controlling the number of models تعداد مدل ها با افزايش سايز سيستم به صورت تصاعدی افزايش مي يابد. توليد مدل به خودی خود هدف ما نيست. مدل سازی برای فهم و تکميل Design سيستم و نيز مستند سازی انجام ميشود. راه حل: اولويت بندی. مدل های exploratory ، موقت هستند. مدل های Documentation ، ماندگار و مهم تر هستند. کار با مدل های ناقص، در امر معماری نرم افزار مشکل آفرين است. تطابق مدل با کد: راه حل: مهندسی معکوس برای ارتباط دادن کد توليد شده به مدل. آزمايشگاه سيستم های همشمند

Use supplemental textual information نمودارها به تنهايي مکانيزم مناسبی برای بيان اطلاعات پيچيده نيستند. استفاده از توضيحات و جداول نيز ضروری است. مثال: توصيف زيرسيستم ها، اينترفيس ها، اکتورها و ... کارآيي و ديگر ويژگی های نودها توضيح جزئيات sequence ها UML OCL برای بيان پيش شرط ها و پس شرطها توضيح حالت ها در يک state diagram آزمايشگاه سيستم های همشمند

آزمايشگاه سيستم های همشمند Recommended Readings UML specification: www.omg.org www.uml.org UML Users Guide (Booch et al., 1999) آزمايشگاه سيستم های همشمند