طراحي و مدل کردن مؤلفه ها فصل 7 معماري نرم افزار هاي بزرگ دانيال مؤذن استاد : دکتر عبدالله زاده.

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 
در جامعه، افرادي که موقعيت و مسؤليت خود را مي‌دانند از راحتي و امنيت بيشتري برخوردارند هر کلاس از جامعه، مجموعه‌اي از امکانات و تواناييهاي مجاز برخوردار.
سازگاري فرايندهاي يادگيري Consistency of Learning Processes ارائه دهنده : الهام باوفای حقیقی استاد درس : آقای دکتر شيري دانشگاه امير كبير دانشكده ‌ مهندسي.
Artificial Intelligent Systems Laboratory 1 تيم‌هاي نرم افزاري فصل 21 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش تهيه كننده : پويا جافريان.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک چارچوب و الگوي سازمان‌هاي تجاري.
1 آزمايشگاه سيستم های هوشمند ( Domain-specific Architecture.
به نام خدا 1 آزمايشگاه سيستم هاي هوشمند ( تمرينهاي سري سوم طراحي و پياده سازي سيستمهاي نرم افزاري بزرگ الناز دل پيشه آقاي دکتر.
برنامه‌ريزي استراتژيک پيشرفته چارچوب کلي تجزيه و تحليل راهبردي (استراتژيک) سيستم‌ها.
طراحي و ساخت سيستم ‌ هاي تجارت الکترونيک چارچوب و الگوي سازمان ‌ هاي تجاري.
مهندسی نرم افزار مبتنی بر عامل
ارائه روشي براي شناسايي کاراکترهاي دستنويس، برپايه شبکه LVQ.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک
Amirkabir University of Technology Department of Computer engineering & IT Software Engineering II Unified modeling Language (UML) April 2006 In the Name.
ارائه درس روباتيکز Extended Kalman Filter فريد ملازم استاد مربوطه دکتر شيري دانشگاه امير کبير – دانشکده کامپيوتر و فناوري اطلاعات.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه ارتباط بين component ها.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک ساخت سيستم‌هاي تجارت الکترونيک ECSE.
1 فصل 8 - طراحي زيرسيستم ها برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony فرنوش گلشن آزمايشگاه سيستم هاي هوشمند بهار.
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه Process and Deployment Design.
مقدمه فصل 1 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک سيستم‌هاي تجارت الکترونيک (ECS)
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي.
مهندسی نرم افزار مبتنی بر عامل
RUP فرآيند شيئ گراي توسعه نرم افزار Rational. RUP عناوين مورد بررسي n مقدمه n بهترين تجارب n نگاهي كلي به فرآيند n فرآيند مبتني بر موارد كاربرد n فرآيند.
1 فصل 9 - طراحي ساختار داده و تراکنش ها برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony فرنوش گلشن آزمايشگاه سيستم هاي.
1 آزمايشگاه سيستم های هوشمند ( ارزيابي معماري نرم افزار.
مديريت پروژه‌هاي فناوري اطلاعات
فصل 5 - مرور سريع UML برگرفته از کتاب
1 فصل 5 - مرور سريع UML برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony افشين لامعی بهار 87.
1 آزمايشگاه سيستم های هوشمند ( انواع Architectural Styles.
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي تخصيص منابع.
اصول و مفاهيم جلب حمايت همه جانبه 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.
مهندسی سيستم ‌ هاي تجارت الکترونيکی هفته ( چهارم ) – جلسه ( اول )
ساختارهاي تقسيم كار پروژه
برنامه نويسي پيشرفته مقدمه By: Ali Bazghandi. C++ Programming: Ali Bazghandi2 نکات مهم مراجع C++ FOR DUMMIES 5TH EDITION by Stephen Randy Davis PROGRAMMING.
Solving problems by searching Chapter 3 Modified by Vali Derhami.
1 فصل دوم تبديلات. 2 فصل دوم سرفصل مطالب مقدمه ضرب بردارها دستگاه ‌ هاي مختصات دوران ‌ ها مختصات همگن دوران ‌ ها و انتقال ‌ ها تبديلات تركيبي همگن تبديل.
1/19 Informed search algorithms Chapter 4 Modified by Vali Derhami.
1 فصل سوم سينماتيك مستقيم. 2 محتواي فصل   تعريف مجموعه فازي   تابع عضويت   نمايش مجموعه هاي فازي   برش آلفا   متغيرهاي زباني   ساخت مجموعه.
Image Enhancement in the
اسلاتهاي توسعه جلسه ششم.
Frameworks And Patterns
نظریه رفتار برنامه ريزي شده Theory of Planned Behavior
“Unified Modeling Languge“
دانلود جدیدترین مقالات برق الکترونیک و کامپیوتر
معماری سيستمهای با مقياس بزرگ
سيستمهاي اطلاعات مديريت
پردازنده هاي چند هسته اي
تبدیل فوریه (Fourier Transform)
نمايش اعداد در کامپيوتر چهار عمل اصلي
فصل 1: مفاهيم پايه.
انواع Architectural Styles
سيستمهاي اطلاعات مديريت
هیدرولیک جریان در کانالهای باز
نظریه رفتار برنامه ريزي شده Theory of Planned Behavior
وبلاگ جامع مهندسی برق و الکترونیک
تدريس يار: ميثم نظرياني
به نام خدا اين فايل راهنما جهت آشنايی کاربران گرامی با پايگاه اطلاعاتی Sciencedirect و نحوه جستجوی اطلاعات در آن تهيه شده است لطفاً اسلايدهای بعد را مشاهده.
نرم افزار عملي دوره كارداني كامپيوتر دانشگاه کردستان دانشكده فني
مثال : فلوچارتي رسم كنيد كه دو عدد از ورودي دريافت كرده بزرگترين عدد
آزمايشگاه مهندسي نرم افزار
Presentation transcript:

طراحي و مدل کردن مؤلفه ها فصل 7 معماري نرم افزار هاي بزرگ دانيال مؤذن استاد : دکتر عبدالله زاده

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 2 معرفي در اين فصل به معرفي ديدگاه هاي مربوط به ساختار، واسطه ها، وابستگي ها و ديناميسزم مؤلفه ها مي پردازيم. اين ديدگاه ها براي تيم هاي پياده سازي وقتي که به مستندسازي ساختار مؤلفه هاي زمان اجرا و تعاملات بين آنها مي پردازند مهم است. ديدگاه هاي اين فصل کاري به پراکندگي مؤلفه ها نداشته و به تعاملات منطقي بين آنها مي پردازند.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 3 توسعه مؤلفه محور داراي مزاياي بسياريست : کاهش زمان توليد و افزايش کارايي سيستم امکان استفاده از مؤلفه هاي پيش ساخته امکان ساخت و تست مستقلانه اجزاء سيستم اضافه کردن و تغيير اجزاء سيستم هزينه و ريسک کمتري دارد جاگيري مؤلفه ها از ديد سيستم مخفي مي شود. کاهش وابستگي اجزاء سيستم به هم و به زيرساخت سخت افزاري و امکان ارتقاء مستقلانه مؤلفه ها و زيرساخت ها مدل هاي پياده سازي متنوع در دسترس است : COM CORBA Java Beans.Net مدل هاي مختلف پياده سازي توأمان قابل استفاده اند ولي در صورت امکان از ابتدا يکي انتخاب و شروع به آموزش، تجربه و... پردازيد.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 4 تعاريف در UML سه نوع مؤلفه داريم : مؤلفه هاي زمان کامپايل مؤلفه هاي زمان لينک مؤلفه هاي زمان اجرا مؤلفه هاي زمان لينک و کامپايل، کتابخانه کد اشيا و فايل هاي اجرايي مي باشند. مؤلفه هاي زمان اجرا، نمونه هاي حاضر در حافظه از ساختار هاي زمان ساخت مي باشند. ديدگاه هاي معرفي شده به خواص زمان اجراي مؤلفه ها مي پردازند.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 5 تعريف مؤلفه مجموعه اي فيزيکي از ساخت هاي شيءگرا يا تابعي که کارآيي سيستم را ازطريق مکانيزم هاي ارتباطي مشخص شده فراهم مي کند. شامل مجموعه اي از درگاه ها (port) و واسط ها (interface) است که ارتباط با ديگر مؤلفه ها از طريق آنها فراهم مي شود. به صورت برنامه اجرايي، کتابخانه هاي زمان اجرا (DLL) يا ديگر تکنولوژي هاي بسته بندي زمان اجرا تحويل داده مي شود.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 6 تعريف مؤلفه يک مؤلفه حتماً داراي اين خواص مي باشد : سرويس را از طريق واسط ها، درگاه ها و پروتکل هاي تعامل به خوبي تعريف شده در اختيار مي گذارد. حالت و رفتار هردو را محفوظ (encapsulate) مي کند. فقط به يک زيرساخت مؤلفه يا سيستم عامل براي راه اندازي و ارتباط با ديگر مؤلفه ها وابسته است. يک مؤلفه معمولاً داراي اين خواص است : به جاي توليد، معمولاً خريداري مي شود. در پروسس يا رشته اجراي مجزا اجرا مي شود. از روش هاي محو مکان استفاده مي کند. داراي تنظيمات متنوع است که بر رفتار آن تأثير مي گذارد. مستقل از ديگر مؤلفه ها ساخته ، تست و تحويل مي شود. با تفکرات شيءگرا ساخته مي شود. به زبان خاصي وابستگي ندارد، لذا ايجاد سازگاري مي کند.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 7 جايگاه مؤلفه ها در زير سيستم ها هر مؤلفه از فقط يک زيرسيستم نشأت مي گيرد. زير سيستم هايي که در زمان ساخت موجوديت هايي را براي مؤلفه فراهم مي کنند،زير سيستم منشأ محسوب نمي شوند. واسط يک مؤلفه ، يک نمونه از واسط زيرسيستم منشأ است. مؤلفه هاي مرکب، مجموعه اي مؤلفه ها را دريک مؤلفه منطقي گرد مي آورند و امکان مدل کردن مجموعه اي مؤلفه ها را در سطح بالا تري از انتزاء فراهم مي کنند. معمولاً يک مؤلفه، واحد جايگزيني براي سيستم محسوب مي شود.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 8 جايگاه مؤلفه ها در زير سيستم ها کليد دستيابي به تعريفي موفق از معماري بوسيله مؤلفه ها، اين است که تمام مؤلفه ها داراي ساختار و مکانيزم ارتباطي به خوبي تعريف شده اي باشند، که بتوان با استفاده از آنها مجموعه اي از مؤلفه ها را، براي دستيابي به مجموعه اي از کاربرد هاي سيستم ترکيب کرد. مؤلفه ها معمولاً در ابتداي طراحي ” ابتدايي ” هستند و در طول فرآيند هاي طراحي تکميل مي شوند، مگر آنهايي که از ابتدا کاملاً شناخته شده اند مثل سيستم هاي legacy

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 9 ارتباطات و واسطه ها دو نوع ارتباط بين مؤلفه ها قابل تعريف است از طريق واسطه ها (interface) از طريق پيغام رساني (messaging) واسطه ها در UML کلاس کليشه شده اي (stereotyped) است که بوسيله آن مؤلفه هاي خارجي مي توانند با مؤلفه فراهم کننده آن ارتباط برقرار کنند. در روش پيغام رساني ، نوع پيغام، پروتکل حاکم و پورت ها تعريف مي شوند و از طريق آنها ارتباط برقرار مي شود.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 10 ديدگاه مؤلفه

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 11 واسط ها واسط ها به صورت متدهايي در کلاس هايي که براي مشتري (client) خارجي فراهم مي شوند، پياده مي شوند. براي تعريف واسط ها از زبان مخصوصي استفاده مي شود مثل IDL براي پياده سازي واسط ها از مکانيزم هايي نظير COM/DCOM ، CORBA ، JMI و... استفاده مي شود. هنگام استفاده از واسط ها، مؤلفه ها به واسط ها وابسته مي شوند. استفاده از واسط ها، مکانيزم pull ايجاد مي کند. با استفاده از واسطه ها ارتباط دوبه دو بين مؤلفه ها برقرارمي شود. معمولاً درخواست هاي متوقف کننده (synchronous) با واسطه ها پياده مي شوند.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 12 وابستگي مؤلفه ها در واسط ها

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 13 پيغام رساني شامل 3 جز است : درگاه ها پروتکل حاکم بر ارتباط نوع پيغام درگاه نوعي کلاس کليشه است که ارتباطات نوع خاصي پيغام را فراهم مي کند. درگاه نوع پيغام دريافتي و ارسالي را مشخص مي کند. مکانيزم پيغام رساني ارتباط چند جانبه بين مؤلفه ها را فراهم مي کند. استفاده از پيغام امکان درخواست هاي متوقف نکننده (Asynchronous) را فراهم مي کند. استفاده ازپيغام رساني، مکانيزم push را ايجاد مي کند. با استفاده از مکانيزم پيغام رساني ،مؤلفه ها به نوع پيغام و زيرساخت ارتباطي وابسته مي شوند.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 14 وابستگي مؤلفه ها در پيغام رساني

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 15 شماي ديدگاه مؤلفه با در نظر گرفتن مکانيزم ها

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 16 ديدگاه تعامل مؤلفه ها تعاملات زمان اجراي مؤلفه ها را بوسيله نمودارهاي sequence و state در سطح مؤلفه نشان مي دهد. هدف : تأييد اعتبار ساختار طراحي از طريق سير در پويايي نرم افزار. زمان بکارگيري : در طول عمر پروژه، ابتدا در حين تحليل و طراحي فراهم مي شود، ولي در زمان توسعه مي تواند استفاده و بسط داده شود. ذي النفع ها : تيم معماري نرم افزار، تيم مهندسي سيستم هاي نرم افزاري، هدايت گران طراحي زيرسيستم ها، توسعه گران قابليت توسعه : براساس سناريو ها مي توان بوسيله مؤلفه هاي مرکب آنرا توسعه داد. رابطه با ديگر ديدگاه ها : مي بايست با ديدگاه مؤلفه، پروسس و قرارگيري (deployment) سازگار باشد.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 17 ديدگاه تعامل مؤلفه ها از نمودارهاي تعامل اشياء (object interaction) قابليت توسعه بيشتري دارد،زيرا جزييات اشياء نشان داده نمي شوند. براي نمايش مؤلفه هاي خريداري شده (COTS) و سيستم هاي قديمي (legacy) بسيار مناسب است.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 18 Component Interaction Viewpoint w/Sequence diagram

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 19 Component Interaction Viewpoint w/State diagram

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 20 مدل سازي حالت مؤلفه ها ديدگاه حالت مؤلفه وسيله اي جهت ارائه حالات داخلي وفعاليت هاي يک يا چند مؤلفه و شفافيت درون رفتار مؤلفه ( ها ) را فراهم مي آورد. رفتار را به دو صورت مي توان مستند کرد : نمايش حالات بالقوه مؤلفه و انتقال بين اين حالات نمايش گردش کنترل از يک فعاليت به ديگري

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 21 ديدگاه حالت مؤلفه هدف : مدل کردن حالت يک ياگروهي از مؤلفه ها زمان بکارگيري : در طول عمر پروژه، ابتدا در حين تحليل و طراحي فراهم مي شود، ولي در زمان توسعه مي تواند استفاده و بسط داده شود. ذي النفع ها : تيم معماري نرم افزار، تيم مهندسي سيستم هاي نرم افزاري، هدايت گران طراحي زيرسيستم ها، توسعه گران و تست کننده ها. قابليت توسعه : ديدهاي براساس حالت براي يک مؤلفه مي توانند به مؤلفه هاي مرکب توسعه پيدا کنند. ديد هاي بر اساس فعاليت مي توانند بر يک يا چند مؤلفه اعمال شوند. ارتباط با ديگر ديدگاه ها : مي بايست با ديدگاه هاي پويا ،همچنين تعريف واسط و پيغام سازگار باشند.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 22 مدل سازي حالت مؤلفه توسط حالات بالقوه يک حالت بخشي از زندگي يک مؤلفه است که در حين آن مؤلفه مجموعه اي از فعاليت ها را انجام مي دهد. ورود به يک حالت پس از اتمام حالتي ديگر يا دريافت يک واقعه (event) مي باشد. خروج از يک حالت پس از اتمام فعاليت يا دريافت يک واقعه مي باشد. ديدگاه حالت محور تغيير حالات براي يک مؤلفه را معين مي کند. حالات با بوجود آمدن يک مؤلفه شروع و با معدوم شدن آن پايان مي يابند. در هر حالت مجموعه از فعاليت ها نشان داده مي شود.

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 23 مدل سازي حالت مؤلفه توسط حالات بالقوه

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 24 مدل سازي حالت توسط تغيير فعاليت ها اين ديدگاه انتقال از يک فعاليت به ديگري را براي مؤلفه نشان مي دهد. حالات شامل يک فعاليت مي باشند و با تکميل حالت ديگري، شروع مي شوند. مي توان فعاليت هاي مرتبط مؤلفه ها مختلف را در ساختارهاي شبيه خطوط شنا دسته بندي کرد و بدين وسيله انتقال بين فعاليت هاي گروهي از مؤلفه ها را نمايش داد

دانشکده مهندسی کامپیوتر و فناوری اطلاعات - دانشگاه صنعتی امیرکبیر 25 مدل سازي حالت توسط تغيير فعاليت ها