UML به افراد اجازه می دهد تا چندین نوع مختلف از نمودارهای بصری را به وجود آورند که جنبه های مختلف سیستم را نمایش می دهد . Rational Rose از ایجاد اکثر این مدلها ، همانطور که در زیر آمده ، پشتیبانی می کند .
- نمودار Use Case
- نمودارهای Sequence(توالی)
- نمودار Collabration(همکاری)
- نمودار Class (کلاس)
- نمودار State Transition (حالت)
- نمودار Deployment
این نمودارهای مدل ، جنبه های مختلف سیستم را نشان می دهند . مثلاً نمودار Collaboration (همکاری محاورات ضروری میان آبجکت ها را نشان می دهد ، به این منظور که تعدادی از توابع سیستم را به انجام برساند . هر نمودار یک هدف و یک شنوندة در نظر گرفته شده دارد .
نمودارهای Use Case :
نمودارهای Use Case محاورات میان Use Case ها را نشان میدهند ، که عملیات سیستمی و عامل ها (Actor) که نشان دهندة افراد یا سیستم هایی که اطلاعات را برای سیستم فراهم کرده و یا از آن دریافت می کنند را نمایش می دهند . مثلاً نمودار Use Case سیستم Automated Teller Machine در شکل نشان داده شده است .
نمودار Use Case محاورات میان Use Case ها و عامل ها را نشان می دهند ،
Use Caseها درخواستهای سیستم را از دید کاربرد نشان می دهند ، بنابراین
Use Case ها عملیاتی هستند که سیستم فراهم می کند . عامل در واقع نگهدارنده پول (بانکدار) یک سیستم هستند . این نمودارها نشان می دهند که چه عامل هایی به
Use Case ها مقدار اولیه می دهند . همچنین آنها نشان می دهند که چه موقع یک عامل ، اطلاعات را از یک Use Case دریافت می کند .
نمودار Use Case محاورات میان Use Case ها و عامل های یک سیستم Automate Teller (ATM)Machine را نشان می دهد . بر این اساس ، نمودار Use Case میتواند درخواستهای سیستم را نشان دهد . در این مثال مشتری بانک تعدادی از
Use Case ها را مقداردهی می کند : برداشت پول (withdraw Money) ، واریز (Deposit Fands) ، انتقال از حساب (Transfer Fands) ، پرداخت (Make Payment) ، مشاهده تراز (موجودی) (View Balance) و تغییر PIN (Change PIN) .
تعدادی از ارتباطات این ارزش را دارند که بیشتر به آنها اشاره شود . کارمند بانک همچنین به Use Case تغییر PIN مقدار اولیه می دهد . Use Case پرداخت ، فلشی را نشان می دهد که به سیستم اعتباری می رود . سیستم های خارجی ممکن است عامل هایی باشند و در این مورد ، سیستم اعتباری بعنوان یک عامل نشان داده شده است ، زیرا خارج از سیستم ATM ، است . فلشی که از یک Use Case به یک عامل می رود نشان می دهد که Use Case اطلاعاتی را تولید می کند که یک عامل از آن استفاده می کند . در این مورد Use Case پرداخت ، اطلاعات پرداختی کارت اعتباری را برای سیستم اعتباری آماده می کند . اکثر اطلاعات از دیدن نمودارهای Use Case قابل فهم می باشد زیرا این نمودار همة عملیات سیستم را نشان می دهد . کاربران ، مدیران پروژه ، تحلیلگران ، برنامه نویسان ، مهندسین تضمین کیفیت و هر شخص دیگری که به سیستم وابسته است ، می تواند مانند همه ، این نمودارها را ببیند و بفهمد که چه سیستم قرار است به انجام برسد .
ایجاد نمودارهای Use Case
در Rose ، نمودارهای Use Case در نمای Use Case ساخته می شوند . Rose یک نمودار Use Case پیش فرض به نام Main را برای شما می سازد . می توانید هر تعداد نمودارهای اضافی که برای مدل دهی به سیستم خود نیاز دارید را بسازید .
برای دستیابی به نمودار Main Use Case ، مراحل زیر را انجام دهید :
1-بر روی علامت + کنار نمای Use Case موجود در مرورگر کلیک نمایید .
2-نمودار Main Use Case ظاهر خواهد شد . دقت کنید که در Rose علامت زیر در کنار نمودار Use Case وجود دارد .
3-بر روی نمودار Main دوباره کلیک کنید تا باز شود . میلة عنوان به این عنوان تغییر می نماید :
[Use Case Diagram: Use Case View / Main]
برای ایجاد یک نمودار Use Case جدید مراحل زیر را انجام دهید :
1-در مرورگر بر روی نمای Use Case کلیک راست نمایید .
2-از منوی باز شده گزینه New و سپس فرمان Case Diagram را به صورت آنچه در شکل زیر نشان داده شده است انتخاب کنید .
3-در نمودار جدید ، نام مورد دلخواه را برای نمودار جدید بنویسید .
4-در نمودار جدید . نام مورد دلخواه را برای نمودار جدید بنویسید .
برای باز کردن یک نمودار Use Case که از قبل موجود است ، مراحل زیر را طی کنید:
1-مکان نمودار Use Case را در نمای Use Case موجودی در مرورگر بیابید .
2-بر روی نام نمودار Use Case دو بار کلیک کنید تا آن را باز نمایید .
یا به روش زیر کار کنید :
1-به ترتیب گزینه Browse و سپس Use Case Diagram را انتخاب کنید .
2-در لیستی که در قسمت Package وجود دارد ، بستة نرم افزاری که نمودار موردنظر شما در آن وجود دارد را انتخاب کنید .
3-در لیستی که در قسمت Use Case Diagram باز شده ، نموداری که می خواهید باز کنید را انتخاب نمایید .
4-بر روی Ok کلیک کنید .
از دکمه های نوار ابزار به صورتی که در بخش زیر توضیح داده شده ، برای افزودن Use Case ، عامل و ارتباطات به نمودار Use Case ، استفاده می شود .
دو راه برای حذف یک آیتم از یک نمودار Use Case وجود دارد . روش اول ، مورد حذف شدنی را از نمودار باز شده حذف می کند ، ولی به موقعیت آن بر روی مرورگر یا نمودارهای دیگر کاری ندارد . روش دوم آن آیتم را از تمام مدل ، تمام نمودارها و همچنین مرورگر حذف می کند . برای اینکه یک آیتم را فقط از نمودار جاری حذف کنید ، آن را در نمودار انتخاب کنید (high light) و سپس دکمه Delete را بفشارید .
برای حذف یک آیتم در سرتاسر مدل ، آن را در مرورگر انتخاب کرده و روی آن کلیک راست کنید تا یک منو باز شود . از منوی باز شده Delete را انتخاب کنید یا آیتم را در نمودار انتخاب کرده و Ctrl+D را فشار دهید .
حذف نمودارهای Use Case
ممکن است بخواهید برخی از نمودارهای Use Case که ساخته اید را حذف کنید . غیرعادی نیست که در ابتدای پروژه برای فهمیدن محدوده پروژه نمودارهای
Use Case زیادی را ایجاد نمایید .
برخی از نمودارها ممکن است Use Case ها را نگهداری کنند ، برخی دیگر عامل ها را نشان دهند ، در حالی که برخی از آنها زیر مجموعهای از Use Case و عامل ها را نشان می دهند . در روند پیشرفت پروژه ، ممکن است نیاز باشد که برخی از این نمودارهای قدیمی را حذف کنید . شما می توانید یک نمودار Use Case را مستقیماً در مرورگر حذف کنید . توجه داشته باشید که اگر یک نمودار را حذف کنید هیچ راهی برای برگرداندن آن وجود نخواهد داشت .
برای حذف یک نمودار Use Case :
1-مرورگر ، بر روی نمودار موردظر کلیک راست کنید .
2-از منوی باز شده گزینة Delete را انتخاب کنید .
الصاق فایل ها و URL به یک Use Case
Rose به شما امکان الصاق یک فایل یا URL به یک نمودار Use Case را می دهد . تمام اسناد ضمیمه مانند مشخصات نیازمندیهای سطح بالا ، سند مربوط به حوزة دید پروژه یا چهارچوب تجارت (business case) ، و یا حتی طرح پروژه را می توان به نمودار Use Case متصل کرد . شما می توانید هر کدام از فایل ها و یا URL های الصاقی که در مرورگر و در زیر نمودار Use Case لیست شده اند را ببینید . می توانید در مرورگر مستقیماً بر روی فایل یا URL دو بار کلیک کنید تا به طور خودکار برنامة کاربردی مناسب را سریعاً اجرا کنید و فایل یا URL را بارگذاری نمایید .
برای الصاق یک فایل به یک نمودار Use Case مراحل زیر را دنبال کنید :
1-در مرورگر بر روی نمودار Use Case کلیک راست کنید .
2-ابتدا گزینه New و سپس File را انتخاب کنید .
3-با استفاده از کادر محاورة Open، فایلی که می خواهید الصاق نمایید را بیابید .
4-Open را انتخاب کنید تا فایل به نمودار Use Case متصل شود .
برای اتصال یک URL به یک نمودار Use Case مراحل زیر را دنبال کنید :
1-در مرورگر بر روی نمودار Use Case کلیک راست کنید .
2-ابتدا گزینه New و سپس URL را انتخاب کنید .
3-نام URL را تایپ کنید تا به نمودار متصل شود .
باز کردن یک فایل الصاق شده :
1-فایل موردنظر را در مرورگر مکان یابی کنید .
2-بر روی نام فایل دو بار کلیک کنید . Rose برنامة کاربردی مربوطه را باز کرده و فایل را بارگذاری می کند .
یا
1-روی نام فایل در مرورگر کلیک راست کنید .
2-از منوی باز شده گزینه Open را انتخاب کنید . Rose برنامة کاربردی مناسب را باز کرده و فایل را بارگذاری می کند .
باز کردن یک URL الصاقی بدین صورت است :
1-URL را در مرورگر مکان یابی کنید .
2-بر روی نام URL دو بار کلیک کنید . Rose به طور خودکار برنامة مرورگر وب موردنظر شما را به جریان می اندازد و URL را بارگذاری می کند .
یا
1-در مرورگر روی URL موردنظر کلیک راست کنید .
2-از منوی باز شده ، گزینه Open را انتخاب کنید . Rose به طور خودکار برنامة مرورگر وب را راه اندازی کرده URL را بارگذاری می کند .
روش حذف یک فایل یا URL الصاقی به صورت زیر است :
1-بر روی نام فایل یا URL در مرورگر ، کلیک راست کنید .
2-از منوی باز شده گزینه Delete را انتخاب کنید .
نوار ابزار برای نمودار Use Case
وقتی که نمودار Use Case باز می شود ، نوار ابزار مربوط به نمودار به نحوی تغییر می کند کمه آیکون های استفاده شده در نمودار Use Case را نشان دهد . Rose تمام میانبرهای استفاده شده برای عملیات های معمول ، که در نمودار Use Case زیاد استفاده می شوند را در نوار ابزار مهیا کرده است . برخی از دکمه هایی که آنها را در دسترس خواهید داشت در جدول زیر نشان داده شده اند . در باقی ماندة این فصل ، دربارة نحوة استفاده از دکمه ها نوار ابزار برای افزودن Use Case ها ، عامل ها و دیگر جزئیات مربوط به نمودار Use Case صحبت خواهیم کرد .
کار با Use Case ها
Use Case بخش سطح بالایی از عملیاتی است که سیستم مهیا می کند . به عبارت
دیگر ، Use Case ، اینکه شخص چگونه از سیستم استفاده می کند را شرح می دهد .
بیایید با نگاه به یک مثال کار را شروع کنیم . یک ماشی ATM ، یک سری عملیات اصلی را برای مشتری انجام می دهد . به مشتری اجازه می دهد تا پول به حساب بریزد ، نقداً از حساب برداشت کند ، پول را از یک حساب به حساب دیگر منتقل نماید ، مقدار و موجودی را مشاهده کند ، PIN را تعویض نماید و یا توسط کارت اعتباری پول پرداخت نماید . هر کدام از این Transaction ها روش متفاوت استفاده مشتری از سیستم می باشد . به هر حال هر کدام از آنها یک Use Case متفاوت هستند . در UML یک Use Case با استفاده از علامت زیر نمایش داده می شود :
Use Case
یک مزیت نگاه به سیستم با استفاده از Use Case این است که می توان پیاده سازی سیستم را از دلیل ایجاد سیستم در ابتدا ، جدا نمود . ذهنتان را بر آنچه که مهم است متمرکر کنید - یعنی برطرف کردن نیازها و توقعات مشتری بدون نیاز به درگیر شدن با جزئیات پیاده سازی . با نگاه کردن به Use Case ها ، مشتری خواهد فهمید که چه عملیاتی مهیا خواهد شد و قبل از اینکه پروژه به مراحل جلوتر برود ، می تواند خودش را با سیستم وفق دهد .
Use Case ها به صورت دیگری به متدهای سنتی نزدیک می شوند . شکستن پروژه به Use Case ها ، یک روش نگاه کردن به پروژه به صورت پردازش گرا است و نه به صورت عملگرا . البته با تجزیة عملیاتی که گاهی اوقات انجام می شود ، تفاوت دارد . تجزیة عملیاتی بر اینکه چگونه باشد مشکلات سیستم را برای حل شدن به قطعات کوچک و کوچکتر تبدیل کرد ، تمرکز دارد ، در حالی که Use Case تمرکز کار را بر روی آنچه مشتری از سیستم توقع دارد ، قرار می دهد . وقتی در حال شروع یک پروژه هستید ، یک سوال طبیعی این است : چگونه باید Use Case ها را پیدا کرد؟
یک راه خوب برای شروع این است که سندی که مشتری تهیه کرده است را در نظر بگیرید . اغلب اوقات ، یک سند که دارای نسخه یا محدودة سطح بالایی است میتواند به شما در شناسایی Use Case ها کمک کند . هر کدام از بانکدارهای موجود در پروژه را در نظر بگیرید . از خودتان بپرسید که هر بانکداری چه توقعی از سیستم دارد . برای هر بانکدار ، این سوالها را مطرح کنید :
- بانکدار چه کاری را باید با سیستم انجام دهد؟
- آیا نیاز است که بانکدار اطلاعاتی را نگهداری کند (ساختن ، خواندن ، بروز رسانی، حذف) ؟
- آیا بانکدار باید سیستم را دربارة اتفاقاتی که در خارج از سیستم رخ می دهد ، آگاه نماید؟
- آیا سیستم باید بانکدار را از تغییرات و یا رویدادهایی که در سیستم رخ می دهد ، آگاه نماید؟
همان گونه که قبلاً متذکر شدیم ، Use Case ها مستقل از پیاده سازی هستند و یک دید سطح بالا از آنچه کاربر از سیستم انتظار دارد می باشند . بیایید هر بخش از این تعریف را جداگانه در نظر بگیریم .
اولاً Use Case ها به طور مستقل عمل می کنند . در حالی که Use Case را تعریف می کنید ، فکر کنید که در حال ساخت یک سیستم دستی هستید که مکانیزه نشده است . Use Case شما باید قابل ساخت در Java ، C++ ، Visual Basic و یا حتی روی کاغذ باشد . Use Case بر آنچه سیستم باید انجام بدهد متمرکز می شود ، نه بر اینکه سیستم چگونه آن را انجام می دهد . بعداً در پردازش به چگونگی کار سیستم می رسیم .
دوماً Use Case ها یک دید سطح بالا از سیستم هستند . اگر سیستم شما 3000 مورد Use Case دارد . شما سادگی و روان بودن را از دست داده اید . وقتی که مجموعه ای از Use Case ها را می سازید ، باید یک دید کلی سطح بالا از تمام سیستم را به صورت ساده و روان ، برای مشتریان ایجاد کند .
نباید آنقدر زیاد Use Case داشته باشید که مشتری به زحمت بتواند سند را بررسی کند ، فقط در این حد باشد که بفهمد سیستم چه کاری انجام میدهد . در همین حال باید به اندازة کافی Use Case داشته باشید تا آنچه که سیستم انجام می دهد را دقیقاً شرح نماید یک سیستم در حد معقول باید بین 20 تا 50 ، Use Case داشته باشد . همان گونه که بعداً خواهید دید ، می توانید رابطه های متفاوتی که رابطه های extends و uses نامیده می شوند را استفاده کنید . تا در صورت نیاز کمی Use Case را تجربه نمایید . همچنین می توانید Use Case ها را به صورت یک بسته نرم افزاری جمع آوری کنید تا گروه هایی از Use Case ها را داشته باشید که در سازماندهی کردن آن راحتتر باشید . در فرصت دیگری در این مورد صحبت خواهیم کرد .
نهایتاً تمرکز Use Case باید بر آنچه که کاربر از سیستم به دست می آورد ، باشد . هر Use Case باید یک داد و ستد کاملی بین کاربر و سیستم ارائه دهد که نتیجة آن مقداری مختص کاربر خواهد بود . Use Case باید از دیدگاه تجاری نامگذاری شود و نه از دیدگاه تکنیکی و این نام باید برای مشتری مفهوم باشد . در ATM ، ما هیچ رابطه ای با Use Case ای که به این صورت تعریف شده است نداریم : سیستم بانکی که پول را از یک کارت اعتباری به صورت چک منتقل می کند . در عوض ما یک Use Case خواهیم داشت که برای مشتری مفهوم تر است : پرداخت پول توسط کمارت اعتباری . در نامگذاری Use Case ها معمولاً از افعال و یا اصطلاحات کوتاه دارای فعل استفاده می شود که باید آنچه که مشتری به صورت نتیجه دریافت می کند را توضیح دهد . برای مشتری اهمیتی ندارد که شما با چند سیستم دیگر ارتباط دارید ، و چه مراحل مشخصی باید اجرا شوند ، و یا چند خط کد باید برای پرداخت پول گذرنامه نوشته شود . تمام آن چیزی که برای آنها اهمیت دارد این است که پرداختی انجام شده است . مجدداً به سمت آنچه کاربر از سیستم توقع دارد ، (و نه مراحلی که باید طی شوند تا نتیجه بدست آید) ، متمرکز شوید .
وقتی که لیست نهایی تمام Use Case ها را بدست آوردید ، چگونه خواهید فهمید که آیا همة آنها را پیدا کرده اید یا نه ؟ برخی پرسشهایی که باید مطرح کنید ، بدین شرحاند :
- آیا هر نیاز عملکردی حداقل در یک Use Case وجود دارد یا نه ؟ اگر ی نیاز در هیچ Use Case وجود نداشته باشد ، اجرا نخواهد شد .
- آیا در نظر گرفته اید که هر بانکدار چگونه از سیستم استفاده می کند؟
- هر بانکدار چه اطلاعاتی را از سیستم دریافت می کند ؟
- ورود و خروج به سیستم را چگونه در نظر گرفته اید؟ کسی باید باشد که سیستم را راه اندازی کند و در انتها آن را متوقف نماید .
- آیا تمام سیستم های خارجی که سیستم باید در تماس با آنها باشد را تعریف کردهاید؟
- چه اطلاعاتی از یک سیستم خارجی گرفته می شود و یا به آن داده می شود ؟
نمودارهای Sequence (توالی)
نمودارهای Sequence برای نشان دادن جریان عملیات در یک Use Case استفاده شده اند مثلاً ، Use Case برداشت پول چند توالی (Sequences) دارد مانند برداشت پول ، تلاش برای برداشت پول از حساب بدون موجودی ، تلاش برای برداشت پول از PIN اشتباه و غیره . طرح معمولی برداشت 20 دلار پول (بدون هیچ مشکلی مانند وارد کردن PIN اشتباه یا وجود ناکافی در حساب) در شکل زیر نشان داده شده است .
نمودار Sequence جریان پردازش را در use case برداشت پول نشان می دهد . عاملهای وابسته در بالای نمودار نشان داده شده اند ؛ عامل مشتری در مثال بالا نشان داده شده است . همچنین آبجکت هایی که سیستم نیاز دارد تا use case برداشت پول را به نتیجه برساند در بالاترین نقطة نمودار نشان داده شده است . هر فلش یک پیغام ارسالی بین عامل و آبجکت ، یا آبجکت و آبجکت را نمایش می دهد تا عملیات مورد نیاز را به انجام برساند . نکته دیگر دربارة نمودارهای Sequence این است که آنها آبجکت ها را نمایش می دهند و نه کلاسها . کلاسها انواع آبجکت ها را نمایش میدهند . آبجکت ها مشخص هستند ، نمودار Sequence به جای مشتری (customer) (که یک کلاس است) ، Joe را نشان می دهد .
use case بدین ترتیب شروع می شود که مشتری کارتش را وارد کارت خوان می کند، یک آبجکت در بالای نمودار با مستطیلی نشان داده شده است . سپس کارت خوان شمارة کارت را می خواند ، آبجکت حساب Joe را باز می کند و صفحة نمایش ATM را مقداردهی می نماید . صفحه نمایش از Joe می خواهد که PIN را وارد نماید . او 1234 را وارد می کند . صفحه PIN را با آبجکت حساب تائید می کند و آنها را به هم جفت و چور می کند . صفحه انتخابهایش را برای Joe آماده می کند و او 20 دلار را انتخاب می کند . سپس صفحه وجوه را از حساب بر می دارد . این یک سری از پردازشهایی که آبجکت حساب (account) به انجام می رساند را مقداردهی می کند .
ابتدا ، حساب Joe تایید می کند که حساب ، حداقل شامل 20 دلار است . سپس وجوه را از حساب کسر می کند . بعداً به صندوق اطلاع می دهد که 20 دلار را آماده کند . همچنین حساب Joe به صندوق اطلاع می دهد تا یک رسید را آماده کند . سرانجام به کارت خوان اطلاع می دهد تا کارت را باز پس دهد . بنابراین این نمودار Sequence تمام جریان پردازشی use case برداشت پول را با نشان دادن یک مثال مشخصی از اینکه Joe 20 دلار از حسابش بر می دارد را توضیح می دهد . کاربران میتوانند به این نمودارها نگاه کنند و مشخصات پردازش تجاریشان را ببینند . تحلیلگران جریان پردازش را در نمودار Sequence می بینند . برنامه نویسان آبجکتهایی که کدنویسی نیاز دارند را به همراه عملگرهای آن آبجکت ها می بینند . مهندسین تضمین کیفیت می توانند جزئیات پردازش و تولید Test case مبتنی بر پردازش را ببینند . نمودارهای Sequence برای همة کسانی که در پروژه مسئول نگهداری پول هستند ، مفید می باشند .
نمودارهای sequence
بیایید نگاهی به نمودارهای sequence بیاندازیم ، نمودارهای sequence نمودارهای intraction هستند که بر مبنای زمان تنظیم می شوند؛ شما نمودار را از بالا به پایین مشاهده می کنید. همان گونه که در بالا متذکر شدیم، هر use case تعدادی جریان متوالی خواهد داشت. هر نمودار sequnce. یک روند را در usecase نمایش می دهد. به طور مثال شکل زیر یک نمودار sequnce است که Joe، مشتری یک بانک را در حال برداشت 20 دلار از ATM نشان می دهد.
می توانیم این نمودار را با نگاه به آبجکت ها و پیغام ها، بخوانیم. آبجکت هایی که در روند شرکت می کنند، با مستطیل هایی در بالای نمودار نشان داده می شوند. در این مثال، پنج آبجکت وجود دارد: Joe، کارت خوان(دستگاه) صفحه نمایش ATM، حساب Jou و دستگاه پرداخت کننده پول. آبجکت عاملی با نام joe که آغازگر
use case است در بالاترین قسمت نمودار و در سمت چپ نشان داده مس شود.
پردازش وقتی شروع می شود که Joe کار خویش را در دستگاه کارت خوان قرار میدهد. کارت خوان، شماره قرار گرفته کارت joe را می خواند و به صفحه نمایش ATM می گوید که کار خویش را آغاز نماید.
ATM به joe اجازه ورود PIN را می دهد. Joe، PIN را وارد می کند(1234) و ATM حساب او را باز می کند. اعتبار PIN متعلق به joe بررسی می شود و ATM به او اجازه برداشت از حساب را می دهد. joe برداشت پول از خساب (withdraw) را انتخاب خواهد کرد. ATM به Joe اجازه برداشت از حساب را می دهد. joe مقدار 20 دلار را وارد می کند. ATM حساب joe را برای بررسی مقدار موجودی، بررسی می کند و مقدار 20 دلار را از حساب خارج می کند. ATM این 20 دلار را پرداخت کرده و کارت joe را از دستگاه خارج می کند.
هر آبجکت برای خودش یک خط عمر دارد که به صورت خطوط عمودی خط چین در زیر آبجکت کشیده می شود. یک پیام بین دو خط عمر موجود بین دو آبجکت قرار داده می شود تا ارتباط بین آبجکت ها را نشان دهد. هر پیغامی نشان دهنده یک آبجکت است که توسط تابع آبجکت دیگر صدا زده می شود. در قسمت های بعدی پردازش، هنگامی که برای کلاس ها عملیاتی را تعریف می کنیم، هر پیغام تبدیل به یک عملیات خواهد شد. پیغامها همچنین می توانند بازتابی باشند که نشان دهنده این خواهد بود که آبجکتی یکی از عملیات خویش را صدا می زند.
در این مثال، پیغام شماره دو نشان دهنده این است که کارت خوان از خودش درخواست خواندن شماره کارت را می کند.
ساخت یک نمودار sequence:
نمودار های sequence می توانند در نمای use case و یا در نمای منطقی (logical) ساخته شوند. نمودارهای sequence باید مستقیماً درون یک use case قرار بگیرد و یا مستقیماً در یک بسته قرار بگیرند.
برای ایجاد یک نمودار sequnce:
1-در مرورگر بر روی بسته و یا use case مناسب کلیک راست کنید.
2-از منوی باز شده، گزینه New و سپس فرمان sequence Diagram را انتخاب کنید.
3-نمودار sequence جدید را نامگذاری کنید.
4-در مرورگر بر روی نمودار sequence دوبار کلیک کنید تا باز شود.
برای باز کردن یک نمودار sequence موجود:
1-نمودار sequence را در نمای use case درون مرورگر، مکان یابی کنید.
2-بر روی نمودار sequence دوبار کلیک کنید تا باز شود.
یا
1-Browse و سپس interaction Diagram را انتخاب کنید. پنجره ای که در شکل نشان داده شده است، ظاهر خواهد شد.
2-در کادر لیست package، بسته ای که نمودار مورد نظر شما در آن قرار دارد را انتخاب کنید.
3-در کادر لیست interaction Diagram نموداری که می خواهید باز کنید را انتخاب کنید.
4-ok را بفشارید.
برای افزودن یک آیتم به یک نمودار sequence:
از دکمه های نوار ابزار به گونه ی که در بخش زیر آمده، برای افزودن آبجکت ها و پیغام ها به نمودار استفاده کنید.
یک عامل یا کلاس را از مرورگر به نمودار sequence بکشید.
برای حذف یک آیتم از نمودار sequence:
1-آیتم را از نمودار sequence انتخاب کنید.
2-از منوی Edit گزینه Delete from model را انتخاب کنید با ctrl+D را بفشارید.
حذف یک نمودار sequemce:
در حالی که کاربر بر روی پروژه را ادامه می دهید، ممکن است با نمودارهای sequence برخورد کنید که قدیمی شده اند و یا در سیستم اضافه می باشند. برای اینکه مدل خویش را بی نقس کنید، یک ایده خوب این است که تمام نمودارهای sequence که از آنها استفاده نمی کنید و یا تأثیری در سیستم شما ندارند را حذف کنید. می توانید با استفاده از مرورگر در Rose، نمودار sequence را حذف کنید.
برای حذف یک نمودار sequence مراحل زیر را انجام دهید:
1-در مرورگر بر روی نمودار sequence کلیک راست کنید.
2-از منوی باز شده گزینه Delete را انتخاب کنید.
الصاق URL و فایل ها به یک نمودار sequence:
در Rose می توانید یک URL یا فایل را به یک نمودار sequence مشخص الصاق کنید. به طور مثال، ممکن است یک سند داشته باشید که سناریویی را که نمودار interaction را مدل سازی می کند، شرح دهد. ممکن است فایل دارای کدی که منطق را در نمودار پیاده سازی می کند، الصاق کنید. یا، ممکن است یک سند نیازمندی ها را که برخی نیازهای مشخص نمودار را در بر دارد، الصاق کنید. هر سندی را که الصاق می کنید، مطمئن شوید که اطلاعات فایل یا URK فقط به نمودار interaction مربوط می شود و نه به تمام use case . اگر به تمام use case مربوط باشد، ممکن است بخواهید آن را به خود use case متصل کنید.
برای الصاق فایل به نمودار sequence:
1-در مرورگر بر روی نمودار sequence کلیک راست کنید.
2-از منوی New، گزینه File را انتخاب کنید.
3-با استفاده از کادر محاوره ای open فایلی را که می خواهید الصاق نمایید، انتخاب کنید.
4-open را انتخاب کنید تا فایل را الصاق نمایید.
برای افزودن یک URL مراحل را طی کنید:
1-در مرورگر بر روی نمودار sequence کلیک راست کنید.
2-از منوی New، URL را انتخاب کنید.
3-نام URL را برای الصاق، تایپ کنید.
برای اینکه یک فایل الصاق را باز کنید:
در مرورگر بر روی فایل دوبار کلیک کنید. Rose برنامه کاربردی مناسب را باز کرده و فایل را بارگذاری می کند.
یا
1-مرورگر بر روی فایل کلیک راست کنید.
2-از منوی باز شده، گزینه open را انتخاب کنید. Rose، برنامه کاربردی مناسب را باز کرده و فایل را بارگذاری می کند.
برای اینکه یک URL الصاقی شده باز کنید:
در مرورگر بر روی URL، دوبار کلیک کنید. Rose به طور خودکار، برنامه کاربردی مرورگر وب شما را راه اندازی کرده و URL را بارگذاری می نماید.
یا
1-در مرورگر بر روی URL، کلیک راست کنید.
2-از منوی باز شده، open را انتخاب کنید. Rose به طور برنامه کاربردی مرورگر وب شما را راه اندازی کرده و URL را بارگذاری می نماید.
برای حذف یک فایل یا URL الصاقی:
1-در مرورگر بر روی فایل یا URL کلیک راست کنید.
2-از منوی باز شده، گزینه Delete را انتخاب کنید.
نوار ابزار نمودار sequence:
هنگامی که یک نمودار sequence باز می شود، نوار ابزار Diagram به گونه ای تغییر می کند که به شما اجازه افزودن آبجکت ها، پیغام ها و دیگر آیتم ها را به نمودار بدهد. گزینه های موجود در نوار ابزار، در زیر تعریف شده اند. در بخش های بعدی، افزودن هر یک از این آیتم ها را مورد بررسی قرار خواهیم داد. جدول زیر دکمه های موجود در نوار ابزار، در زیر تعریف شده اند. در نوار ابزار نمودارهای sequence را لیست کرده و هدف عر یک را شرح می دهد.
نمودارهای Collaboration
نمودارهای Collaboration دقیقاً همان اطلاعات نمودارهای Sequence را نشان میدهند . اگرچه ، نمودارهای Collaboration اطلاعات را به روشی متفاوت و با یک هدف متفاوت نشان می دهد . نمودار Sequence که در شکل قبل توضیح داده شد در شکل زیر به صورت یک نمودار Collaboration نشان داده شده است .
در این نمودار Collaboration مانند قبل ، آبجکت ها بشکل مستطیلهایی نمایش داده شده اند و عامل ها به شکلهای آدمک می باشند .
در حالی که در نمودار Sequence آبجکت ها و ارتباطات عامل ها به ترتیب زمان توضیخ داده شده اند ، نمودار Collaboration آبجکت ها و فعل و انفعالات عامل ها را بدون توجه به زمان نشان می دهد . مثلاً در این نمودار می بینیم که کارت خوان به حساب Joe اطلاع می دهد تا باز شود و حساب Joe به کارت خوان اطلاع می دهد تا کارت را بازپس دهد . همچنین آبجکت هایی که مستقیماً با دیگری ارتباط برقرار می کنند با خطوطی که بین آنها کشیده شده نشان داده شده اند . اگر صفحه نمایش ATM و کارت خوان مستقیماً با یکدیگر رابطه داشته باشند ، باید یک خط بین آنها کشیده شده باشد . نبودن این خط به این معنی است که هیچ ارتباط مستقیمی بین این دو آبجکت وجود ندارد .
بنابراین نمودارهای Collaboration همان اطلاعات نمودارهای Sequence را نشان می دهند . اما افراد به دلایل متفاوتی به نمودارهای Collaboration مراجعه می کنند . مهندسین تضمین کیفیت و معماران سیستم به این نمودارها نگاه می کنند تا توزیع شدن پردازشهای بین آبجکت ها را ببینند . فرض کنید که نمودار Collaboration به شکل یک ستاره که در آن چند آبجکت که با یک آبجکت مرکزی ارتباط دارند ، باشد . یک معمار سیستم ممکن است نتیجه بگیرد که سیستم خیلی به آبجکت مرکزی وابسته است و آبجکت ها را دوباره طراحی نماید تا نیروی پردازش کردن را به طور یکنواخت توزیع کند . دیدن این نوع محاورات در یک نمودار Sequence بسیار مشکل است .
نمودارهای collaboration:
مانند نمودارهای sequence، نمودارهای colaboration برای نشان دادن جریان در سناریوی مشخص یک use case، استفاده می شوند. نمودارهای sequence برحسب زمان منظم می شوند. نمودارهای collaboration بیشتر بر روی رابطه بین آبجکت ها متمرکز می شوند.
همان گونه که می بینید، اطلاعات موجود در نمودار sequence بالا، در نمودار collanoraton دارد، ولی این نمودار، دید متفاوتی را از این روند ارائه می کند. در این نمودار، مشاهده ارتباط بین آبجکت ها آسانتر است. با وجود این، مشاهده اطلاعات sequence بسازید و برای این کار یا کلید F5 را فشار دهید یا Browser و سپس
(create (sequence/collaboration) diagram را انتخای کنید.
ساختن یک نمودار collaboration
مانند نمودارهای sequence، نمودارهای collaboration نیز در مرورگر و تحت یک use case یا بسته ساخته می شوند. شکل زیر چگونگی ایجاد یک نمودار collabboration جدید را برای مدل شما نشان می دهد همانگونه که در بالا متذکر شدیم روشی کمه برای ساختن نمودار collabboration زیاد استفاده می شود، ساختن یک نمودار sequence و سپس فشار بر روی کلید F5 است. Rose به طور خودکار از نمودار sequence موجود یک نمودار collaboration را می سازد.
برای ایجاد یک نمودار collaboration روش زیر را دنبال کنید:
1-در مرورگر بر روی use case مناسب کلیک راست کنید.
2-از منوی میانبر، گزینه New و سپس نمودار collaboration را انتخاب کنید.
3-نمودار collaboration جدید را نامگذاری کنید.
4-در مرورگر بر روی نمودار collaboration دوبار کلیک کنید تا باز شود.
حذف یک نمودار collaboration
در حین اینکه سیستم خود را می سازید، ممکن است نمودارهای collaboration را بیابید که دیگر در جایی ظاهر نمی شوند و مورد استفاده قرار نمی گیرند. برای نظم بخشی به مدل، می توانید در Rose این نمودارهای collaboration را در مرورگر حذف کنید. برای حذف collaboration مراحل زیر را انجام دهید:
1-در مرورگر بر روی نمودار collaboration کلیک راست نید.
2-از منوی باز شده، Delete را انتخاب کنید.
الصاق URL و فایل ها به بک نمودار collaboration
مانند نمودارهای sequence، می توانید یک URL یا فایل را به یک نمودار cillaboration متصل کنید. فایل یا URL الصاقی ممکن است اطلاعات مربوط به جریان رخدادهایی که نمودار آنها را شرح می دهد، نیازهای مشخص که نمودار آنها را پیاده سازی می کند، یا مستند سازی مناسب با نمودار، دیگری را در بر داشته باشد. اگر URL یا فایل الصاقی به جای اینکه فقط اطلاعاتی درباره یک سناریو داشته باشد، درباره تمام use case اطلاعات داشته باشد، باید به جای الصاق به نمودار colaaboraton به usecase الصاق شود.
هنگامی که یک فایل یا URL یکبار به یک نمودار collaboration الصاق شود، می توانید در مرورگر بر روی آن دوبار کلیک کنید تا برنامه کاربردی مناسب اجرا شده و فایل یا URL بارگذاری شود.
برای الصاق یک فایل به نمودار Collaboration:
1-در مرورگر بر روی نمودار Collaboration کلیک راست کنید.
2-از منوی New، گزینه File را انتخاب کنید.
3-با استفاده از کادر محاوره ای open. فایلی که می خواهید الصاق کنید را انتخاب کنید.
4-open را انتخاب کنید تا فایل الصاق شود.
برای افزودن یک URL به یک مرورگر Collaboration:
1-در مرورگر بر روی نمودار Collaboration کلیک راست کنید.
2-در New، گزینه URL را انتخاب کنید.
3-نام URL الصاقی را تایپ نید.
برای باز کردن فایل الصاقی:
در مرورگر بر روی فایل دوبار کلیک کنید. Rose به طور خودکار برنامه کاربرری مناسب را باز کرده و فایل را بارگذاری می کند.
یا
1-در مرورگر بر روی فایل کلیک راست کنید.
2-از منوی باز شده، Open را انتخاب کنید. Rose به طور خودکار برنامه کاربردی مناسب را باز کرده و فایل را بارگذاری می کند.
برای بازکردن یک URL الصاقی:
در مرورگر بر روی نام URL، دوبار کلیک کنید. Rose به طور خودکار برنامه کاربردی وب را راه اندازی کرده و URL را بارگذاری می کند.
یا
1- در مرور گر بر روی URL، کلیک راست کنید.
2-در منوی باز شده، open را انتخاب کنید. Rose به طور خودکار برنامه کاربردی مناسب وب را راه اندازی کرده و URL را بارگذاری می کند.
فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد
تعداد صفحات این مقاله 78 صفحه
پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید
دانلود مقاله نمودارهای UML