SEfarsi-Chapter12x

Download Report

Transcript SEfarsi-Chapter12x

‫به نام خداوند جان و خرد‬
‫فصل دوازدهم‬
‫ي‬
‫مدل و مدل‌ساز ‌‬
‫به سوي توليد بهتر نرمافزار‪ :‬اصول مهندسي نرمافزار‬
‫نوشته‪ :‬دكتر محسن صديقي ُمشكناني‬
‫‪www.sadighim.ir‬‬
‫فهرست مطالب‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫مدل و مدلسازي‬
‫چرا مدل و مدلسازي؟‬
‫طراحي و طرح‬
‫انواع طراحي‬
‫حاصل طراحي‬
‫ابزارهاي مدلسازي و طراحي‬
‫آزمايش و ارزيابي طراحي‬
‫مدل و مدلسازي‬
‫‪‬‬
‫مثالهايي از مدل‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫نقشهي ايران مدلي از كشور ايران است‬
‫رزمايش نظامي مدلي از صحنهي جنگ واقعي است‬
‫‪...‬‬
‫مدل‪ :‬تجسم يا نمادي از واقعيت‪ ،‬از يك منظر مشخص‬
‫مدلسازي‪ :‬فرايند ايجاد يك نماد از منظري مشخص‪ ،‬براي‬
‫نمايش يك واقعيت‬
‫بيان مدل‬
‫‪‬‬
‫‪‬‬
‫براي بيان رسمي مدل‬
‫با استفاده از قواعد نگارشي و معنايي مشخص‬
‫چرا مدل و مدلسازي؟‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫مدل واقعيت ساده شده است‬
‫ريزهكاريها در مدل پنهان شده است‬
‫مدلسازي ميتواند موجب درك بهتر مسئله و تصحيح و تكميل‬
‫راهحل گردد‬
‫با مدلسازي راهكارهاي مختلف فرصت نمود پيدا ميكنند‬
‫فرصت اِعمال تغييرات ساختاري را بهوجود ميآورد‬
‫مرحلهي مناسبي براي تبلور و نمايش ايدههاست‬
‫فرصت داوري ايدهها را بهوجود ميآورد‬
‫وسيلهي بسيار مهمي براي قابل رؤيت شدن ايدههاست‬
‫الگو و چهارچوبي را براي فعاليتهاي اجرايي در اختيار ميگذارد‬
‫طراحي و طرح‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫طراحي در واقع تجسم راهحل براي يك مسئله است‬
‫طراحی مدلسازی راهحل مسأله است‬
‫طرح‪ ،‬محصول اين فرايند‪ ،‬و نماد يا مدلی از راهحل است‬
‫در قريب به اتفاق پروژهها‪ ،‬انواع مختلف طراحي ضرورت‬
‫مييابد (شكل‪)2-12‬‬
‫طراحي يك روند تكرارشونده است (شكل‪ )3-12‬و‬
‫(شكل‪)4-12‬‬
‫انواع طراحي‪ ،‬از نظر موضوعي‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫معماري‬
‫طراحي واسط كاربر‬
‫طراحي مقدماتي‬
‫طراحي تفصيلي‬
‫طراحي آزمايشها‬
‫طراحي آموزش‬
‫طراحي ساختمان دادهها‬
‫طراحي بانكهاي اطالعاتي‬
‫طراحي نگهداري‬
‫انواع طراحي‪ ،‬بر اساس روش‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫طراحي عملكردي‬
‫طراحي شيءگرا‬
‫طراحي بر مبناي گردش دادهها‬
‫طراحي بر مبناي فرايندها‬
‫طراحي بر مبناي حادثهها‬
‫حاصل طراحي‬
‫‪‬‬
‫حاصل طراحي مجموعهاي از طرحها و مستندات مربوط‬
‫است؛ از جمله‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫طرح مقدماتی‬
‫طرح تفصيل‬
‫طرح آزمايش‬
‫طرح آموزش‬
‫طرح نگهداری‬
‫طرح بازاريابی‬
‫حاصل طراحی مقدماتی‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫نمودار ساختار بلوكي‪ ،‬شكل‪5-12‬‬
‫ليست مؤلفهها‪ ،‬جدول‪1-12‬‬
‫ديكشنري دادهها‪ ،‬جدول‪2-12‬‬
‫طرح مقدماتي هر مؤلفه‬
‫جدول‪ :1-12‬نمونهاي از معرفي مؤلفهها‬
‫نام مؤلفه‬
‫مسئوليت‬
‫واسط انسان‬
‫مسئوليت اين مؤلفه ايجاد فضاي مناسب تعامل مخاطبين انساني مختلف با سامانه است‪.‬‬
‫توليد‬
‫اين مؤلفه بهعنوان ابزار توليد و نگهداري گراف سمنا عمل ميكند‪.‬‬
‫بهرهبرداري‬
‫اين مؤلفه مسئول بهرهبرداري از گراف سمناست‪ .‬هرگونه بهرهبرداري از گراف سمنا از‬
‫طريق اين مؤلفه انجام ميشود‪.‬‬
‫خودسازماندهي مسئوليت اين مؤلفه خودسازماندهي گراف و در واقع مهمترين ابزار سامانهي سمنا براي‬
‫هماهنگي با تغييرات به صورت خودكار است‪.‬‬
‫بانك‬
‫در نهايت گرهها‪ ،‬لبهها و تمام ويژگيهاي گراف بايد در بانك(هاي) دادهها ‪ -‬يا به تعبيري‪،‬‬
‫بانك دانش‪ -‬ذخيره گردد‪ .‬هرگونه استفاده از گراف‪ ،‬و هرگونه تغيير و خودسازماندهي گراف‬
‫هم‪ ،‬باز نيازمند كار با اين بانك است‪ .‬مؤلفهي بانك تمام مسئوليت كار با بانك را برعهده دارد‪.‬‬
‫واسط سامانهها‬
‫سامانههاي شالودهاي و سامانههاي كاربردي خود از مشتريان گراف موضوعات هستند‪.‬‬
‫بهعالوه كاربران سامانههاي كاربردي نيز ميتوانند از طريق سامانهي كاربردي مورد‬
‫استفادهي خود‪ ،‬از خدمات گراف موضوعات استفاده كنند‪ .‬اين مؤلفه مسئوليت برقراري‬
‫ارتباطهاي فوق را دارد‪.‬‬
‫جدول‪ :2-12‬نمونهاي از يك ديكشنري دادهها‬
‫تعريف‬
‫مفهموم‬
‫ارتباط معنايي‬
‫ارتباط معنايي‪ ،‬گوياي محتوا و معناي موجود بين دو موضوع يا دو‬
‫موجوديت است‬
‫بستر‪ /‬بستره‬
‫بستره‪ ،‬يك محيط عمومي براي ارتباط و تعامل است‪.‬‬
‫پارادايم‬
‫نظام‬
‫تودرتويي گراف سمنا‬
‫هرگرهي سمنا‪ ،‬خود ميتواند يك گراف سمنا باشد‪.‬‬
‫سازمان معنايي‬
‫سازمان معنايي‪ ،‬گوياي مجموعهاي از موضوعات و ارتباط معنايي بين‬
‫آنهاست‪.‬‬
‫سازمان معنايي‪ ،‬گوياي محتوا و معناي موجود بين مجموعهاي از‬
‫موضوعات يا موجوديتهاست‪.‬‬
‫ابزارهاي مدلسازي و طراحي‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫ضرورت به تصوير کشيدن )‪ (visualization‬طرح ها‪.‬‬
‫متنها مکمل هستند‪.‬‬
‫ضرورت تطابق با استانداردهاي مستندسازي مدلسازی و‬
‫طراحي‪ ،‬مثل ‪UML‬‬
‫گشت در وب برای ابزار مدلسازی‬
‫آزمايش و ارزيابي طراحي‬
‫‪‬‬
‫‪‬‬
‫كشف و رفع خطا در مرحلهي طراحي ارزانتر و سريعتر از‬
‫كشف و رفع آن در مراحل بعد است‬
‫معيارهاي ارزيابي‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫تنوع‬
‫بيان تصويري‬
‫سادگي‬
‫انتخاب سطح تجريد مناسب‬
‫تطابق با استانداردهاي مستندسازي طراحي‬
‫رعايت ارزيابي مؤلفهي خوب‬
‫تطابق با خواستهها‬
‫پيشبيني براي آزمايش و نگهداري‬
‫تناسب ساختار‬
‫عملي بودن‬