Presentation is loading. Please wait.

Presentation is loading. Please wait.

요구사항 추적성을 위한 소프트웨어 프로세스 가시화 구축 자동화 (Automatic Construction of Software Process Visualization for Requirement Traceability) 2017. 11. 04. 홍익대학교 소프트웨어공학.

Similar presentations


Presentation on theme: "요구사항 추적성을 위한 소프트웨어 프로세스 가시화 구축 자동화 (Automatic Construction of Software Process Visualization for Requirement Traceability) 2017. 11. 04. 홍익대학교 소프트웨어공학."— Presentation transcript:

1 요구사항 추적성을 위한 소프트웨어 프로세스 가시화 구축 자동화 (Automatic Construction of Software Process Visualization for Requirement Traceability) 홍익대학교 소프트웨어공학 연구실 이진협 지도교수 : 김영철

2 목차 1 연구 배경 2 관련 연구 3 소프트웨어 프로세스 가시화 구축 자동화 4 적용 사례 5 결론 및 향후 연구

3 1 연구 배경

4 연구 배경 – V Model Validation(검증) Verification(확인) 요구사항 분석 설계 구현
사용자 승인 Test 시스템 Test 통합 Test 단위 Test Verification(확인) Validation(검증)  V 모델은 개발 생명주기의 각 단계와 그에 상응하는 소프트웨어 테스트 각 단계의 관계를 보여준다.

5 요구사항 -> 유스케이스 -> 유스케이스 시나리오 -> 객체 -> 메소드
연구 배경 – 소프트웨어 프로세스 산출물 추적 R1 R2 R3 UC1 UC2 UC3 UC1 UC2 UC3 US1 US2 US3 US1 US2 US3 Obj1 Obj2 Obj3 Obj1 Obj2 Obj3 Meth1 Meth2 Meth3 요구사항 -> 유스케이스 -> 유스케이스 시나리오 -> 객체 -> 메소드 개발단계에서 객체지향적으로 유스케이스 방법론 사용 순차적 다이어그램을 통한 쉽게 추적이 가능한 메카니즘 소프트웨어 개발에는 요구사항 변경이 너무 잦다. 문제는 요구사항과 다른 프로그램을 만드는것. Verification/ Validation

6 연구 배경 – 개발 프로세스 시스템 구축 체인화 소스코드 자동 빌드도구 프로젝트 관리도구 이 외 도구들 버전관리 도구
소프트웨어 개발에는 요구사항 변경이 너무 잦다. 문제는 요구사항과 다른 프로그램을 만드는것. Verification/ Validation 요구사항 추적을 위해 통합 개발 프로세스 시스템 구축과 적용 필요 Redmine, Jenkins, MySQL, Apache, PHP 등 체인화 필요 하지만, 각 파트별 도구 선택, 도구 설치 방법, 버전에 따른 호환성 문제 등으로 구축이 어려움 소프트웨어 개발 프로세스 구축 자동화를 통해 쉽게 구축하여 개발 성숙도를 높이고자 함

7 2 관련 연구

8 관련 연구 - Redmine 웹 기반 오픈 소스 프로젝트 관리 도구
레드마인 젠킨스 Subversion 웹 기반 오픈 소스 프로젝트 관리 도구 프로젝트 관리, 요구사항 관리, 이슈/변경/테스트 관리 등의 기능을 제공 Customizing과 plug-in을 통해 원하는 형태의 프로젝트 관리 수행 가능

9 관련 연구 - Jenkins 소스코드 자동 빌드 빌드 시 batch command 수행 가능 -> 특정 프로그램 실행
레드마인 젠킨스 Subversion 소스코드 자동 빌드 빌드 시 batch command 수행 가능 -> 특정 프로그램 실행

10 관련 연구 - Subversion(SVN) & Subclipse
레드마인 젠킨스 Subversion Subclipse 소스코드 버전 관리 Eclipse에서 Subversion을 사용할 수 있도록 지원

11 3 소프트웨어 프로세스 가시화 구축 자동화

12 소프트웨어 프로세스 가시화 구축 자동화 구축 자동화를 위해 사용된 소프트웨어
NSIS(Nullsoft Scriptable Install System) : 스크립트 기반의 윈도우용 설치 프로그램 Eclipse : 체인화에 필요한 연결 정보 입력을 위한 코딩 JSmooth : Java Jar 파일을 EXE 파일에 래핑 Bat To Exe Converter : NSIS에서 Batch 파일 실행이 어려워 EXE로 변환

13 소프트웨어 프로세스 가시화 구축 자동화 구축 자동화 구조도 Subversion Subclipse
JDK 32bit JAVA_HOME PATH JDK 64bit 환경변수 자동 설정 Step 2 : Redmine 설치 Step 1 : (미설치 시) JDK 설치 Subversion Subclipse Step 6 : Jenkins 설치 Step 5 : Subclipse 설치 Step 3 : Subversion 설치(SVN) Step 7 : WebSource Code 배포 WebSourceCode.zip SubversionSetting.exe Step 4 : Subversion 환경설정 Apache에 Web 소스코드 배포 Subversion 자동 환경설정

14 소프트웨어 프로세스 가시화 구축 자동화 구축 과정 Subversion Redmine JDK Subclipse Jenkins
Subversion Setting 완료

15 소프트웨어 프로세스 가시화 구축 자동화 완료 후 초기화면

16 소프트웨어 프로세스 가시화 구축 자동화 빌드를 위한 Jenkins 와 Subversion(SVN) 연결

17 소프트웨어 프로세스 가시화 구축 자동화 NSIS 소스코드 Installer 정보 입력 및 설정 기존 JDK 설치여부 확인,
없으면 window bit 자동 확인 후 설치

18 소프트웨어 프로세스 가시화 구축 자동화 NSIS 소스코드

19 4 적용 사례

20 적용 사례 – Architecture Visualization
Dash Board Apache php MySQL Bitnami(Redmine) Redmine Apache Tomcat(jsp) File (설정파일 및 로그) Jenkins Bitnami(Jenkins) PAL Batch Toolchain XML XSLT 계획서 Process Asset Library PMD Rule Checker Source Code Coupling/Maintainability SQLite Subversion Zoom In/Out Zoom In / Zoom Out User Action

21 적용 사례 – 요구사항 추적 요구사항 분석 설계 구현

22 5 결론 및 향후 연구

23 결론 및 향후 연구 결론 사용자의 요구사항에 충족하지 못하거나 빈번한 요구사항 변경으로 인해, 전 단계에서의 변경이 요구되지만 각 단계에서 영향 받는 데이터 파악 어려워, 요구사항 추적이 필요 요구사항 추적을 위한 소프트웨어 개발 프로세스 시스템 구축이 필요 하지만, 각 파트별 도구 선택, 도구 설치 방법, 버전에 따른 호환성 문제 등으로 인해 구축이 어려움 소프트웨어 프로세스 가시화 구축 자동화를 통해 시스템 구축 가능 프로젝트 개발 성숙도를 높임으로써, 요구사항 변경에도 연관 정보에 의한 추적성을 이용해 비교적 쉽게 찾아낼 수 있음 향후 연구 LDAP 인증 사용 -> Redmine, Jenkins 등 통합 로그인 링크가 아닌 Dash Board 형태 -> 추적에 더 용이 Bitnami를 이용하지 않고 Redmine, Jenkins 설치와 통합 DB -> plug&play

24 Q&A Thank You


Download ppt "요구사항 추적성을 위한 소프트웨어 프로세스 가시화 구축 자동화 (Automatic Construction of Software Process Visualization for Requirement Traceability) 2017. 11. 04. 홍익대학교 소프트웨어공학."

Similar presentations


Ads by Google