نمایش پست تنها
  #3  
قدیمی 06-14-2013
bigbang آواتار ها
bigbang bigbang آنلاین نیست.
مدیر بخش مکانیک - ویندوز و رفع اشکال

 
تاریخ عضویت: Sep 2009
نوشته ها: 2,586
سپاسها: : 5,427

6,159 سپاس در 1,794 نوشته ایشان در یکماه اخیر
پیش فرض شناسایی تعاملات بین اشیاء

شناسایی تعاملات بین اشیاء

در بخش های قبل روی مدل کردن جنبه استاتیک (ساختاری) سیستم­های شیء گرا تمرکز کردیم. در این بخش تکنیک­های مدل سازی UML را ادامه می­دهیم و روی مدل کردن جنبه داینامیک (رفتاری) سیستم تمرکز می­کنیم. در اینجا بیان می­کنیم که اشیاء چگونه با یکدیگر تعامل دارند تا کارکردهای برنامه کاربردی را انجام دهند.
سناریوها

سناریوها به شناسایی تعاملات بین اشیاء کمک می­کنند. یک سناریو توصیفی متنی است از پردازش­های درونی برای پیاده سازی عملکرد یک مورد کاربرد. به یاد آورید که یک مورد کاربرد توصیف می­کرد کارکرد سیستم را از دیدگاه کاربران خارجی. یک سناریو اجرای مورد کاربرد را تشریح می­کند. به عبارت دیگر، هدف توصیف گام­هایی است که باید انجام شود توسط اشیایی که سیستم را می­سازند.
شکل زیر مورد کاربرد پردازش اجاره فیلم را برای برنامه کاربردی کلوپ اجاره فیلم نشان می­دهد. متن زیر این مورد کاربرد را توصیف می­کند:
- پس شرط ها: مشتری درخواستی برای اجاره یک فیلم از کارمند کلوپ صادر می­کند. مشتری دارای یک عضویت در کلوپ است و به کارمند کلوپ، کارت عضویت و شماره شناسایی ملی را ارائه می­کند. عضویت مشتری تایید می­شود، سپس اطلاعات وی نمایش داده شده و اعتبار او بررسی می­گردد.
- توضیحات: بررسی می­شود که آیا فیلم در انبار وجود دارد. اگر وجود داشت، یک نسخه از فیلم به مشتری داده شده و مشخصات آن ثبت می­شود. همچنین تاریخ برگشت فیلم به وی اطلاع داده می­شود.
- پس شرط: هیچی


سناریوی زیر پردازش درونی مورد کاربرد پردازش اجاره فیلم را توصیف می­کند:
- بررسی می­شود که فیلم در انبار است.
- تعداد نسخه­های در دسترس فیلم یک واحد کم می­شود.
- تاریخ برگشت تعیین می­شود.
- اطلاعات اجاره ثبت می­شود. این اطلاعات شامل نام فیلم، شماره نسخه، تاریخ جاری و تاریخ برگشت است.
به خاطر اینکه ممکن است در مراحل انجام سناریو استثناهایی رخ دهد، یک مورد کاربرد به چندین سناریو تبدیل می­شود. برای مثال، سناریوی دیگر برای مورد کاربرد فوق این است که اگر فیلم در انبار موجود نباشد، چه کار باید کرد؟
وقتی که سناریوهای مختلف را برای یک مورد کاربرد شناسایی کردید، شما می­توانید نمودارهای تعاملات اشیاء را ایجاد کنید تا اشیاء درگیر در سناریو شناسایی نمایید. این نمودارها همچنین مشخص می­کنند که این اشیاء چه عملیاتی باید انجام دهند. نمودارهای تعاملات به دو شکل هستند: نمودارهای توالی و نمودارهای همکاری.
نمودار توالی

یک نمودار توالی یک مدل برای بیان تعاملات اشیاء هنگام اجرای برنامه با تاکید بر ترتیب زمانی انجام تعاملات است. شکل زیر یک نمودار توالی نمونه را نشان می­دهد.




همانطور که در شکل فوق مشخص است جریان پیام­ها از شیء به شیء به صورت خطوط افقی است. زمان ارسال پیام­ها از بالا به پایین است. از هر شیء یک خط چین عمودی رسم می­شود که به خط زندگی معروف است. وجود مستطیل روی خط زندگی، نشان دهنده فعال بودن شیء است. منظور از فعال بودن یک شیء این است که در حال دریافت یا ارسال پیام است.
در OOP اشیاء از طریق پیام­ها با یکدیگر ارتباط دارند. برای نمایش یک پیام، یک پیکان از شیء شروع کننده آغاز می­شود و به شیء دریافت کننده ختم می­شود. پیکان خط چین که به سمت شیء آغازگر بر می­گردد بیانگر نتیجه پیام است. پیام­های نمودار توالی در حقیقت رفتار اشیاء (متدهای کلاس­های اشیاء) را مشخص می­کنند. شکل زیر نمودار توالی برای سناریو پردازش اجاره فیلم را نشان میدهد.




نمودار توالی برای سناریو پردازش اجاره فیلم
با تحلیل نمودار توالی، کلاس­هایی که باید برای این اشیاء ساخته شوند، شناسایی می­شوند. همچنین متدهای هر یک از کلاس­ها نیز تعیین می­گردند. در نمودار توالی فوق چهار شیء برای انجام سناریوی پردازش اجاره فیلم درگیر هستند که عبارتند از:
- شیء مشتری یک نمونه از کلاس Customer است و مسئول نگهداری اطلاعات یک مشتری.
- شیء کارمند کلوپ یک نمونه از کلاس RentalClerk است و مسئول مدیریت پردازش اجاره یک فیلم.
- شیء مورد اجاره یک نمونه از کلاس RentalItem است و مسئول مدیریت اطلاعات مربوط به یک فیلم قابل اجاره.
- شیء اجاره یک نمونه از کلاس Rental است و مسئول بسته بندی و نگهداری اطلاعات مربوط به یک اجاره .
انواع پیام­ها

در OOP ، پیام­ها به صورت همزمان یک غیر همزمان انتقال داده می­شوند. وقتی که داده­ها به صورت همزمان انتقال داده می­شوند، شیء ارسال کننده، پردازش را متوقف می­کند و منتظر دریافت پاسخ می­ماند و پس از آن به کار خود ادامه می­دهد. یک خط رسم شده با پیکان بسته در نمودار توالی بیان کننده پیام همزمان است. از سوی دیگر وقتی که یک شیء پیام غیر همزمان ارسال می­کند، به کار خود ادامه می­دهد و منطق پاسخ فوری نمی­ماند. یک خط رسم شده با نوک پیکان باز در نمودار توالی بیانگر پیام رسانی غیر همزمان است. یک پیکان خط چین معمولا یک پاسخ را نمایش می­دهد. این خطوط در شکل زیر رسم شده است.




با مطالعه نمودار توالی برای سناریوی پردازش اجاره فیلم، انواع پیام­هایی که باید انتقال یابند، قابل شناسایی هستند. برای مثال شیء RentalClerk ارسال می­کند یک پیام همزمان را به شیء RentalItem برای بررسی اینکه آیا یک نسخه از فیلم در انبار است یا نه. شیء RentalItem پاسخ بررسی را شیء RentalClerk برگشت می­دهد.
نمودار فعالیت

نمودار همکاری بیان کننده جریان فعالیت­هایی است که در طول یک فرآیند یا عملیات رخ می­دهد. شما می­توانید نمودار همکاری را برای مشاهده گردشکار در سطوح مختلف بسازید:
- تمرکز سطح بالا نمایش می­دهد هر مورد کاربرد را به عنوان یک فعالیت گردشکار.
- تمرکز سطح میانی نمایش می­دهد گردشکاری که درون یک مورد کاربرد خاص رخ می­دهد.
- تمرکز سطح پایین نمایش می­دهد گردشکاری که در یک متد خاص از یک کلاس رخ می­دهد.
نمودار فعالیت تشکیل شده است از نقطه شروع فرآیند که با یک دایره توپر نشان داده می­شود. پیکان­ها نمایش دهنده جریان فعالیت از یکی به دیگری است. مستطیل های گرد گوشه بیانگر فعالیت هستند و یک دایره چشم مانند، نشانگر انتهای فرآیند است. برای مثال در شکل زیر یک نمودار فعالیت نشان داده شده است که بیانگر یک فرآیند است که از فعالیت A شروع می­شود و به فعالیت B پیش می­رود و به پایان می­رسد.


نقاط تصمیم و شرایط محافظ

اغلب، یک فعالیت در شرایط خاصی منجر به فعالیت دیگر می­شود. در یک نمودار فعالیت شرطی بودن با یک نقطه تصمیم (به صورت یک لوزی) و با شرایط محافظ (شرطی که باید برای پیشروی فراهم گردد) در براکت در کنار خط جریان مشخص می­شود، مطابق شکل زیر:


پردازش موازی

در برخی حالات، دو یا چند فعالیت می­توانند به صورت موازی و در یک زمان انجام شوند. برای نشان دادن فعالیت­های موازی در نمودار فعالیت بدین صورت عمل می­شود: یک خط بولد افقی مشخص کننده جدا شدن مسیرها است. بعد از جدا شدن، یک خط بولد دومی رسم می­شود که به هم پیوستن مسیرها را مشخص نماید. شکل زیر نمودار فعالیت برگشت یک فیلم را نشان می­دهد. ترتیب انجام فعالیت­های افزایش موجودی فیلم در انبار و حذف اجاره فیلم مهم نیستند. مسیرهای موازی در این نمودار نشان دهنده پردازش موازی است.


__________________

احد،صمد، قاهر، صادق ...
عاشقشم

لا تقنطوا من رحمة الله

هیچ چیز تجربه نمیشه اینو یادت باشه !!
ترفند هایی براي ويندوز 7


عیب یابی سخت افزاری سیستم در کسری از دقیقه

پاسخ با نقل قول
کاربران زیر از bigbang به خاطر پست مفیدش تشکر کرده اند :
جای تبلیغات شما اینجا خالیست با ما تماس بگیرید