object-oriented analysis and...
TRANSCRIPT
Object-Oriented Analysis and Design
Team 5 : RDM Watch(Random Decision Making)OOI - The 2nd Cycle
컴퓨터공학부 201411300 이정우컴퓨터공학부 201714150 김동진컴퓨터공학부 201714155 윤태성
수학과 201410334 고길재
1
Index
- Specification Modification- Brute-Force Test- Category Partitioning Test- Pairwise Test
2
3
1. Specification Modification
Specification Modification - 1. Planning (1000)
4
Specification Modification - 1. Planning (1000)
5
Specification Modification - 2. Analyze (2030)
6
Specification Modification - 2. Analyze (2030)
삭제완료
7
Specification Modification - 3. Design (2040)
Use Case 1. Set Current Time
Exceptional Courses of Events Line 3: 각 Unit(초, 분, 시, 일, 월, 연)이한계치에도달했을경우그다음 unit의값을증가시키고 한계치에도달한 unit의값을최소로만든다.
(최대, 최소, 한계치는 LocalDateTime.MIN,
LocalDateTIme.MAX에의거한다.)
8
Specification Modification - 3. Design (2040)
Use Case 2. Set Timer
Exceptional Courses of Events Line 4, Line 8, Line 12 :각단위의최대혹은최소를초과혹은미달하는수정요구. 최대를초과하는수정은최소로, 최소를미달하는수정은최대로표시한다.
(최대, 최소, 한계치는 LocalDateTime.MIN,
LocalDateTIme.MAX에의거한다.)
9
Specification Modification - 3. Design (2040)
Use Case 15. Set Alarm
Exceptional Courses of Events Line 4, Line 8 :각단위의최대혹은최소를초과혹은미달하는수정요구. 최대를초과하는수정은최소로, 최소를미달하는수정은최대로표시한다.
(최대, 최소, 한계치는 LocalDateTime.MIN,
LocalDateTIme.MAX에의거한다.)
10
Specification Modification - 3. Design (2040)
Use Case 17. Set Case Number
Exceptional Courses of Events Line 4 : Case Number의최대(99) 혹은최소(2)를초과혹은미달하는수정요구. 최대를초과하는수정은최소로, 최소를미달하는수정은최대로표시한다.
11
Specification Modification - 3. Design (2040)
Use Case 19. Switch City
Actor User
Purpose global time을보여줄도시를고른다.
Overview 사용자가버튼을통해 global time을보여줄도시를고른다.
Type Evident
Pre - Requisites 현재 Mode는 global time 모드여야한다.
Typical Courses of Events (A) : Actor (S) : System
1. (A): “RE”버튼/ ”ST”버튼을이용해도시를고른다.
2. (S): 해당도시(뉴욕, 시드니, 로스엔젤레스, 런던) 시간을도시(약자) 시/분/초로보여준다.
Alternative Courses of Events N/A
Exceptional Courses of Events N/A 12
Specification Modification - 3. Design (2040)
Use Case 21. Select Modes
Purpose Activate할 Mode를설정한다.
Overview 6개의전체 Mode중 4개를 select하여 activate 한다.
Pre - Requisites 각 Mode가수정모드가아니어야 한다.
Typical Courses of Events (A) : Actor (S) : System
1. (A) AD버튼을 길게누른다.
2. (S) 6개의 Mode의아이콘을 한번에 display하고, 현재커서인아이콘을녹색, 활성화된아이콘을노란색, 비활성화된아이콘은검은색으로 바꾼다.
3. (A) ST버튼을통해선택하여활성화/비활성화를 한다.
4. (S) 다음 Mode로커서를옮긴다.
5. (A) MO버튼을 눌러 Mode Setting을종료한다.
6. (S) 선택된 Mode가 4개인경우에만 이를저장하고종료한다.
Alternative Courses of Events Line 3. 선택을하지않고넘어가려면 AD버튼을누른다.
Line 4. 추가로 Mode선택을해야하는경우 Line 3로돌아간다.
Exceptional Courses of Events N/A
13
14
2. Brute-Force Test
Brute-Force Test
15
Timekeeping 설정모드subscreen 해결
Brute-Force Test
Timer 초기화를 0초로재설정
16
Brute-Force TestSet Timer
Use Case 2. Set Timer
Exceptional Courses of Events Line 4, Line 8, Line 12 :각단위의최대혹은최소를초과혹은미달하는수정요구. 최대를초과하는수정은최소로, 최소를미달하는수정은최대로표시한다.
(최대, 최소, 한계치는 LocalDateTime.MIN,
LocalDateTIme.MAX에의거한다.)
2040 : Design
17
Brute-Force Test
3초로설정후, 0초까지실행시킨다음, 다시리셋버튼을눌러 3초로복귀하는것을확
인완료
18
Brute-Force Test
19
Brute-Force Test
20
Brute-Force Test
21
Brute-Force Test
2040 : Design
2030 : Analyze
22
Use Case 12. Activate Alarm
Exceptional Courses of Events Line 1: 만약비어있는 알람에활성화요청을하면무시한다.
Use Case 12. Activate alarm
Exceptional Courses of Events Line 1: 만약비어있는 알람에활성화요청을하면무시한다.
Brute-Force Test
23
Use Case 13. Deactivate alarm
Exceptional Courses of Events Line 1: 만약비어있는 알람에비활성화요청을하면무시한다.
Use Case 13. Deactivate Alarm
Exceptional Courses of Events Line 1: 만약비어있는 알람에비활성화요청을하면무시한다.
2040 : Design
2030 : Analyze
Brute-Force Test
24
Use Case 14. Set alarm
Actor User
Type Evident
Pre - Requisites Mode가 Alarm으로설정되어있어야한다.
Typical Courses of Events (A) : Actor (S) : System
1. (A) 수정할알람을선택한다.
2. (A) 해당 alarm의시간설정을요청한다.
3. (S) 현재수정하는시간의단위를표시한다.
4. (A) 해당단위의단위시간만큼시간수정을요청한다.
5. (S) 요청에따라단위시간만큼 변경된다.
6. (S) 변경된시간을표시하고설정이완료될때까지 반복한다.
Alternative Courses of Events Line 2 : 해당 alarm칸이비어있는 경우, 알람을생성하고설정한다.
Exceptional Courses of Events N/A
Use Case 14. Set alarm
Actor User
Type Evident
Pre - Requisites Mode가 Alarm으로설정되어있어야한다.
Typical Courses of Events (A) : Actor (S) : System
1. (A) 수정할알람을선택한다.
2. (A) 해당 alarm의시간설정을요청한다.
3. (S) 현재수정하는시간의단위를표시한다.
4. (A) 해당단위의단위시간만큼시간수정을요청한다.
5. (S) 요청에따라단위시간만큼 변경된다.
6. (S) 변경된시간을표시하고설정이완료될때까지 반복한다.
Alternative Courses of Events N/A
Exceptional Courses of Events N/A
25
2030 : Analyze 수정완료
Brute-Force Test
Brute-Force Test
26
Brute-Force Test
Use Case 17. Set Case Number
Purpose Random Number를받을숫자의범위를지정한다.
Overview User의버튼입력을통해 Case Number의범위를수정하고저장한다.
Typical Courses of Events (A) : Actor (S) : System
1. (A) MO버튼을길게눌러수정모드로진입한다.
2. (S) Default Case Number를표시한다.
3. (A) RE/ST를누른다.
4. (S) 버튼에따라 Case Number를 1씩증가/감소시킨다.
5. (A) MO버튼을눌러 Case Number Setting에서빠져나간다.
6. (S) Case Number를수정한다.
Exceptional Courses of Events Line 4 : Case Number의최대(99) 혹은최소(2)를초과혹은미달하는수정요구. 최대를초과하는수정은최소로, 최소를미달하는수정은최대로표시한다.
27
Brute-Force Test
Default Page를구현하여문제해결
28
Brute-Force Test
29
Use Case 21. Select Modes
Typical Courses of Events (A) : Actor (S) : System
1. (A) AD버튼을길게누른다.
2. (S) 6개의 Mode의아이콘을 한번에 display하고, 현재커서인아이콘을녹색, 활성화된아이콘을노란색, 비활성화된아이콘은검은색으로 바꾼다.
3. (A) ST버튼을통해선택하여활성화/비활성화를 한다.
4. (S) 다음 Mode로커서를옮긴다.
5. (A) MO버튼을눌러 Mode Setting을종료한다.
6. (S) 선택된 Mode가 4개인경우에만 이를저장하고종료한다.
Use Case 21. Select modes
Alternative Courses of Events Line 2: 선택된알람이 4개가아닌상태에서 모드설정요청은무시한다.
2040
2030
Brute-Force Test
30
Brute-Force Test
31
Use Case 23. Deactivate Beep
Actor User
Purpose 울리고있는 Beep음을멈춘다.
Overview User의입력을받아서 Beep음을멈춘다.
Type Evident
Pre - Requisites alarm이울리는중이어야한다.
Typical Courses of Events (A) : Actor (S) : System
1. (A) 아무버튼을누른다.
2. (S) Beep음을중지한다.
Alternative Courses of Events N/A
Exceptional Courses of Events N/A
Spec에‘일정시간이후비프음이자동으로꺼진다’는조건이존재하지않음입력이주어지면꺼진다.
32
3. Category Partitioning Test
Category Partitioning Test
수정완료
Subscreen의깨짐문제해결
-> 날짜및시간수정이잘된다.
33
Category Partitioning Test
34
수정완료
Lap Time에 Index를붙여잘작동
함을확인
Category Partitioning Test
수정완료
Lap Time에 Index를붙여잘작동함을확인
35
Category Partitioning Test
36
수정완료
Timer완료시 java.util.timer자체를 cancel()해서재동작하지않았
던것 -> timer task를종료하도록수정
Category Partitioning Test
37
수정완료
LONG_MO 가 input으로들어올때, delay가조금있음
Category Partitioning Test
38
확인결과잘작동함
Category Partitioning Test
39
수정완료
Brute-Force의 Get Case를해결하면서해결
Category Partitioning Test
40
수정완료
Brute-Force의 Get Case를해결하면서해결
41
4. Pairwise Test
Pairwise Test
42
수정완료
Subscreen의깨짐문제해결
-> 날짜및시간수정이잘된다.
Pairwise Test
43
Lap time 에서는 LONG_MO 입력에대한기능이존재하지않는다.
Pairwise Test
Lap time 에서는 AD 입력에대한기능이존재하지않는다.
44
Pairwise Test
Lap time 에서 RE 입력 -> 다음
Lap time 출력
잘작동함을확인
45
Pairwise Test
46
3초로설정후, 0초까지실행시킨다음, 다시리셋버튼을눌러 3초로복귀하는것을확인완료.
Pairwise Test
47
3초로설정후, 0초까지실행시킨다음, 다시리셋버튼을눌러 3초로복귀하는것을확인완료.
Pairwise Test
수정모드에서는모드를고르는창으
로넘어갈수없다 -> Lap time은
Stopwatch의 수정모드에서동작함
따라서 Lap time에서는모드를고르는
창으로넘어갈수없음
48
Use Case 21. Select Modes
Actor User
Purpose Activate할 Mode를설정한다.
Overview 6개의전체 Mode중 4개를 select하여activate 한다.
Type Evident
Pre - Requisites 각 Mode가수정모드가아니어야 한다.
Pairwise Test
49
수정완료
Subscreen의깨짐문제해결-> 날짜및시간수정이잘된다.
Pairwise Test
정상적으로 StopWatch 모드로복귀하는것을확인
50