کامپیوتر و IT و اینترنتعلوم مهندسی

معماری نرم افزار (پيچيدگی در نرم افزار)

صفحه 1:
تاره آموزشي دکتر فریدون شمس سید شروین استادزاده

صفحه 2:
8 فرصت تهد يدها ت‌ها و 34 ‎Til‏ فرصت ه

صفحه 3:
پيچيدگي در نرم‌افزار چگونه مي‌توان بر پيچيد گي حا نرم‌افزار غلیه کرد؟ ‎ae‏

صفحه 4:

صفحه 5:
مشکل اول نرم‌افزار: مل پيچيدگي

صفحه 6:
عوامل پیهیدکی در نرم‌افزار پیچیدگی دامنه مساله انعطاف‌پذيري نرم‌افزار و عدم استاندارد بودن آن پيچيدگي فرآیند توسعه نرم‌افزار پيچيدگي توصیف رفتار سيستم‌هاي گسسته اعا قا @ كا

صفحه 7:

صفحه 8:
درمي‌يابيم که تسیر تكاملي آين تاریخ در يك واقعیت خلاصه شده است: ۱ ki ‏مرول <- ++() <- لزق <- را(0()9() لو ه۳) <- رراطامو‌جوو‎ Quked WO -> B10G -> OG -> Oiddewore -> OowuicrspeciPic “Dove Barly tok -> OLE -< 1006 -> XO -> COE ‘Conblewent Tecvidval -> Derkyrouy > Oractzatca

صفحه 9:
سطع تجريد ‎(SRE Se‏ لقلا ما باید سطح تجرید را افزلیش دهیم. چون با افزلیش سطح تجرید توا سه مي‌توان نا با سكوهاي مختلف کار کرد. ‎Gl‏ توسعه نرم‌افزار را ساده‌تر و کارآمدتر کرد. ‏به دنياي واقعي نزديك‌تر شد.

صفحه 10:
گام بعدي ... گام بعدي در افزايش سطح تجرید چیست؟

صفحه 11:
OMG (Obert Dacragewect Brow) EEE es چیسو 000 چه نقشي در توسعه نرم‌افزار دارد؟

صفحه 12:
68 میسی ‎a Rn‏ Alcatel Fujitsu John Deere Oracle AT&T Glaxo LION Pfizer BEA SmithKline Bioscience po well Borland Hewlett Metanology cap Packard 8 MITRE Boeing itachi SAS cK MSC.Software __ Institute Hyperion NASA Sprint Codagen IBM ۲ NEC Sun DaimlerChrys! jon, er Nokia Telefonica Ericsson io Software ۰. TT DoCoMo Unisys France Kebira Oasis Vitria Telecom Kennex Sli ides ۰ ۰ Ee

صفحه 13:
موفقيت‌هاي بزرک ‎OOG‏ i Common = Object Architecture (CORBA) @® Unified Modeling Language (UML) jl) Common Warehouse Metamodel (CWM) la! Meta-Object Facility (MOF) i) XML Metadata Interchange (XMI) Request Broker {CORBA sy. = ‏الما‎ Mer omen ou tare

صفحه 14:
ناهمگونی‌های ‎Crain‏ نرم‌افزار 1 زبان‌هاي برنامه‌سازي ‎c.C++.C#.Javail‏ ‎VB. Delphi. COBOL]!‏ ... ‎Bl‏ سيستم‌هاي عامل ‎Unix . Linux. VMS.MacOS. — Windows &!‏ ‎PalmOS‏ .. ‎fl‏ 2اسيستم‌هاي تعبیه‌شده ‎Hl‏ پروتكل‌هاي شبكه‌اي و ارتباطي ‎Ethernet. ATM .IP.SS7. Firewire. USB&!‏ ‎Bluetooth . 802.11b. HomeRF&!‏

صفحه 15:
ناهمگونی‌های صنعت نرم‌افزار دم 8 ناهمگوني باعث به تاخیر افتادن توسعه سيستم‌هاي سازماني توزیع‌شده مي‌شود. هیچ توافقي بر روي ... فا سخت افزار وجود ندارد. فا زبان‌هاي برنامه‌سازي وجود ندارد. اقا سیستم‌های عامل وجود ندارد. ‎Sl‏ پروتكل‌هاي شبكه‌اي و ارتباطي وجود ندارد. ۴ مي توان بر روي يك سطح بالاتر تجرید توافق کرد. لقنا میان‌افزارها

صفحه 16:
ناهمگونی‌های صنعت نرم‌افزار دم امروزه میانافزارها نیز بسیارافزایش پیدا کردند... ‎CORBA‏ |“ ‎S| COM / DCOM / MTS‏ ‎Java / EJB‏ !& ‎S| XML / SOAP‏ ‎C#/ .Net‏ انا ‎ols ol!‏ هيج يك از آنها را برتر از دیگران در نظر گرفت. ‎a‏ توافقي بر روي میان‌افزار نیز وجود ندارد. مشکل همچنان باقي ‎wall‏

صفحه 17:
ناهمگونی‌های صنعت نرم‌افزار دم ‎i eee‏ باید توافقي بر روي واسطها و تبادلات بین آنها وجود داشته باشد. oF

صفحه 18:
OQOG aol)

صفحه 19:
معماری مدل رانه (000) ما2۳ ‎Ovdel Drives‏ ها

صفحه 20:
معماری مدل‌رانه ‎lil‏ معماري مدل‌رانه محاسبات هزاره سوم است. ‏اقا معماري مدل‌رانه سیر تكاملي تجزیه و تحلیل شيءگراء و ,111۷11 است. ‏اق[ معماري مدل‌رلنه يك روش ساده و فراگیر است که استانداردهاي مورد نیاز جهت ساخت. یکپارچه سازي, و نگهداري دارايي‌هاي نرم‌افزاري را تعيين ‏لقلا معماري مدل‌رانه سعي مي‌کند از زبان‌هاي مدل‌سازي نه تنها به عنوان زبان طراحي بلکه به عنوان يك زبان برنامه‌سازي نیز استفاده کند. ‎GI‏ افزايش سطح تجرید برنامه‌سازي اقا بهبود قابلیت تولید. کیفیت. و ماندگاري محصولات نرم‌افزاري ‎ ‎

صفحه 21:
معماری مدلرانه دم لقلا معماري مدل‌رلنه يك روش نوین براي تعریف و ساخت سيستم‌هاي نرمافزاري است که در آن افنآ مدل‌سازي بر اساس 1۷600۳7 , ,172۷11 . و 260۷11 انجام مي‌شود. لقا از چرخه حیات کامل نرم‌افزار (تحلیل. طراحي. پياده‌سازي. استقرار. نگهداري, تکامل. و يکپارچه‌سازي) پشتيباني مي‌شود. فا بر روي ‎ellis‏ و قابليت حمل بالا تاکید مي‌شود. ‎Sl‏ هزینه ابتدایی آغاز پروژه پایین است.

صفحه 22:
معماری مدل‌رانه رم لقلا روشی را برای مشخصه سيستم‌هاي نرم‌افزاري معرفی می‌کند که در آن» وظاین سیستم از مشخصه پیاده‌سازی آنن وظایف بر روی یک سکوی خاص فن‌آوری» حدا شده است. فا این کار با تعریف سطوح مختلفی از مدل‌ها انجام می‌شود... ان ... و همزمان سازگاري 3 هماهنگي ‎gu‏ تمام سطوح مدل‌ها حفظ می‌شود.

صفحه 23:
مفاهیم و اصول بنیادین ‎SSE Re‏

صفحه 24:
سیستم ‎(eae‏ ‏اقا مفاهیم ‎MDA‏ در قالب سیستم‌ها بیان مي‌شود. يك سیستم مي‌تواند هر موجوديتي باشد:

صفحه 25:
مدل سس ‎eS‏ ۲ أ#امدل تجريدي از يك یا چند بخش از سیستم است. ‎al‏ مدل به ما کمك مي‌کند بر روي قسمت‌هاي اساسي يك مساله متمرکز شویم تا بهتر آن را درك کنیم. ‎al‏ مدل به ما كمك مي‌کند در مسیر رسیدن به يك راه‌حل موثر و کارآمد حرکت کنیع: ‏مدل معمولاً به شکل تركيبي از متن و تصویر بیان مي‌شود. ‏سنت رايج اين است كه مدل‌ها يك پياده‌سازي را ایجاد نمي‌کنند. ‎@ @

صفحه 26:
توسعه مدل‌رانه (2020) 0 ‏بك خاتة ساخة‎ 1 la + 3 ١ S 2 ‏خته مىشود‎ «Joo cgay inl wo aS ‘ AN ‏يا‎ ما N ‎j‏ ظیفه هدایت و ‎9 ‏روث | توسعة يسيستم كه دن لن مذل‌ها وظو‎ a ‏ك. تحلیل. طراحي. ساخت. استقرار. بهره‌برداري‎ 9 i eum ‏اهبري جریان درك. تحلي حي ‏3 داشت. و تکامل را بر عهده دارند. ‎ee‏ 8 توسعة الوم افزان را امكائيةه و ‎HI‏ لین روش مي‌تولند بسياري از محصولات توسعه نرم‌افزار را ‏خود کار تولید کند.

صفحه 27:
معماری مدل‌رانه ‎Hl‏ استانداردی برای توسعه مدل‌رانه اقا متعلق به ‎OMG‏ ‏لكلا بر روي استاندارد ‎ond Ly MOF‏

صفحه 28:
دیدگاه (سرس) لقلا يك روش تكنيكي براي تجريد است. لها مجموعداي از مفاهيم معماري و قوانين سازماندهي را به خدمت مي كيرد تا بر روي مفاهيمي خاصي از سيستم تمركز كند. 8 در اين جا تجريد يعني فرآيند حذف جزييات انتخلبي و ايجاد يك مدل ساده شده لثلآ سه ديدكاه از سيستم در معماری مدل‌رانه وجود دارد: له . .+ 5 ال دیدگاه مستقل لقنا ديدكاه مستقا از محاسبه ل از سكو لا دیدگاه خاص سكو

صفحه 29:
دیدگاه مستقل از مماسیه ‎er ae‏ | الق این دید گاه بر روی محیط سیستم و نیازمندیهای آن تاکید دارد. لقلآ در این دیدگاه جزییات ساختارها و فر‌آیندهای سیستم یا پنهان هستند و با هنوز مشخص نشده‌اند.

صفحه 30:
دیدگاه مستقل از سکو ‎i‏ اين ديد كاه بى روى عملكرد يك سيستم تأكيد م ىكند. ‎i}‏ در آمن جزییات لازم بای پیاده سازی روی یک سکو خاص مخنی شده ‎Bl‏ در واقع این دیدگاه بخشی از مشخصه کامل سیستم را نشان می‌دهد که از یک سکو به سکو دیگر بدون تغییس ‎Bb‏ می‌ماند.

صفحه 31:
دیدگاه خاصس سكو ‎Hl‏ اين ديدكاء دید گاه مستقل از سکو را به همراه جزییات پیاده سازی بر روی یک سکو خاص نشان می‌دهد.

صفحه 32:
(Otew) sys ‎BI‏ يك ديد (يا يك مدل دیدگاه » نمایشی از یک سیستم بر پایه زاویه یک دید گاه خاص است.

صفحه 33:
9 مجموعه‌اي از فن‌آوري‌ها و زيرسیستم‌ها است. اق[ هر سکو یک محموعه همگن از وظایف است که از طبریق تعدادی واسط و الگوهای خاص کاربردي مي‌توان آنها را به خدمت گرفت.

صفحه 34:
برنامه کاربردی (دمسلسام۳) ‎Hl‏ به یک وظیفه‌مندی در حال توسعه اشاره می‌کند. ‎ ‏8 هم سیستم به شکل یک یا چند برنامه کاربردی بر روی یک یا چند سکو توصیف می‌شود.

صفحه 35:
تغيير شكل (مض حص 210) مدل مبدا و مدل مقصد باید مربوط به يك سیستم باشند. هم مي‌تواند بصورت دستي باشد و هم بصورت خودکار

صفحه 36:
9 ern لقلا سرويس‌هايي هستند که در يك سطح وسيعي از سکوها در دسترس

صفحه 37:
پیاده سازي سم ۱۳۳ ‎Hl‏ يك پیاده سازي يك مشخصه است که در آن تمام اطلاعات مورد نیاز برای ساخت يك سیستم و عملیاتی کردن آن را در خود جاي داده ‏است.

صفحه 38:
انواع مدل‌ها مدل‌هاي مستقل از محاسبه ‎(CIM)‏ ‏مدل‌هاي مستقل از سکو (۳[1۷1) مدلهاي خاص ‎(PSM) 5x.‏ مدل‌هاي خاص پياده‌سازي ‎(PSD)‏ ‏مدل سكو ‎(PM)‏ 5غ 8غ 8غ 5 2ا

صفحه 39:
مدل مستقل ١ز‏ محاسبه (05100) 8 يك مدل مستقل از محاسبه ديدي از سيستم بر يليه ديدكاه مستقل از محاسبه است. ‎a‏ بر روي نيازمنديهاي سيستم تاكيد دارد. لقنا جزبيات ساختار سیستم‌ها را نشان نمي‌دهد. ‎Hl‏ مدل مستقل از محاسبه را گاهي مدل دامنه نیز مي‌نامند. نقش مهمي در ایجاد يلي بين خبركان دامنه مساله و نیازمندیهای آنها از يك طرف و متخصصان طراحي و پياده‌سازي از طرف ديكر دارد. ia

صفحه 40:
مدل مستقل از ‎(P1D) gSw‏ |#آ يك مدل مستقل از سكو ديدى از سيستم بر يايه ديدكاه مستقل از سكو است. ‎Gl‏ بر روی عملکرد یک سیستم ‎AS gp ASE‏ ‎Gl‏ جزییات لازع برای پیاده سازی روی یک سکو خاص مخفی شده است. 8 سیستم از منظر چگونگي پشتيباني از کسب‌وکار مدل مي‌شود. مستقل از فن‌آوريهاي پياده‌سازي است. ‎ll‏ يك مدل مستقل از سکو درجه خاصی از استقلال را ارایه می‌کند. ‏اقا يکي از متداولترين روشها براي ايجاد لين مدل استفاده از يك ماشین مجازي ‎Gl‏ ماشین مجازي به شکل يك مجموعه از بخش‌ها و سرويس‌هاي مستقل از يك سكو خاص تعریف مي‌شود. ‎ ‎ ‎ ‎

صفحه 41:
مدل خاص سكو (605)0) ‎HI‏ يك مدل خاص سکو ديدي از سیستم بر يايه ديدكاه خاص. سكو است. فا مدل مستقل از سكو را گسترش مي‌دهد. ‎a‏ جزییات لازم ببرای پیاده سازی روی یک سکو خاص را نشان مي‌دهد. ‎ff‏ یک ]۷[ مشخصه‌های داخل ]11 را با جزییات مبوط به چگونگی استفاده سیستم بر روی یک سکو خاص ت کیب می‌کند. ‏امکان داشتن چندین مدل خاص سكو براي يك مدل مستقل از سكو وجود دارد.

صفحه 42:
مدل خاص پیاده‌سازی (۳1) اقا يك مدل خاص سكو را ييادهسازي مي كند. لقلا كد اجرايي است که بر روي سختافزار نهايي اجرا مي شود. لكآ از روي 2/10061 0[961) تولید مي‌شود.

صفحه 43:
(PO) 5 Jao افآ مدل سکو مجموعه مناهیم تکنیکی بخشهای مخطف یک سکو و سرویسهای ارائه شده توسط آن سکو را نشان می‌دهد.

صفحه 44:
0 توسعه مبتني بر ‎eee‏ ‏معماري مدل‌رانه چگونه كار مي كند؟

صفحه 45:
توسعه 021009 در يك نگاه we ‏مدلهاي‎ ‎(PSMs) ‏سكو‎

صفحه 46:
گام اول: تهیه مدل‌های ‎CID‏ نيازمنديهاي سیستم در مدل‌هاي مستقل از محاسبه مدل مي‌شود. اين کار مي‌تواند توسط خبرگان دامنه مساله انجام شود.

صفحه 47:
گام دوم: ایجاد مدل‌های ‎PID‏ الق مدل‌هاي ]11۷ با توجه به مدل‌هاي ]11۷/) ایجاد مي‌شوند. لقلا مدل‌هاي ]711۷ مي‌توانند از سرويس‌هاي فراگیر نیز استفاده کنند. Calls

صفحه 48:
كام سوم: تهيه مدل سكو ‎Hl‏ معمار يك يا جند سكو را براي ييادهسازي سيستم برميكزيند. این کار با توجه به صفات كيفيتي و مصالحه بین آنها انجام ميشود. ‎

صفحه 49:
گام چهارم: تهیه مدل‌هاي ۳۹) نشانه‌گذاري ‎oly‏ دمل مدل‌هاي ‎PIM‏ به مدل‌هاي ‎PSM‏ باید از نگاشت آستفاده کنیم. ‎i‏ لقلا يك نكاشت مشخصدهابي را براي تبسيل فراهم مي‌کند. ‎a‏ در فرآیند نگاشت مدل سکو ماهیت نگاشت را ۱ مي كند. ‎ret orton‏ ‎Hl‏ براي انجام نگاشت ابتدا باید مدل‌هاي ۳71۷1 | نشانه گذاري شوند. ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‏لها يك نشانه تعيين مىكند يك موجوديت در 1 جكونه بايد به موجوديتي در 15111 تبديل شود. ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 50:
گام پنجم: تهیه مدل‌هاي ‎PCO‏ اقا گام بعدي این است که ]11 نشانه‌گذاري شده به يك ]31۷ تبدیل شود. لقلا مي‌تواند بصورت دستي, نیمه خودکار. یا تمام خودکار انجام شود. اقا ورودی به اين گام ]11۷ نشانه گذاری شده و يك نگاشت است. ‎Hl‏ خروجى نيز 251101 است. ‎ ‎Maps to ‎

صفحه 51:
گام ششم: تهیه مدل‌هاي ‎Sass PCO‏ ‎il‏ بصورت مشابه براي تبدیل مدل‌هاي 4 به ]۳9 ابتدا ‎PSM xt‏ نشانه گذاري شود. ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 52:
كام هفتم: تولید کد !قا در آخرين كام كدهاي اجرايي توليد ميشود. 4 ‎Hl‏ امکان انجام مهندسي معکوس نیز وجود ۳۳ Maps t 2-8 Maps to CORBA Java/EJB Other Model Model Aes Model | Maps to | Maps to [aps to CORBA Java/EJB aus Other

صفحه 53:
استانداردها و فرآمدل‌ها Finance Manufacturing E-Commerce Space 4 Telecom Transportation HealthCare More.

صفحه 54:
استانداردها و فرآمدل‌ها نگاشت به PSM ١ Time ‏نكاشت‎ ‎PSM «PIM (خاص يك سکو)

صفحه 55:
استانداردها و فرآمدل‌ها

صفحه 56:
چارچوب. مفهومي 2006)

صفحه 57:

صفحه 58:
مزاياي معماري مدل‌رانه الق ‎os‏ نويسي دستي رفتار يك مدل حذف مي‌شود. لكآ تمرکز بر روي مدل‌ها باعث طراحي بهتر و دقیقتر مي‌شود. ‎Bl‏ انقلابی در افزایش سطح تجرید ‎il‏ جداسازي قواعد کاري از محیط پياده‌سازي ‎

صفحه 59:
تهدیدات فراروي معماري مدل‌رانه ‎Bl‏ پشتيباني کامل از يكپارچگي مدل‌ها 1 مديريت اكأسنترشن روزافزون فن‌آوريهاي مختلف افزایش بلوغ ابزارهاي ‎MDA‏ ‏فا تبدیل مدل‌ها ‏ات هماهنگي بین نگاشت مدل‌ها ‎al‏ ابزارهايي براي آزمون مدل‌رانه ‏تا کمپایلر مدل ‎

صفحه 60:
اطلاعات بيشئر ... سس ‎(a‏ http://www.omg.org/ http://www.omg.org/mda/

جهت مطالعه ادامه متن، فایل را دریافت نمایید.
29,000 تومان