폭포수 모델 (Waterfall Model)
개발 생명주기를 계획, 분석, 설계, 구현, 테스트, 유지보수의 일련의 단계로 구성하여 순차적으로 진행하는 방법론
각 단계가 완료되어야 다음 단계로 진행할 수 있으며, 개발자들은 일정한 틀 안에서 개발을 진행
초기 비용을 줄일 수 있고 개발 단계마다 검증이 가능한 것이 장점
개발 초기 설계와 요구사항 분석에 대한 정확한 정보가 필요하며, 수정이 어려워지는 등의 단점이 있음
프로토타입 모델 (Prototype Model)
초기 개발 단계에서 시제품(프로토타입)을 만들고 검증하는 방법론
빠른 개발 및 수정이 가능하며, 최종 제품의 품질을 높일 수 있음
하지만 일부 개발 단계가 생략될 수 있고, 프로토타입 개발 후의 추가 개발 비용이 증가할 수 있음
애자일 개발 방법론 (Agile Development Methodology)
개발 과정에서 요구사항이 불확실하거나 변경될 가능성이 높은 경우에 적합한 방법론
작은 주기(스프린트) 단위로 개발하며, 반복적인 수정과 검증을 통해 최종 제품을 완성시킴
빠른 반응과 개선이 가능하며, 고객과의 의사소통이 원활하게 이루어지는 것이 장점
하지만 개발자의 노력과 시간 관리가 필요하며, 완성된 제품의 품질이 일관성이 없을 가능성이 있음
스크럼 (Scrum)
애자일 개발 방법론의 하나로, 개발 과정에서 일정한 주기를 가지고 빠른 반응과 개선이 가능하도록 하는 방법론
작은 팀 단위로 개발을 진행하며, 각 팀원은 역할을 분담하고 정해진 시간 내에 일정량의 작업을 완료시킴
팀 간의 분담이 끊어진 경우, 일부 팀원이 다른 팀원들과 협력하여 프로젝트를 진행하기 어려워질 수 있음
XP (Extreme Programming)
애자일 소프트웨어 개발 방법론 중 하나로, 빠른 개발과 변경에 대한 대처를 강조
사용자와 지속적으로 소통하며 빠르게 새로운 기능을 추가하고 테스트하는 것이 특징
Lean
일본의 토요타 생산 방식에서 영감을 받은 방법론
최소한의 비용으로 최대한의 가치를 창출하는 것을 목적
고객의 요구 사항을 파악하고 이를 최소한의 낭비로 만족시키는 방식으로 개발하는 것이 특징
Spiral Model
반복적인 개발 방법론 중 하나로, 위험 관리를 중요시하며 개발 과정을 여러 단계로 나누어 점진적으로 개선하는 것을 강조
요구 사항 수집, 분석, 설계, 구현, 테스트, 배포 등의 단계를 반복적으로 수행하는 것이 특징
RAD (Rapid Application Development)
빠른 속도로 애플리케이션을 개발하는 것을 목표로 하는 방법론
전체적인 개발 과정을 줄이기 위해 사용자와 개발자 간의 의사소통을 강화하고, 기능을 빠르게 개발하고 수정하는 것을 강조
시스템 개발 수명 주기를 줄이기 위해 프로토타입을 사용하기도 함
'Web > tip' 카테고리의 다른 글
[error] Spring Boot jUnit Test : JPA metamodel must not be empty! (0) | 2023.03.18 |
---|---|
[Linux] 간단한 명령어 정리 (0) | 2023.03.17 |
[Spring] @Bean 과 @Component (0) | 2023.03.07 |
[McAfee Web Gateway] MWG 란 (0) | 2023.03.06 |
[Spring Batch] 대용량 데이터 처리 간단한 예제 (0) | 2023.03.06 |