صفحه 1:
Use case
UML
درس :مهندسی نرم افزار ۱
استاد : خانم مهندس معادی
کرد آوری و اراثه: نگار رضانی
اردیبهشت ٩۲
صفحه 2:
#كت وكا أثر بخش
الیستر کاکبرن:«مورد استفاده .قرار دادی است ... (که ] رفتار سیستم را
تحت شرایط گوناگون در پاسخ گویی به درخواستی از سوی یکی از طرف
های ذی نفع توصیف می کند ..»
اه ود تنس رم كو سيا وحن اوم جوتي -عا مات از
می تواند شامل:
خلاصه ای از وظایف و تعامل ها
توصیفی مبتنی بر قالب
تمایش نضودار خونه باشد .
صفحه 3:
تعریف مجموعه ای از كنش كران است .
یعنی همان بازیگران : صحه
کنش گر: هرچیزی است که با سیستم یا محصول ارتباط
بوقرار می كت و ازج از خود سیستم قرار دارد.
صفحه 4:
ا
* کنش گر و کاربر نهایی یکی نیستند .
* یک کاربر معمولی می تواند چند نقش را برعهده بگیرد و
Cal BSNS Gul که یک کنش گر تنهازیک نقش ,را در
حیطه ۲22 ۱۳۶ می تواند بر عهده بگیرد .
صفحه 5:
۴ استخراج خواسته ها یک فعالیت تکاملی است .
۳ همه کنش گر ها در اولین دور تکرار شناسایی نمی شوند .
* شناسایی کنش گر های نوع اول طی نخستین دور تکرار امکان پذیر است .
* و کنش گر های نوع دوم با کسب اطلاعات
عر درباره ی سیستم می توان
شناسایی کرد.
* کنش گرهای نوع اول : با هم در تعامل هستند آنها به طور مستقیم و غالبا با
نرم افزار کار می کنند .
* کنش كر هاى نوع دوم :سيستم را پشتیبانی می کنند به طوری که کنش گر های
نوع اول بتوانند کار خود را انجام دهند .
صفحه 6:
می توان 7ت دو را توسعه داد با چند سوال می توان شروع کرد
کنش گر نوع اول و نوع دوم چه کسانی هستند ؟
* اهداف کنش گر چیست ؟
قبل از شروع داستان چه پیش شرط هایی باید وجود داشته باشد ؟
* چه وظایف اصلی توسط کنش گر اجرا می شود؟
*_چه استثناهایی را باید با توصیف داستان در نظر داشت ؟
* جه تغييراتى در تعامل کنش گران امکان پذیر است ؟
* کنش كر جه اطلاعاتى را به دست مى آورد .توليد مى كند يا تغيير مى دهد ؟
* آيا كنش كر بايد سيستم را از تغييرات به عمل اورده در محيط خارجى آكاه سازد؟
كنش گر چه اطلاعاتی را از سیتم می خواهد ؟
*_آیا کنش گر می خواهد درباره تغییرات غیر منتظره مطلع شود ؟
صفحه 7:
جهار کنش گر ؛ عم <<
صاحب خانه
(کاربر)
مدیر راه اتذاز
(احتمالا همان صاحب خانه ,ولی با نقش متفاوت )
حس گرها
(دستگاه های متصل به سیستم )
زبر سیستم پایش و پاسخ
(ایستگاه مرگزی که عملکرد ایمنی منزل در محصول را پایش می کند .)
صفحه 8:
شکل ۵-۱ باتل کنترل 5۵/60۳6
كنش كر اول : صاحب خانه
صفحه 9:
ابزار هاى roe) افزارى توسعه SE DUS
™ هدف :
کمک به توسعه 52 5 با فراهم ساختن قالب های خودکار و
سازو کارهایی جهت ارزیابی وضوح و سازگاری
ABE aL. *
به شکل فرم های پر کردن جای خالی فراهم
می آورند که نتیجه آن ها hoy Shuse vase oly! است .
صفحه 10:
اکثر ابزار های مدل سازی تحلیل مبتنی بر .۲11[]آهر دو
نوع پشتیبانی متنی و گرافیکی را برای توسعه و مدل
سازی 6356 1156 فراهم می سازد .
صفحه 11:
نماد كذارى OOL
" عملكرد در يك مستطيل قرار مى كيرد كه درداخل آن نيز بيضى هايى
قرار مى كيرد .
بیضی ها هر کدام نشان دهنده یکی ازجم حص هستند .که آنها را به
صورت متنی در داخل بیضی ها می نویسیم .
* آدمک ها کنش گر ها را نشان می دهند .
* برای کنش گرهای غیر انسانی از چهار گوش های نشان دار استفاده می
برای مثال در پروژه :سا << حسگرها هستند.
صفحه 12:
صفحه 13:
هدف از مدل تحلیل: فراهم ساختن توصیفی از دامنه اطلاعاتی .عملیاتی و
رفتاری مورد نیاز برای سیستم کامپیوتری است
مدل تحلیل :در هر زمان به مثابه عکس فوری از خواسته هاست .
يعد
بايد انتظار تغييرات را داشته باشيد يعنى در همان حال كه مدل خواسته ها به
تكامل مى رسد عناصر معينى به يايدارى نسبى مى رسند ولى ساير عناصر
مدل ممكن است فرار باشند و اين نشان مى دهد كه طرف هاى ذى نفع هنوز
به طور كامل خواسته هاى سسيتم را درك نكرده اند
صفحه 14:
1
* بعضی از دست اندر کاران نرم افزار استدلال می کنند که بهترین کار انتفاب
wwe reer Jibs Gly Cun! يك هالت نمايشى
* سایر بر این باورند که استفاده از چند حالت نمایشی متفاوت یرای به تصویر
کشیدن مدل خواسته ها ارزشمند است .
اين کار سبب می شود که مدل خواسته ها را از دیدگاه های متفاوت در نظر
بگیرید در این رویکرد امتمال آشکار شدن مجارد جا افتاده . ناسازگاری ها و
ابهامات بیشتر می شود .
* در هر هال مجموعه ای از عناصر کلی در اکثر مدل ها مشتری هستند .
صفحه 15:
wer owe بايه و نمودار عدت عت مرتبط با آنيه مص «صلى
مبتنیبر 3و و با مزییاتب یشتر تکاملی ید میکند.
عناصر مبتنی بر ستاریو در مدل خواسته ها غالبا نفستین بخش از مدلی
هستند که توسعه می یایند .
این عناصر به عنوان ورودی برای ایجاد سایر عناصر مدل سازی عمل هی
صفحه 16:
۱:۱۱ WAV COE E MeN re BRON URE) UNE)
1156 ©6356 استفاده از
صفحه 17:
* هر سناریو کاربرد ء نشان گر مجموعه ای از اشیاست که با تعامل یک کنش
گر با سیستم دستکاری می شود .
* اشیاء در قالب چند کلاس طبقه بندی می شوند :
مجموعه ای از چیزهایی که صفات و رفتار مشابه دارند .
برای مثال کلاس هسکر ها
صفحه 18:
* «فتار یک سیستم می تواند اثری عمیق CHAT yy
طراحی و رویکرد مورد استفاده در پیاده سازی داشته
باشد.
* بنابراین مدل خواسته ها باید عناصر مدل سازی لازم
برای تصویر کردن این رفتار را فراهم سازد .
صفحه 19:
نمودار حالت یکی از روش های نمایش رفتار سیستم با به تصویر کشیدن
حالات و رویداد هایی است که باعث می شوند سیستم تغییر حالت دهد .
هالت: هر شیوه ی رختاری سیستم گفته می شود که از بیرون قابل
مشاهده باشد .
* نمودار مالت نشان گر کنش هایی (مثلا خفعال سازی فرایند /است که به
عنوان پیامدی از یک رویداد خاص انجام می شوند .
صفحه 20:
یک
۱
=
=
5
3
3
صفحه 21:
علاوه بر نمایش های رفتاری سیستم به عنوان یک کل
رفتار تک تک کلاس ها را نیز می توان مدل سازی کرد .
صفحه 22:
0 جيسك
؟ یک موضوع مهم در مدلسازی بصری اپن است که از چه نماد گرافیکی برای
نشان دادن چهره های مختلف یک سیستم استفاده شود.
؟ لازم است که اين نماد برای همه بخشهای وابسته و درگیر با سیستم مفهوم
باشد در غير اين صورت مدل خیلی مفید نخواهد بود.
؟ بسیاری از افراد نمادهایی را برای مدل سازی بصری پیشنهاد نموده اند.
* بعضی از این نمادها که محبوب هستند و پشتیبانی قوی دارند عبار تند از :
®vvrk *
OOP ( Object Dodekry Techooby) "
OOD ( OoPed Ordetoy Loapuce) *
برنامه ؟) ات( از این سه نماد پشتیبانی می کند.
°
صفحه 23:
rio 00001 به خاطر مخترعش !۵۷) با۳() دانشمند ارشد
شرکت نرم افزاري لس نامگذاري شده است.
متد 00 توسط دکتر a2 hawes Ruwbanhk وجود آمده است. OOTP
به نسبت 0۷ از گرافيك بيشتري برخوردار است تا سیستم ها
را واضح تر نشان دهد.
rey حاصل تلاش دست جمعي حول سوه OOD ales
9 Rawbanhe var keoberw مه( (۲ Brock: Porter Yourdoa
افراد زياد ديكري مي باشد.
عموما به بيعامه؟) ,2 و سول سه تفنگدار اطلاق مي
شود که هر سه در شرکت نرم افزاري ابت؟) کار مي کنند.
صفحه 24:
اين سه بر روی استاندارد سازی و اصلاح ,ا060) متمرکز شده اند. سمبل های :0601) تقریبا با
نمادهای س) و 002/۳ متناسب است و همچنین شامل عناصری از نمادهای دیگر نیز می
باشد.
ادغام مدلها به منظور ایجاد 000 در سال ۱۹۹۳ آغاز گردید.
هریک از این سه تفنگدار شروع به آمیختن ایده های متدولوژی های دیگر با هم نمودند.
پکپارچه سازی رسمی متدولوژی ها تا سال ۱۹۹۵ ادامه داشت. در این سال نسخه ۰۸
0244 ۳421( معرفی شد.
این نسخه . اصلاح شده و در سال ۱۹۹۶ به جسمججا معاط() ل۳() تغییر یافت.
صفحه 25:
؟ نسخه 0.0 DOL تایید شد و در سال ۱۹۹۷ به گروه تکنولوژی آبجکت
( روا( ws oold (Obert Crow
* شرکتهای تولید کننده نرم افزار شروع به سازگار شدن با آن نمودند.
* سرانجام در نوامبر ۱۹۹۷ ODG 4.5 4.0 060 را به عنوان یک
استاندارد صنعتی معرفی نمود.
صفحه 26:
نمودارهای ,ا(00)
٩ ,20 به لفراد!جازه میدهد تا چنسیرنوع مختلفاز نمودارهایب صریرا
به وجود آویند که جنبه هایم ختلفسیستم را نمليشموههد نرملفزار
4055 أددحقه؟)) از لیجاد اک ثر لیر دلها پشتیبلنیمیک ند لیرنسمودارها بسه
قرار زیر هستند:
Ose Ouse Dtagrenms) نمودارهای درخواست سیستم پا موردهای استفاده *
(Chase Diagrams) oS (sa logos *
* نمودارهای توالی (عصمسچم0) مسهجءق1
(Colborction Discos) 15 {Kae تمودذارهاى *
* نمودارهاى انتقال حالت ( به (Grote Troustion
* نمودارهای فعالیت (مدل سازی پردازشی) ( مم00 هو
۴ نمودار اجزاء (سمجم2) مسورسه06)
Qepbywedt Dig ( نمودار استقرار *
صفحه 27:
* نمودارهای MOL
© نمودارهای درخواست سیستم (0166060 0666 OGCE
"نمودارهای درخواست سیستم برای تحلیل نیازمندی های وظیفه ای
سیستم تهیه می شود. نمودارهای درخواست سیستم در فاز تحلي
سیستم تهیه می شود و لین دید رابه توسعه دهندگان سیستم می دهد
که سیستم جدید چیست و چه کارهایی انجام می دهد؟
با لین نموداریک ارتباط متقلبلبا کاربر برقرارمی شود که.پس از بعث
و بررسی و حصول توافق نیازمندی های وظیفه ای سیستم نهاییی می
شود.
صفحه 28:
نمودارهای عع2) <2() محاورات میان ععو) ۶( ها را نشان می دهند و عملیات سیستمی و
BES را بیان می (Botore ) ls fale
نشانمهندصلفراد یا سیستمهلییهستند که لطاها تا بسرلیسیستم فولهم کرشد. be Brice
و یااز آندیافتمیکنند.
* نمودارهای جحه2) <«() محاورات بین عص) <و()ها و ج6ه()ها را نشان می دهند.
عح2) <<( ها درخولستهایسیستم را از دید کایبر نسشانمیدهند بستابولیرجه) «و() ها
عملیاتسطح بل الیهستند که سیستم ف راهممیکسند در ولقع جح SLL SW Oar
لقدلماتیه هم مرتبطلسنکه تسوسط یسک0۳6) در سیستمرلملندازیمیشود تابسه یک
هدفه شخصیس رسد یا بسه عبارتدیگر هر جج0 جو() ی _کوله مشخصاستفاده از سیستم
ملست
صفحه 29:
* توجه داشته باشید که کاربر (جص) با آکتور (0) متفاوت
است: کازیز کسي است که از سچستم ايستفاده :من كتد ولت
هه ببانگر نقشی است كه بك كارب ايقا مني کنده نام gl Oo
بیانگر نقش آن باشد.
* ۲) يكنوع يا مجموعه لیاز کاربرانخواهد بود. در واقع يك
alge ts lS جاض از جمن خواهد بود کم آریقشرا بانی
gambiae Saco دلشته باشید کم ل کارت ممولنه چینین
نقشب ازيکند.
به عنوان مثال : علي در سیستم هم مربي است و هم استاد
وراه 1الذا 40 يكا دونه ]از © هربي و همين طوز يك نموتة
از و استاد راهنما است.
براي اينكه 62 ها خارج از سیستم هستند نيازي به تشریح
تقضيلي آنها نیست ولي مزیت تعریف آنها این است که Ope
Our ها مشخص مي شوند.
م
صفحه 30:
* نمودارهاي 00
* نمودارهاي درخواست سیستم (01۵66606 0666 ۵86)
* مثال: نمودار 00666 066 سیستم 00 بانك
Co z
تسر مشاهده تراز موجودی
6> |] یت :
sy pone
واريز يول ب ب 8 7
برداشت پول
de Sit
90
صفحه 31:
" ادامه مثال: نمودار 2)90808) 968)) سیستم 9/0) بانک
٩ مورد استفاده(صح0 «<(6 برداشت پول
* پیام احوالپرسی در ۳00) ظاهر می شود.
مشتری کارت خود را در ماشین قرار می دهد.
* 07۳0 از مشتری(۳10) را میپسرسدد
* مشتری 6۳10 را وارد می کند.
* 09000 حسلبهاومشترورا نسشازمىدهد تا منتخابكند
مشترى حسابى را انتخاب مى كند.
ماشين حدود حساب را نشان مى دهد.
مشتری مقدار برداشت را مشخص می کند.
* صورتحساب تنظیم می شود.
* کارت خارج شده و رسید نیز صادر می شود.
50
صفحه 32:
DOL jglajlogai "
۶ نمودارهای درخواست سیستم (016066608 0686 066
* مثال: سیستم ثبت نام در دانشگاه
واحد مالی
صفحه 33:
۴ نمودارهاي OQOL
© نمودارهاي درخواست سیستم (عه0 --2)
(Dtragraws
" ارتباط , هل
© اگر در حصن 022 توالي از فعاليت ها وجود دارند كه در حالت
هاي خاص و بطور اضافه انجام مي شوند و 02 ديگري در آن
نقنق دارند با عملگر له آن و 0 تجزیه مي شود.
صفحه 34:
۴ نمودارهاي OXON
© نمودارهاي درخواست سیستم (عه0 --2)
7 (Drees
6 با یاه Owe Bh!"
s
s
s
<< include>> ,
35
© اگر يك Owe و0 به و0 »و0 هاي دیگر ارجاع دهد
(رفرنس دهد) از ارتباط طعام استفاده مي شود.
صفحه 35:
۴ نمودارهاي OXON
© نمودارهاي درخواست سیستم (عه0 --2)
(Dtragraws
ماه سیستم غاي چاضري (eb) +
سفارش غذا
شخص خدمت
دهتده
مقارش و موجودی
صفحه 36:
* نمودارهای ,00
* نمودارهای کلاس (ع:) عصا))
"ساختار ایستا (ثابت) مدل موجودیت گرا را نشان می دهد. یعنی بیانگر
کلاس های موجودیت. ساختار داخلی آنها و ارتباطی که آنها با هم
مشارکت دارند است.
"در ب060) کلاس موجودیت با یک مستطیل که دارای سه قسمت است
نشان داده می شود. در قسمت اول نام کلاس موجودیت. در قسمت دوم
مشخصه ها (حالت) کلاس موجودیت و در قسمت سوم عملگر (عملیات)
کلاس موجودیت که توسط آنها عمل و عکس العمل نشان می دهد بیان مى
شود.
صفحه 37:
OOL نمودارهاي *
* نمودارهاي کلاس (0۵1۵۵6006 ۵هره)
* نمودار 0۷۵۵6 مثال ۵۳۵ در زیر نشان داده شده است:
‘AIM Screen’
Prompt)
L_Accept Input) ١
Cash Balance
Provide Cash)
Provide Receipt)
ead
Card Reader
‘Card Number
Accept Card)
Eject Card)
Read Card()
pend)
‘Withdraw Funds
Deduct Funds()
Verify Funds,
صفحه 38:
* نمودارهای ,6000
* نمودارهای کلاس (016660606 ههام
"در یک نمودار عل) هر کلاس با مستطیلی نشان داده شده که به ۳ بخش تقسیم شده
است.
۲بخش اول نام کلاس را نشان می دهد. نام کلاس می بایست دربرگیرنده مفهوم کلیه آبجکت
هایی باشد که به آن کلاس نگاشت خواهند شد.
۷بخش دوم صفات(عصفط98)) کلاس را نشان می دهد. یک صفت . قطعه ای از اطلاعات است
که با یک کلاس مرتبط می باشد.
"مثلا کلاس حساب(ه()) شامل سه صفت است :
© شماره حساب(مامی جیوه
PD °
© تراز موجودی(س)
90
صفحه 39:
آخرین بخش شامل عملگرهای کلاس(عطل<۳()) می باشد.
یک عملگر : تعدادی رفتار است که توسط کلاس آماده خواهد شد.
مثلا کلاس حساب شامل چهار عملگر است:
Open) gS jb °
© برداشت وجه(طمی<) سعطه0(۷)
٩ کسر موجودی(ط<) بسدع)
© تایید موجودی(ط<) هب6
خطوط بین کلاسها . وابستگی ارتباطات بین کلاسها را نشان می دهد.
مه
صفحه 40:
کارمند ساعتی
کارمند قراردادی
= ق سالین فرخ ساعتی
تماره ترارداد anes
نرخ مشاوره
)( محاسبه حق الزحمه
Ope oe aa
: ae
صفحه 41:
* انتقال اطلاعات با جریان یافتن در یک سیستم کامپیوتری
صورت می پذیرد .
در عمل می توانیم برای هر سیستم کامپوتری با هر اندازه
و هرمیزان پیچیدگی .یک مدل جریان تولید کنیم.
صفحه 42:
الگوهای تملیل راهکارهایی (مثْلا یک کلاس .یک عملکرد میک رفتار ادر
این دامنه کاربزدی پیشنهاد می کنند .که در مدل سازی بسیاری از
برنامه های کاربردی قابل استفاده مجدد است .
صفحه 43:
که با به کار گیری الکو های تملیل می توان آن ها را مرتبط
دانست :
!)این الکو های تحلیل ,توسعه مدل های انتزاعی را سرعت می بخشند .
)الکو های تملیل ,تبدیل مدل تحلیل به یک مدل طرامی را با پیشنهاد الکو
های طراهی و راهکار های قابل اطمینان برای مسائل رایج تسهیل می کند .
صفحه 44:
% ایده ال مهندسی خواسته ها
۷ مشامره با یک یا چند طرف ذی نفع
۷ هدف : مذاکره توسعه یک طرح پروژه است که نیاز های طرف ذی نفع را بر
طرف سازد و در همان حال قيد و بند Slo جهان واقعی (مانن زمان ,آدم ها
ءبودجه )۱ که تیم نرم افزار با آن مواجه است را منتعکس می کند .
صفحه 45:
هدف بهترین مذاکره ها نتیجه ای «برد-برد» است .
صفحه 46:
۱
١)شناسايى طرف هاى ذى نفع مهم سیستم یا زیر سیستم
«)تعيين شرايط برد براى طرف هاى ذى نفع
ا)مذاكره بر سر شرايط برد طرف هاى ذى نفع براى رسائدن آنها به شرايط
يرد -برد .براى تمامى طرف ها (از جمله تيم نرم افزار.
با تكميل موفقيت آميز اين مراحل آغازى نتيجهى برد- برد حاصل خواهد شد
که ملاک کلیدی برای پیش رفتن به فعالیت های بعدی در مهندسی نرم افزار
است.
صفحه 47:
اعتبار سنجی خواسته ها
"از نظر
"ناسا زکاری
"ابهام
7"موارد جا افتاده
