본문 바로가기
컴퓨터 | IT

시스템 개발 수명 주기(System Development Life Cycle : SDLC)

by 호기심심풀이 2021. 2. 5.
반응형

시스템 개발 수명 주기(System Development Life Cycle : SDLC)

 

SDLC(System Development Life Cycle)

SDLC(System Development Life Cycle)는 시스템 엔지니어링, 정보 시스템 및 소프트웨어 엔지니어링에서 애플리케이션 개발 수명 주기라고도 하며 정보 시스템을 계획, 생성, 테스트 및 배포하는 프로세스이다. 시스템 개발 수명주기 개념은 시스템이 하드웨어, 소프트웨어 또는 둘 모두의 조합으로 구성될 수 있기 때문에 다양한 하드웨어 및 소프트웨어 구성에 적용된다. 이 주기에는 일반적으로 요구사항 분석, 설계, 개발 및 시험, 구현, 문서화 및 평가의 단계가 있다.

SDLC - Software Development Life Cycle - Author Cliffydcw

이 파일은 Creative Commons Attribution-Share Alike 3.0 Unported 라이선스에 따라 사용이 허가되었습니다 .

컴퓨터 시스템은 복잡하고 서로 다른 소프트웨어 공급업체가 잠재적으로 공급하는 여러 기존 시스템을 연결하는 경우가 많다. 이러한 복잡성 수준을 관리하기 위해 폭포수, 나선형, 애자일 소프트웨어 개발, 신속한 시제품 제작, 증분 및 동기화 및 안정화와 같은 여러 SDLC 모델 또는 방법론이 생성되었다.

SDLC는 민첩성과 반복적, 순차적 방법론의 스펙트럼을 따라 기술될 수 있다.

XP 및 Scrum과 같은 신속한 변화를 위한 방법론은 개발 주기에 따라 빠른 변화를 가능하게 하는 경량 프로세스에 초점을 맞춘다.

Rational Unified Process 및 동적 시스템 개발 방법과 같은 반복적 방법론은 제한된 프로젝트 범위에 초점을 맞추고 여러 번 반복하여 제품을 확장 또는 개선한다.

폭포수와 같은 순차적 또는 빅 디자인 업프론트(BDUF) 모델은 성공적이고 예측 가능한 결과로 대규모 프로젝트와 위험을 안내하기 위해 완전하고 정확한 계획에 중점을 둔다.

단계(Phases)

SDLC는 계획, 분석, 설계 및 구현과 같이 개발자에게 필수적인 중요한 단계를 제공한다. 여기에는 현재 사용되는 시스템의 평가, 정보 수집, 타당성 조사 및 승인 요청 등이 포함된다. 폭포수, 분수, 나선형, 빌드 및 픽스, 신속한 시제품 제작, 증분, 동기화 및 안정화를 포함한 여러 SDLC 모델이 제작되었다. 이 중 가장 오래되고 가장 잘 알려진 것은 각 단계의 출력이 다음 단계의 입력이 되는 일련의 단계인 폭포 모델이다. 이러한 단계는 다음과 같은 다양한 방법으로 특성화하고 나눌 수 있다.

¤ 예비 분석

예비 분석부터 시작하고, 대체 솔루션을 제안하며, 비용과 편익을 설명하고, 권고 사항과 함께 예비 계획을 제출한다.(1) 예비 분석 : 조직의 목표와 연구 대상 문제의 성격 및 범위를 확인. 문제가 조직 자체의 작은 부분만을 언급하더라도 조직 자체의 목적이 무엇인지 파악한다.
(2) 대안 솔루션 제안: 조직의 목표와 특정 문제를 조사한 후 몇 가지 솔루션이 발견되었을 수 있다. 그러나 직원, 고객, 공급업체 및/또는 컨설턴트와의 인터뷰에서도 대체 제안이 나올 수 있다. 또한 경쟁업체가 무엇을 하고 있는지 조사함으로써 통찰력을 얻을 수 있다.
(3) 비용 편익 분석: 제안된 변경사항 구현의 비용 및 이점을 분석하고 설명한다. 결국 시스템을 그대로 둘 것인지, 개선할 것인지, 새로운 시스템을 개발할 것인지에 대한 궁극적인 결정은 이것과 나머지 예비 분석 데이터에 의해 결정된다.

¤ 시스템 분석, 요구사항 정의

프로젝트 목표를 의도한 애플리케이션의 정의된 기능 및 운영으로 정의한다. 여기에는 사실을 수집하고 해석하고, 문제를 진단하고, 시스템에 개선을 권고하는 과정이 포함된다. 프로젝트 목표는 최종 사용자 정보 요구의 분석과 이러한 요구 사항의 불일치와 불완전성을 제거함으로써 더 많은 도움을 받을 것이다.일련의 단계는 다음과 같습니다.
(1) 사실 수집: 문서, 고객 인터뷰, 관찰 및 설문지를 통해 최종 사용자 요구 사항을 파악
(2) 기존 시스템에 대한 정밀 조사: 현재 시스템의 장점과 단점을 파악하여 새로운 시스템의 단점을 방지
(3) 제안된 시스템 분석: 2단계에서 설명한 단점에 대한 해결책을 찾고 특정 사용자 제안을 사용하여 사양을 준비

¤ 시스템 설계

이 단계에서는 화면 레이아웃, 비즈니스 규칙, 프로세스 다이어그램, 의사 코드 및 기타 설명서를 포함하여 원하는 기능과 작업에 대해 자세히 설명

¤ 개발

진짜 코드를 작성

¤ 통합 및 테스트

모든 모듈을 특수 테스트 환경으로 가져온 다음 오류, 버그 및 상호 운용성을 확인

¤ 승인, 설치, 배포

소프트웨어가 생산에 투입되어 실제 사업을 운영하는 초기 개발의 마지막 단계

¤ 유지 관리

SDLC의 유지보수 단계에서는 시스템이 쓸모 없게 되지 않도록 평가/평가하고 초기 소프트웨어를 변경할 수도 있다.

¤ 평가

일부 기업은 이를 SDLC의 공식 단계로 보지 않는 반면, 일부 기업에서는 유지관리 단계의 연장으로 간주하고 있으며, 일부에서는 사후 시행 검토로 언급될 수 있다. 전 과정은 물론 개발된 시스템이 평가되는 부분이다. 새롭게 구현된 시스템이 초기 사업 요건과 목표를 충족하는지, 시스템이 안정적이고 내결함성이 있는지, 승인된 기능 요건에 따라 기능하는지 등이 답해야 할 질문이다. 출시된 소프트웨어를 평가하는 것 외에도 개발 프로세스의 효과를 평가하는 것이 중요하다.

¤ 폐기

시스템 정보, 하드웨어 및 소프트웨어의 사용을 중단하고 새로운 시스템으로 전환하기 위한 계획을 개발. 목적은 중요한 데이터의 무단 공개 가능성을 방지하는 방식으로 교체되는 정보, 하드웨어 및 소프트웨어를 적절히 이동, 보관, 폐기 또는 파기하는 것이다.

반응형

댓글