Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
1
JFeatureJFeature(Team Presentation #3) ( )
S ft V ifi ti
Team 3 members : 200714170 모진종
Software Verification (소프트웨어검증)
200714173 심상문200714179 황규원
ContentsContents SW 툴에 전반적인 구성도
SW툴에 역할 및 기능 설명
SW공학 융합 툴 모델의 구성요소 SW공학 융합 툴 모델의 구성요소
Jfeature
요구사항
요구사항관리의 필요성 요구사항관리의 필요성
현재의 품질관리 방법은 비효율적
누군가가 필요해!
자동화 도구가 없다면?
품질관리의 실패 사례
여러가지 툴들의 소계
Jfeature 실행
2Software Verification (소프트웨어검증)
SW 툴에 전반적인 구성도SW 툴에 전반적인 구성도종류 도구들종류 도구들
테스팅 Eclipse TPTP, Junit
구현 Eclipse, Ant
형상& 버전관리
CVS, Subclipse, winCVS관리
, p ,
요구사항분석& 관리 JFeature , OSRMT 석 리
프로젝트관리 DotProject , ToDoList
설계& 모델링 StarUML(소프트웨어모델링)
품질관리 EmForge Magntis
2Software Verification (소프트웨어검증)
품질관리 EmForge, Magntis
3…
2 1
최종
소프트웨어
SW툴에역할및기능설명SW툴에역할및기능설명
종류 역할및기능설명
프로젝트관리 효율적으로진행하기위해일정, 자원, 위험요소등을관리프로젝트관리 효율적으로진행하기위해일정, 자원, 위험요소등을관리
요구사항분석&관리
고객요구사항을정의, 변경관리, 산출물간추적성을유지
구현 설계의각구성요소를실행가능한형태로변환하고이를문서화하는활동
테스팅 소프트웨어의결함을발견하려는의도를가지고프로그램을검증하는활동
형상&버전관리 산출물들의베이스라인을수립하고, 이들의변경을추적하고통제하여형상&버전관리
무결성을보장하는활동 ( DB에서의무결성제약조건과비슷한역할)
품질관리프로세스가전체과정에적절하고,산출물이요구사항을만족시키는지에대해가시성을제공하는활동산출물이요구사항을만족시키는지에대해가시성을제공하는활동
6
SW공학융합툴모델의구성요소SW공학융합툴모델의구성요소
Software Verification (소프트웨어검증)
7
Jf t (소프트웨어검증)Jfeature
Software Verification (소프트웨어검증)
8
Jf t (C ’t) (소프트웨어검증)Jfeature (Con’t)
Software Verification (소프트웨어검증)
9
요구사항(Requirement)
(소프트웨어검증)
요구사항(Requirement)
• 현상의문제해결또는특수목적을위해사용자가• 현상의문제해결또는특수목적을위해사용자가필요로하는능력이나조건
FUNCTIONAL WHAT에대한내용으로 SW는이러해야한다라는용어로FUNCTIONAL WHAT에대한내용으로 SW는이러해야한다.라는용어로표현. 정량적,가시적형태표현하기가용이하지않음.
NON-FUNCTIONAL
HOW에대한요구사항으로성능에대해어떻해야한다로표현사용자주관의판단이개입되며구체성이결여된다.인터페이스, 품질속성이이에해당된다.예) 온라인응답시간은 초이내여야한다예) 온라인응답시간은 10초이내여야한다.전체동시접속자수는 10명으로제한된다.
Software Verification (소프트웨어검증)
10
Why? 요구사항관리의필요성
(소프트웨어검증)
Why? 요구사항관리의필요성.
Software Verification (소프트웨어검증)
11
Why? 요구사항관리의필요성
(소프트웨어검증)
Why? 요구사항관리의필요성.• 품질관리에있어서비용의절감은곧 R&D전반에비용과효품질관리에있어서비용의절감은곧 R&D전반에비용과효과를가져오기때문에매우중요!
<소프트웨어프로젝트의요구사항이 Deployment단계에서발생할수록비용이더욱증가한다.>
Software Verification (소프트웨어검증)
12
현재의품질관리방법은비효율적
(소프트웨어검증)
현재의품질관리방법은비효율적
일반적으로품질관련업무는개발자가코딩을끝내는시점에일종의 “테스트(Test)” 수행으로시작되고있으며, 대부분품질과관련된노력은이이후에집중 QA 팀에서결함및기능/ 성능상의문제점을찾는것으로품질문제를해결하려하고있다
이는요구사항에대한검증과이에근거한테스트항목도출을보장하기어려운측면이있다.
대부분의노력의시작이개발자가 code를심고 test를한후 Debug단계에들어가야시작되어대부분의노력의시작이개발자가 code를심고 test를한후 Debug단계에들어가야시작되어,Tester가 Functional Test와 Load Test의종반부분에대부분의노력을투입하는경우가일반적입니다. 따라서, Operation이 Deploy와 Monitoring를통해불만사항이나오는경우가많음.
Software Verification (소프트웨어검증)
13
(소프트웨어검증)
프로젝트의결함은 ‘기능을수행하지못함’ 장애 때 에일어나기때 에이러한즉 ‘장애’ 때문에일어나기때문에이러한
장애가일어날수있는상황을효율적으로관리하기위함을지향한다.관리하기위함을지향한다.
Software Verification (소프트웨어검증)
14
(소프트웨어검증)
누군가가필요해!누군가가필 해
품질을관리하고단계마다수정과정리를요하는• 품질을관리하고단계마다수정과정리를요하는항목들을체계적으로분류및관리해줄자동화도구가필요하다구가필요하다.
게바 요구사항관리 구이다• 그게바로요구사항관리도구이다.
Software Verification (소프트웨어검증)
15
자동화도구가없다면?
(소프트웨어검증)
자동화도구가없다면?• Test case, 요구사항등관련산출물을문서로관리하는데효율적이지못하다하는데효율적이지못하다.
• 프로세스과정간의독립적인관리로요구사항/테스트결과/결함간의연계성을파악할수없습니다스트결과/결함간의연계성을파악할수없습니다.
• 또한, 테스트결과외에이와관련된결함및요구사항에대한정보파악과 프로젝트진행상황파악사항에대한정보파악과 프로젝트진행상황파악을한눈에보기어렵다.
• 이러한단점들은프로젝트팀원들간의의사소통이러한단점들은 젝 팀원들간의의사 통의결여를가져온다.
•결국, 효율성과협업의측면의부족이기업의비용지출에큰영향을가져오게되는것이죠지출에큰영향을가져오게되는것이죠.
Software Verification (소프트웨어검증)
16
품질관리의실패사례
(소프트웨어검증)
품질관리의실패사례• 세계최고의자동차업체중하나인도요타는품질관리세계최고의자동차업체중하나인도요타는품질관리에실패하여최대규모의리콜을하였다. 이는그룹존폐를위협하는타격을주었으며. 나아가일본의장인정신을앞다퉈칭찬하던전세계를 조용하게만들었다만들었다.
Software Verification (소프트웨어검증)
17
어떠한도구를사용하는가?
(소프트웨어검증)
어떠한도구를사용하는가?
• Jfeature• Jfeature
• Jrequisite
• Requirement Heap
• TRUCTRUC
• OSRMT
Software Verification (소프트웨어검증)
18
Jfeature
(소프트웨어검증)
Software Verification (소프트웨어검증)
19
Jrequisite
(소프트웨어검증)
Software Verification (소프트웨어검증)
20
Requirement Heap
(소프트웨어검증)
Software Verification (소프트웨어검증)
21
TRUC
(소프트웨어검증)
Software Verification (소프트웨어검증)
22
OSRMT
(소프트웨어검증)
Software Verification (소프트웨어검증)
23
Jfeature는
(소프트웨어검증)
Jfeature는• Facilitates traceability of code to requirements during development.
• Well-integrated with the standard JUnit unit testing framework.
• Eclipse Plugin: Provides a convenient editor to manage requirements and an instant view to developers on requirement coverage as they develop codedevelopers on requirement coverage as they develop code.
• Custom ANT Task: This is useful for automated builds and generating requirement coverage for the entire project.
• Sophisticated reporting on covered requirements, broken requirements and requirements with no coverage.
• Round trip engineering: Keep your source/external requirements files and JFeature• Round trip engineering: Keep your source/external requirements files and JFeaturerequirements files in sync as your project proceeds.
• Refactoring: Keep your requirements files up-to-date when the unit tests are refactored
JFeat re 설치 방법JFeature 설치 방법
24Software Verification (소프트웨어검증)
JF t 설치방법(C t )JFeature 설치방법(Cont..)
25Software Verification (소프트웨어검증)
eclipse가설치된폴더의 plugins폴더안으로추가
JF t 설치방법 (C t )JFeature 설치방법 (Cont..)
JFeature추가확인
26Software Verification (소프트웨어검증)
JFeature추가확인
요구사항작성요구사항작성
27Software Verification (소프트웨어검증)
Report 생성Report 생성
JFeature를이용하면 JUnit의 Test Case 메소드와요구사항을연결시켜, 요구사항
28Software Verification (소프트웨어검증)
이얼마나반영되어서개발되어졌는가를 Report로확인