데이터 반출 없는 다기관 연합 인공지능 학습 플랫폼

생애주기 3

소프트웨어 개발 생애 주기(SDLC)

소프트웨어 개발 생애 주기(Software Development Life Cycle, SDLC)는 고품질의 소프트웨어를 가장 효율적인 비용과 시간 안에 개발하고 유지보수하기 위해 거치는 전체 과정을 체계적으로 정의한 모델입니다. 간단히 말해, 소프트웨어의 탄생부터 소멸까지의 전 과정을 단계별로 나눈 일종의 '로드맵'이라고 할 수 있습니다.​SDLC는 개발팀이 특정 목표와 계획에 따라 소프트웨어를 설계, 개발, 테스트할 수 있도록 명확한 프레임워크를 제공합니다. 이를 통해 프로젝트의 투명성을 높이고, 예측 가능성을 향상시키며, 최종 제품의 품질을 보장하는 데 중요한 역할을 합니다.SDLC의 주요 단계SDLC는 일반적으로 다음과 같은 핵심 단계를 포함하며, 각 단계는 이전 단계의 결과물을 바탕으로 진행됩니다..

V-모델: 검증과 확인 강조

V-모델은 소프트웨어 개발 생애 주기(SDLC) 모델 중 하나로, 전통적인 폭포수 모델(Waterfall Model)의 확장된 형태입니다. V-모델의 가장 큰 특징은 개발의 각 단계마다 그에 상응하는 테스트 단계를 설정하여 검증(Verification)과 확인(Validation)을 강조한다는 점입니다. 모델의 흐름이 알파벳 'V'자 형태를 띠기 때문에 V-모델이라는 이름이 붙었습니다. V자 왼쪽은 개발 및 명세화 과정을, 오른쪽은 테스트 및 검증 과정을 나타냅니다.V-모델의 구조와 단계별 활동V-모델은 V자의 왼쪽 날개를 따라 내려가며 개발이 진행되고, V자의 바닥(코딩 단계)을 찍은 후 오른쪽 날개를 따라 올라오며 테스트가 진행되는 구조입니다. 각 개발 단계는 특정 테스트 단계와 수평적으로 연결되어 ..

보안 개발 생애 주기(Secure SDLC): 안전한 소프트웨어 구축의 핵심

보안 개발 생애 주기(Secure Software Development Lifecycle, Secure SDLC 또는 SSDLC)는 소프트웨어 개발의 모든 단계에 보안 활동을 통합하여, 잠재적인 보안 취약점을 조기에 발견하고 제거함으로써 안전하고 신뢰할 수 있는 소프트웨어를 개발하는 체계적인 프로세스입니다. 과거에는 개발이 완료된 후 마지막 단계에서 보안 테스트를 집중적으로 수행했지만, 이런 방식은 문제 발생 시 수정 비용이 크고 출시 지연의 원인이 되었습니다. Secure SDLC는 이러한 문제점을 해결하기 위해 "처음부터 보안을 내재화(Security by Design)"하는 '시프트 레프트(Shift Left)' 접근법을 채택합니다. 소프트웨어 개발 초기 단계에서 보안을 고려할수록 더 적은 비용과 ..