[SW] 소프트웨어 개발 단계
크게 SW 개발 단계는 아래와 같이 나눠져 있다.
계획 – 요구 분석 – 설계 – 구현 – 테스트 – 반영 – 유지보수
여기서 프로세스 단계를 어떻게 하느냐에 따라 여러 모델이 있고, 프로젝트 성향에 맞는 모델을 정하고 표준 절차를 따라가면 된다.
우리 회사는 큼직한 프로젝트는 보통 폭포수 모델을 따르고,
자잘한 개선 건 같은 경우는 진화적 프로세스 모델 을 따른다.
- 폭포수 모델 : 폭포에서 물이 떨어지듯이 앞 단계에서 다음 단계로 넘어가는 개발 방식을 폭포수 모델(Waterfall Model)이라고 하며, 고전적 생명주기(Classic Life Cycle)라고도 한다. 이 모델은 소프트웨어 공학의 대명사로 여겨질 만큼 소프트웨어 프로세스 개발 초기에 등장한 전통적인 모델이다. 공장 생산 라인의 작업 프로세스와 유사한데, 소프트웨어 개발의 표준적인 프로세스를 정하여 소프트웨어를 순차적으로 개발한다.
[네이버 지식백과] 요약 (쉽게 배우는 소프트웨어 공학, 2015. 11. 30., 한빛아카데미(주))
=> 큰 프로젝트 같은 경우 하나의 단계를 진행하고 피드백이 거쳐지면서 마무리 되면 그다음을 진행한다.
많은 업무단이 공동으로 작업하다보니 개발도중 변경되면서 진행이 지연되는 일이 없도록 하기 때문인 것 같다. 혹은 이미 정해져있는 프로젝트를 개발하는 경우 이 폭포수 모델을 사용하는 것 같다.
- 진화적 프로세스 모델 : 진화적 프로세스 모델의 특징은 프로토타입을 만들어 사용자 요구 사항을 점증적으로 반영한다는 것이다. 우선 개발자는 사용자 요구 사항에 따라 가상으로 실행되는 초기 버전의 프로토타입을 만들고, 사용자는 사용자 인터페이스 중심의 화면과 실행 후 나타나는 가상의 결과 화면을 확인한다. 그런 다음 개발자는 변경·추가된 사용자 요구 사항을 반영하여 2차 프로토타입을 만들어 사용자에게 보여준다. 이 같은 작업을 반복하여 최종 제품을 완성시키는 모델이다.
[네이버 지식백과] 요약 (쉽게 배우는 소프트웨어 공학, 2015. 11. 30., 한빛아카데미(주))
대학교 다닐 때 SW공학 수업에서 애자일 프로세스 모델을 따라 홈페이지 만들기를 해보았는데.. 그닥 좋은 프로세스는 아니였던 경험이 있다.
(계속 계획만 변경하고 결국 막판에 몰아서 개발하게 되었던…)
✅ @ekkim, I gave you an upvote on your post! Please give me a follow and I will give you a follow in return and possible future votes!
Thank you in advance!
please upvote to me thank, followback