1.소프트웨어 개발방법론
0.소프트웨어 생명주기(Software Development Life Cycle, SDLC) 모델
- 시스템의 요구분석부터 유지보수까지 전공정 체계화한 절차
- 프로세스 : 요설구테유(요구사항분석-설계-구현-테스트-유지보수)
- 종류 : 폭프나반(폭포수waterfall, 프로토타이핑prototyping, 나선형spiral, 반복적iteration 모델)
-순차적,가장오래됨 -참조모델 -점진적,계위개고(계획및정의-위험분석-개발-고객평가) - 증분방식,병행개발
1.소프트웨어 개발방법론(Software development Methodology)
- 개발 전 과정에 지속적용 가능한 방법, 하나의 생명체로 간주하여 전과정 형상화한 방법론
1.1.구조적 방법론(Structured) - 기능따라 나누어 개발후 통합, 분할과 정복 접근방식
, 나씨-슈나이더만 차트(논리기술 중점 도형식 표현, 제어논리구조, 시각적 명확)
1.2.정보공학 방법론(Information Engineering) - 관리절차, 작업기법 체계화, 개발주기 이용 대형 프젝 수행
1.3.객체지향 방법론(Object-Oriented) - 객체단위 분석,설계, 사람이 이해하는 방식으로 객체,클래스,메시지 사용
1.4.컴포넌트기반 방법론(Component Based, CBD) - 컴포넌트 조립해 하나의 새 응용프로그램 작성
, 기간↓생산성↑확장성↑재사용o
1.5.애자일 방법론(Agile) - 절차<<<사람, 변화에 유연, 효율적 개발, 신속 적응적 경량 개발방법론
, 기존 개발방법론 한계 극복위해 등장
- 종류 : XP- 1~3주 반복 개발주기,가치(용단의피존(용기,단순성,의사소통,피드백,존중)), 기본원리(짝프로그래밍
,공통코드,지속적통합,계획,작은릴리즈,메타포어,간단디자인,테스트기반개발,리팩토링,40시간작업
,고객상주,코드표준)
, SCRUM- 매일 정해진 시간, 장소에서 짧은시간 개발하는 팀위한 프로젝트 관리 중심 방법론
, Lean- 도요타 린 시스템 품질기법, 낭비요소 제거(적기적시), JIT,칸반 보드 사용
1.6.제품계열 방법론(Product Line) - 공통된 기능정의, 임베디드 소프트웨어 작성, 영역,응용 공학