소프트웨어 개발방법론

뿌엑·2022년 3월 26일

정보처리기사

목록 보기
2/20

소프트웨어 생명주기(SDLD; Software Development Life Cycle) 모델 개념

  • 소프트웨어 생명주기는 시스템 요구분석부터 유지보수까지 전 공정을 체계화한 절차
  • 시스템이 개발될 때부터 운용과 유지보수를 거쳐 생애를 마칠 때까지 거치는 순서를 체계화한 것
  1. 요구사항 분석
  2. 설계
  3. 구현
  4. 테스트
  5. 유지보수

해당 종류.

  • 폭포수 모델: 소프트웨어 개발시 매 단계를 마무리하고 다음 단계로 넘어감
    타당성 검토 → 계획 → 요구사항 분석 → 설계 → 구현 → 테스트 → 유지보수

  • 프로토타이핑 모델: 고객의 요구사항을 프로토타입으로 구현, 피드백을 반영하여 최종의 소프트웨어를 구현

  • 나선형 모델: 시스템 개발시 위험을 최소화하기 위해 점진적으로 완벽한 시스템으로 개발하는 모델
    계획 및 정의 → 위험 분석 → 개발 → 고객 평가

  • 반복적 모델: 구축대상을 나눠 병렬적으로 개발 후 통합하거나, 반복적으로 개발하여 점증 완성시키는 SDLC 모델

소프트웨어 개발방법론 개념

  • 소프트웨어 개발방법론은 소프트웨어 개발 전 과정에 지속적으로 적용할 수 있는 방법, 절차, 기법이다.
  • 소프트웨어를 하나의 생명체로 간주하고 소프트웨어 개발의 시작부터 시스템을 사용하지 않는 과정까지 모든 과정을 형상화한 방법론이다.

애자일(Agile) 방법론

  • 애자일 방법론은 절차보다 사람이 중심되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템을 개발할 수 있는 신속 적응적 경량 개발방법론이다.
  • 개발기간이 짧으며 폭포수 모형에 대비되어 개발과 함께 피드백을 받아 유동적으로 개발할 수 있다.
  • 해당 유형으로 XP, 린(Lean), 스크럼(SCRUM) 등이 있다.

비용산정, 일정관리 모형

비용산정 모형은 소프트웨어 규모 파악으로 투입자원과 소요시간을 파악하여 실행가능한 계획을 수립하기 위해 비용을 산정하는 방식이다.

비용산정 모형

  1. LoC(Lines of Code) 모형
  • Loc 모형은 소프트웨어 각 기능의 원시 코드 라인 수의 낙관치, 중간치, 비관치를 측정하여 예측치를 구하고, 이를 이용해 비용을 산정하는 방식이다.

비관치: 가장 많이 측정된 코드 라인 수
중간치: 측정된 모든 코드 라인 수의 평균
낙관치: 가장 적게 측정된 코드 라인 수

  1. Man Month 모형
    한 사람이 1개월 간 할 수 있는 일의 양을 기준으로 프로젝트 비용 산정

  2. COCOMO(COnstructive COst MOdel) 모형

  • COCOMO 모형은 보헴이 제안한 모형으로 프로그램 규모에 따라 비용을 산정하는 방식이다.
  • 비용산정 결과는 프로젝트를 완성하는데 필요한 노력(Man-Month)으로 산정한다.
  • 비용 견적의 강도 분석 및 비용 견적의 유연성이 높아 소프트웨어 개발비 견적에 널리 통용된다.
  • 규모에 따라 유형이 조직형, 반 분리형, 임베디드형으로 나뉜다.
  1. 푸트남(Putnam) 모형
  • 푸트남 모형은 소프트웨어 개발주기의 단계별로 요구할 인력의 분포를 가정하는 방식이다.
  • 푸트남이 제안한 것으로 생명주기 예측 모형이라 한다.
  • 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 한다.
  1. 기능점수(FP; Function Point) 모형
  • 기능점수 모형은 요구 기능을 증가시키는 인자별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능의 점수를 계산하여 비용을 산정하는 방식이다.

일정관리 모델

일정관리 모델은 프로젝트가 일정 기한 내 적절히 완료될 수 있도록 관리하는 모델이다.

  1. 주 공정법: 여러 작업의 수행 순서가 얽혀 있는 프로젝트의 일정을 개선하는 기법
  2. PERT(Program Evaluation and Review Technique): 일의 순서를 계획적으로 정리하기 위한 수렴 기법으로 비관치, 중간치, 낙관치의 3점 추정방식을 통해 일정을 관리하는 기법
  3. 중요 연쇄 프로젝트 관리(CCPM; Critical Chain Project Management): 주 공정 인쇄법으로 자원제약사항을 고려하여 일정을 작성

0개의 댓글