Software Testing: validation

40
Software Testing: Software Testing: validation 1204 302 System 1204 302 System Analysis and Design Analysis and Design ผผ. ผผผผผผผ ผผผผผผผ ผผผผผผผผผผ 1/2555 ผผผผผผผผผผผผผผผผ ผผผผผผผผผผผ ผผผผผผผผผผผผผผผผผผผ

description

1204 302 System Analysis and Design. Software Testing: validation. ผศ . จันทิมา พลพินิจ. ปีการศึกษา 1/2555 หลักสูตรวิทยาการคอมพิวเตอร์ คณะวิทยาการสารสนเทศ. Validation. หลักการของ software testing เรียกว่า verification and validation. Validation - PowerPoint PPT Presentation

Transcript of Software Testing: validation

Page 1: Software Testing:  validation

Software Testing: Software Testing: validation

1204 302 System 1204 302 System Analysis and DesignAnalysis and Design

ผศ. จั�นทิ�มา พลพ�น�จั

ปี�การศ�กษา 1/2555 หล�กสู�ตรวิ�ทิยาการคอมพ�วิเตอร�

คณะวิ�ทิยาการสูารสูนเทิศ

Page 2: Software Testing:  validation

ValidationValidation หลั�กการของ software testing เร�ยกว่�า verification and validation

• Validation– การประเมิ�นค่�าของระบบ โดยตรว่จสอบว่�า

software ที่��พั�ฒนาข !นมิาน�!นเป"นไปตามิค่ว่ามิต$องการหร%อไมิ� จะที่&าในช่�ว่งก�อนเร��มิต$นการพั�ฒนา โดย Verification Activities น�!จะประกอบด$ว่ย Testing แลัะ Reviews

• Verification– การประเมิ�นค่�าของระบบ โดยตรว่จสอบว่�า

software ที่��พั�ฒนาข !นมิาน�!นเป"นไปตามิค่ว่ามิต$องการหร%อไมิ� จะที่&าตอนส�!นส*ดการพั�ฒนา

Page 3: Software Testing:  validation

Validation By ReviewsValidation By Reviews

ใช่$เค่ร%�องมิ%อใน ใช่$เค่ร%�องมิ%อใน Enterprise ModelingEnterprise Modeling ประกอบประกอบเป"นกระบว่นการในการสร$างแบบจ&าลัองที่��แสดงถึ งว่�ธี�การในการเปลั��ยนข$อมิ-ลัให$เป"นสารสนเที่ศซึ่ �งผลัลั�พัธี1ที่��ได$ค่%อ แบบจ&าลัองเช่�งตรรกะ (Logical Model) ของระบบใหมิ�ที่��สน�บสน*นกระบว่นการที่างธี*รก�จแลัะตอบสนองค่ว่ามิต$องการของผ-$ใช่$

Page 4: Software Testing:  validation

พั�จารณา พั�จารณา SDLCSDLC• Clearly, the SDLC requires significant time, human resources and technical resources to perform well.• The main steps in SDLC can be presented as

follows:

(1) Systems Planning (project requirements summary, project team description, preliminary work schedule, service area demographic analysis)

(2) Systems Analysis (E-R diagram, Data Flow Diagrams, high-level functional description)

(3) Systems Design (RDBM, Data Dictionary, identification/description of database objects, Web site map)

(4) Systems Implementation (Access database, Web site content, elementary test plan)

Page 5: Software Testing:  validation

ข�!นตอนการว่�เค่ราะห1เพั%�อน&าไปส-�ข�!นตอนการว่�เค่ราะห1เพั%�อน&าไปส-�ระบบที่��ต$องการระบบที่��ต$องการ

Page 6: Software Testing:  validation

Validation By ReviewsValidation By Reviews• แบบจ&าลัองเช่�งตรรกะ (Logical Model) แสดงถึ งส��งที่��ระบบใหมิ�จะต$องที่&า ประกอบด$ว่ย

- Entity-Relationship Diagrams- Data Flow Diagrams- Data Dictionary- Process Description

√√

Page 7: Software Testing:  validation

Entity-Relationship Entity-Relationship Diagrams: ERDDiagrams: ERD

ใช่$ตรว่จสอบค่ว่ามิส�มิพั�นธี1ระหว่�าง Entity Entity ค่%อ ค่น , สถึานที่�� , ส��งของหร%อข$อมิ-ลั เช่�น ลั-กค่$า , ส�นค่$า , การส��งซึ่%!อ เป"นต$น

ซึ่ �งมิ�ข�!นตอนในการสร$างด�งน�!ข�!นตอนที่�� 1 list รายช่%�อ Entity ที่��เก��ยว่ข$องก�บระบบข�!นตอนที่�� 2 สร$างค่ว่ามิส�มิพั�นธี1ระหว่�าง Entity น�!น

Page 8: Software Testing:  validation

Entity-Relationship Entity-Relationship Diagrams: ERDDiagrams: ERD ( (ต�อต�อ))

ส�ญลั�กษณ1ที่��ใช่$ แที่น Entityค่&านามิ

ต�ว่อย�างเช่�นDOCTOR

PATI ENT

หมิายค่ว่ามิว่�าหมิอด-แลัร�กษาผ-$ป5ว่ย

Page 9: Software Testing:  validation

ประเภที่ค่ว่ามิส�มิพั�นธี1ในประเภที่ค่ว่ามิส�มิพั�นธี1ใน ERDERD

1. ค่ว่ามิส�มิพั�นธี1แบบหน �งต�อหน �ง(One-to-one relationship), (1:1)

OFFI CE MANAGER OFFI CE

DEPARTMENT HEAD DEPARTMENT

1

1

1

1

Page 10: Software Testing:  validation

ประเภที่ค่ว่ามิส�มิพั�นธี1ในประเภที่ค่ว่ามิส�มิพั�นธี1ใน ERDERD ( (ต�อต�อ))

2. ค่ว่ามิส�มิพั�นธี1แบบหน �งต�อกลั*�มิ(One-to-many relationship), (1:M)

DEPARTMENT EMPLOYEE

CUSTOMER ORDER

1

1

M

M

FACULTY ADVI SOR STUDENT1 M

Page 11: Software Testing:  validation

ประเภที่ค่ว่ามิส�มิพั�นธี1ในประเภที่ค่ว่ามิส�มิพั�นธี1ใน ERDERD ( (ต�อต�อ))

2. ค่ว่ามิส�มิพั�นธี1แบบกลั*�มิต�อกลั*�มิ (Many-to-many relationship), (M:N)

Page 12: Software Testing:  validation

Data Flow Diagram: Data Flow Diagram: DFDDFD

เป"นแผนภาพัที่��แสดงถึ งกระบว่นการในการเปลั��ยนข$อมิ-ลัไปเป"นสารสนเที่ศแลัะข�!นตอนการที่&างานของระบบโดยจะแสดงถึ งส��งที่��ระบบต$องกระที่&าแต�ไมิ�ได$แสดงว่�าที่&าอย�างไรส�ญลั�กษณ1ของแผนภาพักระแสข$อมิ-ลัมิ� 4 แบบ

- การประมิว่ลัผลั (Process)- การไหลัของข$อมิ-ลั (Data Flow)- การเก8บข$อมิ-ลั (Data Store)- ส��งที่��เก��ยว่ข$องก�บระบบ (External

Entity)

Page 13: Software Testing:  validation

Data Flow Diagram: Data Flow Diagram: DFD (DFD (ต�อต�อ))

• Graphical system model that shows all main requirements for an IS in one diagram

Inputs/outputs

Processes

Data storage

• DFD integrates processing triggered by events (event table) with the data entities modeled by ERD

Page 14: Software Testing:  validation

Data Flow Diagram: Data Flow Diagram: DFD (DFD (ต�อต�อ))

DFD is used to link between initial business analysis, E-R diagrams and relational database models

Page 15: Software Testing:  validation

ส�ญลั�กษณ1ของ ส�ญลั�กษณ1ของ DFDDFD

Page 16: Software Testing:  validation

DFD: Context Diagram DFD: Context Diagram ((ต�อต�อ))

• Context Diagram is DFD that summarizes all processing activity for the system or subsystem

• Highest level (most abstract) view of system

• Shows system boundaries

• System scope is represented by a single process, external agents, and all data flows into and out of the system

• แสดงหมิายเลัข Process เป"นหมิายเลัข 0

Page 17: Software Testing:  validation

ต�ว่อย�าง ต�ว่อย�าง Context DiagramContext Diagram

Entity 1

Entity 2

SystemName

0

Entity 3

Input A

Input B

Output C

Context Diagram

Page 18: Software Testing:  validation

ต�ว่อย�าง ต�ว่อย�าง Context DiagramContext Diagram

Page 19: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD

List of Boundaries1. น�กศ�กษา

2. อาจัารย� 3. แผนกทิะเบี!ยนและวิ�ดผล 4. คณบีด!

List of Boundaries1. น�กศ�กษา

2. อาจัารย� 3. แผนกทิะเบี!ยนและวิ�ดผล 4. คณบีด!

List of Data1. ข้$อม�ลปีระวิ�ต�น�กศ�กษา

2. ข้$อม�ลการลงทิะเบี!ยนเร!ยน 3. ข้$อม�ลรายวิ�ชา 4. ข้$อม�ลอาจัารย�ผ�$สูอน

5. ข้$อม�ลวิ�ชาสูอน 6. ข้$อม�ลคณะ 7. ข้$อม�ลสูาข้าวิ�ชา 8. ข้$อม�ลภาคการศ�กษา

List of Data1. ข้$อม�ลปีระวิ�ต�น�กศ�กษา

2. ข้$อม�ลการลงทิะเบี!ยนเร!ยน 3. ข้$อม�ลรายวิ�ชา 4. ข้$อม�ลอาจัารย�ผ�$สูอน

5. ข้$อม�ลวิ�ชาสูอน 6. ข้$อม�ลคณะ 7. ข้$อม�ลสูาข้าวิ�ชา 8. ข้$อม�ลภาคการศ�กษา

List of Process1. ปีร�บีปีร(งข้$อม�ลน�กศ�กษา 9. เพ�กถอนวิ�ชาเร!ยน

2. ปีร�บีปีร(งข้$อม�ลอาจัารย� 10. บี�นทิ�กคะแนน 3. ปีร�บีปีร(งแฟ้+มวิ�ชาผ�$สูอน 11. ปีระเม�นผล 4. ปีร�บีปีร(งแฟ้+มรายวิ�ชา 12. เปี,ด/ปี,ดภาคการศ�กษา 5. ปีร�บีปีร(งแฟ้+มคณะ 13. รายงานรายวิ�ชาทิ!-ลงทิะเบี!ยน 6. ปีร�บีปีร(งแฟ้+มสูาข้า 14. ใบีเช/คช0-อ 7. ลงทิะเบี!ยนเร!ยน 15. รายงานปีระเม�นผล 8. ลงทิะเบี!ยนเพ�-ม 16. รายงานสูร(ปียอดผ�$สูอบีตก

List of Process1. ปีร�บีปีร(งข้$อม�ลน�กศ�กษา 9. เพ�กถอนวิ�ชาเร!ยน

2. ปีร�บีปีร(งข้$อม�ลอาจัารย� 10. บี�นทิ�กคะแนน 3. ปีร�บีปีร(งแฟ้+มวิ�ชาผ�$สูอน 11. ปีระเม�นผล 4. ปีร�บีปีร(งแฟ้+มรายวิ�ชา 12. เปี,ด/ปี,ดภาคการศ�กษา 5. ปีร�บีปีร(งแฟ้+มคณะ 13. รายงานรายวิ�ชาทิ!-ลงทิะเบี!ยน 6. ปีร�บีปีร(งแฟ้+มสูาข้า 14. ใบีเช/คช0-อ 7. ลงทิะเบี!ยนเร!ยน 15. รายงานปีระเม�นผล 8. ลงทิะเบี!ยนเพ�-ม 16. รายงานสูร(ปียอดผ�$สูอบีตก

Page 20: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD

Page 21: Software Testing:  validation
Page 22: Software Testing:  validation
Page 23: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD

Process ไมิ�สามิารถึมิ�เฉพัาะข$อมิ-ลัออก(output)อย�างเด�ยว่เที่�าน�!น ต$องมิ�ที่�!งข$อมิ-ลัเข$า(input) แลัะข$อมิ-ลัออก

Page 24: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ข$อมิ-ลัไมิ�สามิารถึเค่ลั%�อนย$ายจาก Data store หน �งไปย�งอ�กData storeหน �งได$โดยตรง ข$อมิ-ลัต$องถึ-กย$ายโดย Process

Page 25: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ข$อมิ-ลัไมิ�สามิารถึเค่ลั%�อนย$ายจากแหลั�งข$อมิ-ลัภายนอกระบบ(Entity) เข$าไปย�ง Data store ได$โดยตรง ข$อมิ-ลัต$องผ�าน Process การร�บข$อมิ-ลัจากภายนอกแลั$ว่ย$ายไปจ�ดเก8บใน Data store

Page 26: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ข$อมิ-ลัไมิ�สามิารถึเค่ลั%�อนย$ายจาก Data store ออกไปย�งแหลั�งร�บข$อมิ-ลัภายนอก(Entity) ได$โดยตรง ต$องมิ� Process เพั%�อย$ายข$อมิ-ลัออก

Page 27: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ผ�ด ถึ-กข$อมิ-ลัไมิ�สามิารถึเค่ลั%�อนย$ายจาก Entity ไปย�ง Entity ได$โดยตรง ต$องมิ� Process เพั%�อส�งต�อข$อมิ-ลั

แต�ถึ$าข$อมิ-ลัน�!นไมิ�ได$เก��ยว่ข$องก�บระบบงาน ก8ไมิ�จ&าเป"นต$องแสดงข$อมิ-ลัน�!นใน DFD

Page 28: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ผ�ด ถึ-ก

Data flow จะมิ�ที่�ศที่างใดที่�ศที่างหน �งระหว่�างแต�ลัะส�ญลั�กษณ1 ถึ งแมิ$ว่�าข$อมิ-ลัเด�ยว่ก�นจะเข$าแลัะออกจาก Process ไปย�ง Data store เช่�น การด งข$อมิ-ลัจาก Data store มิาแก$ไขแลั$ว่จ�ดเก8บลังที่��เด�มิ แต�ข$อมิ-ลัก8ถึ-กใช่$งานค่นลัะเว่ลัาก�น ไมิ�ได$เก�ดข !นพัร$อมิก�น

Page 29: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ผ�ด ถึ-ก

เส$นข$อมิ-ลัที่��แยกจากเส$นเด�ยว่ก�น หมิายถึ งข$อมิ-ลัเด�ยว่ก�นที่��ออกจากแหลั�งเด�ยว่ก�นออกไปย�ง หลัาย ๆ Process / Data store / Entity

AB

AA

Page 30: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ผ�ด ถึ-ก

A

B

A

A

เส$นข$อมิ-ลัที่��รว่มิเป"นเส$นเด�ยว่ก�น หมิายถึ งข$อมิ-ลัเด�ยว่ก�นที่��มิาจากหลัาย ๆ Process / Data store / Entity เพั%�อเข$าไปย�งที่��เด�ยว่ก�น

Page 31: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

ผ�ด ถึ-กข$อมิ-ลัไมิ�สามิารถึเค่ลั%�อนย$ายโดยตรงออกจาก Process เข$ามิาย�ง Process เด�ยว่ก�นได$ ซึ่ �งจ&าเป"นต$องมิ� Process อย�างน$อย 1 Process ในการจ�ดการข$อมิ-ลัน�!น ๆ เพั%�อสร$างข$อมิ-ลัอ%�น ๆ หร%ออาจจะส�งข$อมิ-ลัเด�มิกลั�บมิาย�ง Process เด�มิได$

A

A

AA

C

B

Page 32: Software Testing:  validation

การเข�ยน การเข�ยน DFDDFD ( (ต�อต�อ))

• ข$อค่ว่ามิที่��อย-�ใน Process ต$องเป"นค่&ากร�ยาเพั%�อบอกการที่&างานของ Process น�!น

• ข$อค่ว่ามิที่��อย-�ใน Data store / Data flow / Entity ต$องเป"นค่&านามิ• Data flow ที่��ช่�!เข$า Data store หมิายถึ ง

การน&าข$อมิ-ลัน�!นไปจ�ดเก8บ(เพั��มิ/ลับ/แก$ไข)• Data flow ที่��ออกมิาจาก Data store หมิายถึ งการด งข$อมิ-ลัออกมิาใช่$งาน

ปร�บปร*งข$อมิ-ลัน�กศ กษา

1.0

แฟ้<มิข$อมิ-ลัน�กศ กษาD1น�กศ กษาข$อมิ-ลัน�กศ กษาที่��ต$องการปร�บปร*ง

ข$อมิ-ลัน�กศ กษาก�อนปร�บปร*ง

ข$อมิ-ลัน�กศ กษาที่��ปร�บปร*งแลั$ว่

ปร�บปร*งข$อมิ-ลัน�กศ กษา

1

แฟ้<มิข$อมิ-ลัน�กศ กษาD1น�กศ กษาข$อมิ-ลัน�กศ กษาที่��ต$องการปร�บปร*ง

ข$อมิ-ลัน�กศ กษาก�อนปร�บปร*ง

ข$อมิ-ลัน�กศ กษาที่��ปร�บปร*งแลั$ว่

Page 33: Software Testing:  validation

ต�ว่อย�าง ต�ว่อย�าง DFDDFD ( (ต�อต�อ))

Entity 1 General Process

AAA

1

General Process

BBB

2

Entity 3

General Process

CCC

3

General Process

DDD

4

Entity 2

D1 Data store 1

D2 Data store 2

Input A

Input B

Output CData flow B

Data flow C

Record A Record E

Record ERecord A

Data flow D

Page 34: Software Testing:  validation

Confusion of DFDConfusion of DFD

Page 35: Software Testing:  validation

Context Diagram without Context Diagram without representing Levelrepresenting Level

Page 36: Software Testing:  validation

Context Diagram without Context Diagram without representing Level (representing Level (ต�อต�อ))

*** DFD Level 0 ****** DFD Level 0 ***

Page 37: Software Testing:  validation

Context Diagram Context Diagram representingrepresenting Level 0 Level 0

ระบบส��งซึ่%!อVCD

ระบบร$านเช่�าVCD

0

ลั-กค่$า

ผ-$จ�ดการร$าน

ลั-กค่$า

ฝ่5ายบ�ญช่�

รายการVCDที่��ต$องการเช่�า

รห�สลั-กค่$า

การช่&าระเง�น

ใบเสร8จค่�าเช่�า

บ�ตรสมิาช่�ก

จดหมิายข�าว่รายเด%อน

ข$อมิ-ลัลั-กค่$าใหมิ�

ข$อมิ-ลัVCD รายงานการบร�หารงาน

ข$อมิ-ลัการค่%นVCD

จ&านว่นเง�นสดที่��ได$ร�บที่�!งหมิด

จดหมิายข�าว่รายป>

Context Diagram ข้องระบีบีร$านเช1า VCD

Page 38: Software Testing:  validation

Context Diagram Context Diagram representingrepresenting Level 0 Level 0

((ต�อต�อ))ลั-กค่$า เช่� า

VCD

1.0

เช่� าVCD

1.0

สร$างรายงานการบร�หารงาน

2.0

สร$างรายงานการบร�หารงาน

2.0

ผ-$จ�ดการร$าน

ค่&า นว่ณจ&า นว่นเง�นจากใ บเสร8จ

4.0

ค่&า นว่ณจ&า นว่นเง�นจากใ บเสร8จ

4.0

บ�นที่ กข$อมิ-ลัการค่%นVCD

3.0

บ�นที่ กข$อมิ-ลัการค่%นVCD

3.0

เพั��มิข$อมิ-ลัลั-กค่$าใ หมิ�

5.0

เพั��มิข$อมิ-ลัลั-กค่$าใ หมิ�

5.0

สร$างจดหมิายข�าว่รายเด%อน

6.0

สร$างจดหมิายข�าว่รายเด%อน

6.0

รายการVCDที่��ต$องการเช่� ารห�สลั-กค่$า

การช่&า ระ เง�น

ใ บเสร8จค่�าเช่� า

ข$อมิ-ลัการเช่� า

รายการช่&า ระ เง�น

รายงานการบร�หารงาน

D1 ล�กค$าD1 ล�กค$า

ข$อมิ-ลัลั-กค่$า

ข$อมิ-ลัลั-กค่$า

รายการช่&า ระ เง�น

ระบบส��งซึ่%! อVCD

ข$อมิ-ลัVCD

ฝ่5ายบ�ญช่�จ&า นว่นเง�นสดที่�� ไ ด$ร�บที่�!งหมิด

ข$อมิ-ลัลั-กค่$า

ลั-กค่$าลั-กค่$าข$อมิ-ลัลั-กค่$าใ หมิ�

D1 ล�กค$าD1 ล�กค$าข$อมิ-ลัลั-กค่$า

ข$อมิ-ลัลั-กค่$า

สร$างจดหมิายข�าว่รายป>

7.0

สร$างจดหมิายข�าว่รายป>

7.0

ข$อมิ-ลัลั-กค่$า

จดหมิายข�าว่รายเด%อน

จดหมิายข�าว่รายป>

บ�ตรสมิาช่�ก

ข$อมิ-ลัการค่%นVCD

DFD level 1

Page 39: Software Testing:  validation

การเข�ยน Data Dictionary• การเข�ยน Data Dictionary ของ DFD เพั%�อเป"นการน�ยามิ

โค่รงสร$างข$อมิ-ลัที่��อย-�ใน DFD ว่�าแต�ลัะช่*ดประกอบด$ว่ยข$อมิ-ลัอะไรบ$าง• เช่�น ข$อมิ-ลัลั-กค่$า = รห�สลั-กค่$า + ช่%�อลั-กค่$า + ที่��อย-� + (โที่รศ�พัที่1) +

(ว่�นเก�ด)• ส�ญลั�กษณ1

ส�ญลั�กษณ1 ค่ว่ามิหมิาย= เที่�าก�บ หร%อ ประกอบ

ด$ว่ย+ แลัะ

{ } ข$อมิ-ลัซึ่&!าหลัายช่*ด[ ] หร%อ (อย�างใดอย�าง

หน �ง)

( ) ที่างเลั%อก (มิ�หร%อไมิ�มิ�ก8ได$)

Page 40: Software Testing:  validation

ต�ว่อย�าง ต�ว่อย�าง Data DictionaryData Dictionary

ร�บรายการVCD

1.1

รายการVCDที่��เช่�า

ข$อมิ-ลั VCD

ข$อมิ-ลัการเช่�า

ข$อมิ-ลัการเช่�า

ข$อมิ-ลัการเช่�า

ข$อมิ-ลัการเช่�า = รห�สการเช่�า + ว่�นที่��เช่�า + ค่�าเช่�ารว่มิ + {รห�สVCDที่��เช่�า + ว่�นที่��ค่%น+ จ&านว่น} + รห�สลั-กค่$าที่��เช่�ารายการ VCD ที่��เช่�า = {รห�สVCD ที่��เช่�า + ว่�นที่��ค่%น+ จ&านว่นที่��เช่�า}

ข$อมิ-ลั VCD = รห�สVCD + ช่%�อเร%�อง + ประเภที่ + ค่�าเช่�า/เร%�อง + ราค่า + จ&านว่นว่�นที่��ให$เช่�า