차례:
- 정의-소프트웨어 개발 수명주기 모델 (SDLC)은 무엇을 의미합니까?
- Techopedia는 SDLC (Software Development Life Cycle Model)를 설명합니다.
정의-소프트웨어 개발 수명주기 모델 (SDLC)은 무엇을 의미합니까?
SDLC (Software Development Life Cycle) 모델은 계획에서 유지 관리에 이르는 소프트웨어 개발 프로젝트의 모든 활동을 설명하는 개념적 프레임 워크입니다. 이 프로세스는 다양한 작업과 활동을 포함하여 여러 모델과 관련이 있습니다.
소프트웨어 개발은 요구 사항, 구현 및 소프트웨어 배포를 올바르게 식별해야하는 번거로운 작업입니다. 그러나 활동은 거기서 끝나지 않습니다. 소프트웨어를 배포 한 후 적절한 유지 관리를 적시에 제공해야합니다.
이 용어는 소프트웨어 개발 프로세스 모델이라고도합니다.
Techopedia는 SDLC (Software Development Life Cycle Model)를 설명합니다.
주요 소프트웨어 개발 활동은 다음과 같습니다.
- 요구 사항 추출 : 고객은 무엇이 필요한지 모호합니다. 목표에 도달하기위한 요구 사항과 계획 단계를 철저히 분석 한 후 소프트웨어 엔지니어 그룹이 추상 클라이언트 아이디어를 실습합니다.
- 소프트웨어 설명 : 소프트웨어가 프로세스의 다음 단계임을 설명합니다.
- 추상 시스템 표현 : 제품 요구 사항을 충족하고 기본 하드웨어와 함께 다른 소프트웨어 제품과의 인터페이스를 확인하기 위해 작성되었습니다.
- 고객 요구 사항 : 소프트웨어 엔지니어가 프로그래밍 한 코드를 통해 구현됩니다.
- 코드 테스트 : 코드가 버그가없고 클라이언트 요구 사항을 준수하는지 테스트합니다.
- 내부 설계 문서화 : 향후 제품 유지 관리 및 향상을 위해.
- 유지 관리 : 향후 요구에 따라 시스템 아키텍처를 변경하기 위해 수행됩니다. 코드를 추가하거나 기존 코드를 변경해야 할 수 있습니다.
위의 개발 프로세스는 일련의 모델로 간소화되었습니다. 개발팀은 가장 적합한 모델을 선택합니다. 다른 모델은 다음과 같습니다.
- Waterfall 모델 : 개발자는 요구 사항을 설명하고, 분석하고, 솔루션을 결정하고, 소프트웨어 아키텍처, 인터페이스 표현 및 알고리즘 세부 사항을 구성합니다. 그런 다음 코드를 개발하고 코드를 테스트하며 소프트웨어를 배포 및 유지 관리합니다. 워터 폴 방법은 이해하기 쉽고 요구 사항 안정성을 설정하지만 많은 고객 참여를 제공하지 않는다는 잘못된 인상을 줄 수 있습니다. 이 모델의 주요 문제점은 오류를 정정하기위한 요구 사항을 사전에 조기에 알아야한다는 것입니다. 그렇지 않으면 전체 프로세스가 잘못된 방향으로 계속 진행되어 생산 비용에 부정적인 영향을 줄 수 있습니다.
- V 모양 모델 : 폭포 모델의 변형입니다. 제품의 검증 및 검증을 강조합니다. 모든 결과물을 테스트 할 수 있으며 마일스톤으로 진행 상황을 추적합니다. 테스트는 개발 단계와 병행하여 구현됩니다.
- 프로토 타입 모델 : 프로토 타입은 요구 사항 단계에서 개발되어 최종 사용자가 평가합니다. 사용자 피드백에 따라 개발자는 사용자 요구 사항을 충족하도록 프로토 타입을 변경합니다. 이 모델은 요구 사항을 쉽게 마무리하는 동안 프로덕션 환경에서 사용하면 품질 문제가 발생할 수 있으므로 수정 프로세스가 영원히 계속 될 수 있습니다.
- 나선형 모델 : 폭포 형 및 프로토 타입 모델을 모두 사용합니다. 4 세대 프로그래밍 언어, 빠른 응용 프로그램 개발 프로토 타입 및 위험 분석을 폭포수 모델에 추가합니다. 시스템 요구 사항이 설계되고 예비 시스템 설계가 작성됩니다. 초기 프로토 타입이 설계되고 테스트되었습니다. 테스트 결과 평가에 따라 두 번째 프로토 타입이 생성됩니다. 후속 프로토 타입은 고객 만족을 보장하기 위해 구성됩니다. 시스템은 최종 프로토 타입을 기반으로 작성됩니다. 최종 시스템이 평가되고 테스트됩니다. 이 모델은 위험을 크게 줄이지 만 예산에 맞지 않을 수 있으며 각 응용 프로그램마다 다르게 적용됩니다.
- 반복 및 증분 SDLC 모델 : 소프트웨어의 일부를 지정 및 구현 한 다음 검토하고 추가 요구 사항을 그룹으로 추가 및 구현합니다. 모든 릴리스는 고객에게 중요한 기능을 먼저 제공하는 운영 제품을 제공하여 초기 배송 비용을 줄입니다. 요구 사항 변경 위험이 크게 줄어들고 고객은 각 빌드에 응답 할 수 있습니다. 이 모델의 강점에도 불구하고이 모델은 완벽하고 완전한 기능을 갖춘 시스템에 대한 계획과 사전 정의가 필요합니다. 또한 잘 정의 된 모듈 인터페이스가 필요합니다.
- 민첩한 개발 모델 : 훈련 된 방법을 사용하는 조직에서 시간이 중요한 응용 프로그램에 사용됩니다. 수명주기 단계가 빨라지고 범위가 줄어 듭니다.
- 매직 박스 모델 : 웹 응용 프로그램 개발 모델입니다. 코드와 데이터베이스 구조를 변경할 수있는 기회를 제공하므로 버그를 최소화하면서 프로젝트를 완료하는 가장 빠른 방법입니다.