Lecture5
Upcoming SlideShare
Loading in...5
×
 

Lecture5

on

  • 819 views

 

Statistics

Views

Total Views
819
Views on SlideShare
819
Embed Views
0

Actions

Likes
0
Downloads
9
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Lecture5 Lecture5 Presentation Transcript

  • Object-oriented System Analysis and Design Лекц № 5 . UML ба түүнийг дэмждэг хэрэгслүүд ШУТИС, КтМС 2007-2008 оны хичээлийн жил, Намар Багш: Д.Энхжаргал
  • UML: ¯íäñýí äºðâºí ä¿ðñëýë Ñèñòåìèéã ô óíêöèîíàëü øààðäëàãûã ä¿ðñýëäýã. Use case diagram Ñèñòåìèéí ëîãèê á¿òöèéã ä¿ðñýëäýã Class diagram Ñèñòåìèéí äèíàìèê îíöëîãèéã ä¿ðñýëäýã Sequence diagram Ñèñòåìèéí ôèçèê á¿òöèéã ä¿ðñýëäýã Deployment diagram ¯éë àæèëëàãààíû çîðèëãî
    • Unified Modeling Language
      • UML íü Grady Booch, James Rumbaugh áîëîí Ivar Jacobson íàðûí á¿òýýë þì. ªºðººð õýëáýë òýä àíõ ñàíàà÷ëàãä÷èä íü þì. Ис ïàíèàð “Ãóðâàí íàéç” (the Three Amigos) ãýæ íýðëýãääýã ýäãýýð çàëóóñ 1990-ýýä îíû ýõýí õ¿ðòýë òóñ òóñäàà ººð ººðèéí àðãà ç¿é, òºëºâëºãºº, ñàíààãààðàà Îáúåêò õàíäëàãàò øèíæèëãýý çàãâàðë÷ëàë äýýð àæèëëàæ áàéæýý. Õàðèí îëîí òîîíû ºðñºëäºã÷ ãàð÷ èðýõ òýð ¿åä àìæèëò îëîõîä òèéì ÷ õÿëáàð áèø áîëîâ. 1990 îíû äóíä ¿åýñ òýä áèå áèåíèéõýý ñàíààã ò¿ð àâ÷ õýðýãëýí ýõýëæ, äàðààõàí íü õàìòäàà íýãäýí àæèëëàõ õýðýãòýé ãýäãèéã îéëãîîä íýãäæýý. 1994 îíä James Rumbaugh íü Grady Booch-èéí àæèëëàäàã áàéñàí “Rational Software” êîðïîðàöèä àæèë÷íààð îðæ, õàðèí Jacobson íýã æèëèéí äàðàà тэдэнтэй нэгдсэнээр 1995 онд тэд UML буюу нэгдсэн загварчилгааны хэлийг үүсгэн бий болгожээ. Үүнд:
        • Booch: “cloud” диаграммыг санаачилсан
        • Rumbaugh:Object Modeling Technique (OMT) -ийг үүсгэн байгуулсан
        • Jacobson: анхны Use Case диаграмыг хэрэглээнд нэвтрүүлсэн Object Oriented Software Engineering (OOSE) -ийг үүсгэн байгуулсан
    • Unified Modeling Language
      • Ñ ¿¿ëèéí ¿åä î áúåêò õàíäàëòàò àðãà÷ëàëûí õ¿ðýýíä UML ¿éëäâýðëýëèéí ñòàíäàðò áîë òëîî õºãæñºí ãýæ õýëæ áîëíî . UML -èéã ïðîãðàì õàíãàìæèéí êîìïàíèóäûí êîíñîðöèóì áîëîõ Object Management Group (OMG)–ýýñ ïðîãðàì õàíãàìæèéí çàãâàð÷ëàëûí ñòàíäàðò áîëãîí áàòàëñàí áèëýý .
      • UML íü àëèâàà ¿íäýñòíèé õýëíýýñ èë¿¿ àìàðõàí îéëãîãääîã ó÷èð íèéòëýã àøèãëàãäàõ áîëñîí áà îäîî îëîí óëñûí ñòàíäàðò áîëîîä áàéíà.
      • UML нь алхам алхамаар нэмэгдүүлэн хөгжүүлэх процессын үед тохиромжтой.
      • UML нь системийг статик болон динамик шинж чанараар нь дүрслэн харуулах боломжоор хангагдсан байдаг. Үүнд:
            • -Статик бүтцүүд : системийн классууд болон эд ангиудийн дүрслэл
            • -Динамик бүтцүүд : объектуудын амьдралын цикл ба тэдгээрийн харилцан хамаарлыг харуулсан дүрслэлүүд
  • Unified Modeling Language
    • UML-èéã áàðàã á¿õ òºðëèéí ñèñòåìä õýðýãëýäýã. Òóõàéëáàë:
      • ìýäýýëëèéí ñèñòåì
      • òåõíèêèéí ñèñòåì¿¿ä (õàðèëöàà õîëáîî, öýðýã, ¿éëäâýðëýë)
      • embedded real-time ñèñòåì¿¿ä (ãàð óòàñ)
      • ñèñòåìèéí ïðîãðàì õàíãàìæ (¿éëäëèéí ñèñòåì, ìýäýýëëèéí ñàí)...
    • Îäîîãèéí UML –èéí áè÷èãëýëèéí ñòàíäàðò íü ñèñòåìèéí øèíæèëãýý, çàãâàð÷ëàë, õýðýãæ¿¿ëýõ àëõìóóäûã áîëîâñðóóëàëòûí ¿å øàòàíä àâ÷ ¿çäýã.
    • UML 2.0 –èéí ñòàíäàðò íü ºìíºõ ñòàíäàðòûã óëàì ºðãºæ¿¿ëæ áóñàä ¿éë àæèëëàãààã àãóóëàõ áîëîëöîîã õàíãàñàí. Æèøýý íü: UML 2.0 –ä ¿éë àæèëëàãààã äàõèí çàãâàð÷ëàõ áîëîëöîîòîé áîëñîí.
  • Îáúåêò õàíäëàãàò øèíæèëãýý áà çîõèîìæ Øààðäëàãà òîäîðõîéëîõ Øèíæèëãýý Çîõèîìæ Ñèñòåìèéí ôóíêöèîíàëü øààðäëàãûã òîäîðõîéëîõ Øèíæ ÷àíàðûã òîäîðõîéëîõ Á¿òýö òîäîðõîéëîõ Øèíæ ÷àíàðûã äýëãýðýíã¿é òîäîðõîéëîõ Á¿òöèéã äýëãýðýíã¿é òîäîðõîéëîõ Íýãòãýí ôèçèê çàãâàð ãàðãàõ ¯éë àæèëëàãààíû çàãâàð ãàðãàõ Ñèñòåìèéí ôèçèê çàãâàð ãàðãàõ Çîðèëãî òîäîðõîéëîõ
  • Шаардлага тодорхойлох диаграм / Usecase Diagram /
    • Объект хандлагат аргаар систем хөгжүүлэх явцад системийн хэрэгцээ шаардлагыг тодорхойлох үе шатанд usecase диаграмыг байгуулдаг. /Бүтэцлэгдсэн аргаар систем хөгжүүлэх үед шаардлагыг тодорхойлох тусгай график хэрэгсэл ашигладаггүй хүүрнэсэн өгүүлбэрээр тодорхойлдог болохыг бид өмнө авч үзсэн/
    • Usecase диаграм нь хэрэглэгч болон системийг хөгжүүлэх багийг холбогч гүүр гэдэг утгаараа ямар ч хүнд ойлгомжтойгоор дүрслэгддэг.
  • Æèøýý: Usecase ä¿ðñëýõ (TR áàíêíû øèíý ¿éë÷èëãýýíä çîðèóëñàí Øèíý ñèñòåì ) TR áàíê áîë ÿïîíû øèëäýã áàíêíóóäûí íýã þì. Àæèë÷èä íü õýäèéãýýð ìàø ýëýãñýã äîòíî íàéðñàã õ¿ì¿¿ñ áîëîâ÷ òýäíèéõ ñ¿¿ëèéí æèë¿¿äýä çàõ çýýëèéí ºðñººë人íä ¿éë÷ë¿¿ëýã÷ýý àëäààä áàéãàà. Èéìä ¿éë÷ë¿¿ëýã÷äèéã ººðòºº òàòàõûí òóëä òóñ áàíê íü ÀÒÌ ñèñòåì ( ñîíèðõîë òàòàõóéö âýá ïðîãðàì )- èéã íýâòð¿¿ëýõýýð çîðüñîí. Èíãýñíýýð òóñ áàíêíû ¿éë÷ë¿¿ëýã÷ íü êîìïüþòåð àøèãëàí ìºíãºí ã¿éëãýý õèéõ áîëîìæòîé áîëíî. Ñèñòåìèéí òàëààð òîâ÷õîí: ¯éë÷ë¿¿ëýã÷ ººðèéí Customer ID áîëîí password –ààð ñèñòåìä íýâòýðíý. Ñèñòåìä íýâòýðñíèé äàðàà òóõàéí õýðýãëýã÷èéí äàíñàí äàõü ìºíãºíèé ìýäýýëýë (Inquire Balance) äýëãýöýíä õýâëýãäýíý.Òóñ áàíê íü íýã ¿éë÷ë¿¿ëýã÷ õýä õýäýí äàíñòàé áàéõûã çºâøººðíº. ¯éë÷ë¿¿ëýã÷ øèíýýð äàíñ íýýëãýõ ¿åä ò¿¿íä Customer ID áîëîí password îëãîõîîñ ãàäíà äàíñ íü Accounts No ( äàíñíû äóãààð ) ãýñýí äàõèí äàâòàãäàøã¿é ò¿ëõ¿¿ðýýð òîäîðõîéëîãäîíî. ¯éë÷ë¿¿ëýã÷ íü ñèñòåìä íýâòýðñíèéõýý äàðàà õýäýí ÷ óäàà Money deposit ( ̺í㺠õàäãàëàõ ) Money withdraw ( ̺í㺠àâàõ ) ¿éëäëèéã äàõèí äàâòàæ õèéæ áîëîõ áºãººä ¿éëäýë á¿ðèéí äàðàà õîëáîãäîõ ìýäýýëýë / àëäààíû ìýäýýëëýýð õàíãàæ ºãíº. Ìºí ¿éë÷ë¿¿ëýã÷ Display receipt ( Ðåöåéïò õàðàõ ) ¿éëäëýýð òóõàéí ëîãèíîîð õýäýí óäàà Money deposit ( ̺í㺠õàäãàëàõ ) õýäýí óäàà Money withdraw ( ̺í㺠àâàõ ) ¿éëäýë õèéñíèéã íýãòãýæ õàðàõ áîëîìæòîé áîëíî.
  • Äàíñ ýçýìøèã ÷ Ëîãèí õèéõ Äàíñ íýýõ Áàíêèð Áàëàíñ õàðàõ ̺í㺠àâàõ ̺í㺠õàäãàëàõ Ðåöåéïò õàðàõ Usecase äèàãðàì
    • Çîðèëãî:
      • Ñèñòåìèéí ôóíêöóóäûã òîäîðõîéëîõ
      • Ñèñòåìèéí ôóíêöóóä áà ãàäààä ýëåìåíò¿¿äèéí õîîðîíäûí õîëáîî õàìààðëûã òîäîðõîéëîõ
      • Ôóíêöóóäûí õîîðîíäûí õîëáîî õàìààðëûã òîäîðõîéëîõ
    • Á¿ðýëäýõ¿¿í õýñýã :
      • - Actor
      • - Usecase
    • - Usecase òîäîðõîéëîëò
    Шаардлага тодорхойлох диаграм / Usecase Diagram /
  • Usecase á¿ðýëäýõ¿¿í õýñýã: Actor Check Price Purchase PC Manage Inventory Shop keeper <<include>> Customer А ctor: системийн эцсийн хэрэглэгч .
  • Usecase äèàãðàìûí îíöëîã
    • Usecase:
    • Я ìàð ÷ õ¿íä îéëãîìæòîéãîîð ä¿ðñëýãääýã
    • Íýã áóþó ò¿¿íýýñ äýýø òîîíû Actors-îîð èäýâõèæäýã
    • Íèéò ñèñòåìèéã ä¿ðñëýõ õýä õýäýí Use cases äèàãðàìóóäûã ä¿ðñëýõ øààðäëàãàòàé
    Customer Check Price Purchase PC Manage Inventory Shop keeper <<include>>
  • Place an order Check Price <<include>> Customer Place a mail order <<extend>> <<extend>>: ªºð usecase-èéã ºðãºòãºõ <<include>>: ªºð usecase-èéã àøèãëàõ ýñâýë àãóóëàõ USECASE- д дүрслэгдэх холбоосууд
  • Usecase òîäîðõîéëîëò 1 Overview 2 Eventflow 3 Relationship 4 Preconditions 5 Other information Usecase òîäîðõîéëîëò íü äàðààõ õýñã¿¿äýýñ á¿ðääýã.
  • Usecase òîäîðõîéëîëò 1 Overview Òóõàéí Usecase- èéí ã¿éöýòãýõ ¿èë àæèëëàãààã öººõºí ºã¿¿ëáýðýýð òîâ÷ èëýðõèéëýõ 2 Eventflow 3 Relationship 4 Preconditions 5 Other information Usecase òîäîðõîéëîëò íü äàðààõ õýñã¿¿äýýñ á¿ðääýã.
  • Usecase òîäîðõîéëîëò 1 Overview 2 Eventflow Ñèñòåìä òóõàéí Usecaså õýðõýí õýðýãæèõèéã èëýðõèéëýõ áºãººä Usecase äèàãðàìä Actor áîëîí Usecase-èéã õîëáîñîí øóãàìààð ä¿ðñýëäýã. Eventflow íü äàðààõ 2 õýñýãòýé. - Basic flow: Ýíý íü òóõàéí Usecase-ä õèéãäýõ ¿íäñýí ¿éëäë¿¿äèéã ä¿ðñýëäýã. - Alternative flow: Àëäàà ãàðàõ òîõèîëäîëä õèéõ ¿éëäëèéã ä¿ðñýëäýã. 3 Relationship 4 Preconditions 5 Other information
  • Usecase òîäîðõîéëîëò 1 Overview 2 Eventflow 3 Relationship Òóõàéí Usecase áóñàä Usecase ýñâýë Actor-òîé õîëáîî õàìààðàëòàé ýñýõèéã ä¿ðñýëíý. 4 Preconditions 5 Other information Usecase òîäîðõîéëîëò íü äàðààõ õýñã¿¿äýýñ á¿ðääýã.
  • Usecase òîäîðõîéëîëò 1 Overview 2 Eventflow 3 Relationship 4 Preconditions Òóõàéí Usecase ýõëýõ óðüäà÷ íºõöëèéã èëýðõèéëíý. 5 Other information Usecase òîäîðõîéëîëò íü äàðààõ õýñã¿¿äýýñ á¿ðääýã.
  • UML ашиглахад гарах хүндрэлүүд
    • UML tools -¿¿ä íü ºíäºð õ¿÷èí ÷àäàëòàé êîìïþòåðèéã øààðääàã.
    • Ýíý íü òàíä äàæã¿é ÷àäâàð áîëîìæóóäààð õàíãàãäñàí õýðýãñýëèéã àøèãëàõàä íààä çàõ íü ñàéí pentium3 (CPU 1GHz, RAM 256mb) øààðäàíà. Ãýõäýý ýíý áîë õàìãèéí äîîä ¿ç¿¿ëýëò íü.
    • UML tools -¿¿ä íü ¿íýòýé áàéäàã. ¯íýã¿é(open source, free) áàéäàã. Ãýõäýý òàíä òýäãýýð free õýðýãñýë UML-ûí áîëîìæûã á¿ðýí ìýäðýõ áîëîìæ ºãºõã¿é. ¿íýõýýð ñàéíûã õýðýãëýõèéã õ¿ñâýë èë¿¿ èõ ìºí㺠òºëºõ õýðýãòýé áîëíî.
    • UML-ûã ñóðàõàä òèéì÷ õÿëáàð áèø áàéäàã. UML äèàãðàìóóäûí òýìäýãëýãýý íü ¿íýõýýð èõ áàéäàã. Èéìäýý ÷ àíõëàí ñóðàëöëàã÷äàä òýäíèéã ÿëãàæ ñàëãàí îéëãîõ, ñàíàñàíäàà õ¿ðãýí õýðýãëýõýä õ¿íäýâòýð áàéäàã. UML íü ºíäºð ò¿âøíèé õýë áºãººä ñèñòåì õºãæ¿¿ëýõ ¿íäñýí ìýäëýãã¿éãýýð øóóä ýíý àøèãëàõ íü àëäàà ãàðãàõ ìàãàäëàë èõòýé áàéäàã.
    • UML-ûã àøèãëàí ñèñòåìèéã õºãæ¿¿ëýõ òîãòñîí àðãà áàðèë áàéäàãã¿é.
  • UML ашиглахад гарах хүндрэлүүд
    • Õ¿ì¿¿ñ ººðñäèéí õ¿ññýí, çºâ ãýñýí àðãà áàðèëààðàà UML-ûã àøèãëàäàã. Ýíý íü àíõëàí ñóðàëöàã÷äàä áàãàõàí òººðºãäºë àâ÷èðäàã áàéíà.
    • UML-ûã õýðýãëýã÷äèéí äóíä õî¸ð íèéòëýã àðãà áàðèë áàéäàã. Íýã õýñýã íü UML-ûã àøèãëàí çàãâàð÷èëæ äóóññàíûõàà äàðàà êîä÷èëîí, êîäîî äóóññàíûõàà äàðàà òåñò õèéí àëäàà, àñóóäàë ãàðâàë ýðãýí UML çàãâàð äýýðýý ñàéæðóóëàëò õèéõ çàìààð ÿâäàã áîë íºãºº õýñýã íü áàãà çýðýã øèíæèëãýý çîõèîìæ õèéí ò¿¿íèéãýý êîä÷èëîí äàõèí øèíæèëãýý çîõèîìæ õèéí êîä÷èëîë ãýõ ìýòýýð áàãà áàãààð øààðäëàãàà äóóñãàí ýöýñò íü òåñòëýí àëäàà çàñàõ çàìààð ÿâäàã áàéíà . Òà äýýðõ 2 àðãûí õ¿ññýíýý õýðýãëýõ áîëîìæòîé.
  • ¯éë àæèëëàãààíû äèàãðàì / Activity Diagram /
    • ¯éë àæèëëàãààíû äèàãðàì / Activity Diagram /
    • Activity diagram íü áèçíåñ ¿éë àæèëëàãààíû àæëûí óðñãàëûã çàãâàð÷èëàõàä õýðýãëýäýã. Activity diagram-ã àøèãëàí êëàññóóäûí õîîðîíäîõ ¿éëäëèéí êîäûí òîäîðõîéëîëòûã çàãâàð÷èëàõàä àøèãëàãääàã.
    • Activity diagram íü àæëûí óðñãàëûã ìàø ýíãèéíýýð ä¿ðñýëäýã. Activity diagram-èéí ñóóðü case íü òºëâèéí ìàøèíû òîäîðõîéëîëò ººðººð õýëáýë èõýíõ òºëâèéí ¿éë àæèëëàãàà áîëîí èõýíõ ººð÷ëºëò, øèëæèëò¿¿ä íü èäýâõèòýé ¿éë àæèëëàãàãààð ¿¿ñãýãääýã. ªºðººð õýëáýë áèçíåñ ¿éë àæèëëàãàà òýð ÷èãýýðýý á¿ðýí á¿òýí õàðàãäàõ ¸ñòîé. ̺í õààíà ÿìàð ïðîãðàì áîëîí ïðîãðàìûí ìîäóë õýðýãòýé ýñýõ, òýäãýýðèéí îðîëöîã÷èä (êëàññ) ýíýõ¿¿ äèàãðàì äýýð õàðàãäàõ ¸ñòîé áàéäàã.
    • Activity diagram íü àæëûí óðñãàëûí ìàø îëîí òºðëèéã çàãâàð÷èëäàã. Æèøýý íü: Áàíêíû ñèñòåì äýýð àâ÷ ¿çõýä çýýë ¿éë÷èëãýý ¿ç¿¿ëýõ áîëîí õàäãàëàìæèéí äàíñ íýýõ ¿éë àæèëëàãàà ãýõ ìýò á¿õèé ë òºðëèéí ¿éë àæèëëàãààíä õýðýãëýãääýã. Ïðîãðàì õºãæ¿¿ëäýã êîìïàíè íü Activity diagram-ûã àøèãëàí ïðîãðàìûí ìîäóëü áîëîí ïðîöåññûã õºãæ¿¿ëäýã.