[t8] 낚시하시계dslab.konkuk.ac.kr/class/2019/19sma/team_project/p6/[t8... · 2019. 6. 10. ·...

21
[T8] 낚시하시계 -3 rd Cycle Demonstration-

Upload: others

Post on 24-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

[T8] 낚시하시계

-3rd Cycle Demonstration-

Page 2: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

Table of

Contents

1. SYSTEM TEST

1.1 SPECIFICATION REVIEW

1.2 CATEGORY-PARTITION TESTING REPORT

1.4 BRUTE FORCE TESTING REPORT

2. STATIC ANALYSIS TEST

2.1 BUGS

2.2 VULNERABILITY

2.3 CODE SMELLS

2.4 COVERAGE

2.5 DUPLICATION

3. OOPT REVIEW

Page 3: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

1. System Test

(Specification Review)

Page 4: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

1. System Test

(Category-partition Testing Report)

대응방안->

절전모드는디지털시계에불필요한Requirement라생각하여대응하지않는다.

Page 5: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

1. System Test

(Brute Force Testing Report)

대응방안->

지난대응보고서에 Alarm모드에서 mode selector로못가게막아놓은이유를설명하고, 보고서를수정하였기에대응하지않음.

Page 6: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

Page 7: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Bugs)

Page 8: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Bugs)

Unread field: OOOO

대응방안->

쓰이지않는필드를제거하라는메세지이므로쓰이지않는필드를제거했다

Page 9: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Bugs)

Class OOOO defines fields that are

used only as local

대응방안->

private으로설정된필드가하나의메서드에서만사용되어문제가있다고판단하여필드를사용하는대신직접전달해줄수있게바꿨다

Page 10: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Bugs)

Either re-interrupt this

method or rethrow the

“InterruptedException”

대응방안->

interruptedException 발생시 interrupt를다시발생시키도록수정하고필요한경우 while문을탈출하는것도수정하였다

Page 11: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Vulnerability)

Page 12: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Vulnerability)

Store a copy of “OOOO”

Return a copy of “OOOO”

대응방안->

몇몇 issue가나온변수는버그수정단계에서삭제하거나값이임의로변경될수있으므로 .clone()과 static캐스팅을통해값을넣어줄수있게바꿨다

Page 13: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Vulnerability)

Explicitly declare the visibility

for“OOOO”

대응방안->

몇몇 issue가나온접근지정자를 private로지정해주었다.

Page 14: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Code Smells)

Page 15: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Code Smells)

Add a constructor to the class, or provide

default values

대응방안->

생성자를생성해주었다그리고 Uninitialized

field라고나오는해당필드는버그단계에서수정을하며삭제했다

Page 16: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Code Smells)

Remove this call from a

constructor to the

overridavble “OOOO”

method

대응방안->

생성자에서해당메서드를사용하지않도록수정하였다.

Page 17: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Code Smells)

대응방안-> 기타여러 code smells 수정

Page 18: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Coverage)

대응방안-> CalculateTide 메소드를 private에서 public으로선언하였다.

Page 19: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

2. Static Analysis Test

(Duplication)

대응방안-> format이비슷한 code들을없애려고하여제외함.

Page 20: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

3. OOPT Review

Page 21: [T8] 낚시하시계dslab.konkuk.ac.kr/Class/2019/19SMA/Team_project/p6/[T8... · 2019. 6. 10. · table of contents 1. system test 1.1 specification review 1.2 category-partition

Q&A