ورود

View Full Version : تفاوت ارتباط <<uses>> و <<include>> در UML



anahita_s
چهارشنبه 24 مرداد 1386, 16:28 عصر
با سلام و خسته نباشید

در UML بین ارتباط <<uses>> و <<include>> چه تفاوتی وجود دارد؟ آیا هر دو یک کاربرد دارند؟ ممنون میشم اگه هر چه زودتر جواب بدین.

با تشکر

mehdi-213
چهارشنبه 24 مرداد 1386, 23:05 عصر
در مورد include تعریف های زیر میباشد :

وقتی از این ارتباط استفاده میکنیم که یک usecase پایه داشته باشیم ولی در حالت غیر معمولی بزرگ باشد یعنی در حالت عاملیت غیر معمولی باشد پس از include استفاده میکنیم تا آن را به چند usecase دیگه تقسیم کنیم.

usecase باید یک function باشد که از جایی شروع شود و حتما به پایان برسد(این را به تعریف های دیگر اضافه کنید)

پس اگر چنین حالتی دیده شد اون وقت یک use case جدید تولید کن.

باید اینگونه نشان دهی که usecase پایه از functionality(عاملیت) اون usecase ها استفاده میکند.

در مورد uses من که تا حالا استفاده نکردم - اما include بیشتر با extend ارتباط داره یعنی همیشه بعد از اون یکی تعریف میشه

mehdi-213
چهارشنبه 24 مرداد 1386, 23:13 عصر
در مورد uses :

وقتی یوز کیس "الف" باید اجرا بشه وقتی که یوزکیس "ب" اجرا شد از "ب" به "الف" یک<< uses>> میکشیم مهم نیست که "الف" حتما در دسترس هست یا نه ( اجرا میشه یا نه)

Uses : یک نوع ارتباط وابستگی که برای نشان دادن عناصر نیازمند به عناصر دیگر است .

یه تعریف دیگه:

رابطه Uses : شبیه Extend می باشد ولی در اینجا حالات خاص‌‌را در یک Use Case قرار نمی‌‌دهد، بلکه اگر رفتاری در چند Use Case مشترک باشد، آنرا جدا کرده و در یک Use Case مجزا قرار می‌‌دهند

baharesabz
پنج شنبه 25 مرداد 1386, 08:31 صبح
هنگامی که Use Case ای خود شامل Use Case های دیگری باشد یا به عبارتی Use Case های دیگر در درون Use Case اصلی بتوانند قرار گیرند از <<include>> استفاده می نمائیم، اما هنگامی که Use Case ای تنها از Use Case های دیگر استفاده نماید یعنی مثلا" از خرویهای آنها تأثیر پذیرد از <<Uses>> استفاده می نمائیم.

anahita_s
پنج شنبه 25 مرداد 1386, 10:01 صبح
باسلام
ممنون از پاسخهای کاملی که دادید٬
امامشکل من در اینجاست که در منابع مختلفی که من دیدم فقط یکی از این دو مورد توضیح داده شده و در هیچ منبعی <<uses>> و <<include>> هر دو باهم نیامده است. می خواستم بدونم در یک دیاگرام UseCase میشه هر دو را با هم استفاده کرد.
با تشکر

mehdi-213
پنج شنبه 25 مرداد 1386, 15:05 عصر
این که در منبعی هر دو با هم نیامده دلیل بر استفاده نکردن همزمان نیست.

"البته لازم به ذکر است که در مورد UML تعریف های گوناگون البته نه زیاد متفاوت وجود دارد که با مطالعه منابع گوناگون میشه به یه جمه بندی رسید."

این بسته به نیاز مسئله دارد.
هر جور که مسئله رو شناختی و داری نباز ها رو میشناسی و تحلیل میکنی --- حالا با توجه به تعاریفی که خوندی و همین تعریف های بالا ببین نیازی هست که هر دو باشند یا نه یعنی در اصل این امکان وجود داره که هر دو با هم در یک دیاگرام باشند.

در usecase دیاگرام نباید از خودتون چیزی اضافه کنید . باید دقیقا بر حسب problemstatment باشه پس خیلی مهمه که نیاز های سیستم رو خوب درک کنی.نباید زیاد پیچیده بشه باید طوری باشه که کسانی که خارج از سیستم هستند بتونند دیاگرام رو بفهمند.

اول -- یک بکگراند از سیستم (شرح مختصر)
دوم -- سیستم موجود چه جور کار میکنه
سوم -- سیستم آینده چه چیزی به سیستم موجود اضافه میکنه و چگونه کار میکند.

smhoseyni
شنبه 27 مرداد 1386, 10:25 صبح
با سلام و خسته نباشید

در UML بین ارتباط <<uses>> و <<include>> چه تفاوتی وجود دارد؟ آیا هر دو یک کاربرد دارند؟ ممنون میشم اگه هر چه زودتر جواب بدین.

با تشکر

در خیلی از منابع (مثل منابع Rational) از uses استفاده نمی‌شود و فقط از include استفاده می‌شود (در واقع include برای نشان دادن همان چیزی که uses نشان می‌دهد نیز استفاده می‌شود ).

متأسفانه UML چندان هم Unified نیست.

anahita_s
شنبه 27 مرداد 1386, 13:56 عصر
در خیلی از منابع (مثل منابع Rational) از uses استفاده نمی‌شود و فقط از include استفاده می‌شود (در واقع include برای نشان دادن همان چیزی که uses نشان می‌دهد نیز استفاده می‌شود ).

متأسفانه UML چندان هم Unified نیست.



با سلام


من در مطلبی تو یه سایت می خوندم که uses و include از دو استاندارد جدای UML هستند. در واقع <<uses>> متعلق به استانداردی قبل ازUML 1.3می باشد ولی <<include>> متعلق به استاندارد UML 1.3 است. از آنجا که من قصد دارم UseCase ها را در Rational Rose 2000 در بیارم از کدام استاندارد باید استفاده کنم؟

با تشکر

miimii
سه شنبه 30 مرداد 1386, 16:27 عصر
دوست عزیز من همین مطلبی که شما خواندید را در کتاب UML سری شومز خواندم.
ولی چیزی که در حال حاضر و عموما در پروژه ها دیده ام استفاه از رابطه Include به جای رابطه uses می باشد