목록Software Engineering (6)
Arthur's Blog
📌 정의 서비스 개발 중 지속적으로 개선을 시도할 수 있도록 스프린트(Sprint)라는 짧은 개발 사이클을 활용하는 프로젝트 관리 방법론. 🏃♀️ 스프린트 스크럼 패턴을 따르는 일정한 기간(2주 ~ 30일) 스프린트 중에 모든 개발 작업은 스프린트 백로그에 있는 아이템만을 구축하는데 집중한다. 👷♀️ 역할 1. 제품 책임자 무엇을 할 건지, 왜 하는지에 대해 결정하는 결정권자. 제품 백로그(product backlog)를 관리. 사용자가 필요로 하는 내용을 반영하고, 백로그 아이템을 추가, 제거, 우선순위 재조정 등 제품 백로그를 지속적으로 관리하면서 프로젝트가 제대로 진행되도록 만들어간다. 2. 스크럼 마스터 스크럼을 잘 수행할 수 있도록 객관적인 시각에서 조언을 해주는 가이드 역할을 수행. 제품 ..
📌 정의 사용자의 요구사항을 정확히 파악하기 위해 실제 개발될 소프트웨어에 대한 Prototype을 만들어 최종 결과물을 예측하는 모형이다. Prototype은 User와 System사이의 인터페이스에 중점을 두어 개발한다. ♻ 순서 요구 수집 빠른 설계 프로토타입 구축 고객 평가 프로토타입 조정 구현
구분 폭포수 모형 애자일 모형 새로운 요구사항 반영 어려움 지속적으로 반영 고객과의 의사소통 적음 지속적임 테스트 마지막에 모든 기능을 테스트 반복되는 일정 주기가 끝날 때 마다 테스트 개발 중심 계획, 문서(매뉴얼) 고객
📌 정의 폭포에서 한 번 떨어진 물은 거슬러 올라갈 수 없듯이 소프트웨어 개발도 이전 단계로 돌아갈 수 없다는 전제하에 각 단계를 확실히 매듭짓고, 그 결과를 철저하게 검토하여 승인 과정을 거친 후에 다음 단계를 진행하는 개발 방법론이다. 전통적인 소프트웨어 생명주기 모형이고, 고전적 생명 주기 모형이라고도 한다. 한 단계가 끝나야만 다음 단계로 넘어갈 수 있는 선형 순차적 모형이다. 두 개 이상의 과정이 병행하여 수행되지 않는다. ▶ 순서 타당성 검토 계획 요구 분석 설계 구현 검사(시험) 유지보수
📌 정의 고객의 다양한 요구사항의 변화에 유연하게 대응하기 위해 일정한 개발 주기를 반복하는 것이 핵심. 교객의 요구사항 변화에 유연하게 대응할 수 있도록 일정한 주기를 반복하면서 개발과정을 진행한다. 고객과의 소통에 초점을 맞춘 방법론. 스프린트(sprint) 또는 이터레이션(iteration)이라고 불리는 짧은 개발 주기를 반복하며, 고객의 평가와 요구를 적극 수용한다. 각 개발 주기에서는 고객의 요구사항에 우선순위를 부여하여 개발 작업을 진행한다. 소규모 프로젝트, 급변하는 요구사항에 적합하다. 애자일 모형을 기반으로 하는 소프트웨어 개발 모형에는 스크럼(Scrum), XP(eXtream Programming) 등이 있다. ♻ 순서 개발 설계 테스트 를 반복하면서 수행 및 유지보수를 한다.
📌 정의 폭포수 모형과 프로토타입 모형의 장점에 위험 분석 기능을 추가한 모형. 나선을 돌듯이 여러 번의 소프트웨어 개발 과정을 거쳐 점진적으로 완벽한 최종 소프트웨어를 개발하는 것, 점진적 모형이라고도 한다. 개발하면서 발생할 수 있는 위험을 관리하고 최소화하는 것을 목적으로 한다. 점진적으로 개발 과정이 반복되므로 누락되거나 추가된 요구사항을 첨가할 수 있다. ♻ 순서 계획 및 정의 위험 분석 공학적 개발 고객 평가 위의 순서를 계속적으로 반복하는 것.