فرمت فایل : word(قابل ویرایش)
تعداد صفحات:37
خلاصه
25.7 روشهای نرمال – راهپیشرو
25.4- زبان مشخصات فرمال
25.3 بکارگیری notation های ریاضیاتی برای مشخصات فرمال:
25.2.4 دنباله
25.2.3 عملگرهای منطقی
25.2.1 مجموعه و مشخصات ساختاری
25.2 مقدمات ریاضیاتی
مثال 3:A Print Spooler
مثال 2 : یک بلاکهندلر:
مفاهیم فرمال متد
مثال 1: جدول سمبولها:
ریاضیات در توسعه نرمافزار
نقصانهای رویکرد غیرفرمال
حاصل کار چیست؟
مفاهیم پایه
فرمال متد
چیستی؟!
مشاهده سریع
خلاصه
روشهای نرمال یکپارچه برای محیط مشخصات فراهم میکند تا بسوی مدلهای تحلیلی که کاملتر ناسازگار و با ابهام کمتر از روشهای سنتی یا شیگرا باشد رهنمون میشود.
امکانات تشریحی تئوری مجموعهها و nofation های منطقی نا مهندس نرمافزار یک گزاره شفاف از واقعیات(نیازمندیها) را ایجاد کند.
مفاهیم زیرساختی که بر روشهای نرمال حاکم است(1) data inuariant یک شرط که درست است در سراسر اجرای سیستم که شامل مجموعهای دادههاست stste(2) .
دادههای ذخیرهشده که توسط سیستم به آنها در دسترس است و تغییر میکنند 431 عملیات، یک عملیات که در سیستم قرار دارد و دادهها را به State مینویسد یا از آن میخواند.
یک Stat با دو شرط شناخته میشود: شرط پیشین و شرط پسین.
ریاضیات گسترHeuristic, notation مرتبط با مجموعهها و مشخصات سازنده عملکردهای مجموعهای، عملکردهای منطقی و دنبالهها – اساس روشهای نرمال را شکل می دهند. ریاضیات گستر در یک زبان مشخصات نرمال همچون z اجرا میگردد. z همچون همه زبانها مشخصات نرمال دودامنه معنایی و نحوی را دربرمیگیرد. دامنه بخوبی از یک نماد شاسی استفاده میکند که کاملاً توسط notation های مجموعهها و محاسبات(predicate) دامنه معنایی زبان را قادر میسازد تا نیازمندیها را به یک روش موخر بیان نمایید. ساختار Z ترکیبی از شماهاست. ساختارهای جعبهمانند که متغیرها و روابط مابین آنها را مشخص میکند.
تصمیم برای استفاده از روش نرمال باید با توجه به هزینههای اولیه به همان نحو که به تغییرات فرهنگی مرتبط با یک تکنولوژی اساساً متفاوت توجه شدهاست باشد. در اغلب نمونهها، روشهای نرمال بهترین منفعت را برای سیستمهای کار بحرانی یا ایمنی – بحرانی ایجاد مینماید.
جدول 1-25 خلاصهای از nolafion Z ( نهادهای Z )
notation های z پایه تئوری مجموعهها typed و منطق first-ader است.
Z فراهم میکند یک ساختار که شما نامیده میشود تا operation , State های یک مشخصات را شرح دهد. یک شما گروهبندی میکند اعلان متغیرها را بایستی از Spredicate که تحلیل میکند احتمالاً مقدار یک متغیر در Z شمای X به فرم زیر تعریف میشود.
X
decloration
perdicates
توابع اصلی و ثابت فرم زیر تعریف میشوند.
Declaration
perdicates
اعلان نوع تابع یا ثابت را مشخص میکند حال آنکه predicate مقدار آن را برمیگرداند یک خلاصه از نمادهای z در زیر ارائه شدهاند.
مجموعهها :
S:PX S بعنوان مجموعهای از مجموعه X اعلان شده
X عضوی از S
X عضوی از S نیست
S یک زیرمجموعه از T است، هر عضو از S همچنین در T موجود است.
اجتماع T,S : همه عضوی S یا T هر دو .
اشتراک S,T : همه اعضای مشترک T,S
اختلاف S,T : همه اعضای S بجز آنهایی که در T هستند.
مجموعه تهی : هیچ عضوی ندارد.
مجموعه یکن: تنها X را شامل میشود.
مجموعه اعداد طبیعی
S یک مجموعه متناهی از مجموعه X هاست.
ماکزیمم مجموعه غیر تهی و عددی S .
توابع f اعلانشده بعنوان patial injection از x به y
دامنه f: مجموعه مقدارهایی از x هائیکه f(x) را تعریف میکنند.
dom f برد f : مجموعه مقادیر که f(x) برمیگرداند برروی x های دامنه.
Tan f
یک تابع که مطابق f1 است مگر اینکه x به y نگاشت شود.
تابعی همچون f بجز اینکه x از دامنه آن حذف شدهباشد.
(P,q) اگر هم q,p صحیح باشند صحیح است: p and Q منطقی
درست است اگر هر دو درست باشند یا هر دو غلط باشند(q نتیجه میدهد p ) :pimploes Q
هیچ مؤلفهای از شمای S در عملیات تغییر نکند.
هرچند نرمال تکنیکهای مشخصات برپایه ریاضیات هنوز به صورت گسترده در صنعت بکار نمیروند آنها مزیتهای اساسی نسبت به تکنیکهای غیرنرمال دارند.
Lisko و Bresios این را به صورت خلاصه زیر بیان میکنند.« مشخصات نرمال میتواند بصورت ریاضیاتی مطالعه میشود در حالیکه مشخصات غیرنرمال نمیتوانند برابر مثال یک برنامه صحیح میتواند براساس مشخصات خود درآید. یا دو مجموعه مشخصات میتواند معادل باشند.
فرمهای مشخص با تمامیت یا عدم سازگاری میتوانند خودکار شناسایی شوند. شما بعلاوه مشخصات نرمال ابهام را از بین میبرد و سختی را در گامهای نخست فرآیند مهندسی نمیتواند تقویت نماید.
اما مشکلات باقی میماند مشخصات ذیل عمدتاً برروی کارکرد و زمانبندی دادهها زوم نمودهاست. و جنبههای رفتاری یک مسئله برای ارائه دشوارتر است. بعلاوه برخی عناصر مسئله( همچون رابط انسان/ ماشین) توسط تکنیکهای گرافیکی یا prototype بهتر مشخص میشود. در نهایت مشخصات که با استفاده از نرمالمتر سختتر برای یادگیری از متدهایی همچون ساختاری است و یک شوک فرهنگی معنادار برای برخی شاغلین نرمافزار ایجاد میکند.
به همین دلیل محتمل است که نرمال تکنیک مشخصات زیاضیایی پایهای برای ساخت Cass tools ها جدید در آینده شکل میدهد.