프로그래밍/CS
[소프트웨어 공학] 소프트웨어 프로세스 - 반복진화형, 프로토타이핑
Julja
2023. 1. 1. 23:11
반복진화형 모델
- 장점
- 초기 버전을 통해 점차적으로 명확한 요구사항 도출
- 단점
- 개발 비용 및 종료 시점 예상 어려움
- 잦은 수정으로 유지보수 단계에서 문제가 생길지도..
프로토타이핑
- throwaway prototyping : 프로토타입을 고객과의 의사소통 수단으로만 사용
- evolutionary prototyping : 계속적으로 발전시켜 완제품 만드는 방법
- 장점
- 소프트웨어 요구사항 파악에 용이
- 프로젝트 실현 가능성 판단 가능
- 개발자-사용자 간 의사소통 명확
- 사용자 교육 효과
- 개발 단계에서 유지보수 효과
- 단점
점증적 모델
- 선형 순차 모델 여러번 적용하고 그 결과를 조합하는 것
- 증분
- 장점
- 중요 증분 선 개발 -> 시스템을 빠르게 사용해볼 수 있음
- 요구사항 변화 대응 유리
- 단점
- 기능적, 적당한 크기로 분해하기 어려울 수 있음
- 증분 개발 전 요구사항 정의 필요
나선형 모델
- 전체 생명 주기에 위험 분석
- 프로토타이핑 계획하고 사용하여 위험 최소화
- 고려사항
- 위험관리 지원하는 프로세스 프레임워크
- 실험적이고 복잡한 대형 프로젝트에 적합
- 장점
- 대형 프로젝트에서 성공 가능성을 높여줌
- 변형 용이
- 단점
- 충분한 검증 X
- 복잡한 모델
- 프로젝트 관리 어려움
V 모델
- 폭포수 모델 확장형
- 생명주기 단계 별 테스트 단계 존재 -> 테스트 ↑
애자일 방법
- 요구사항 변하기 쉬운 중소형 비즈니스 시스템이나 전자상 거래 응용에 적합
- 익스트림 프로그래밍
- 빠른 피드백
- 지속적인 개선
- 고객도 팀
- 짝 프로그래밍
- 테스트 선행 개발
- 리팩토링
- 스크럼
- 애자일 개발 과정의 관리 프레임워크
- 스프린트 사이클(작은 프로젝트, 3-9명의 팀, 회의)
| 반복진화형 모델 |
점증적 모델 |
| 요구사항이 불안정하고 불명확할 때 |
요구사항 중요도에 따라 작업 순서 정함 |
| 새로운 기술 적용할 때 |
-> 중요한 요구사항 먼저 개발 |
| 한꺼번에 모든 기능 포함하여 인도 |
여러번의 배포 |
'프로그래밍/CS' Related Articles