آزمایشگاه مهندسی نرمافزار
اسلاید 1: 1آزمایشگاه مهندسی نرم افزارمدرس: ریحانه خورسند
اسلاید 2: مدلسازی تحلیلی2
اسلاید 3: نگاه اجمالیبهترین روش برای نشان دادن نیازمندی های نرم افزار کامپیوتری؟مدلسازي تحليلي چيست؟ مدلسازي تحليلي براي نشان دادن نيازمنديهاي داده ها ، توابع – كاركرد و رفتارتركيبي از متن واشكال نموداري به گونه اي استفاده ميكند كه درك آن ساده است و مهمتر آنكه بررسي صحت ، كامل وسازگار بودن آن بسيار ساده وآسان ميباشد . چه کسی کار مدلسازی تحلیلی را انجام می دهد؟يك مهندس نرم افزار كه تحليلگر نيز ناميده ميشود با استفاده از نيازمنديهاي مشتري مدل مورد نياز را ميسازد .3
اسلاید 4: نگاه اجمالی به جهت اينكه مدلسازي تحليلي نيازمنديها را به صورت سه بعدي نمايش مي دهد و بدين ترتيب احتمال يافتن خطاها وناسازگاريها افزايش ميابد اين روش اهميت پيدا كرده است . مراحل كار:مدلسازي نيازمنديهاي داده اي ، كاركردي و رفتاريپالايش وتجزيه و تحليل مدلها براي ارزيابي كامل بودن ، سازگاري و صحيح بودنتشكيل مشخصه مدل مورد نظرتاييد توسط مهندسين وكاربران4
اسلاید 5: نگاه اجمالیمحصول كار چيست؟ توضيحات مربوط به اشياء داده اي ، نمودار رابطه هاي رابطه – موجوديت ، نمودارجريان داده ها ، نمودارهاي انتقال وضعيت ، مشخصه هاي پردازشي ومشخصه هاي كنترلچگونگي حصول اطمينان از درستي انجام كار : بوسيله بررسي مجدد از لحاظ صحت ، كامل وسازگار بودن . دو مدل غالب و مشهور مدلسازي تحليلي عبارتند از تحليل ساخت يافتهتحليل شيء گرا5
اسلاید 6: نگاه اجمالیبخشهاي تحليل ساخت يافته از نظر ”تام دماكرو“ : نتايج تحليل بايد قابل تعمير ونگهداري باشد . مشكلات مربوط به اندازه بايد با استفاده از شيوه مؤثرومناسب تقسيم بندي ،برطرف شوند. در صورت امكان وهركجا ميشود بايد از علائم گرافيكي استفاده كرد . جدا كردن مفروضات منطقي ( ضروري ) و فيزيكي ( پياده سازي ) از يكديگر12346
اسلاید 7: ساختار یک مدل تحلیلیمدل تحليلي ساخت يافته بايد سه هدف زير را دنبال كند :توصيف نياز مشتريبه وجود آوردن مبنايي براي ايجاد طراحي نرم افزاريتعريف مجموعه اي از نيازمنديها كه پس از ساخته شدن نرم افزار ميتوانند معتبر شوند .فرهنگ داده هاتوصيف اشياء داده اينمودارموجوديت رابطهمشخصاتفرآيند نمودار جريانداده ها نمودارگذار حالتمشخصات کنترلیساختار یک مدل تحلیلی7
اسلاید 8: عناصر مدل تحلیل مجموعه اي شامل توضيحات مربوط به تمام اشياء داده اي مصرف شده يا به وجود آمده توسط نرم افزار (ERD : Entity Relation Diagram) : روابط موجود ميان اشياء داده اي را نشان ميدهد .(DFD : Data Flow Diagram) : دو هدف مهم را برآورده ميسازد . اين دو هدف عبارتند از : فراهم كردن شاخصي در ارتباط با نحوه تبديل داده ها هنگام حركت داده ها در طول سيستم نشان دادن كاراكترهاي اصلي وفرعي كه تبديل وتغيير جريان داده ها را انجام ميدهند .(STD : State Transition Diagram) : نحوه برخوردسيستم درنتيجه وقوع رويدادهاي خارجي رانشان ميدهد . واژه نامه داده ها :نمودار رابطه -موجوديتنمودار جريان داده هانمودار گذارحالت 8
اسلاید 9: مدل سازی داده هاويژگيهاي نموداررابطه – موجوديت (ERD) :استفاده از نشانه گذاري گرافيكي تاكيد برداده ها وايجاد يك شبكه داده اي مفيد بودن در مواردي كه داده ها وروابط موجود بر داده ها پيچيده اند .9
اسلاید 10: مدل سازی داده هامدل داده ها از سه بخش اطلاعاتي تشكيل شده كه عبارتند از: شيء داده اي : كه نشانگر هر يك از تركيبات اطلاعاتي است كه بايد توسط نرم افزار درك شود . منظور از اطلاعات تركيب شده ، اطلاعاتي است كه داراي ويژگيها و صفات خاصه متفاوت باشند .مثل یک فردیک مقدار تنها و بدون ترکیب نمی تواند یک شی داده ای معتبر باشد. صفات خاصه شیء داده ای: مشخصات يك نمونه شيء را تعريف ميكنند . اين صفات را ميتوان براي نامگذاري نمونه اي از اشياء داده اي ، توصيف نمونه مفروض ويا ارجاع به نمونه اي ديگر در جدول ديگري استفاده كرد . به هر حال يك يا چند صفت به عنوان شناسه تعريف ميشوند كه براي يافتن نمونه اي از شيء داده اي يك كليد محسوب ميشوند . روابط : اشياء داده اي به اشكال وشيوه هاي مختلف به يكديگر مرتبط شده اند .10
اسلاید 11: مثالكتاب كتابفروشي كتاب كتابفروشي (الف) يك اتصال ساده بين اشياء(ب) رابطه هايي بين اشياءسفارش ميدهدمي فروشدانبارميكندنمايش ميدهدمرجوع ميكند11
اسلاید 12: مدلسازی داده ها براي رسيدن به اهداف مهندسي نرم افزار علاوه بر اطلاعات فوق ما بايد بدانيم چه تعداد از اشياء با هم در ارتباطند ؟چه تعداد از شیئ x با چه تعداد از شیئ y در ارتباط می باشد. تعداد وقوع اشياء در يك رابطه رانشان مي دهد و به سه دسته يك به يك (1:1) ، يك به بيشمار(N:1) وبيشمار به بيشمار(N:M)تقسيم ميشود . اگر وجود رابطه ميان دو شيء مختلف به صورت انتخابي باشد ويا نيازي براي برقراري ارتباط وجود نداشته باشد مداليته رابطه صفر خواهد بود .تعداد مدخلها در يك رابطه(كارديناليته) : مدالیته:12
اسلاید 13: موجودیت-مثال:نمودار رابطهنرم افزار ثبت نام پروژه فارغ التحصیلیخصوصیات:هر استاد حداقل یک پروژه دارد.همه ی دانشجویان ترم آخر نیستند.یک پروژه توسط چند دانشجو هم می تواند اتخاذ شود. پروژه استاددانشجوگرفتنداردممکن است وضعیتی وجود داشته باشد که در آن دانشجو درس پروژه را نداشته باشداین حالت قطعی دلالت دارد بر این که برای گرفتن درس پروژه باید یک دانشجو وجود داشته باشد13
اسلاید 14: (DFD)نمودار جریان دادهنمایش گرافیکی است که جریان اطلاعات و تبدیلاتی را که در ضمن حرکت داده ها از ورودی به خروجی انجام می شوند نشان می دهد .موجودیت خارجیتبدیل 1#تبدیل 2#تبدیل 3#تبدیل 4#موجودیت خارجیانبار دادهداده ورودیداده میانیداده میانیداده ورودیداده خروجیداده خروجیداده میانیورودی انبار دادهخروجی انبار دادهموجودیت خارجیموجودیت خارجی14
اسلاید 15: (DFD)نمودار جریان دادهیک چهارضلعی برای نمایش یک موجودیت خارجی استفاده می شود یعنی یک جزء از سیستم(برای مثال سخت افزار ، یک فرد ،برنامه ای دیگر) یا سیستمی دیگر که اطلاعاتی را برای تبدیل توسط نرم افزار تولید می کند.یک دایره به نام حباب یک فرایند یا تبدیل را نشان می دهد که بر روی داده یا کنترل به کار گرفته می شود و آن را تغییر می دهد.یک پیکان یک یا چند شیء داده را نشان می دهد.تمام پیکان های یک نمودار جریان داده باید دارای برچسب باشند.خط دوگانه نشان دهنده ی یک حافظه ی داده ها می باشد به معنی اطلاعات ذخیره شده ای که توسط نرم افزار استفاده می شوند.هیچ نمایش صریحی برای دنباله ی پردازش یا منطق شرطی در این دیاگرام وجود ندارد پس DFD را با فلوچارت اشتباه نکنید. 15
اسلاید 16: DFD ها می توانند به سطوحی تقسیم بندی شوند که جریان رو به افزایش اطلاعات و جزئیات عملکردی را نشان دهند.DFD سطح صفر که مدل اساسی سیستم یا مدل زمینه نیز نامیده می شود کل عنصر نرم افزار را به صورت یک حباب همراه با داده های ورودی و خروجی نشان داده شده توسط پیکان های وارد شده و خارج شده نشان می دهد.تداوم جریان اطلاعات باید وجود داشته باشد یعنی ورودی و خروجی هر پالایش باید مشابه باشد. به این مفهوم بالانس بودن نامیده می شود. (DFD)نمودار جریان داده16
اسلاید 17: DFD پالایش جریان اطلاعات درمدل برای سیستم F :ورودی اولیه A وخروجی احتمالی B است.مدل F به تبدیلات f1 تا f 7 پالایش می شود.FABAf2f3f4f5f6f7Bf1vwxyzz1z2z3f41f42f43f44f45xyzx2y2x1y117
اسلاید 18: تمریننرم افزار پذیرش دانشجو :این نرم افزار توسط کلاینت مشخصات دانشجو را دریافت و در سرور بر اساس مشخصات دانشجو یک شماره دانشجویی تولید و کلید مشخصات را ثبت می کند و نیز شماره دانشجویی را در کلاینت نشان می دهد.این نرم افزار مشخصات دروس را نیز دریافت کرده و در سرور شماره درس را تولید و کلیه مشخصات درس را نیز ثبت می کند. نرم افزار در زمان ثبت نام دانشجویان ، شماره دانشجویی را دریافت کرده و در صورت وجود آن شماره در انباره ، مجوز ثبت نام دروس دانشجو را توسط کلاینت می دهدسپس دانشجو دروس اختیاری خود را وارد کرده و در صورت وجود آن دروس در بانک اطلاعاتی ، توسط کلاینت قطعی بودن ثبت نام دانشجو به او اعلام می شود. نمودار ERD و DFD این نرم افزار را رسم کنید.12318
اسلاید 19: سیستم های بلادرنگیک سیستم بلادرنگ باید با دنیای واقعی در یک فریم زمانی مشخص شده توسط آن ارتباط برقرار نماید .مثال: ناوبری هواپیما ، کنترل فرایند تولید ،محصولات مشتری و تجهیزات صنعتیبراي تطابق دادن تحليل نرم افزار بلادرنگ تعدادي كارهاي تكميلي در زمينه طرح اوليه تحليل ساخت يافته انجام شده است:فعالیت های تکمیلی Ward و Mellorفعالیت های تکمیلی Hatley و Pirbhai19
اسلاید 20: فعالیت های تکمیلی Ward و Mellorجریان اطلاعات بر مبنای زمان پیوسته تولید می شود.(مکانیزمی برای نمایش جریان داده پیوسته زمانی)مثال:یک سیستم بلادرنگ نظارت بر آزمایش برای توربین های بخار ممکن است نیازمند نظارت بر سرعت توربین ، درجه حرارت احتراق و ... به صورت پیوسته باشد.پیکان با یک فلش:برای نمایش جریان داده گسستهپیکان با دو فلش:برای نمایش جریان داده پیوسته1نظارت و تنظیم سطح حرارتحرارتورودی پیوستهخروجی پیوستهنقطه تنظیم حرارت20
اسلاید 21: اطلاعات کنترل از سیستم عبور می کند و پردازش های مربوط بر روی کنترل انجام می شود.جریان کنترل با استفاده از پیکان های خط چین نمایش داده می شود.فرایند کنترل: فرایندی که فقط اداره کننده ی جریان های کنترل باشد که با استفاده از حباب خط چین نمایش داده می شود.فعالیت های تکمیلی Ward و Mellorنظارت بر دستگاه و رابط کاربررشته بیت هاپرچم توقف یا حرکتفرمان های اپراتورآماده سازی کنترل روباتپردازش فرمان های روباتتنظیمات اپراتورفعالسازی فرایندبافر وضعیت قطعاتوضعیت هر دستگاهحرکت هشدارفایل فرمان های روباتدیدگاه سطح بالا از جریان داده ها و کنترل ها برای یک واحد تولیدی221
اسلاید 22: چندین نمونه از یک بانک اطلاعاتی گاهی در موارد چند برنامه سازی استفاده می شود.برای نمونه در مثال قبل چند بافر وضعیت قطعات نظارت می شوند به گونه ای که به روبات های متفاوت در زمان های مناسب سیگنال داده شود و هر روبات می تواند سیستم کنترل خود را داشته باشد. سیستم ها دارای حالت ها و مکانیزم هایی هستند که باعث تغییر حالت می شوند.فعالیت های تکمیلی Ward و Mellor3422
اسلاید 23: ايجاد نمودارجريان كنترل CFD (Control Flow Diagram) كه داراي فرآيندهايي مشابه DFD است اما به جاي نشان دادن جريان داده ها به نمايش دادن جريان كنترل مي پردازد .مشخصات كنترل (CSPEC : control specification): مشخصات كنترل (CSPEC) نشانگررفتارسيستم به دو روش متفاوت هستند . مشخصات كنترل حاوي نمودار تغييرحالت (STD) هستند كه اين نمودار نشانگر مشخصات ترتيبي رفتار ميباشد . همچنين مشخصات كنترل ميتوانند داراي جدول فعالسازي برنامه اي – يعني مشخصات تركيبي رفتار – باشند . دقت كنيد كه اين مشخصات اگرچه رفتارسيستم راتوصيف ميكنند اما اطلاعاتي در مورد كار داخلي فرآيندهاي فعال شده در نتيجه اين اين رفتار را به ما نمي دهند . مشخصات كنترل براي نشان دادن موارد زيربه كار ميروند :نحوه عملكرد نرم افزارهنگام دريافت يك رويداد يا سيگنال كنترلتعيين نوع فرآيندهايي كه در نتيجه به وقوع پيوستن يك رويداد ايجاد مي شوند .Pirbhai و Hatley فعالیت های تکمیلی 23
اسلاید 24: مشخصات فرآيند:(PSPEC : process specification) ازمشخصات فرآيند براي توصيف تمام فرآيندهاي مدل جريان كه در سطح پاياني پالايش ظاهر ميشوند استفاده مي گردد . محتويات مشخصات فرآيند عبارتند از : متن روايتي زبان طراحي برنامه (PDL : Program Design Language) توصيف وتوضيح الگوريتم فرآيند معادلات رياضيجداول نمودارها يا چارت هاPirbhai و Hatley فعالیت های تکمیلی 24
اسلاید 25: (STD مدلسازی رفتاری( نمودار نمودار تغییر حالت ، نشان دهنده رفتار سیستم ،با استفاده از مشخص نمودن حالت ها و وقایعی است که باعث تغییر حالتها می شوند.علاوه بر این STD نشان می دهد که چه عکس العمل هایی (برای مثال ،فعالسازی فرایند) در نتیجه ی واقعه ی خاص انجام می شود.هر حالت می تواند یک مود رفتاری باشد.مثال: حالت ها برای سیستم نظارت و کنترل شیرهای فشار می تواند حالت نظارت ،حالت آرام و حالت خروج باشد.یک نمودار تغییر حالت نشان می دهد که چگونه یک سیستم از یک حالت به حالت دیگر حرکت می کند.25
اسلاید 26: چهارضلعی ها حالت های سیستم را نشان می دهند.پیکان ها نشان دهنده ی تغییر حالت های بین آن ها می باشند.هر پیکان با عبارتی قانونمند برچسب زده می شود :مقدار بالایی برچسب نشان دهنده ی وقایعی است که باعث انجام تغییر حالت می شوند.مقدار پایین برچسب نشان دهنده ی عملی است که در نتیجه ی آن واقعه انجام می شود.(STD مدلسازی رفتاری( نمودار 26
اسلاید 27: نمودار تغییر حالت ساده شده برای دستگاه کپی(STD مدلسازی رفتاری( نمودار گرفتن کپی هاتغذیه مجدد کاغذتشخیص مشکلخواندن فرامینبیکارفراخوانی خواندن ورودی کاربرپر/شروعفراخوانی مدیریت کپیکپی انجام شدفراخوانی عمل خواندن ورودی اپراتورخالیفراخوانی تغذیه مجدد کاغذپرفراخوانی خواندن ورودی اپراتورگیر کردهفراخوانی تشخیص مشکلگیر نکردهفراخوانی خواندن ورودی کاربر27
اسلاید 28: فرهنگ داده ها واژه نامه(فرهنگ)داده ها ليستي سازمان يافته از تمام عناصرداده اي است كه در ارتباط با سيستم مي باشد . دراين ليست تعاريف دقيق ومشخصي وجود دارد كه هم كاربر و هم تحليلگر سيستم درك مشتركي ازورودي، خروجي، اجزاي ذخيره شده و حتي محاسبات مياني خواهند داشت. واژه نامه ها داراي اطلاعات زير مي باشند :نامنام مستعارمحل استفاده و نحوه استفادهتوضيح محتوياتاطلاعات تكميلي درزمينه نوع داده ها، مقاديرازپيش تنظيم شده، محدوديتها يا موانع ومواردي از اين قبيل.28
اسلاید 29: مثال فرهنگ داده ها عملیاتخروجیورودینمودارنوعنامکلمه عبور را چک می کند که آیا در لیست اعضا وجود دارد یا خیر؟پیغام ID معتبر است کلمه عبورDFDپردازشپردازش کلمه عبورفعال و غیرفعال می شود--ERDموجودیتسنسورداده های پیکربندی از آن خوانده شده یا در آن ثبت می شوند.داده های پیکربندیداده های پیکربندیDFDانبارهاطلاعات پیکربندی29
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.