PDA

View Full Version : سوال: گروه بندي يك use case دياگرام سنگين به بسته ها چگونه بايد انجام بگيرد؟



mohamad100000
شنبه 10 فروردین 1392, 15:14 عصر
سلام دوستان
بسته بندي use case دياگرام هاي سنگين در پكيج ها از لحاظ عملي كار دشواري نيست:متفکر:
اما از لحاظ مفهومي براي من هنوز قابل هضم نيست
كه اين بسته بندي بايد با چه قانون هاي صورت بگيره كه در ادامه توسعه نمودار با مشكلي مواجه نشم:افسرده:
ممنون ميشم اگه بتونيد كمكم كنيد:قلب:

cups_of_java
یک شنبه 11 فروردین 1392, 03:03 صبح
من کمی گشتم قوانین نوشته خاصی هنوز پیدا نکردم، اما خب همچنان خواهم گشت. اما طبعن باید usecase های مرتبط به هم رو با هم دسته بندی کرد. مثلن usecaseهایی که در مجموع با هم یک واحد یا یک زیر سیستم مستقل از کل سیستم ما رو می تونن بسازن! و این موضوع به تعداد و پیجیدگی usecaseها هم مرتبط هستش.
میشه بگید در ادامه به طور تجربی با چه تیپ مشکلاتی مواجه میشید؟

mohamad100000
چهارشنبه 14 فروردین 1392, 08:46 صبح
راستش بيشتر با مبهمات مواجه ميشم تا مشكلات
مثلا ما براي تعيين use case و Actor حدود 10 قانون داريم ، كه ديديمون رو براي تعيين اون ها روشن تر مي كنه
اما براي تعيين Pakage ها فعلا توضيحات تخصصي دريافت نكردم
102230
عكس بالا با توجه به توضيحات كاربر cups_of_java (http://barnamenevis.org/member.php?67212-cups_of_java)

cups_of_java
جمعه 16 فروردین 1392, 02:02 صبح
من متوجه ابهام شما نشدم. اما اگه این کتاب (www2.dis.ulpgc.es/~jsanchez/MDS/EffectiveUseCases.pdf) رو نخوندین توصیه می کنم حتمن بخونیدش فکر می کنم جواب سوالاتتون رو توش پیدا می کنید.

barnamenevis1978
چهارشنبه 28 فروردین 1392, 11:15 صبح
سلام
من هم با این مشکل مواجه شدم...
مشکل من اینه که تعداد use case های سیستم خیلی زیاد شده... (به دلیل اینکه تا جایی که می تونستم سعی کرم عملیات را بشکنم)
هم خوانایی system use case diagram خیلی سخت شده و هم ارتباطات بین use case ها خیلی پیچیده شده...
فکر می کنم برای رفع این مشکل بهتره جزییات هر use case بزرگ را به یک بسته منتقل کنم.
در واقع، نمودار use case من تبدیل به چندتا نمودار use case خواهد شد که همشون به هم وابسته اند.
آیا این کار از نظر فنی اشکالی داره؟

mohamad100000
دوشنبه 02 اردیبهشت 1392, 09:10 صبح
barnamenevis1978 (http://barnamenevis.org/member.php?18635-barnamenevis1978)
اينكه بخواهيد بسته بندي use case ها را انجام دهيد بايد بسته ها use case رو طبق مشتركاتشون بسته بندي كنيد
بعنوان مثال در يك سيستم دانشجويي use case هاي خاص مربوط به امور مالي در يك بسته قرار مي دهيم
البته طبق مطالعاتي كه من داشتم ، هنر بسته بندي كردن دياگرام ها مربوط به بسته بندي كلاس ها ميشه و بايد تخصص بسته بندي كردن را روي ، بسته بندي كلاس ها متمركز بشيم

barnamenevis1978
دوشنبه 02 اردیبهشت 1392, 12:26 عصر
سلام
ممنون از پاسختون
ببینید، من دارم system use case model تهیه میکنم (و نه business use case model) و دارم سعی میکنم تا use case ها رو تا جای ممکن بشکنم. بنابراین تعداد use case ها خیلی زیاد شده و ارتباطات بین آنها (include-extend-generalization) خیلی تو هم رفته!
برای خوانایی بیشتر، دارم مثلا ثبت نام اطلاعات را از نمایش اطلاعات جدا می کنم (با توجه به اینکه در نمای کلی تر use case های بزرگ را آوردم) و در واقع sub use case ها را در دیاگرام های جداگانه رسم می کنم.

mohamad100000
سه شنبه 03 اردیبهشت 1392, 10:35 صبح
ما با استفاده از بسته ها عناصر را با یکدیگر گروه بندی می كنيم.

مانند یک پوشهء فایل که شامل اسناد مرتبط با یکدیگراست. "مشتركات"

آنها بیشتر در کلاس ها و Use

Case ها استفاده می شوند. واین به این دلیل است که هر دوی Class Diagram ها و Use Case

Diagram ها گرایش دارند تا سریع رشد کنند ، بنابراین بسته ها برای سادگی و مختصر سازی در این

نوع از دیاگرام ها بسیار مفید هستند.

همچنين مي توانيد بسته ها را در داخل بسته هاي ديگر قرار دهيد.

روابط :می توانید بسته ها را بهم دیگر به روشهای مختلفی ارتباط دهید. این روابط شامل وابستگی ، تعمیم یا ارث بری و بازشناسی یا پاک

سازی باشد.




use case و بسته ها :

می توانید use case ها را در یک بسته جمع کنید.در اين مورد علنا می توانیم بگوییم و بدانیم که

مشتری، بازیگر اصلی در ارتباط با گروهی از use case هاست که در بسته ی با نام خاصي بعنوان مثال (تراكنش) قرار گرفته اند

چه زماني از بسته ها استفاده كنيم ؟

مثال بسته ها و اينكه چه زماني از بسته ها استفاده كنيم ؟ با مثال كتابخانه



یک پروژه بزرگ و پیچیده که شامل 100 ها کلاس است،
بدون داشتن راهی که بتوان این کلاسها را سرو سامان داد غیر ممکن
به نظر می رسد که بتوانیم آنها را از هم مجزا کنیم.

به همین طریق،

بخواهیم از بین يك دسته کتاب یک

داستان مشخص را بیابیم.

بسته ها یک ساختار را برای کلاسها یا دیگر اجزای UML بوسیله گروه بندی اجزای مرتبط ایجاد می کنند.

پس بجای این همه کتاب درهم، یک کتابخانه داریم جایی که کتابها برپایه موضوع یا همسانی

عناوینشان به بخشهای مختلفی طبقه بندی شده اند و شما می خواهید همین عمل را با کتابخانه

کلاسهایتان انجام دهید. می خواهید مطمئن شوید که اینها دسته بندی شده اند، کلاسهای مشابه با

هم دسته بندی شده اند و این باعث می شود که با نگاهی اجمالی، براحتی بتوانید مطلب را درک

نمایید.



نتيجه گيري:

از نمودارهای بسته در یک سیستم بزرگ استفاده کنید تا بتوانید عناصر اصلی را نشان دهید و اینکه

چگونه این عناصر با هم در ارتباط هستند. دوباره این کار سطحی بالاتر از سیستم را به شما ارایه می

دهد. و می توانید از نمودارهای بسته برای تقسیم کردن یک سیستم پیچیده به چندین بخش (Module)

استفاده نمایید.