프론트엔드/정보처리기사

[정치기] 용어 정리 - 소프트웨어 모델, 방법론 ,XP 정리

병걸 2023. 3. 29. 16:24

소프트웨어 생명주기 모델 (SDLC) : 시스템 요구분석부터 유지보수까지 전 과정을 체계화한 절차

폭포수 모델 : 소프트웨어 개발 시 각 단게를 확실히 마무리 지은 후에 다음 단계로 넘어가는 모델

프로토타이핑 모델 : 고객이 요구한 주요 기능을 프로토타입으로 구현하여, 고객의 피드백을 반영하여 소프트웨어를 만들어가는 모델

나선형 모델 : 시스템 개발 시 위험을 최소화하기 위해 점진적으로 완벽한 시스템으로 개발해 나가는 모델

반복적 모델 : 구축 대상을 나누어 병렬적으로 개발 후 통합하거나, 반복적으로 개발하여 점증 완성시키는 SDLC 모델

소프트웨어 개발방법론 : 소프트웨어를 하나의 생명체로 간주하고 소프트웨어 개발의 시작부터 시스템을 사용하지 않는 과정까지의 전 과정을 형상화한 방법론

구조적 방법론 : 전체 시스템을 기능에 따라 나누어 개발하고, 이를 통합하는 분할과 정복 접근 방식의 방법론, 대표적으로 나씨-슈나이더만 차트 사용

나씨-슈나이더만 차트 : 논리의 기술에 중점을 둔 도형식 표현 방법

정보공학 방법론 : 정보시스템 개발에 필요한 관리 절차와 작업 기반을 체계화한 방법론

객체지향 방법론 : '객체'라는 기본 단위로 시스템을 분석 및 설게하는 방법론

컴포넌트 기반 방법론 : 소프트웨어를 구성하는 컴포넌트를 조립해서 하나의 새로운 응용 프로그램을 작성하는 방법론

애자일 방법론 : 절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템을 개발할 수 있는 신속 적응적 경량 개발방법론

제품 계열 방법론 : 특정 제품에 적용하고 싶은 공통된 기능을 정의하여 개발하는 방법론

 

XP : 의사소통 개선과 즉각적 피드백으로 소프트웨어 품질을 높이기 위한 방법론

XP의 5가지 가치 : 피드백(Feedback), 존중(Respect), 용기(Courage), 단순성(Simply), 의사소통 (Communication)

XP의 12가지 원리 :

- 짝 프로그래밍 : 다른 사람과 함께 수행

- 공동 코드 소유 : 권한과 책임을 공동으로 소유

- 지속적인 통합 : 하나의 작업이 마무리될 때마다 지속적으로 통합

- 계획 세우기

- 작은 릴리즈

- 메타포어

- 간단한 디자인

- 테스트 기반 개발

- 리팩토링 : 소프트웨어 모듈의 외부적 기능은 수정하지 않고 내부적인 구조, 관계등을 간순화하여 소프트웨어의 유지보수성을 향상시키는 기법

- 40시간 작업

- 고객 상주

- 코드 표준