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

Post on 06-Jul-2015

1.744 Views

Category:

Documents

23 Downloads

Preview:

Click to see full reader

TRANSCRIPT

18.12.11 OOA Dynamic concepts 1

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

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

• Use Case

• Message

• Scenario

• Finite State machine

18.12.11 OOA Dynamic concepts 2

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

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

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

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

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

18.12.11 OOA Dynamic concepts 3

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

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

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

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

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

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

18.12.11 OOA Dynamic concepts 4

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

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

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

18.12.11 OOA Dynamic concepts 5

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

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

18.12.11 OOA Dynamic concepts 6

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

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

18.12.11 OOA Dynamic concepts 7

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

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

18.12.11 OOA Dynamic concepts 8

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

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

18.12.11 OOA Dynamic concepts 9

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

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

Алхам 1

Алхам 2

Алхам 3

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

18.12.11 OOA Dynamic concepts 10

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

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

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

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

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

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

18.12.11 OOA Dynamic concepts 11

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

• Жишээ:

Тоглогч

18.12.11 OOA Dynamic concepts 12

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

• Жишээ:

Тоглогч

18.12.11 OOA Dynamic concepts 13

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

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

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

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

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

18.12.11 OOA Dynamic concepts 14

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

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

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

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

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

18.12.11 OOA Dynamic concepts 15

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

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

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

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

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

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

18.12.11 OOA Dynamic concepts 16

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

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

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

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

diagram)

18.12.11 OOA Dynamic concepts 17

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

• Sequence diagram notation in UML:

18.12.11 OOA Dynamic concepts 18

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

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

18.12.11 OOA Dynamic concepts 19

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

18.12.11 OOA Dynamic concepts 20

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

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

18.12.11 OOA Dynamic concepts 21

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

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

– {destroyed} object delete

– {transient} object create and delete

18.12.11 OOA Dynamic concepts 22

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

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

• association

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

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

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

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

18.12.11 OOA Dynamic concepts 23

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

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

ГАД:Гэрээ

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

DO:Салбар

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

18.12.11 OOA Dynamic concepts 24

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

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

18.12.11 OOA Dynamic concepts 25

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

• Жишээ

18.12.11 OOA Dynamic concepts 26

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

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

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

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

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

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

18.12.11 OOA Dynamic concepts 27

Ажил явц (Use Case)

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

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

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

• .....

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

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

18.12.11 OOA Dynamic concepts 28

Ажил явц (Use Case)

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

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

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

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

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

18.12.11 OOA Dynamic concepts 29

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

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

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

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

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

18.12.11 OOA Dynamic concepts 30

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

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

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

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

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

18.12.11 OOA Dynamic concepts 31

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

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

18.12.11 OOA Dynamic concepts 32

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

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

18.12.11 OOA Dynamic concepts 33

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

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

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

холбогдоно.

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

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

18.12.11 OOA Dynamic concepts 34

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

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

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

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

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

18.12.11 OOA Dynamic concepts 35

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

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

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

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

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

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

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

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

18.12.11 OOA Dynamic concepts 36

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

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

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

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

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

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

18.12.11 OOA Dynamic concepts 37

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

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

18.12.11 OOA Dynamic concepts 38

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

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

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

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

18.12.11 OOA Dynamic concepts 39

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

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

18.12.11 OOA Dynamic concepts 40

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

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

18.12.11 OOA Dynamic concepts 41

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

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

18.12.11 OOA Dynamic concepts 42

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

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

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

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

18.12.11 OOA Dynamic concepts 43

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

Use Case– Зурвас

Message– Сценарь

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

finite state machine

Зорилго

18.12.11 OOA Dynamic concepts 44

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

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

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

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

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

Зорилго

18.12.11 OOA Dynamic concepts 45

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

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

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

Зорилго

top related