9 10 объект хандлагат анализ (динамик ойлголт)

45
18.12.11 OOA Dynamic concepts 1 Объект Хандлагат Анализ Динамик ойлголтууд Use Case Message Scenario Finite State machine

Upload: -

Post on 06-Jul-2015

1.743 views

Category:

Documents


23 download

TRANSCRIPT

Page 1: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 1

Объект Хандлагат Анализ

Динамик ойлголтууд

• Use Case

• Message

• Scenario

• Finite State machine

Page 2: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 2

Ажлын явц (Use Case)

• Jacobson use case гэдэг ухагдхууныг ОХТ оруулсан– Мэдээллийн системийн use case

• Хоорондоо уяалдаатай ажил хэргийн дараалал юм(transaction-үйлдэл). Энэ нь тоглогч системтэй харилцсаны үндсэн дээр гүйцэтгэгддэг бөгөөд хэмжиж болохоор агуулгатай үр дүнг бий болгох зорилготой.

– Албан байгууллагын use case • Байгууллагын доторхи үйл ажиллагааны дараалал бөгөөд

үйлчлүүлэгчийн хүсэлтийг хангахын тулд хийгддэг.

Page 3: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 3

Ажлын явц (Use Case)

• Шинжилгээний үед гарах асуудал:– Програм бүх даалгаврыг гүйцэтгэх үү эсвэл бас

зохион байгуулалтын алхмууд байна уу

• Зорилго:– Үр дүнтэй ажлын явцыг тодорхойлох

• Тодорхойлолт:– Ажил хэргийн явц нь (use case) нь хоорондоо

уяалдаатай олон тооны үүрэгт ажлаас тогтдог. Энэ нь зорилгонд хүрэхийн тулд юмуу эсвэл хүссэн үр дүнг бий болгох зорилготойгоор тоглогчоор хийгддэг.

Page 4: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 4

Ажлын явц (Use Case)

• Тоглогч гэж хэн вэ (actor)?– Системийн хэрэглэгчийн дүрд тоглогч– Системд нөлөөлдөг– Ихэнхдээ хүн– Зохион байгуулагдсан нэгж эсвэл өөр

систем байж болно– Дандаа системийн гадна байдаг

Page 5: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 5

Ажлын явц (Use Case)

• Тоглогч гэж хэн вэ (actor)?

Page 6: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 6

Ажлын явц (Use Case)

• Ажлын явцын диаграм (use case diagram ) UML:

Page 7: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 7

Ажлын явц (Use Case)

• Мэдээллийн системийн ажлын явцын диаграм:

Page 8: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 8

Ажлын явцын холбоосExtends-хамаарал: - Байгаа АХЯ өргөтгөх

Uses – хамаарал: - Хоёр АХЯ нь дундын төлөв байдалтай

Page 9: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 9

Ажлын явц (Use Case)• Идэвхжилтийн диаграм (activity diagram):

-Жишээ: Даалгавар гүйцэтгэх

Алхам 1

Алхам 2

Алхам 3

Хэрэглээ талаасаадараалал нь чухал биш

Page 10: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 10

Зурвас, Мэдээ (message)

• Тодорхойлолт– Илгээгчээс (client) хүлээн авагч руу (server,

supplier) үйлчилгээг хүссэн шаардлага – Хүлээн авагч нь мэдээг тайлаад мөн

үйлдлийг (ижил нэртэй) гүйцэтгэнэ– Мэдээг илгээгч нь энэхүү үйлдлийг яаж

гүйцэтгэхийг мэдэхгүй – Ангилалын протокол (Protocol)

• Ангилалаас үүссэн объектууд хариу үйлдэл хийж чадах мэдээний олонлог

Page 11: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 11

Зурвас, Мэдээ (message)

• Жишээ:

Тоглогч

Page 12: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 12

Зурвас, Мэдээ (message)

• Жишээ:

Тоглогч

Page 13: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 13

Үйлдлийн багц (scenario)

• Тодорхойлолт: (scenario)– Тодорхой нөхцөлд гүйцэтгэгдэх дэс

дараатай үйл ажлын алхмууд– Энэ алхам нь тоглогчийн гол зорилгыг

биелүүлэх ёстой бөгөөд тохирсон үр дүнг өгнө

– Үзэгдэл тохиоход эхлэх бөгөөд зорилгодоо хүрэх хүртэл эсвэл бүтэхгүй болж орхих хүртэл үргэлжилнэ

Page 14: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 14

Үйлдлийн багц (scenario)

• Use case and scenario:– Use case нь scenario-ийн цуглуулга – Scenario бүр нь нэг буюу хэд хэдэн

нөхцөлөөр тодорхойлогдоно. Энэ нь Use Case–ийн онцгой явцад хүргэдэг

– Ажлын явцын 2 бүлэг:• Зөв боловсруулалтын ажлын явцыг

тодорхойлсон• Амжилтгүй болох

Page 15: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 15

Үйлдлийн багц (scenario)

• Жишээ:• Захиалга гүйцэтгэх гэсэн ажлын явцын

Scenario 1. Шинэ үйлчлүүлэгчийн захиалгыг гүйцэтгэх ба

бараа гаргах боломжтой бол

2. Бүртгэгдсэн үйлчлүүлэгчийн захиалгыг гүйцэтгэх ба ядаж нэг бараа гаргах боломжтой бол

3. Бүртгэгдсэн үйлчлүүлэгчийн захиалгыг гүйцэтгэх, түүний тухай мэдээлэл өөрчлөгдсөн ба ядаж нэг бараа гаргах боломжтой бол

Page 16: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 16

Үйлдлийн багц (scenario)

• Тэмдэглэгээ:– Scenario нь Interaction diagram-аар

загварчлагддаг– UML – д хоёр төрлийн диаграм бий

• Дарааллын диаграм (Sequence diagram)• Хамтын ажиллагааны диаграм (Collaboration

diagram)

Page 17: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 17

Үйлдлийн багц (scenario)

• Sequence diagram notation in UML:

Page 18: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 18

Үйлдлийн багц (scenario)

• Шинэ үйлчлүүлэгчийн захиалгыг гүйцэтгэх – Class diagram

Page 19: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 19

Үйлдлийн багц (scenario)

Page 20: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 20

Үйлдлийн багц (scenario)

• Бүртгэгдсэн үйлчлүүлэгчийн захиалгыг гүйцэтгэх

Page 21: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 21

Үйлдлийн багц (scenario)

• Хамтын ажиллагааны диаграм (collaboration diagram)– {new} object create

– {destroyed} object delete

– {transient} object create and delete

Page 22: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 22

Үйлдлийн багц (scenario)

• Хамтын ажиллагааны диаграм – Permanent object link

• association

– Temporar object link• Зөвхөн харьцаж байх үед

• Харьцаж буй хүлээн авагч класс нь холбоогүй ч гэсэн илгээгчээр танигдаж чадаж байвал

• <<temp>> гэж тэмдэглэнэ.

– Object link (self link )• Объект бүхэн ямар ч үед өөртөө зурвас явуулж болно.

Page 23: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 23

Үйлдлийн багц (scenario)

• Хамтын ажиллагаа - Объект диаграм: – ХАД: Объект нь классын дурын объектуудын төлөөлөл – Объект диаграм: Тодорхой объектын загварчлал

ГАД:Гэрээ

Д1:Даатгуулагч Д2:Даатгуулагч

DO:Салбар

АМД:Гэрээ АМД:Гэрээ

Page 24: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 24

Үйлдлийн багц (scenario)

• Дарааллын – хамтын ажиллагааны диаграм:

Page 25: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 25

Үйлдлийн багц (scenario)

• Жишээ

Page 26: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 26

Ажлын явц (Use Case)

• Нарийчлалын загвар (use case template):– Use case: Use case name– Зорилго: Use case-ийг амжилттай гүйцэтгэх үеийн

тавьсан ерөнхий зорилго– Зүйл анги:

• Анхдагч (зайлшгүй, их хэрэглэгддэг)• Хоёрдогч (зайлшгүй, бага хэрэглэгддэг)• Байж болох (хэрэгтэй, зайлшгүй шаардлагатай биш)

– Урьдчилсан нөхцөл: Use case эхлэхээс өмнөх байх ёстой төлөв

– Төгсгөл нөхцөл: Амжилттай– Төгсгөл нөхцөл: Амжилтгүй– Тоглогчид (actors)

Page 27: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 27

Ажил явц (Use Case)

• Нарийчлалын загвар (use case template):– Өдөөх үзэгдэл– Тайлбар: Энд стандарт тохиолдлыг тодорхойлон

бичнэ• 1 Нэгдүгээр үйлдэл

• 2 Хоёрдугаар үйлдэл

• .....

– Өргөтгөлүүд: • 1а Нэгдүгээр үйлдлийн хийх ажлын өргөтгөлт

– Хувилбарууд: • 1а Нэгдүгээр үйлдлийн өөр хэлбэрийн гүйцэтгэлт

Page 28: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 28

Ажил явц (Use Case)

• Use case: Захиалга гүйцэтгэх– Зорилго: Бараа үйлчлүүлэгчид хүргэгдэх– Урьдчилсан нөхцөл: -– Амжилттай төгсгөл нөхцөл: Бараа хүргэгдсэн

(хэсэгчилсэн хүргэлт бас), Тооцооний хуулбар санхүүд

– Амжилтгүй төгсгөл нөхцөл: Юу ч хүргэгдэх боломжгүйг үйлчлүүлэгчид мэдэгдэх

– Тоглогчид : Үйлчлүүлэгчийг хариуцагч ажилтан, Агуулах хариуцагч, Санхүү

– Өдөөх үзэгдэл: Үйлчлүүлэгчийн захиалга ирлээ

Page 29: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 29

Ажил хэргийн явц (Use Case)

• Нарийчлалын загвар :– Тайлбар:

• 1 Үйлчлүүлэгчийн мэдээллийг авчрах• 2 Хүргэх боломжтой эсэхийг шалгах• 3 Төлбөрын тооцоо хийх• 4 Агуулахаас захиалгыг гаргуулах• 5 Тооцооны хуулбарыг санхүүд өгөх

– Өргөтгөлүүд: • 1а Үйлчүүлэгчийн мэдээллийг шинэчлэх

– Хувилбарууд: • 1а Шинэ хэрэглэгч бүртгэх• 3а Дараах төлбөрийн тооцоо• 3в Банкны дансаар хийх төлбөрийн тооцоо

Page 30: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 30

Төлөвийн автомат (finite state machine)

• Тодорхойлолт:– Төлөвийн автомат нь (finite state machine)

төлөв болон төлөвийн шилжилтээс (transition) бүрдэнэ

– Tөлөв нь объект үзэгдэл хүлээж байхад өнгөрөх хугацаа

– Үзэгдэл нь дандаа нэг хугацааны цэг дээр үүсэх бөгөөд үргэлжлэх хугацаагүй

Page 31: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 31

• Жишээ – Ном классын амьдрал :

Төлөвийн автомат (finite state machine)

Page 32: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 32

• UML тэмдэглэгээ:

Төлөвийн автомат (finite state machine)

Page 33: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 33

• Төлөв:– Төлөвийн нэр байж болно– Нэргүй төлөв – тодорхойгүй төлөв, бүгд өөр– Нэр нь үйл үг байж болохгүй

– Класс дотроо тодорхой байх ёстой

• Эхлэл төлөв– Хуурмаг төлөв, жинхэнэ төлөвтэй шилжилтээр

холбогдоно.

• Төгсгөл төлөв– Оршихоо болино

Төлөвийн автомат (finite state machine)

Page 34: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 34

• Төлөв дэх боловсруулалт:– Action (Агшин, үйлдэл, үйл явц)

• Бүхэл (atomar)• Өөрөө төгсөнө• Entry-Action• Exit -Action

– Activity (Идэвхтэй үйл ажиллагаа)

• Объект төлөв авахад эхлээд, орхиход дуусна• Start Action + Stop Action

Төлөвийн автомат (finite state machine)

Page 35: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 35

• Төлөв шилжилт:– 2 төлөвийг холбоно– Шилжилт “галлах”– Үзэгдлээр өдөөгдөнө

– Аction-тэй холбогдож болно

• Үзэгдэл нь– Үнэн болох нөхцөл, when (temperatur > 100 Grad)

– Сигнал, хулганы баруун товч дарагдах

– Мэдээ (Фунц дуудагдах)

– Өнгөрөх хугацаа, after (10 sec)

– Тодорхой хугацаа болох, when (1.1.2007)

Төлөвийн автомат (finite state machine)

Page 36: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 36

• Харуул:– Үзэгдлийг харуултай (guard condition)

хослуулж болно.– Шилжилтзөвхөн дараах тохиолдолд явагдана,

хэрэв ..• Хамаатай үзэгдэл нь болоод мөн• Харуулд тодорхойлогдсон нөхцөл биелэвэл

• Далд үзэгдэл– Хэрэв төлөвтэй холбоотой боловсруулалт дууссан

бол шилжилт хийгдэнэ.

Төлөвийн автомат (finite state machine)

Page 37: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 37

• Жишээ- “Банк” классын оршихуйн давтамж

Төлөвийн автомат (finite state machine)

Page 38: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 38

• Жишээ- Машины зогсоолын картын автомат

Картын автомат

мөнгө_төлөх()

Төлөвийн автомат (finite state machine)

Page 39: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 39

• Жишээ- Машины хурдны хайрцаг, нарийчлаагүй

Төлөвийн автомат (finite state machine)

Page 40: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 40

• Жишээ- Машины хурдны хайрцаг, нарийвчлагдсан substate

Төлөвийн автомат (finite state machine)

Page 41: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 41

• Идэвхжилтийн жишиг зураг (activity diagram)

Төлөвийн автомат (finite state machine)

Page 42: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 42

• Идэвхжилтийн жишиг зураг (activity diagram)– Төлвийн диаграмын онцгой тохиолдол– (Бараг) бүх төлвүүд боловсруулалттай– Төлвийг орхино, хэрэв боловсруулалт хийгдэж

дууссан бол– Харуул нь хянах урсгалын салаалалтыг

тодорхойлдог– Зэрэгцээ үйл ажлын явцыг тодруулдаг

Төлөвийн автомат (finite state machine)

Page 43: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 43

• Тайлбарлаж чадах– Ажлын явц

Use Case– Зурвас

Message– Сценарь

Scenario– Төлвийн автомат

finite state machine

Зорилго

Page 44: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 44

• Тайлбарлаж чадах– Ямар үүрэгтэй

object life cycle, төвөгтэй үйлдэл– Идэвхжилтийн жишиг зураг

activity diagram– Класс болон динамик загварын жишиг зураг яаж

харилцан оршдог

Үйлдэл, төлөв, шалгах боломж

Зорилго

Page 45: 9 10 объект хандлагат анализ (динамик ойлголт)

18.12.11 OOA Dynamic concepts 45

• Чадвар– Ажлын явцыг загварчлах

– Дарааллын болон хамтын ажиллагааны жишиг зургийг гаргах

– Төлвийн болон идэвхжилтийн жишиг зургийг гаргах

Зорилго