خلاصه جلسه 5 مهندسی نرم‌افزار تابستان 87

جلسه پنجم

مفاهیم و اصول طراحی

هدف از طراحی, اطمینان از کیفیت نرم‌افزار, کاهش ریسک قبل از پیاده‌سازی و کاهش میزان خطاهاست. در گام تحلیل محصولاتی تولید می‌شود و در گام طراحی از آن‌ها استفاده می‌شود. در گام طراحی 4 عمل اصلی و اساسی انجام می‌شود:

1)      طراحی داده براساس مدل ERD و DD.

2)      طراحی معماری براساس مدل‌های DFD  و CFD.

3)      طراحی واسطه‌ها براساس SDT, Pspec و Cspec .

4)      طراحی رویه‌ها براساس Pspec, Cspec.

اصول طراحی:

1)      براساس مدل تحلیل, طراحی صورت می‌گیرد و قابل پیگیری باشد.

2)      در طراحی, چیز جدیدی تولید نشود و از روش جدیدی استفاده نشود. بلکه از روش‌ها و مدل‌های موجود استفاده کنیم.

3)      طراحی فاصله ادراکی میان تحلیل و پیاده‌سازی را تا حد امکان کم می‌کند.

4)      طراحی, کدنویسی نیست.

5)      اصل طراحی کیفیت است و باید توجه اصلی به آن باشد.

کیفیت:

خارجی: آنچه مشتری می‌بیند و ارزیابی می‌کند مثل عملکرد, ظاهر, کارایی و …

داخلی: خود مهندسین نرم‌افزار آن را می‌بینند و براساس مفاهیم دیگری کیفیت نرم‌افزار را می‌سنجند که به آن‌ها «مفاهیم طراحی» می‌گویند.

مفاهیم طراحی:

1)      انتزاع یا مجردسازی: در طراحی سطح انتزاع را گام به گام کاهش می‌دهیم تا رفته رفته به پیاده‌سازی نزدیک شویم.

2)      پالایش: درهرگام جزئیات بیشتری به مسئله اضافه می‌کنیم و دوباره انتزاع و پالایش می‌کنیم. انتزاع و پالایش هردو  مکمل یکدیگرند.

3)      خاصیت پیمانه‌ای: هر طراحی خوب با صرفه‌نظر از روش, باید خاصیت پیمانه‌ای را در نظر بگیرد.پیچیدگی و هزینه لازم برای مسئله بزرگ از پیچیدگی و هزینه‌ی یک مسئله تقسیم شده بیشتر خواهد بود.

4)      معماری: هم‌بندی مولفه‌ها و ساختارکلی نرم‌افزار است. هم‌بندی ماژول‌ها و ارتباط آن‌ها معماری را می‌سازد.

5)      سلسله مراتب کنترل: پیمانه‌های سطح بالا پیمانه‌های کنترلی هستند و پیمانه‌های سطوح زیرین کارهای اصلی و پردازش‌ها و ورودی و خروجی را انجام می‌دهند.

6)      تقسیم‌بندی: شکستن سیستم به زیر سیستم‌ها. دو نوع دارد: افقی و عمودی.

7)      ساختمان داده‌ها: ساختمان داده‌ها رابطه منطقی میان عناصر داده‌ای را نشان می‌دهد.

8)      رویه نرم‌افزار: در رویه جزئیات پردازشی و منطق هریک از پیمانه‌ها و ترتیب اجزای دستورات وشرط‌ها بیان می‌شود.

9)      پنهان‌سازی اطلاعات: یک طراحی خوب اطلاعات را پنهان می‌کند. منطق ماژول‌ها از چشم هم پنهان است, بلکه فقط به نتایج یکدیگر کار دارند.

استقلال تابعی: باید این خاصیت وجود داشته تا هر ماژول کار خود را به خوبی انجام دهد. در استقلال تابعی دو مفهوم مطرح است:

1)      وحدت: کارهایی که در یک ماژول قرار می‌گیرد به گونه‌ای در کنار هم باشند که بتوان گفت در کل ماژول چه کاری انجام می‌دهد. انواع وحدت:

1-1)      وحدت تصادفی

1-2)      وحدت زمانی

1-3)      وحدت رویه‌ای

1-4)      وحدت ارتباطی

1-5)      وحدت منطقی

2)      کوپل(ارتباط) : در کوپل به ارتباط میان ماژول‌ها کار داریم و زمانی کوپل خوب است که ارتباط پیمانه‌ها کم باشد. انواع :

2-1) کوپل داده‌ای ( مولفه – ساختمان داده – کنترل )

2-2) کوپل مشترک

2-3) کوپل خارجی

2-4) کوپل محتویات

اعمال اصلی طراحی:

1)      طراحی داده: ساختمان داده‌های سیستم را مشخص می‌کنیم.در سه سطح است:

1-1)            سطح مولفه: تا انتهای گام طراحی عقب می‌اندازیم. مانند تعریف متغیرها و مقادیر اولیه به آن‌ها

1-2)            در سطح کاربرد: پایگاه داده است که از روی مدل ERD جداول را می‌سازیم.

1-3)            در سطح تجاری: طراحی مخزن داده است.

2)      طراحی معماری: از چند الگوی مشخص استفاده می‌کنیم:

2-1) معماری بر پایه داده

2-2) معماری جریان داده

2-3) معماری لایه‌ای

2-4) معماری Call Return

2-5) معماری شی‌گرا

کیفیت طراحی معماری: کمی و کیفی

جریان فرآیند در DFD:

1)      جریان تبدیل: در این جریان داده‌ها مرتب تغییر می‌کنند و فرآیند جلو می‌رود.

2)    جریان تراکنش: قلم داده‌ای در یک ماژول وجود داردکه براساس شرایط آن قلم داده یکی از خروجی‌ها انتخاب می‌شود, به طوریکه انگار در منطق آن ماژول تصمیم‌گیری انجام می‌شود.

3)      طراحی واسطه‌ها: Interface تاثیر زیادی در مشتری دارد و به همین دلیل اهمیت بسیار زیادی در تولید نرم‌افزار خواهد داشت, زیرا بیشتر تعامل کاربر با Interface است.

اصول طراحی واسط:

1) کنترل را به کاربر بدهید

2)بارفکری کاربر را کم کنیم

3) واسط را یکنواخت کنیم

§      در مرحله طراحی واسط Help نرم‌افزار تولید می‌شود و شامل دو نوع است:

1) مجتمع شده: در هنگام ساخت به سیستم اضافه می‌شود و همراه با سیستم جلو می‌رود و در هر وضعیت سیستم, Help مربوط به آن وضعیت را نشان می‌دهد.

2) اضافه شده: پس از تولید و تکمیل نرم‌افزار, Help آن تولید می‌شود.

4) طراحی رویه‌ها:

در این گام داخل ماژول‌ها را پر می‌کنیم. بااستفاده از شبه کد, منطق هر ماژول را تعیین و ساختمان‌داده‌ها و نوع داده‌ها را مشخص می‌کنیم. شامل سه مدل زیر است:

4-1) نشان‌گذاری طراحی گرافیکی: برای نشان دادن منطق ماژول‌ها یا از روش نشانه‌گذاری گرافیکی یا از ابزار گرافیکی دیگری به‌نام نمودار جعبه‌ای استفاده می‌کنیم.

4-2) نشان‌گذاری جدولی طراحی: برای نرم‌افزارهایی که در آن‌ها شرط‌ها خیلی کاربرد دارد استفاده می‌شود. در این جدول تصمیم‌گیری همی شرط‌های ممکن و موجود در مسئله را به همراه اعمالی که در سیستم در نتیجه ترکیب آن‌ها جمع می‌شود را لیست می‌کنیم.

4-3) زبان طراحی برنامه: استفاده از زبا طراحی برنامه یا شبه کد است. این روش از این جهت مناسب‌تر از سایر روش‌هاست زیرا همه‌ی شرط‌ها را نشان می‌دهد و ویرایش آن راحت‌تر است و قابلیت خوانده‌شدن توسط ماشین از جمله توانایی‌های این روش است.

  

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌واره‌ی وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s

دنبال‌کردن

هر نوشته‌ی تازه‌ای را در نامه‌دان خود دریافت نمایید.