More Related Content Similar to Ood lesson6 class
Similar to Ood lesson6 class (18) More from International Ulaanbaatar University
More from International Ulaanbaatar University (20) Ood lesson6 class2. Шинжилгээний загварчилгааШинжилгээний загварчилгаа
Шинжилгээний загварууд
Бизнес йл ажиллагаа, бизнес йл ажиллагаатай холбоотой урсгалууд болонү ү
бизнес шаардлага т ний шийдлийг стандарт (график) тэмдэглэгээ рүү үү
х рв лсэнээрө үү
Системийн зохиомж гарна
Системийг ашиглах хэрэглэгч хоорондын холбоо хамаарал д рслэгдэнэү
Систем дэх дэд хэсг дийн хоорондын холбоо хамаарал д рслэгдэнэүү ү
Тухайн системд яригдах гол г гд л(объектууд)-ийг ер нхийд нь 3 хуваана:ө ө ө ө
Entity classes : Бодит амьдралын объектууд ба тэднийг д рслэх г гд лү ө ө ө
Boundary classes: Систем ба хэрэглэгч хоорондын холбогч г рүү
Control classes : Entity classes болон Boundary classes-д д рслэгдээг йү ү
орхигдсон йл явц боловсруулалтыг д рслэнэү ү
2
3. Шинжилгээний загварчилгааШинжилгээний загварчилгаа
Шинжилгээний загварчилгааны гол зорилго нь систем
дэх Entity, Boundary, болон Control объектуудыг
тодорхойлох хэд хэдэн UML техникийг дүрслэх гэдэгт:
Use-case загварчилгаа
Activity диаграмм
CRC Card (Class-Responsibility-Collaboration)
Collaboration диаграмм
Sequence диаграмм
Class диаграмм
3
4. Шинжилгээний загварчилгааШинжилгээний загварчилгаа
Class шинжилгээ
Атрибутууд
Классын дотоод бүтэц буюу классын гишүүн өгөгдлүүд юм.
Бүрдмэл ба удамшил холбоос
CRC, Collaboration ба Sequence диаграмууд нь классуудын хоорондын
холбоосыг дүрсэлдэг. Гэхдээ удамшил ба бүрдмэл холбоос тодорхой
дүрслэгдэх шаардлагагүй.
Aggregation буюу бүрдмэл харьцаа нь өгүүлбэрзүйн "has a"
холбоосоор холбогддог. Өөрөөр хэлбэл: Аливаа нэг зүйл нь өөр нэг
зүйлийг бүрдүүлэгч нэг хэсэг болохыг илэрхийлнэ.
Удамшил буюу Generalization нь өгүүлбэрзүйн "is a“ холбоосоор
холбогддог. Шинжилгээний загварчилгаанд эх классаас хүү классд
атрибут болон функцууд удамшдаг болохыг дүрслэхийг зорьдог.
4
5. /Класс диаграм /Класс диаграм Class Diagram /Class Diagram /
Шинжилгээний үе шатанд классууд ба объектууд нь
асуудлын хүрээнд загварчлагддаг. Классуудын хоорондын
хамаарал, харилцаа зохих системд тусгагдсан байдаг.
Үүнийг классын схемээр харуулна.
Класс диаграм нь систем дэх обьектын төрөл болон
тэдгээрийн хоорондын хамаарлыг тодорхойлоход
хэрэглэгддэг. Класс диаграмд классын бүтэц, элемент буюу
класс, багц, болон обьектууд загварчлагддаг.
Класс диаграм нь классын нэр, атрибут, үйлдэл гэх нийт 3
хэсгээс бүрддэг.Мөн класс диаграмд классын агуулга,
удамшил, бүрдмэл харьцаа болон холбоо хамаарал
харагддаг. Класс диаграмыг обьект хандлагат програм
хангамж загварчлахад хэрэглэдэг. Ингэхдээ системийн
классууд тэдгээрийн хоорондох хамаарлыг тодорхойлдог.
5
6. Класс, объект
6
Сэргээх ньСэргээх нь
•Класс
– Объект хэмээх ойлголттой салшгүй холбоотой.Объект хэмээх ойлголттой салшгүй холбоотой. Ижил шинж чанарИжил шинж чанар
болон үйлдлүүдтэй объектуудын нэгдэл юм.болон үйлдлүүдтэй объектуудын нэгдэл юм.
•Объект
– Бодит амьдралын биет юмс буюу түүний хийсвэрлэл юм. Жишээ нь:Бодит амьдралын биет юмс буюу түүний хийсвэрлэл юм. Жишээ нь:
o Бодит объект: Ном, Үзэг, Компьютер...Бодит объект: Ном, Үзэг, Компьютер...
o Хийсвэр объект: Хичээл, ШүлэгХийсвэр объект: Хичээл, Шүлэг
– Бид өдөр тутмынхаа амьдралд янз бүрийн объектуудтай харьцажБид өдөр тутмынхаа амьдралд янз бүрийн объектуудтай харьцаж
байдаг.байдаг.
– Аливаа систем нь объектуудаас бүрддэг.Аливаа систем нь объектуудаас бүрддэг.
• ОХПрограмчлалд Объект ньОХПрограмчлалд Объект нь
o Шинж чанарШинж чанар ((өгөгдөлөгөгдөл))
o ҮйлдэлҮйлдэл ((функцуудфункцууд))-ийн нэгдэл юм.-ийн нэгдэл юм.
Жишээ нь: МашинЖишээ нь: Машин
Машин
Нэр
Үнэ
Өнгө ӨВвв
Давхих
Худалдаж-авах
Засахввв
7. Өгөгдлийн далдлалтыг хэрхэн хэрэгжүүлэх вэ?
Хандалтуудын харагдах байдал (Visibiliy)-ыг товч тодорхойлвол:
private хандалттай гишүүд нь програмын бусад хэсгээс (үндсэн
функц болон бусад классаас) далдлагдсан байна. Түүнд хандахдаа
тухайн классын нийтийн хандалттай гишүүн функцээр
дамжуулж хандана.
public хандалттай гишүүдэд програмын дурын хэсгээс хандах
боломжтой.
protected хандалттай гишүүд нь өөрийн хүү классдаа харагддаг,
харин програмын бусад хэсгээс далдлагдан байдаг.
7
8. Классуудын хоорондын харьцааКлассуудын хоорондын харьцаа
8
• Удамшил (Inheritance)
– Бодит амьдрал дээр объект нь дан ганцаар бие даан оршинБодит амьдрал дээр объект нь дан ганцаар бие даан оршин
тогтнодоггүй, өөр бусад объектуудтай байнгын харьцажтогтнодоггүй, өөр бусад объектуудтай байнгын харьцаж
байдаг. Тухайлбал: Объект нь өмнө оршин байсан объектынбайдаг. Тухайлбал: Объект нь өмнө оршин байсан объектын
тодорхой шинжүүдийг өвлөн авах, мөн өөр объектыг өөртөөтодорхой шинжүүдийг өвлөн авах, мөн өөр объектыг өөртөө
агуулах, өөр бусад объектод чөлөөтэй хандах...агуулах, өөр бусад объектод чөлөөтэй хандах...
– Иймд ОХП-д классуудын шаталсан харьцааны дараах 2Иймд ОХП-д классуудын шаталсан харьцааны дараах 2
хэлбэр байдаг. Үүндхэлбэр байдаг. Үүнд
Удамшил харьцааУдамшил харьцаа /өгүүлбэрзүйн/өгүүлбэрзүйн is ais a
харьцаагаар/харьцаагаар/
Бүрдмэл харьцааБүрдмэл харьцаа // өгүүлбэрзүйнөгүүлбэрзүйн has ahas a
харьцаагаархарьцаагаар //
9. Програм хангамжийн дахин ашиглагдах чадварПрограм хангамжийн дахин ашиглагдах чадвар
9
Тээврийн хэрэгсэл
Эзэмшигч
Төрөл
Өнгө
Хурдлах
Асаах
Зогсоох
Эх класс
Хүү класс
Такси
Үйлчлүүлэгч
Хүн тээвэрлэх
Ачааны тэрэг
Даац
Ачаа тээвэрлэх
Өгөгдөл болон гишүүн
функцууд нь хүү классд
Удамшина
Онцлог функц
Онцлог өгөгдөл
Удамшил харьцаа /Inheritance/
Taxi is a Transportation
Truck is a Transportation
10. Програм хангамжийн дахин ашиглагдах чадварПрограм хангамжийн дахин ашиглагдах чадвар
10
Бүрдмэл харьцаа
Computer
CPU Mouse Disk
Computer has a CPU
Computer has a mouse
Computer has a Disk
Классын өргөтгөх боломж нь (Удамшил ба бүрдмэл хэмээх
ойлголтууд нь) програм хангамжийг
Дахин ашиглагдах чадвартай
Засвар үйлчилгээ авахадаа сайн болгодог
11. Класс диаграммКласс диаграмм
Классд диаграммд д рслэгдэх холбоосуудү
◦ Association/холбоо хамаарал/
◦ Aggregation/нэгдэл/
◦ Composition/б тэц/ү
◦ Generalization
◦ Navigability
◦ Multiplicity
◦ Dependencies and Constraints
Класс диаграммд д рслэгдэх бусад мэдээлл дү үү
◦ Класс, т ний гиш д, харагдах байдалүү үү (Visibility)
◦ Interface- д баүү Stereotype-ууд
11
12. Класс диаграммКласс диаграмм
Систем дэх классууд болон тэдгээрийн хоорондын холбоо хамаарлыг
д рсэлдэг гэдэг утгаараа системийн х рээ хязгаарыг тодорхойлж гд гү ү ө ө
Static шинж чанартай. Учир нь классууд нь бие биетэйгээ хэрхэн
холбогдож байгааг д рсэлдэг боловч тэдгээр нь хоорондоо харилцанү
хэрхэн н л л хийг авч здэгг й.ө өө ө ү ү
◦ Collaboration диаграммыг бодвол
Collaboration дийграм нь классуудын хоорондын харилцааг д рсэлдэг.ү
Иймд бид Collaboration диаграм нь биелэлтийн еийнү йл явцыгү
( runtime behaviors) д рсэлдэг байхадү Class диаграмм нь design-time –д
д рслэгддэг.ү
Классын диаграмм нь дизайны е шатын ндэс суурь болдог.ү ү
Class диаграмм нь хэдийгээр шинжилгээний загварт тооцогддог
боловч энэ е шатанд классуудын хоорондын харьцааг илэрхийлэхү
хэмжээнд л д рслэгддэгү
Харин зохиомжийн е шатанд кодчиллын мн класс диаграмм ньү ө ө
б рэн д рслэгддэг.ү ү
12
14. Класс диаграммКласс диаграмм
Классд диаграммд д рслэгдэх холбоосуудү
1. Association/холбоо хамаарал/
2. Aggregation/нэгдэл/
3. Composition/б тэц/ү
4. Generalization/удамшил/
5. Multiplicity/т р лт холбоо/ө ө
6. Dependencies and Constraints
1. Association/холбоо хамаарал/
14
17. Класс диаграммКласс диаграмм
Класс диаграмм дахь классууд болон т ний гиш д, гиш дийнүү үү үү
харагдах байдал (Visibility)
◦ Класс диаграмм нь 3 н д б хий тэгш нц гт р д рслэгддэг б г дү ү ө ө өө ү ө өө
классын нэр
классын гиш н г гдл дүү ө ө үү
классын гиш н функцуудыг бичдэгүү
◦ Классын гиш н г гд л болон гиш н функцуудын хандалтыгүү ө ө ө үү
тодорхойлох боломжтой
◦ Классын статик гиш дийг доогуур нь зурдаг.үү
◦ Классын гиш н функцыг дараах хэлбэрээр д рсэлдэгүү ү
< Хандалтыг тодорхойлогч> <нэр> ( <параметрийн жагсаалт>) :
<буцаах утга>
◦ Параметрийн жагсаалт дахь параметр дийг хооронд нь таслалаарүү
зааглана
◦ Хандалтыг тодорхойлогчийг классын гиш д б рийн мн тодорхойлно.үү ү ө ө
17
18. 18
Class Diagram гэж юу вэ?
Class diagram нь систем
дэх классуудын дотоод
бүтэц, тэдгээрийн
хоорондын холбоо
хамаарлыг дүрслэнэ.
Бүрэлдэхүүн хэсэг:
Класс
Классуудын хоорондын
холбоосын дүрслэл
BankCont
Customer
Account
Receipt
Savings
TimeDeposit
Transaction
20. 20
Удамшил ба бүрдмэл харьцаа
Бүрдмэл харьцаа:
“...бол ...тай”
Машин
Мотор Дугуй Такси Удамшил харьцаа:
“... бол ... юм”
Удамшил ба Бүрдмэл нь классуудын холбоосын нэг хэлбэр юм.
21. 21
Холбоосын зэргүүд
минийМашин
: Машин
БаруунУрдДугуй: Дугуй
ЗүүнУрдДугуй: Дугуй
БаруунХойдДугуй: Дугуй
ЗүүнХойдДугуй: Дугуй
Машин Дугуй
1 4
Миний машин 4 дугуйтай.
Класс
1
1зөвхөн
Класс
0..1
0 1эсвэл
Класс* 0 буюу олон
Класс
1..*
1 буюу олон
Класс
2..6
2- 6оос
Класс
1,5,10
1 5эсвэл
10эсвэл
22. 22
Холбогч класс
Class A Class B
Холбогч класс:
Классууд хоорондын холбоос мэдээллийг агуулах класс
Class C
Олон олонтой холбоосыг өргөтгөж холбогч классыг
үүсгэдэг.
abc
23. 23
Алхам алхамаар загварчил
Системийн динамик болон статик
шинжүүдийг нэг бүрчлэн ярилцаж алхам
алхамаар нэмэгдүүлэн загварчлах
шаардлагатай.
Объект хандлагат аргачлал нь өөрөө
алхам алхамаар хөгжүүлэх гэсэн зарчмыг
баримталдаг.
Системийн динамик болон статик
шинжүүдийг нэг бүрчлэн ярилцаж алхам
алхамаар нэмэгдүүлэн загварчлах
шаардлагатай.
Объект хандлагат аргачлал нь өөрөө
алхам алхамаар хөгжүүлэх гэсэн зарчмыг
баримталдаг.
Би юу хийх ёстойгоо сайн мэдэж
байгаа боловч системд
шаардлагатай бүх элементүүдийг
бүгдийг нэг дор загварчилгаандаа
тусгаж чадахгүй байна.
Би юу хийх ёстойгоо сайн мэдэж
байгаа боловч системд
шаардлагатай бүх элементүүдийг
бүгдийг нэг дор загварчилгаандаа
тусгаж чадахгүй байна.
25. 25
"+" Public "-" Private "#" Protected "/" Derived
(can be combined with one of the others) "_"
Static
Editor's Notes Notes:
Entity objects
Entity objects model real-world objects. All of the objects you have studied thus far have been examples of entity objects. The analysis process begins by identifying business information entities, such as different types of reports, customer information, or inventory information. Most of these information entities can be translated directly into entity objects.
The business information entities of a library system include books, a book collection, patrons, librarians, addresses, and fees. Each of these can be translated into an entity object.
Interface objects
Interface objects bridge the gap between a system and its users. The objects that form a graphical user interface are examples of interface objects. Interface objects often take the form of window, terminal, or printer objects.
The Unified Process refers to interface objects as boundary classes because they act as the boundary between a software system and its users.
Control objects
Control objects implement complex business logic that cannot be easily implemented in either entity or interface objects. Control objects typically represent schedulers, sequencers, and other concepts that can be used to tie a system together.
For example, fines are issued when a book is overdue. In the preceding figure, the Fine Scheduler object uses information it collects from the Book Collection Database to determine when to issue a fine.