โดย อ.ดร. นฐพงศ สงเนยมhttp://[email protected]
สาขาวชา วทยาการคอมพวเตอรคณะวทยาศาสตรและเทคโนโลย มหาวทยาลยราชภฏพระนคร
Last Update : 04/01/2561
Lec04 : Unified Process
แหลงขอมลเพมเตม : : http://www.lumpaya.com/sdlc01.htmhttp://www.siam2dev.com [ dr.
nattapong songneam]
อ.ดร. นฐพงศ สงเนยม
• Website : http://www.siam2dev.com• Website สาขา: http://it.pnru.ac.th
• E-mail1 : [email protected]• E-mail2 : [email protected]• E-mail3 : [email protected]• Facebook : [email protected]
http://www.siam2dev.com [ dr. nattapong songneam]
Abstractions
3
Classification
Generalization/Specialization
Association
Aggregation
Is member of
Is member of
Is member of
Is part of Is part of
Is part of
Is kind of Is kind of Is relate to Is relate to
Classification abstraction
OOAD : Object-Oriented Analysis and Design 4
Classification
Is member of
Is member of
Is member of
Classification
OOAD : Object-Oriented Analysis and Design 6
รถยนต
รถตนตะขาบ
รถถงรถแมคโฮ
ขอสอบระหวางภาค 2/2560
• บทท 1 – 5• เปนแบบ OPEN BOOK• มประมาณ 5 – 6 ใหญ
– คาศพทท สาคญ 10 ขอ– เขยน concept ความคดรวบยอด abstraction แบบตางๆ– Unified Process– การวเคราะหความตองการ
• ท งหมด 60 คะแนน คดเปน 30%• ขอสอบแบบอฒนย ขอเขยน
– เปนขอสอบเชงวเคราะห– จะไมถามตรง– เวลาสอบ เวลาท งหมด 2.30 ช วโมง
OOAD : Object-Oriented Analysis and Design 7
IT 59-1 11 ม.ค. 2561
IT 59-2 11 ม.ค. 2561
Lec 04 : Unified ProcessBy
Dr. Nattapong Songneamhttp://www.siam2dev.com
[email protected]@hotmail.com
OOAD : Object-Oriented Analysis and Design
8
แหลงขอมลเพมเตม : : http://www.lumpaya.com/sdlc01.htm
Lec 04. Unified Process
1. ซอฟตแวรและกระบวนการพฒนาซอฟตแวร (Software Development Process)
2. กระบวนการ Unified Process
3. รปแบบของ Unified Process
4. รอบและเฟสใน Unified Process
5. โครงสรางกระบวนการ Unified Process
6. กระแสงานใน Unified Process
OOAD : Object-Oriented Analysis and Design 99หากสนใจ slide นเพอการเรยนการสอนโปรดตดตอ [email protected]
4.1 What is the Unified Process ?
New or changed
requirements
New or changed
Software System
Unified Process
(Software Engineering Process)
Unified Process อธบายการจดสรรงานและความรบผดชอบใหกบทมงานไวอยางชดเจนวาใคร จะทาอะไร เมอไร และทาอยางไร เพอใหเกดความมนใจวาจะไดซอฟตแวรทมคณภาพ ตรงกบความตองการของลกคา และการพฒนาซอฟตแวรตามหลกการของ UP อยภายใต งบประมาณและคาใชจายทไดประมาณการไว
Unified Process คอ กรรมวธพฒนาซอฟตแวร (Software Development Process) วธการพฒนาซอฟตแวร อธบายแนวทางสาหรบจดสราง ตดตง และอาจรวมถงการบารงรกษาซอฟตแวร
UP:Unified Process เปนกรรมวธพฒนาซอฟตแวรทไดรบความนยมสาหรบการพฒนาระบบซอฟตแวร OO:object-oriented
OOAD : Object-Oriented Analysis and Design 1010
ความหมายของ Unified Process
*** สามารถควบคมคาใชจายในโครงการได
*** UP เปนหนงในกระบวนการพฒนาซอฟแวร หรอ วศวกรรมซอฟตแวร
OOAD : Object-Oriented Analysis and Design 11
Traditional การพฒนาระบบแบบดงเดม
SDLC
7 ขนตอน
OO
UP
4 Phase
Unified Process
OOAD : Object-Oriented Analysis and Design 12
Unified Process คอกรรมวธพฒนาซอฟตแวร (Software Development Process) หรอพฒนาระบบ วธการพฒนาซอฟตแวรตามหลกการ UP จะอธบายแนวทางสาหรบจดสราง ตดตง และอาจรวมถงการบารงรกษาซอฟตแวร Unified Process เปนกรรมวธพฒนาซอฟตแวรทไดรบความนยมโดยเฉพาะสาหรบการพฒนาระบบซอฟตแวรแบบ object-oriented
โดย Unified Process จะอธบายการจดสรรงานและความรบผดชอบใหกบทมงานไวอยางชดเจนวาใคร จะทาอะไร เมอไร และทาอยางไร เพอใหเกดความมนใจวาจะไดซอฟตแวรทมคณภาพ ตรงกบความตองการของลกคา และการพฒนาซอฟตแวรอยภายใตงบประมาณและคาใชจายทไดประมาณการไว
หากสนใจ slide นเพอการเรยนการสอนโปรดตดตอ [email protected]
4.2 โครงสรางกรรมวธ - Lifecycle Phases
เตรยมงาน (Inception) – กาหนดโครงการ , นยามขอบเขตของโครงการ , ขอบเขตของระบบทจะพฒนา …………ทา เขยน/นาแบบทเรยกวา Proposal หรอแบบเสนอโครงการ ใหกบหนวยงานทมอบหมาย
OOAD : Object-Oriented Analysis and Design 13
Inception Elaboration Construction Transition
time
Unified process แบงการพฒนาออกเปน 4 เฟส (phases)
ทารายละเอยด (Elaboration) – วางแผนโครงการ จดทารายละเอยดความตองการ หรอขอกาหนดความตองการ(Requirement Specification) จดสรางสถาปตยกรรมระบบ
จดสราง (Construction) – สรางและทดสอบโปรแกรม
ถายโอน (Transition) – ตดตงถายโอนระบบใหกบผใช
13***โครงงานกลม ทรบผดชอบในรายวชาน ใหใช UP
(Inception)
OOAD : Object-Oriented Analysis and Design 14
เตรยมงาน (Inception) – กาหนดโครงการ , นยามขอบเขตของโครงการ , ขอบเขตของระบบทจะพฒนา …………ทา เขยน/นาแบบทเรยกวา Proposal หรอแบบเสนอโครงการ ใหกบหนวยงานทมอบหมาย
Proposal แบบเสนอโครงการ
1. ชอโครงการ
2. ผรบผดชอบ
3. ทมาและความสาคญของโครงการ
4. วตถประสงค
5. ขอบเขตของโครงการ
6. แผนการดาเนนงาน / ระยะในการดาเนนงาน
7. เครองมอ/ซอฟตแวรทใช
8. ประโยชนทคาดวาจะไดรบ
วางแผน
จดทาแผนโครงการ
จดทาแผนความเสยง
กาหนดผรบผดชอบ
แบบเสนอโครงการ (Proposal)
• บทนา1. หลกการและเหตผล / ทมา ความสาคญของปญหา
2. วตถประสงค
3. ขอบเขต1. ดานประชากร
2. ดานเนอหา
3. ดานเทคนค
4. วธการดาเนนงาน / แผนการดาเนนงาน (Gantt Chart)5. เครองมอทใช
6. กาหนดงบประมาณ
7. ประโยชนทคาดวาจะไดรบ
OOAD : Object-Oriented Analysis and Design 15
CPM
มไวเพอวางาน/โครงการททา คลอบคลมแคใหน
ระยะท 2 (Elaboration)
• ทารายละเอยด (Elaboration) – วางแผนโครงการ จดทารายละเอยดความตองการ หรอขอกาหนดความตองการ(Requirement Specification) , จดสรางสถาปตยกรรมระบบ(System Architecture)
OOAD : Object-Oriented Analysis and Design 16
จดสราง (Construction) – สรางและทดสอบโปรแกรม
• การพฒนาระบบ ขนอยกบลกษณะของระบบ
– เชน ถาระบบเปนซอฟตแวร กหมายถงการเขยนโปรแกรมและ
ทดสอบโปรแกรม
- ถาเปนการพฒนาระบบทงฮารดแวร และซอฟตแวร
จะตองทง เขยนและ จดหาหรอจดซอฮารดแวร
ต.ย. จงพฒนาระบบเวชระเบยนของ รพ. แหงหนง
ถาเปนเวบแอปพลเคชน ...เขยนเวบ ...ฐานขอมล
เชาโฮส / เชาเซรฟเวอร ...จดโดเมน ดวย รวมถง
การอพโหลด ทดสอบ
OOAD : Object-Oriented Analysis and Design 17
พฒนาระบบ
• Software• Hardware• Network• Peripheral อปกรณตอพวง ไดแก scanner , printer ,
barcode reader
OOAD : Object-Oriented Analysis and Design 18
ระบบจดสตอก โดย ใชบารโคด
พฒนาระบบทอานไฟล จากกระดาษเขาคอมพวเตอรโดยอตโนมต อานจาก Scanner
ถายโอน (Transition) – ตดตงถายโอนระบบใหกบผใช
• เมอระบบสรางเสรจแลว จะตองทาการตดตง config เชน ถาระบบสาหรบทางานหลายคน หรอ client-server , 2Tier , N-Tier
จะตองมการ Config , network กาหนด IP กาหนด Proxy กาหนด Protocol , IPX/SPX , TCP/IP, subnet mark• จดทาคมอ
– User Manual– Programmer Manual / Technical Document
• Training หรอ จดอบรมใหกบผใช
• การทดสอบ Beta …หลงจากตดตง ความเขากนของฐานขอมลเกาและใหม
OOAD : Object-Oriented Analysis and Design 19
การทดสอบ Beta …หลงจากตดตง ความเขากนของ
ฐานขอมลเกาและใหม
• ระบบเดม เปน Windows Application ตอมา ใหคณพฒนาเปน
• Web Application ซงจะตองเปนระบบออนไลน
OOAD : Object-Oriented Analysis and Design 20
Db เดม Db ใหม
Time
วงจรชวตของ Unified Process
OOAD : Object-Oriented Analysis and Design 22
PM: Project manager
- องคกร /ภายใน (Inhouse)
เจาของ บ. เปนผมอบหมายงานให
- หนวยงานภายนอก
รบงาน/จาง (Out source)
Inception
Elaboration
Construction
Transition
Projects
1 ป
1 – 2 เดอน
2 – 3 เดอน
4 – 6 เดอน
1 – 3 เดอน
ตวอยาง
In house / Out Source
OOAD : Object-Oriented Analysis and Design 23
In house / Out Source
• In house ทมงาน ทอยภายใน บ. /องคกร นน อาจคนเดยวหรอทงแผนก
• Out Source …บคคลภายนอก ทจางขนมาททาเฉพาะบางโครงการ
********** จงเปรยบเทยบขอดขอเสย
4.3 รปลกษณของ Unified Process
• เปนกรรมวธท ม Use-Case เปนตวขบเคลอน (A Use-Case Driven Process)
• เปนกรรมวธท มสถาปตยกรรมเปนศนยกลาง (An Architecture-Centric Process)
• เปนกรรมวธวนรอบเพมพน (An Iterative and Incremental Process)
OOAD : Object-Oriented Analysis and Design 2424
ลกษณะหรอ หรอ หนาตาของ UP
Use Case เปนฟงกชนการทางานในระบบ ซงการทางานน นใหผลลพธท มคณคาตอผใช
Unified Process ขบเคลอนดวย Use Case (Use Case Driven)
เนองจากความตองการคอ use case การพฒนาระบบจงตองกระทากบ use caseดงน น use case เปนตวขบเคลอนการออกแบบ การจดสราง และการทดสอบระบบ
Use Case Model อธบายการทางานท งหมดทมในระบบ
แตละ Use Case เปนการทางานทผใชคาดหวงเปนความตองการของผใช
use case driven หมายถงการพฒนาระบบทาตามข นตอนโดยใช use case เปนหลก เร มจากหาความตองการระบเปน use case จากน นทา use case ใหเปนจรง โดยนา use caseไปวเคราะห ออกแบบ สรางเปน code แลวทาการทดสอบวา code ทสรางขนทางานไดถกตองตามทระบไวใน use case
OOAD : Object-Oriented Analysis and Design 2525
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ (Design)
ระบบซอฟตแวร
Actor 1
Use case 1
Actor 2
Use case 2
Use case 3
Use case
จดทา (Implement & Test)
หากสนใจ slide นเพอการเรยนการสอนโปรดตดตอ [email protected]
Use case Specifier
Use case Design
โครงการพฒนาระบบถกจดออกเปนหลายโครงการยอย
Unified Process ทางานเปนวนรอบเพมพนผล
(Iterative and Incremental)
แตละโครงการยอยมกาหนดเวลา แผนงานของตวเอง เรยกแตละโครงการยอยวา รอบงาน (Iteration)
แตละรอบงานกระทาการพฒนาระบบตามขนตอนวเคราะห ออกแบบ จดสรางของตวเอง ไดผลลพธเปนระบบทนาไปประมวลผลได
ระบบจะถกเพมพนใหโตขนตลอดเวลาตามรอบงานแตละรอบงานททาเสรจจนกระทงไดระบบทสมบรณ เปนการพฒนาระบบทเรยกวาวนรอบเพมพนผล (Iterative and Incremental Development)
OOAD : Object-Oriented Analysis and Design 2727
Project 1.1
Project 1.2
Project 1.3
Iterative and Incremental
OOAD : Object-Oriented Analysis and Design 28
Project 1.1
Project 1.2
Project 1.3
Project Analysis Design Implement Testing Deployment Software 1.1
Analysis Design Implement Testing Deployment Software 1.1
Analysis Design Implement Testing Deployment Software 1.1
Software 1.2
Software 1.2
Software 1.3
ตวอยาง จงพฒนาระบบ MIS ของโรงพยาบาล
OOAD : Object-Oriented Analysis and Design 29
ระบบเวชระเบยน HRM
Inventory Control
Purchase Orders
Project 1
Project 1.1 Project 1.2
Project 1.3 Project 1.4
Form 30-40 Forms
Database 20-30 Table Report 20-30 Reports
Iterative and Incremental
OOAD : Object-Oriented Analysis and Design 30
Project 1.1
Project 1.2
Project 1.3
Project Analysis Design Implement Testing Deployment Software 1.1
Analysis Design Implement Testing Deployment Software 1.1
Analysis Design Implement Testing Deployment Software 1.1
Software 1.2
Software 1.2
Software 1.3Project 1.4Analysis Design Implement Testing Deployment Software 1.1
Software 1.2
Software 1.3
Software 1.4
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ(Design)
จดทา (Implement & Test)
รอบท 1
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ(Design)
จดทา (Implement & Test)
รอบท 2
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ(Design)
จดทา (Implement & Test)
รอบท n. . . . . . .OOAD : Object-Oriented Analysis and
Design
3131
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ(Design)
จดทา (Implement & Test)
รอบท 1
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ(Design)
จดทา (Implement & Test)
รอบท 2
กาหนดความตองการ(Requirement)
วเคราะห (Analysis)
ออกแบบ(Design)
จดทา (Implement & Test)
รอบท n. . . . . . .OOAD : Object-Oriented Analysis and
Design
3232
HRM MIS + HRM HRM + MIS +
INVENTORYปท 1 ปท 2 ปท 3
Iterative and Incremental Model
กาหนดความตองการ(Requirement)
รอบท n 33
HRM + MIS + INVENTORY
5 ป
Waterfall Model
develop whole system
in the once process
จดทา (Implement & Test)
ออกแบบ(Design)
วเคราะห (Analysis)
33
Risk Reduction
Time
Ris
k
Waterfall Risk
Iterative Risk
Risk Profiles
OOAD : Object-Oriented Analysis and Design 3434
Risk Profile
Project1.1
Project1.2
Project1.3
Project1.4 Project1.N
การศกษาความเปนไปได
OOAD : Object-Oriented Analysis and Design 35
1. ดานเทคนค โปรแกรมทใช เทคนค ทใช ทาไดหรอไม ม
ความเปนไดหรอไม
2. ดานการปฏบตงาน
3. ดานเศรษฐศาสตร
ม 3 ดาน
จงพฒนาระบบจองควในการทาธรกรรมธนาคารผานมอถอ
OOAD : Object-Oriented Analysis and Design 36
จงศกษาความเปนไปไดทางเทคนค ....ผลลพธ คอ ทา
ไดหรอไม เพราะอะไร ทาอยางไร
แกปญหาอยางไร (5 คะแนน)
- ใชภาษา อะไร เครองมออะไร ....มคา license ?
- สมมตใน ทมงานมแต android .... ไมม
โปรแกรมเมอร iOS เลย
จงพฒนาระบบจองควในการทาธรกรรมธนาคารผานมอถอ
OOAD : Object-Oriented Analysis and Design 37
จงศกษาความเปนไปไดทางเทคนค ....ผลลพธ คอ ทา
ไดหรอไม เพราะอะไร ทาอยางไร
แกปญหาอยางไร (5 คะแนน)
จงศกษาความเปนไปไดทางปฏบตงาน ....ผลลพธ คอ
ทาไดหรอไม เพราะอะไร ทาอยางไร
แกปญหาอยางไร (5 คะแนน)
ทาแอพพลเคชนซอขาวราดแกงในโรงอาหาร มความเปนได
หรอไม ในแง .....เทคนค การปฏบตงาน เศรษฐศาสตร
OOAD : Object-Oriented Analysis and Design 38
มแมคาคนเดยว แต สงทง มหาวทยาลย ?
ทางเศรษฐศาสตร เชน โปรแกรม ราคา 200000 แตราคาขาวจาน
ละ 30 บาท คมหรอไม ตองใชวธทางเศรษฐศาสตรคานวณ
จงพฒนาระบบจองควในการทาธรกรรมธนาคารผานมอถอ
OOAD : Object-Oriented Analysis and Design 39
จงศกษาความเปนไปไดทางเทคนค ....ผลลพธ คอ ทา
ไดหรอไม เพราะอะไร ทาอยางไร
แกปญหาอยางไร (5 คะแนน)
• สมมต 10000 ทาไดหรอไม ? ตองคดวเคราะหประเมน
คาใชจายเปน ....แบงเปนคาอะไรบาง ...
• ใช inhouse หรอ outsource
• ม network / server หรอไม
• ใช OS อะไร
• ใช plate form อะไร
OOAD : Object-Oriented Analysis and Design 40
Analysis
Design
Implementation
Testing
เพอจดการกบความเสยงทมผลกระทบสงตงแตชวงตน
เพอสรางสถาปตยกรรมระบบไวกอน เปนแนวทางในการพฒนาระบบ
เปนกรอบงานทสามารถจดการกบการเปลยนความตองการทไมสามารถเลยงไดเปนอยางด
เปนการสรางระบบโดยการเพมพนผลตลอดเวลาในแตละรอบงาน แทนทจะทาระบบในครงเดยวใหเสรจสมบรณ ตอนใกลจบโครงการ ซงถามการเปลยนแปลงเกดขนจะมคาใชจายมาก
เปนการจดกรรมวธททาใหทมงานทางานไดอยางมประสทธภาพ
ทาไมตองพฒนาแบบวนรอบเพมพนผล
OOAD : Object-Oriented Analysis and Design 4141
Unified Process มสถาปตยกรรมเปนศนยกลาง (Architecture-Centric)
End-userFunctionality
ProgrammersSoftware management
IntegratorsPerformanceScalability
System engineersTopology
Communications
Logical View Development View
Process View Deployment View
Use case View
UP ใชสถาปตยกรรมเปนศนยกลางในการพฒนาระบบ แสดงภาพของระบบในมมมองตางๆ
OOAD : Object-Oriented Analysis and Design 4242
Unified Process มสถาปตยกรรมเปนศนยกลาง (Architecture-Centric)
End-userFunctionality
ProgrammersSoftware management
IntegratorsPerformanceScalability
System engineersTopology
Communications
Logical View Development View
Process View Deployment View
Use case View
UP ใชสถาปตยกรรมเปนศนยกลางในการพฒนาระบบ แสดงภาพของระบบในมมมองตางๆ
OOAD : Object-Oriented Analysis and Design 4343
The Iterative Approach
OOAD : Object-Oriented Analysis and Design 44
Disciplinesgroup activities
logically
In an iteration,you walk through
all disciplines
44
ระดบของซอฟตแวร
OOAD : Object-Oriented Analysis and Design 45
Stand Alone
Client-Server
2 Tier
N Tier
เวลา นบ User นบอยางไร ?
ไมถงแสน ระดบเลก
หลายแสน – ลานตน ระดบกลาง
MIS ของ PNRU 5 -10 ลาน
หลายลานขนไป ระดบใหญ
OOAD : Object-Oriented Analysis and Design 46
OOAD : Object-Oriented Analysis and Design 47
Phase -- management view
กระแสงาน(Workflows)
|technical
View
(Iteration) …………..
โครงสรางของ Unified Process ถกจดออกเปน 2 มต คอมตทางดานเวลา (Time)หรอระยะของการทางาน (Phase) และมตกระแสงาน (Workflows)
Inception Elaboration Construction Transition
Requirements
Analysis
Design
Implement
Test
กอนเขารอบ รอบ 1………….. รอบ n
47
4.4 รอบงานและระยะงาน (Iterations and Phases)
รอบงานและเฟส ในแตละเฟสแบงการทางานออกเปนรอบงาน (Iteration) จานวนรอบงานทมในแตละเฟสจดแบงตามความเหมาะสมของโครงการ
รอบงาน (Iteration) ในแตละรอบงานจะประกอบไปดวยหลายชดของของกจกรรม (กระแสงาน) ทผพฒนาระบบจะตองกระทาทงกระแสงานหลกและกระแสงานสนบสนน การทากจกรรมเสรจสนในแตละรอบงานจะไดผลลพธเปนงานทสามารถนาไปประมวลผลซงอาจจะเปนประมวลผลภายในองคกรของผพฒนาระบบ หรอจดสงไปใหลกคาเพอนาไปตดตงใชงาน
กระแสงานหลก (Main workflow)• Requirements• Analysis• Design• Implement• Test
กระแสงานสนบสนน (Supporting workflow)• Deployment …ทาเอกสารประกอบ การจดอบรม การตดตง วธการใชงาน• Project Management• Configuration Management
OOAD : Object-Oriented Analysis and Design 4848
Outcome :• เอกสารวสยทศน (vision document)• Use case model เบองตน (10-20%) • พจนานกรมคาศพทโครงการ (Project glossary) เบองตน • กรณการทาธรกจ ครอบคลมบรบทธรกจ เงอนไข • การจดการความเสยงเบองตน (Risk Plan)• แผนโครงการแสดงระยะงานและรอบงาน (Project
Management) Gantt Chart , PERT Chart• โมเดลธรกจ (ถาจาเปน) • ตนแบบระบบ (prototypes)
OOAD : Object-Oriented Analysis and Design 4949
การตระเตรยมงาน Inception
Inception Phase
ถากาหนดโครงไว 1 ป ระยะ 1. - 2 . เดอน แรกเสรจ ตามขางบน
Outcome :• Use case โมเดลสมบรณอยางนอย 80% • Supplementary requirement (non functional
requirements)• คาอธบายสถาปตยกรรมซอฟตแวร (Software Architecture
Description)• Hardware & software
• ตนแบบทสามารถนาไป execute ได (Prototype สาหรบ Demo)
• ปรบรายการความเสยง (Change/Adjust Risk Plan)• แผนการพฒนาระบบทงโครงการ (Complete)• user manual (Opt.)OOAD : Object-Oriented Analysis and Design 50
50
Elaboration Phase
ถากาหนดโครงไว 1 ป ระยะ 3. – 4,5 . เดอน แรกเสรจ ตามขางบน
Construction, Implementation / Testing
ทดสอบระบบ Alpha ทดลองโดยทมผพฒนา, Beta เวอรชนทดลองใช , Release
Outcome :
• ระบบซอฟตแวรทตรงกบแพลตฟอรมเปาหมาย
• คมอใชงาน (user manuals)
• คาอธบายระบบทออกวางจาหนาย
OOAD : Object-Oriented Analysis and Design 5151
Construction Phase
เปนเฟส การถายโอนระบบไปยงผใช
Outcome :
• ทดสอบเพอรบระบบ
• ทดสอบการ Integrate ของระบบ ความเขากนได ของระบบยอยตาง ๆ
• แปลงขอมลลงสฐานขอมลทใชงาน / การอตเดทฐานขอมลเกา
• อบรมผใชและผบารงรกษาระบบ
• ออกวางระบบสทองตลาด (สาหรบจาหนาย)
OOAD : Object-Oriented Analysis and Design 5252
Transition Phase
4.5 โครงสรางการทางานของ UP
(Static structure of the process)UP กาหนดการปฏบตงานของทมงานไวอยางชดเจนวาใคร (who) ทาอะไร (what) ทาเมอไร (when) และทาอยางไร (how) เพอบรรลเปาหมายทตงไว
UP แสดงโครงสรางการปฏบตงานเปนโมเดลทม 4 สญญลกษณพนฐาน
กระแสงาน (workflow) – when หมายถงชดของกจกรรมทเกยวเนอง
กระแสงาน
ชนงาน (artifact) – what หมายถงงานทผลตโดยผปฏบตในรปของ
ขอมลสารสนเทศ โปรแกรม รหสโปรแกรม หรอเอกสาร(document)
กจกรรม (activity) – how หมายถงกจกรรมทผปฏบตกระทา
ผปฏบตงาน (worker) – who หมายถงบทบาทในโครงการทกระทา
โดยบคคลใดบคคลหนงหรอทม
ผปฏบต (worker)
ความหมายสญญลกษณ
OOAD : Object-Oriented Analysis and Design 5353
ผปฏบตงานหรอ worker นยามถงพฤตกรรมและความรบผดชอบ(บทบาทความรบผดชอบ) ของตวบคคลหรอกลมบคคลททางานเปนทม
Resource Worker Activities
Somchai
Somying
Sombat
Somboon
Somruk
Designer Object Design
Use-Case Author Detail a Use-Case
Use-Case Designer Use-Case Design
Design Review Review Design
Architect Architectural Analysis
Architectural Design OOAD : Object-Oriented Analysis and Design 54
54
ผปฏบตงาน (Worker)
ผปฏบตงานหรอ worker นยามถงพฤตกรรมและความรบผดชอบ(บทบาทความรบผดชอบ) ของตวบคคลหรอกลมบคคลททางานเปนทม
Resource Worker Activities
อตการ
ชโลธร
ณฐพล
อมรชย
ชาลสา
Designer Object/class Design
Use-Case Author Detail a Use-Case
Use-Case Designer Use-Case Design
Design Reviewer Review Design
Architect Architectural Analysis
Architectural Design OOAD : Object-Oriented Analysis and Design 55
55
ผปฏบตงาน (Worker)
ตวอยาง Activities :
• Plan an iteration, for the Worker: Project Manager• Find use cases and actors, for the Worker: System Analyst• Review the design, for the Worker: Design Reviewer• Execute performance test, for the Worker: Performance Tester
กจกรรม (activity) ของผปฏบตงานใดๆ คอยนตงาน ทผปฏบตงานนนไดรบการมอบหมายใหทา(จาก Project Manager) แตละกจกรรมมจดหมายทชดเจน โดยทวไปจะเปนกจกรรมในการสรางหรอปรบปรงชนงาน (artifact) เชน การสรางและปรบปรงโมเดล หรอ class การจดทาและปรบแผน
OOAD : Object-Oriented Analysis and Design 5656
กจกรรม (Activity)
หนวยของงาน ท รบผดชอบ
ตวอยาง Activities :
• Plan an iteration, for the Worker: Project Manager• Find use cases and actors, for the Worker: System Analyst / Use casspecified • Review the design, for the Worker: Design Reviewer• Execute performance test, for the Worker: Performance Tester
กจกรรม (activity) ของผปฏบตงานใดๆ คอยนตงาน ทผปฏบตงานนนไดรบการมอบหมายใหทา(จาก Project Manager) แตละกจกรรมมจดหมายทชดเจน โดยทวไปจะเปนกจกรรมในการสรางหรอปรบปรงชนงาน (artifact) เชน การสรางและปรบปรงโมเดล หรอ class การจดทาและปรบแผน
OOAD : Object-Oriented Analysis and Design 5757
กจกรรม (Activity)
หนวยของงาน ท รบผดชอบ
OOAD : Object-Oriented Analysis and Design 58
ชโลธร เปน Project Manage จะทาหนาท มอบหมาย ควบคม ตดตาม ประเมนผล worker
กาหนด รอบให ณฐพล เกบ Requirement ใชเวลา 2 สปดาห
ชนงานมไดหลายรปแบบ• A model, such as the Use-case Model or the Design Model• A model element, i.e. an element within a model, such as a class, a
use case or a subsystem• A document, such as business Case or Software Architecture
Document• Source Code• Executables
ชนงาน (Artifact) เปนสวนของสารสนเทศทถกจดสราง บารงรกษา หรอถกใชในการพฒนาซอฟตแวร ช นงานเปนผลตภณฑเกดขนระหวางการพฒนาระบบซงนาไปสผลตภณฑเปาหมายของโครงการคอระบบซอฟตแวรในทสด
OOAD : Object-Oriented Analysis and Design 5959
ชนงาน (Artifact)
กระแสงาน (workflow) เปนชดของกจกรรมทสรางผลลพธทมคณคาตอโครงการ
System analyst
UI designer
Use case specifier
Architect
Find actors and use cases Structure the use case model
Prioritize use cases
Detail a use case
Prototype UI
Requirements Engineer
Find functional
requirements
Find non-functional
requirements
Prioritize requirements
OOAD : Object-Oriented Analysis and Design 6060
4.6 กระแสงาน (Workflows)
กระแสงาน (workflow) เปนชดของกจกรรมทสรางผลลพธทมคณคาตอโครงการ
System analyst
UI designer
Use case specifier
Architect
Find actors and use cases Structure the use case model
Prioritize use cases
Detail a use case
Prototype UI
Requirements Engineer
Find functional
requirements
Find non-functional
requirements
Prioritize requirements
OOAD : Object-Oriented Analysis and Design 6161
4.6 กระแสงาน (Workflows)
หนา Login เขาระบบบนมอถอ..
The core process workflows are divided into 5 core “engineering” workflow :
1. Requirements workflow2. Analysis workflow3. Design workflow4. Implementation workflow5. Test workflow
And three core “supporting” workflow :1. Project Management workflow2. Configuration and Change Management workflow3. Environment workflow
OOAD : Object-Oriented Analysis and Design 6262
กระแสงานหลก (Core workflows)
The goal of the Requirements workflow is to describe what the systemshould do and allows the developers and the customer to agree on thatdescription. To achieve this, we elicit, organize, and document requiredfunctionality and constraints; track and document tradeoffs and decisions.
Goals• Reach agreement on the system context
• List candidate requirements
• Identify & negotiate requirements
• Specify nonfunctional requirements
Artifacts• Domain model
• Business model
• Glossary
• Actors & Use Case
• User-Interface Prototype
• Use Case model
Workers• System analyst
• Use Case specifier
• User-Interface designer
• Architect
Activities• Build the domain model
• Build the business model
• Find actors and use cases
• Prototype the user interface
• Prioritize the use cases
• Detail a use case
• Structure the uc model
OOAD : Object-Oriented Analysis and Design 6363
Requirements Workflow
The goal of the Analysis workflow is to gain real understanding of thecustomer’s requirements and to use that understanding to build momentumas the project heads into design and implementation.
Goals• Gain real understanding of the customers’requirements
Artifacts• Analysis class (Boundary class, Entity class, Control class)
• Use Case Realization -Analysis
• Analysis package
• Analysis model
Workers• Architect
• Use Case engineer
• Component engineer
Activities• Perform architectural analysis
• Analyze a use case
• Analyze a class
• Analyze a package
OOAD : Object-Oriented Analysis and Design 6464
Analysis Workflow
The goal of the Design workflow is to build a blueprint of the system that the team can rely on going forward into implementation.
Goals• Build a blueprint of the system
Artifacts• Design class
• Use Case Realization -Design
• Interface
• Design Subsystem
• Design Model
• Architectural Description
• Deployment Model
Workers• Architect
• Use Case engineer
• Component engineer
Activities• Perform architectural design
• Design a use case
• Design a class
• Design a subsystem
OOAD : Object-Oriented Analysis and Design 6565
Design Workflow
The goal of the Design workflow is to build a working version of the system that it can deliver to beta customers for evaluation.
Goals• Build a working version of the system
Artifacts• Component
• Interface
• Implementation subsystem
• Implementation model
• Architecture description
• Integration build plan
Workers• Architect
• Component engineer
• System integrator
Activities• Perform architectural implementation
• Implement a class
• Perform unit test
• Implement a subsystem
• Integrate the system
OOAD : Object-Oriented Analysis and Design 6666
Implementation Workflow
The goal of the test workflow is to ensure that the system offers a highdegree of quality before it’s delivered to customers.
Goals• To verify the interaction between objects.
• To verify the proper integration of all components
• To verify that all requirements have been correctly implemented
• To identify and ensure defects are addressed prior to the deployment of the software
Artifacts• Test Case
• Test Procedure
• Test Component
• Test Model
• Test Plan
• Defect
• Test Evaluation
Workers• Test Engineer
• Component Engineer
• Integration Tester
• System Tester
Activities• Plan test
• Design test
• Implement test
• Perform Integration test
• Perform System test
• Evaluate test
OOAD : Object-Oriented Analysis and Design 6767
Test Workflow
OOAD : Object-Oriented Analysis and Design 68
Artifacts• Test Case
• Test Procedure
• Test Component
• Test Model
• Test Plan
• Defect
• Test Evaluation
ทดสอบกระบวนการ
Login
Main Program LOGIN
Registration
The purpose of the deployment workflow is to successfullyproduce product releases, and deliver the software to its endusers. It covers a wide range of activities including :
• Producing external releases of the software.• Packaging the software.• Distributing the software.• Installing the software.• Providing help and assistance to users.• In many cases, this also includes activities such as:• Planning and conduct of beta tests.• Migration of existing software or data.• Formal acceptance.
OOAD : Object-Oriented Analysis and Design 6969
Deployment
• A framework for managing software - intensive projects.• Practical guidelines for planning, staffing, executing, and
monitoring projects.• A framework for managing risk.
OOAD : Object-Oriented Analysis and Design 7070
Project Management
• Simultaneous Update - When two or more workers workseparately on the same artifact, the last one to makechanges destroys the work of the former.• Limited Notification - When a problem is fixed in artifacts
shared by several developers, and some of them are notnotified of the change.
• Multiple Versions
OOAD : Object-Oriented Analysis and Design 7171
Configuration & Change Management
20 กรกฎาคม 2006 72
• Craig Larman, “Applying UML and Patterns”, Prentice Hall PTR; 2nd edition 2001
• Rational Software Corporation, “Analysis and Design with UML”, 1997
• Ivar Jacobson, “Applying UML in the Unified Process”, 1998
References
หากสนใจ slide นเพอการเรยนการสอนโปรดตดตอ [email protected]
• ดร. สมนก ครโต
– ผอานวยการ สถาบนนวตกรรมไอท
– ผชวยศาสตราจารย ภาควชาวศวกรรมคอมพวเตอร
– คณะวศวกรรมศาสตร มหาวทยาลยเกษตรศาสตร
• Authorized SCAMPI Lead Appraiser• Authorized SCAMPI B&C Team Leader• [email protected]
OOAD : Object-Oriented Analysis and Design 73
References