아직 소프트웨어 개발 단계를 모른다고요?

henrywoo·2022년 4월 5일
0
post-thumbnail

소프트웨어 개발 단계

소프트웨어 공학에 따르면, 소프트웨어를 개발할 때는 체계적인 개발 단계가 필요하다.
보통 계획 -> 분석 -> 설계 -> 구현 -> 테스트 -> 유지보수 순으로 이루어진다.
이러한 단계에 대해 구체적으로 알아보겠다.

1단계 : 계획

우리가 소프트웨어 개발을 계획할 때는 '무슨 문제를 해결할 것인가?', '돈이나 시간은 얼마나 투자해야 하나?' 등의 고민을 하기 마련이다.

이러한 고민을 해결하기 위해 계획 단계에서는 문제 정의, 타당성 분석, 개발 비용 산정, 일정 계획 수립, 위험 관리 등이 이루어진다.

문제 정의 : 개발 범위 설정
타당성 분석 : 경제적, 기술적, 법적 타당성
개발 비용 산정 : COCOMO 모델, 기능 점수(Function Point) 모델
일정 계획 수립 : WBS(작업분할구조도), CPM(네트워크 차트), Gantt Chart
위험 관리 : 돌발 상황에 대처하기 위해 대책 수립

2단계 : 요구분석

여기서는 실제 사용자의 요구사항을 토대로 요구분석명세서를 작성한다.
이 단계에서는 무엇(what)을 개발할 것이냐의 관점에서 생각해야 한다.
usecase diagram, class diagram 등이 사용된다.

3단계 : 설계

분석 단계에서 파악한 요구사항과 제약 사항 고려하여 설계하는 단계이다.
분석 단계에서 무엇(what)에 집중했다면, 설계 단계에서는 어떻게(how)의 관점에서 구체적으로 결정하는 단계이다.
이 단계에서는 프로그래밍 언어를 선택하고, 시스템 개발 관련 플랫폼을 결정한다.

상위 설계에서는 아키텍쳐 설계, 하위 설계에서는 모듈 설계가 이루어진다.

4단계 : 구현

구현 단계에서는 말 그대로 프로그램을 구현하는 단계이다.
이 단계에서는 표준 코딩 규칙시큐어 코딩에 관한 것들을 정해야 한다.

명칭에 관한 규칙, 소스 형식에 관한 규칙, 변수 선언 및 자료형에 관한 규칙, 상수, 수식, 문장에 관한 규칙 등을 부가적으로 정해야 한다.

5단계 : 테스트

테스트 단계를 굳이 거치는 이유는 간단하다.
바로 오류를 사전에 검출하여 문제를 미리 예방하기 위해 거치는 단계이다.

테스트 계획, 테스트케이스 설계, 테스트 실행 및 측정, 결과 분석 및 평가, 오류 추적 및 수정 등의 과정을 통해 테스트가 이루어진다.

6단계 : 유지보수

이 단계에서는 말 그대로 구현과 테스트가 완료된 소프트웨어를 유지보수한다.
수정 유지보수, 적응 유지보수, 기능보강 유지보수, 예방 유지보수등의 유지보수 방법이 있다.

profile
가보자 가보자

0개의 댓글