انجام پایان نامه

درخواست همکاری انجام پایان نامه  بانک مقالات رایگان انجام پایان نامه

سفارش پایان نامه

|

انجام پایان نامه ارشد

 پایان نامه 

پایان نامه‏ کامپیوتر

انجام پایان نامه‏ ارشد کامپیوتر

 خلاصه
روشهاي نرمال يكپارچه براي محيط مشخصات فراهم مي‌كند تا بسوي مدلهاي تحليلي كه كاملتر ناسازگار و با ابهام كمتر از روشهاي سنتي يا شي‌گرا باشد رهنمون مي‌شود.
امكانات تشريحي تئوري مجموعه‌ها و 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 در عمليات تغيير نكند.  

25.7 روشهاي نرمال – راه‌پيشرو
هرچند نرمال تكنيكهاي مشخصات برپايه رياضيات هنوز به صورت گسترده در صنعت بكار نمي‌روند آنها مزيتهاي اساسي نسبت به تكنيكهاي غيرنرمال دارند.
Lisko و Bresios   اين را به صورت خلاصه زير بيان مي‌كنند.« مشخصات نرمال مي‌تواند بصورت رياضياتي مطالعه مي‌شود در حاليكه مشخصات غيرنرمال نمي‌توانند برابر مثال يك برنامه صحيح مي‌تواند براساس مشخصات خود درآيد. يا دو مجموعه مشخصات مي‌تواند معادل باشند.
فرمهاي مشخص با تماميت يا عدم سازگاري مي‌توانند خودكار شناسايي شوند. شما بعلاوه مشخصات نرمال ابهام را از بين مي‌برد و سختي را در گامهاي نخست فرآيند مهندسي نمي‌تواند تقويت نمايد.
اما مشكلات باقي مي‌ماند مشخصات ذيل عمدتاً برروي كاركرد و زمانبندي داده‌ها زوم نموده‌است. و جنبه‌هاي رفتاري يك مسئله براي ارائه دشوارتر است. بعلاوه برخي عناصر مسئله( همچون رابط انسان/ ماشين) توسط تكنيكهاي گرافيكي يا prototype بهتر  مشخص مي‌شود. در نهايت مشخصات كه با استفاده از نرمال‌متر سخت‌تر براي يادگيري از متدهايي همچون ساختاري است و يك شوك فرهنگي معنادار براي برخي شاغلين نرم‌افزار ايجاد مي‌كند.
به  همين دليل محتمل است كه نرمال‌ تكنيك مشخصات زياضيايي پايه‌اي براي ساخت Cass tools ها جديد در آينده شكل مي‌دهد.
هنگامي كه واگر رخ دهد مشخصات بر پايه رياضيات احتمالاً توسط بخش گسترده‌تري از جامعه مهندسين نرم‌افزار پذيرفته مي‌شود.
.b توبايست به صورت لكافي مستندكني
روشهاي نرمال يك روش موجز غيرمبهم و سازگار را براي مستندكردن نيازمنديهاي سيستم فراهم با اين حال اين توصيه شده كه يك سلسله ياداشتهاي زبان طبيعي همراه مشخصات نرمال براي خدمت‌كردن بعنوان يك مكانيزم براي كمك كرده تا خواننده‌ها سيستم را درك كنند.
                                                                                   Compromise
7 - توبايست استاندارد كيفيت خود را.
« هيچ چيز خالص در مورد نرمال متد وجود ندارد» [BOW,&] به همين دليل ديگر فعاليتهاي SQA (فصل 8 ) بايست ادامه يابند تا بكار روند بعنوان سيستمي كه توسعه داده مي‌شود.
8-  تونبايست متعصب با شيء
يكي مهندسين نرم‌افزار بايست بداني كه روشهاي نرمال يك تضمين براي درستي نيست. اين ممكن است( شايد بايد گفت، محتمل) است كه سيستم نهاي حتي وقتي با روشهاي نرمال توسعه داده‌مي‌شود ممكن است از قلم افتاد كه باگهاي كوچك و ديگر خصايصي كه مورد انتظار نيست را دارا باشد.
9 : تو بايد تست كني، تست كني و دوباره تست كني.
اهميت تست نرم‌افزار در فصول 23,18,17 شرح داده شود روشهاي نرمال مهندسين نرم‌افزار را از نياز به خوب – برنامه‌ريزي شده رفتاركردن در سراسر تست، مبرا نمي‌كند.
10 – توبايست دوباره استفاده كني.
در عبارت پيشين تنها روش  متوسط به كاهش هزينه‌هاي نرم‌افزار و افزايش كيفيت استفاده از reuse است.( فصل 27 ) روشهاي نرمال اين واقعيت را تغيير نمي‌دهند. در حقيقت اين مشكل است كه روشهاي نرمال يكي رويكرد مناسب هستند هنگاميكه كامپونت‌ها براي كتابخانه‌هاي قابل استفاده مجدد ساخته مي‌شوند.
256 ن فرمان روشهاي نرمال
تصميم براي استفاده از روشهاي نرمال در دنياي واقعي به همين سادگي پنداشته شود. Hinchky, Bowan « ن روشهاي نرمال» را بعنوان راهنمايي براي اين رويكرد مهم مهندسي نرم‌افزار را بكار مي‌برند ابداع نمودند.
1.    تو بايست notation اختصاصي خود را انتخاب كني براي انتخاب مؤثر از ميان تعداد گسترده زبانهاي مشخصات نرمال يك مهندس نرم‌افزار بايد واژگان زبان، نوع كاربرد مخصوص و گسترده استفاده از زبان را در نظر بگيريد.
2.    تو بايد فرمال بكني اما نه بيش از حد
اين بيان مي‌كند كه نيازي نيست تا روشهاي فرمال را در تمام جنبه‌هاي سيستم اصلي بكار گرفت مؤلفه‌هايي كه ايمني بحراني هستند نخستين انتخاب هستند. بعلاوه مؤلفه‌هايي كه در آنها اشتباه غيرقابل پذيرش است.( به دلايل كاري).
3- تو بايد هزينه‌ها را تخمين بزني.
روشهاي فرمال هزينه‌هاي ابتدايي زيادي دارند كارمندان مجرب، آشنايي با ابزارهاي پشتيباني استفاده از مشاور قرار داد. در بالابردن اولين هزينه‌هاي مؤثر است. اين هزينه بايد در نظر گرفته شود وقتي كه برگشت سرمايه روشهاي نرمال آزمون مي‌شود.
4- تو بايد يك استاد فرمال متد داشته باشي.
وقتي روشهاي فرمال براي اولين بار استفاده مي‌شود متخصص مجرب و رليزني مداوم براي موفقيت الزامي است.
5- تو نبايد روشهاي سنتي توسعه را ترك كني.
اين ممكن است و در بسيارري حالت دلخواه است كه روش فرمال، روشهاي سنتي، شيءگرا( فصل 21,12 ) در يكي بكار روند. هر كدام نكات ضعف و قوت خود را دارند. يك تركيب اگر به درستي بكار رود مي‌تواند نتايج شگرفي داشته باشد.
                   Remove Block  
                            Block Handler

 BlockQueue>O,
Used/=Used\head  BlockQueue  
Free/>free U head BlockQueue  
BlockQueue/ =tail BlockQueue
دربردارنده BlockHandler   موجب مي‌شود كه همه متغيرهايي كه State را مي‌سازند براي شماي
Remove Block در دسترس هستند و اطمينان مي‌دهد كه data invirant قبل و بعد از اجراي عمليات قرارداده شده‌است.
دومين عمليات يك كلكسيون از از بلاك    انتهاي صف اضافه مي‌كند ارائه شده به صورت
                                                       AddBlock
                                                   Nlock Handler
                                                  Ablocks?:Block
                                                  Ablocks? used     
BlockQueue/ = BlockQueue <Ablocks?>
                                                      Used/=Used
 Free/= free                                 

با توجه به پيمان‌نامه z يك متغير ورودي كه از state مي‌خواند و جزئي از آن نيست با يك علامت سئوال(؟) به پايان مي‌رسد. پس Ablocks? يك پارامتر ورودي است كه با كاراكتر؟ پايان يافته است.
استفاده  از Z براي ارائه يك نمونه كامپونتت نرم‌افزاري
مشخصات Z مجموعه‌اي از شماها ساختاربندي شده – يك ساختار جعبه مانند كه متغيرها را معرفي مي‌كند روابط مابين اين متغيرها را مشخص مي‌كند يك شما بخش ضروي مشخصات فرمال است. همچون رويه‌ها( procedur يا Subroution ) براي يك زبان برنامه‌نويسي است. به همان روشي كه رويه‌ها استفاده مي‌شوند تا سيستم را ساختاردهي كنند. شماها نيز براي ساختاردهي مشخصات فرمال استفاده مي‌شود.
در اين بخش، ما از زبان مشخصات Z استفاده كنيم تا مثال block Hedler را كه در بخشهاي 25.1.3 و 25.3 بحث شده را مدل مي‌كنيم يك خلاصه notation زبان Z در جدول 25.1 ارايه شده مثال پيشرو از شما State ها و dat invonanf ها را شرح مي‌دهد.
جدول 25.1
Block Handler
Used , free : p Blocks
Block Queue: Seq P BLOCKS
Usde  ferr=   
Used ferr= AllBlacks  
 i : dom BlockQueue.BlockQueue I C used  
 I,j: dom Block Queue ai j  
BlockQueue I  BlockQueue j = Q
شما از دو بخش تشكيل شده بخش بالايي خط مياني متغيرهاي State را تعريف مي‌كند. در حاليكه بخش زيريين آن data inviront را شرح مي‌دهد هنگاميكه data inviront را و state ارائه شده در يك شما را در شما ديگر بكار مي‌بريم پيش از نام آن از نماد  استفاده مي‌كنيم بنابراين اگر شماي پيشين روشهاي ديگري نبايد به صورت Black Handler   استفاده مي‌شود. بعنوان آخرين جمله اشاره مي‌كنيم كه شما 5 مي‌تواند براي شرح عمليات بكارگرفته شود. مثال زير شمايي است كه عمليات حذف يك عنصر از صف بلاك را شرح مي‌دهد.
دامنه معنايي يك زبان مشخصات فرمال اشاره مي‌كند كه چگونه زبان نيازمنديهاي سيستم را ارائه مي‌كند. براي مثال يك زبان برنامه‌نويسي داراي يك مجموعه از معاني فرمال است كه توسعه‌گر نرم‌افزار قادر مي‌سازد تا الگو ريتمهاي كه ورودي را به خروجي تبديل مي‌كند را مشخص كند.
يك گرامر فرمال( همچون BNF ) مي تواند استفاده شود تا نحو يك زبان برنامه‌نويسي را شرح دهد. با اين حال يك زبان برنامه‌نويسي نمي‌تواند يك زبان مشخصات خوب باشد زيرا آنها توابع كامپيوتري را مي‌تواند ارائه كند.
يك زبان مشخصات بايد محدوده معنايي داشته باشد كه گسترده باشد يعني اينكه محدوده معنايي يك زبان مشخصات بايد قادر به ارائه ايده‌هايي همچون« براي متغير x در يك مجموعه نامتناهي A وجوددارد Y  در يك مجموعه نامتناهي B به نحوي كه P كه براي Y,X نگهداري شده(Hads for ).
ديگر زبانهاي مشخصات معناي را بكار مي‌گيرند كه قادر مي‌سازند ارائه مشخصات رفتار يك سيستم براي مثال بخود معنايي مي‌توانند توجه داده شود تا State ها و تغييراتشان رويدادها و تأثيرشان بر تغييرات State همه همگام‌بندي و زمان‌بندي را مشخص مي‌كند.
اين ممكن مي‌شود با استفاده از انتزاعهاي معنايي مختلف تا همان سيستم را در روشهاي مختلف شرح دهند. ما اين كار را در روش كمتر فرمال در فصول 21,12 انجام داده‌ايم. جريان داده و پردازشهاي معادل با استفاده از dfd شرح داده شده و رفتار سيستم با استفاده از «State transition diagram »  نمايش داده شده.Analogous notation استفاده شد تاسيستمهاي شيء‌گرا را شرح دهد. معناي هر يك از ارايه‌ها نماي كاملي از سيستم را فراهم مي‌كند. براي نشان‌دادن اين رويكرد وقتي روشهاي فرمال استفاده مي‌شوند در نظر مي‌گيريم كه يك زبان مشخصات فرمال استفاده شد تا مجموعه‌اي از اتفاقها كه موجب مي‌شوند تا State خاص در سيستم رخ دهد را شرح دهد. ديگر رابطه فرمال همه توابعي كه داخل يك stat خاص رخ مي‌دهد را نشان داد.
هر دوي اينها با هم يك اشاره به رويه‌ايي كه مي‌تواند موجب رخداد تابعي خاص شوند را فراهم كردند. يك مجموعه از زبانهاي فرمال مشخصات امروزه استفاده مي‌شوند.UDM,LARCH,CSP و Z زبانهاي مشخصاتي فرمال ارائه شده هستند كه خصوصيات ارائه شده قبلي در اين متن را ارائه مي‌كنند. در اين فصل براي به نمايش‌درآوردن اهدافمان زبان Z را بكار مي‌بريم و Z مجتمع با يك ابزار خودكار كه قواعد كلي (axioms) ، قوانين استنتاج و قضاياي كاربردي كه بسوي محك درستي مشخصات رهنمون مي‌شود را ذخيره مي‌كند.








انجام پایان نامه

انجام پایان نامه کامپیوتر، انجام پایان نامه ارشد کامپیوتر، انجام پایان نامه، پایان نامه

برای دیدن ادامه مطلب از لینک زیر استفاده نمایید

 

انجام پایان نامه | دانلود مقاله

سفارش پایان نامه