정보처리기사 실기

[2021정보처리기사실기] 01 소프트웨어 개발 방법론

shoney9254 2021. 6. 17. 20:54
반응형

1. 소프트웨어 개발 방법론

(1) 소프트웨어 생명주기 모델

   1. 소프트웨어 생명 주기 (SDLC : Software Development Life Cycle)

      소프트웨어 생명 요구사항부터 유지보수까지의 프로세스

      

   2. 소프트웨어 생명 주기 모델 프로세스 (요설구테유)

      - 구사항 분석

      -

      -

      - 스트

      - 지 보수 

 

   3. 소프트웨어 생명 주기 모델 종류

      - 폭포수 모델

      - 프로토타이핑 모델

      - 나선형 모델 : 획 및 정의 --> 험 분석 --> 발 --> 객 평가 (계위개고)

      - 반복적 모델 : 병행 개발

 

 

(2) 소프트웨어 개발 방법론 

   1. 소프트웨어 개발방법론 

      개발 할때 쓰는 방법, 절차, 기법 들을 말함

 

   2. 소프트웨어 개발방법론 종류

      - 구조적 방법론 : 나씨-슈나이더만 차트

      - 정보공학 방법론 

      - 객체지향 방법론

      - 컴포넌트 기반 방법론 (CBD) : 컴포넌트 사용

      - 애자일 방법론 : 사람 중심, 유연 신속

      - 제품 계열 방법론

 

   3. 애자일

      ① 애자일 방법론 개념

         - 절차보다 사람이 중심

         - 변화에 유연하고 신속하게 적응

         - 효율적으로 시스템 개발

         - 신속 적응적 경량 개발방법

         - 폭포수 모형에 대비

         - 개발과 함께 즉시 피드백

 

      ② 애자일 방법론 유형

         - XP(eXtreme Programming : 5가지 가치, 12가지 기본원리 

             ㄴ 5가지 가치 : 용기, 단순성, 의사소통, 피드백, 존중

             ㄴ 12가지 기본원리 : 짝 프로그래밍, 공동 코드 소유, 지속적인 통합(CI), 계획 세우기, 작은 릴리즈, 메타포어, 간단한 디자인, 테스트 기반 개발(TDD), 리팩토링, 40시간 작업, 고객 상주, 코드 표준

         - 스크럼 : 매일 정해진 시간, 장소에서 짧은 시간의 개발을 하는 팀을 위한 프로젝트 관리 중심 방법론

         - : 도요타의 린 시스템 품질기법,  JIT(Just In Time), 칸반 보드 사용

       

      ③ 애자일과 전통적 방법론 비교

비교 대상 애자일 방법론 전통적 방법론
계획 수립 유동적 범위 설정 확정적 범위 설정
업무 수행 팀 중심 업무 수행 관리자 주도적 명령과 통제
개인 단위로 업무수행
개발/검증 반복 주기 단위로 소프트웨어를 개발/검증 분석/설계/구현/테스트를 순차적으로 수행
팀관리 업무 몰입, 팀 평가 경쟁, 개별 평가
문서화 문서화보다는 코드를 강조 상세한 문서화를 강조
성공요소 고객 가치 전달 계획/일정 준수
유형   XP, 스크럼, 린 폭포수, 프로토타입, 나선형

 

2. 비용산정, 일정관리 모형

(1) 비용산정 모형

   1. 비용산정 모형 분류

분류 설명 종류
하향식 산정방법 경험이 많은 전문가에게 비용 산정을 의뢰하거나 여러 전문가와 조정자를 통해 산정하는 방식 - 전문가 판단
- 델파이 기법
상향식 산정방법 세부적인 요구사항과 기능에 따라 필요한 비용을 계산하는 방식 - 코드 라인 수(LoC)
- Man Month
- COCOMO 모형
- 푸트남 모형
- 기능점수(FP) 모형

 

   2. 비용 산정 모형 종류

      ① LoC(Lines of Code)모형

         - 낙관치, 중간치, 비관치를 측정하여 예측치 구함

         - 측정이 쉽고 이해하기 쉬움

      ② Man Month 모형

         - 한 사람이 1개월 동안 할 수 있는 일의 양

      ③ COCOMO(COnstructive COst MOdel) 모형

         - 보헴이 제안한 모형, 프로그램 규모에 따라 비용 산정

         - 조직형 : 5만 라인 이하의 소프트웨어, 과학 기술 계산, 비즈니스 자료 처리

         - 반 분리형 : 30만 라인 이하의 소프트웨어, 컴파일러, 인터프린터 같은 유틸 개발

         - 임베디드형 : 30만 라인 이상의 소프트웨어, 운영체제, 실시간 처리 시스템 등 시스템 프로그램 개발

      ④ 푸트남 모형

         - 소프트웨어 개발주기의 단계별로 요구할 인력의 분포를 가정하는 방식

         - 푸트남이 제안, Rayleigh-Norden 곡선의 노력 분포도를 기초로 함

      ⑤ 기능점수(FP, Function Point) 모형

         - 요구 기능을 증가시키는 인자별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능의 점수를 계산

         - 경험을 바탕으로 단순, 보통, 복잡한 정도에 따라 가중치 부여

 

(2) 일정관리 모델

   1. 일정관리 모델 종류 

모델 설명
주 공정법(CPM : Critical Path Method) - 노드 간 연결을 통해 공정을 계산
PERT(Program Evaluation and Review Technique) - 일의 순서를 계획적으로 정리하기 위한 수렴 기법
- 비관치, 중간치, 낙관치의 3점 추정방식을 통해 일정을 관리
중요 연쇄 프로젝트 관리(CCPM : Critical Chain Project Management) - 주 공정 연쇄법으로 자원제약사항을 고려하여 일정을 작성하는 기법

 

 

반응형