와이유스토리

[소프트웨어공학] 2. 소프트웨어 생명주기(SDLC) 본문

컴퓨터공학/소프트웨어공학

[소프트웨어공학] 2. 소프트웨어 생명주기(SDLC)

유(YOO) 2022. 9. 18. 23:24

1. 소프트웨어 생명주기(SDLC : Softward Development Life Cycle)

소프트웨어의 생성에서 소멸까지의 모든 과정을 체계화한 절차

각 단계별 주요활동과 산출물을 통해 프로젝트의 진행 방향 명확하게 파악 가능하고, 관리가 용이하다.

2. 소프트웨어 생명주기

1) 정의 단계

  • 타당성 검토 : 소프트웨어가 법적, 경제적, 기술적으로 구축 가능한가, 구축할 가치가 있는지 검토
  • 개발 계획 : 자원 산출, 장소, 인력, 기간 등 대략적인 계획
  • 요구사항 분석(Specification)
  • 시스템 명세

2) 개발 단계

  • 설계(Design) : 소프트웨어 아키텍쳐, 프레임워크, 인프라 구성
  • 구현(Implementation) : 설계된 내용으로 세부 기능 구현
  • 테스트(Testing), 확인(Validation) : 에러 없이 정상적으로 동작하는지 확인

2) 유지보수 단계

  • 유지보수(Maintenance), 진화(Evolution) : 추가 개선사항, 시간과 비용이 가장 많이 투입된다.

3. SDLC 모델

  • 폭포수 모델 : 각 단계 마무리 후 다음 단계로 넘어간다. 단순하나 요구사항 변경이 어렵다. 선형 순차적 모형. 고전적 생명주기  모형
  • 프로토타이핑 모델 : 프로토타입을 구현해 개발 과정에서 사용자의 요구를 충분히 반영한다.
  • 점증적 개발 모델 : 단계적 개발 방법. 중요한 기능 먼저 개발 후 추가 기능 개발하는 방식을 반복한다.
  • 나선형 모델 : 위험을 최소화하기 위해 점진적으로 개발한다. 계획수립-위험분석-개발 및 검증-고객평가
  • 반복적 모델 : 구축 대상을 나누어 병렬적으로 개발 후 통합, 반복적으로 개발한다.
  • V모델 : 테스트와 검증 중요. 사용자 요구 명세서-시스템 설계-단위 설계-코드 / 단위 테스트-통합 테스트-시스템 테스트-인수 테스트
  • 애자일 모델

 

Comments