애자일 개발 방법을 이용한 임베디드 시스템 개발 및 확장 사례 연구 : 익스트림 프로그래밍과 스크럼을 이용한 임베디드 소프트웨어 개발
A Case Study on Development and Expansion of Embedded System Using Agile Method
- 주제(키워드) Agile , 익스트림프로그래밍 , 스크럼 , 임베디드 소프트웨어
- 발행기관 정보통신대학원
- 지도교수 임인성
- 발행년도 2009
- 학위수여년월 2009. 8
- 학위명 석사
- 학과 정보통신대학원 소프트웨어공학
- 실제URI http://www.dcollection.net/handler/sogang/000000045286
- 본문언어 한국어
- 저작권 서강대학교의 논문은 저작권에 의해 보호받습니다
초록/요약
최근 IT 분야에서의 소프트웨어 비중은 급격히 커지고 있다. 제품에 가치를 판단 하는 기준이 하드웨어에서 소프트웨어로 점점 옮겨 가고 있는 것 이다. 그 속도는 점점 빨라 지고 있다. 이로 인해 많은 회사에게 소프트웨어 개발의 성공 여부가 그 회사의 흥망을 결정 짓는 중요한 요소가 되었다. 실패하지 않는 소프트웨어 개발. 이를 위한 노력은 1970년도에서부터 소프트웨어 공학이라는 이름 안에서 계속 되어 왔다. 그 결과물로 폭포수(waterfall), 나선형(spiral), 진화적(evolutionary), 반복적(incremental) 개발방법 등 수많은 개발 방법이 등장하게 되었다. 하지만 많은 노력과 열망에도 불구하고 결과는 노력만큼 좋지 못했다. 그 이유는 위의 모든 개발 방법이 프로젝트 개발 시작 시부터 필요한 자원과 비용을 산정하고 모든 소프트웨어 구조를 설계를 해야 한다는 태생적 한계 때문 이었다. 이를 해결 하기 위해 2000년대부터 새로운 패러다임으로써 애자일(agile) 개발방법이 대두 되기 시작하였다. 애자일 개발 방법은 기존의 개발방법과는 다르게 짧은 개발 주기, 점진적 계획 접근, 자동화 된 테스트등을 통해 프로젝트를 성공적으로 이끄는 기민하고 경량화된 개발 방법이다. 지금까지 애자일 개발방법이 사용되고 검증된 소프트웨어분야는 주로 웹 어플리케이션, 일반 패키지 소프트웨어분야 였다. 하지만 최근 소프트웨어 업계의 최대 이슈인 분야는 임베디드 소프트웨어 할 수 있다. 본 논문에서는 임베디드 시스템 개발을 위한 애자일 개발 방법 적용과 확장 사례에 대해 논의하겠다. 또한 기존의 개발 방법과의 비교 분석을 위해 실제 카메라 모듈을 빅뱅 개발 방법과 애자일 개발 방법을 이용하여 개발 할 것이다.
more초록/요약
Recently the importance of software in the field of Information Technology has been growing significantly. A basis to determine the value of the product is gradually moving from hardware to software. Lately this change is adding up more speed. Consequently for many companies, whether it successfully develops the software became crucial to its survival. Many developers have been continuing their efforts to create the software that sells under the name of software engineering since 1970s. As a result, several method of software development, such as waterfall, spiral, evolutionary, incremental were invented. Although many strong efforts were made by series of developers, the result was not pleasing. It was mainly because every process above had the essenstial limit as the developers need to make an estimate on the amount of required resource/cost and plan the entire software structures. In order to solve this problem, since 2000s, agile method came to the front as a new paradigm in the software development. Different from other types of development process, agile method is a fast and light-weight mechanism that guarantees project success with short development cycle, gradual development approach, and automated testing. Agile method was mainly used and tested in the field of web-application and general package software. Yet the biggest issue in the software business is embedded software. This paper will suggest ways to apply agile method in developing embedded software and discuss plans to extream programming and its usage. Also, it verifies suggested means by applying it to actual embedded software development (camera capture module) for comparing previous development method.
more

