ScholarGate
어시스턴트

소프트웨어 개발 생명 주기

소프트웨어 개발 생명 주기(SDLC)는 초기 개념 및 요구사항부터 설계, 구축, 테스트, 배포 및 최종 폐기에 이르기까지 소프트웨어 시스템이 진행되는 종단 간(end-to-end) 단계의 순서입니다.

PaperMind(으)로 주제 찾기곧 제공Find papers & topics
Tools & resources
슬라이드 다운로드
Learn & explore
동영상곧 제공

Definition

소프트웨어 개발 생명 주기는 소프트웨어 개발을 정의된 단계로 분할하는 구조화된 프레임워크로, 각 단계는 진입 및 종료 기준, 인도물 및 활동을 가지며, 소프트웨어의 생산 및 진화를 계획, 제어 및 추론하는 데 사용됩니다.

Scope

이 주제는 계획, 요구사항 분석, 설계, 구현, 테스트, 배포 및 유지보수의 정식 SDLC 단계; 이러한 단계를 배열하는 표준 모델(폭포수, V-모델, 점진적, 반복적, 나선형); 각 단계에서 생성되는 산출물; 그리고 ISO/IEC/IEEE 12207과 같은 생명 주기 프로세스 표준을 다룹니다.

Core questions

  • 생명 주기를 구성하는 단계는 무엇이며 각 단계는 어떤 산출물을 생성하는가?
  • 다양한 생명 주기 모델은 이러한 단계를 어떻게 배열하고 반복하는가?
  • 단계 간 전환을 통제하는 진입 및 종료 기준은 무엇인가?
  • 생명 주기는 배포를 넘어 운영, 유지보수 및 폐기로 어떻게 확장되는가?

Key theories

단계별 생명 주기 구조
개발은 정의된 인도물과 검토 게이트를 가진 개별 단계(요구사항, 설계, 구현, 테스트, 배포, 유지보수)로 분해되어 계획, 추정 및 제어의 기반을 제공합니다.
V-모델 검증 매핑
V-모델은 각 구축 단계를 해당 테스트 단계(단위, 통합, 시스템, 인수)와 짝지어 검증 및 확인이 사양 및 설계의 명시적인 대응물이 되도록 합니다.

Clinical relevance

잘 정의된 생명 주기는 예측 가능성, 추적성 및 품질 관리를 향상시키고, 비용 및 일정 추정을 지원하며, 감사 가능한 개발 프로세스를 요구하는 조달 및 규제 체제에 의해 종종 의무화됩니다.

Evidence & guidelines

ISO/IEC/IEEE 12207:2017은 소프트웨어 생명 주기 프로세스를 정의하는 주요 국제 표준이며, 계약 및 품질 시스템에서 널리 참조됩니다.

History

정렬된 개발 단계 집합의 개념은 프로젝트가 너무 커져서 즉흥적인 구축이 어려워지면서 1960년대 후반과 1970년대에 공식화되었습니다. 이후 모델들은 반복과 위험 관리를 추가했으며, 표준화 노력은 1990년대에 ISO/IEC 12207과 그 이후 개정판을 만들었습니다.

Key figures

  • Winston W. Royce
  • Barry Boehm

Related topics

Seminal works

  • royce1970
  • iso12207
  • sommerville2015

Frequently asked questions

SDLC는 폭포수 모델과 동일한가요?
아닙니다. SDLC는 소프트웨어가 거치는 일반적인 단계 집합이며, 폭포수 모델은 이러한 단계를 순차적으로 배열하는 특정 방식 중 하나입니다. 애자일, 반복적, 나선형 모델은 동일한 근본적인 단계를 다른 순서와 주기로 거칩니다.
생명 주기는 배포에서 끝나는가요?
아닙니다. 운영, 유지보수 및 최종 폐기는 필수적인 생명 주기 단계입니다. 대부분의 시스템에서 유지보수 및 진화가 총 비용을 지배하고 생명 주기 중 가장 긴 기간을 차지합니다.

Methods for this concept

Related concepts