소프트웨어 개발 프로세스
2.1 소프트웨어 개발 프로세스의 이해
프로세스는 일이 처리되는 과정이나 절차를 뜻한다. 소프트웨어를 개발할 때 수행하는 일의 작은 단위를 작업(task)라고 하는데, sw 개발 프로세스는 이 작업 순서의 집합이라고 할 수 있다. 소프트웨어 프로세스는 개발에 필요한 절차, 과정 그리고 구조 뿐만 아니라 이것들을 수행하는 방법, 도구, 개발 관련 참여자까지도 포함하는 개념이다.
2.2 소프트웨어 프로세스 모델의 이해
소프트웨어 프로세스 모델은 SDLC(Software Development Life Cycle)라고도 한다. 소프트웨어를 어떻게 개발할 것인가에 대한 전체적인 흐름을 체계화한 개념으로 계획 수립부터 폐기까지의 전 과정을 다루고 있다. 이의 목적은 안정적이고 효율적으로 고품질의 소프트웨어를 개발하는데 있다. 또한 이의 역할은 프로젝트에 대한 전체적인 골격을 세워주는데 있다. 따라서 일정 계힉 수립, 개발 비용 산정, 의사소통 기준 확립, 용어의 표준화 및 표준화된 산출물 생성 등이 가능하다.
2.3 주먹구구식 모델
주먹구구식 모델은 build and fix 모델 또는 code and fix 모델이라고도 한다. 주먹구구식 모델은 공식적인 프로세스가 없는 개발 방식으로 요구 분석 명세서나 설계 단계 없이 간단한 기능만을 정리하여 개발하는 방식이다. 이는 한명의 개발자에 의해 수행되는 프로젝트에 한해 사용된다. 예를 들어 대학 수업의 텀 프로젝트와 같은 경우, 별다른 프로세스 없이 주먹구구식으로 개발 가능하다.
하지만 주먹구구식 모델은 정해진 개발 순서나 문서화된 산출물이 없기에 유지 보수에 큰 어려움이 따른다. 또한 프로젝트 진행상황, 협업, 가독성 등 여러 방면에서 문제가 생긴다. 하여 실제 현장에서 사용하기에는 문제가 많은 모델이다.
2.4 선형 순차적 모델 (폭포수 모델)
2.4.1 폭포수 모델 정의 및 개발 절차
2.4.2 폭포수 모델의 장점과 단점
2.5 V 모델
2.6 진화적 프로세스 모델
2.7 나선형 모델
2.8 단계적 개발 모델
2.9 통합 프로세스 모델
2.10 애자일 모델
'CS 강의 > 소프트웨어 공학' 카테고리의 다른 글
소프트웨어 개발 계획 (0) | 2021.03.30 |
---|---|
소프트웨어 개발 생명 주기(SDLC) (0) | 2021.03.10 |