본문 바로가기

정보 처리 기사 필기/1. 소프트웨어 설계

1-1 소프트웨어 종류 및 개발 방법론 - 프로젝트 관리 및 생명 주기 모형

반응형

 

프로젝트 관리 및 생명 주기 모형

 

 

1. 프로젝트 관리

 

개념 목적에 맞게 계획된 일정, 금액 범위에서 정해진 목적 달성
관리
  • 일정 관리
    • 활동 순서
    • 활동 기간 산정
    • 일정 개발
    • 일정 통제
  • 예산 관리
    • 원가 산정
    • 예산 편성
    • 원가 통제
  • 인력 관리
    • 프로젝트 팀 편성
    • 프로젝트 조직 정의
    • 프로젝트 팀 개발
    • 프로젝트 팀
    • 자원 산정
    • 자원 통제
  • 위험 관리
    • 위험 식별
    • 위험 평가
    • 위험 대처
  • 품질 관리
    • 품질 계획
    • 품질 보증 수행
    • 품질 통제 수행
프로젝트 관리의 3P
  • Peaple 최우선 요소
  • Problem 문제, 위험 등의 요소
  • Process 일정 계ᅙᅬᆨ, 단계별 기간
계획 수립
  • 목적: 범위, 자원, 비용 측정을 통해 위험성 최소화
  • 범위 측정 요소
    • 처리 기능성능
    • 제한 조건
    • 개발 인원
    • 일정 계획
인적 자원
  • 개발자팀 구성
    • 책임 프로그래머팀: 1인 독재
    • 민주주의식 팀: 다수 책임
    • 혼합형팀
  • 책임 프로그래머팀 구성원
    • 책임 프로그래머
    • 보조 프로그래머
    • 프로그래머
    • 프로그램 사서
위험 관리
  • 순서
    • 위험 식별위험 분석 및 평가
    • 위험 관리 계획
    • 위험 감시 및 조치
       

 

 

위험 표 항목

내용 위험 종류 발생 확률 영향력 대안        
비용 측정 실패 비즈니스 5% 매우 손해 감수
일정 계ᅙᅬᆨ 실패 프로젝트 40% 보통 기간 연장
기술 부족 기술적 위험 70% 보통 개발자 섭외
인력 부족 프로젝트 75% 보통 추가 증원

 

 

일정 관리 모델


PERT(Program-Evaluation and Review Technique) CPM(Critical Path Method) 주 공정법 CCPM(Critical Chain Project Management)
중요 연쇄 프로젝트 관리
정의         일의 순서를 계획적으로 정의하기 위한 수렴 기법으로 비관치, 중간치, 낙관치의 3점 추정 방식 통해 일정 관리하는 기법 여러 작업의 수행 순서가 얽혀 있는 프로젝트의 일정 계산하는 기법 주 공정 연쇄법으로 자원 제약 사항을 고려하여 일정 작성하는 기법
특징 프로그램 평가 및 검토 기술
소요기간 예측 어려울 시 유리
작업별로 낙관치, 기대치, 바관치 나누어 종료 시기 결정
노드: 작업명, 간선: 낙관치, 기대치, 비관치
예측치 공식 이용하여 소요 기간 정함
임계 경로 기법
소요기간 확실 시 유리
노드: 작업명, 간선: 작업 사이의 전후 의존 관계
원형 노드: 작업명, 박스 노드: 이정표, 예상 완료 시간
한 이정표에서 다른 이정표 도달 전 작업 완료

일정 계획 순서
  1. 소프트 웨어 전체 규모 추정
  2. 작업을 기능별, 특징별 분류
  3. 단계별 작업 일정 예측
  4. 전체 소요 기간 예측
  1. 소프트웨어 전체 규모 추정
  2. 작업 기능별, 특징별 분해
  3. 단계별 상호 의존 관계 CPM 네트워크로 도식
  4. 간트 차트 작성


예측치=낙관치+(4*기대치)+비관치/6 여유기간 남지 않도록 계획(소요 기일=가장 긴 경로)  

 

 

 

2. 비용 측정

 

측정 요소
  • 직접 요소
    • 노력(인월: 1사람이 N개월당 작업할 양)
    • 비용
    • 라인 수(LOC)
    • 오류 수
    • 투입 인원
    • 처리 속도, 문서 수
  • 간접 요소
    • 생산성
    • 품질
    • 기능 점수(FP)
    • 문서화 비율
    • 효울성
    • 신뢰도
    • 유지 보수성
비용 측정 원칙
  • 소프트 웨어 비용 측정을 최대한 지연시킨다
  • 분해 기술 이용한다
  • 실험적 비용 측정 모델 이용한다
  • 자동화 도구 이용한다
개발 비용과 개발 기간의
상관 관계
간접 측정 평가 공식
  • 생산성=LOC(라인 수)/인월(Programmer-Month)
  • 개발 기간=인월/개발 인원
  • 개발 비용=인월 X 단위 비용

 

 

비용 측정 방법론 분류

 

하향식
  • 전문가 측정
  • delphi 모형
상향식
  • LOC(Line Of Code)
    • SW 각 기능의 원시 코드 라인 수의 낙관치, 중간치, 비관치 측정하여 예측치 구하고 이를 이용해 비용 산정
    • 측정 쉽고 이해 쉬워 많이 사용
  • 단계별 인월
  • 수학적 산정
    • Walston 모형
    • COCOMO 모형
      • 유기형(Organic) - 5만 라인 이하
      • 준 분리형(Semi-detached) - 30만 라인 이하
      • 내재형(Embedded) - 최대형 규모
    • Putnam 모형
      • SLIM: 총인월, 개발 기간 등 비용 측정값 입력 시 자동으로 비용 산출
      • Rayleigh-Norden 곡선
  • 기능 점수 모형(function-point)
    • 기능 점수의 비용 산정 요소
      • 입력 유형의 수: 형식이 다른 입력 양식의 수, 입력 파일
      • 출력 유형의 수: 형식이 다른 출력 양식의 수, 출력 보고서
      • 사용자 명령의 수: 프로그램을 실행하는 명령어 수, 사용자 질의 수
      • 데이터 파일의 수: 시스템에 의해 생성되는 내부 파일의 수
      • 인터페이스의 수: 외부 프로그램과의 연계되는 수
  • 간이 기능 점수

 

 

 

3. 형상 관리(SCM: Software Configuration Management)

 

소프트웨어 개발 과정에서 발생하는 산출물의 변경 사항을 버전 관리하기 위한 일련의 활동

 

 

형상 관리 절차 식통감기

형상 식별
  • 형상 관리 대상 정의/식별
  • 추적성 부여 위해 ID와 관리 번호 부여하여 변경 관련 이슈 발생 시 추적
  • 형상 관리 항목(비용은 NO!)
    • 소프트웨어 공학 기반 표준과 절차
    • 데이터 베이스 기술서
    • 유지 보수 문서
형상 통제
  • 형상 항목 버전 관리 위한 형상통제 위원회 운영
  • 변경 요구 관리, 변경 제어, 형상 관리 등 통제 지원
  • 베이스 라인에 대한 관리 및 형상 통제 수행 가능
형상 감사
  • 소프트웨어 베이스라인 무결성 평가
  • 베이스라인 변경 시 요구사항과 일치 여부 검토
형상 기록
  • 소프트웨어 형상 및 변경 관리에 대한 각종 수행 결과 기록
  • 형상 결과 보고서 작성

 

 

 

4. 소프트웨어 개발의 생명주기 모형

 

RAD 모델
(Rapid Application Development) 
CASE(Computer Aided Software Engineering)도구를 활용하여 빠른 개발 지향
폭포수 모형
(Waterfall model)
  • Boehm이 제시한 고전적 모형
  • 명확성 강조
  • 순차적 접근 방법 이용
  • 단계별 정형화된 접근 방법 및 체계적인 문서화 용이
  • 모형의 적용 경험, 성공 사례 많음
프로토 타입 모형
(Prototyping model)
  • 요구 사항 관리 중심
  • 발주자가 목표 시스템 모습 미리 볼 수 있으며 요구사항 반영 용이
  • 원형 프로토타입: 고객의 요구를 완전히 이해하지 못한 상태로 개발을 진행하며 시스템 이해도 낮은 관리자 있을 시 유용
  • 브룩스(Brooks)의 이론: 폐기 처분하는 번째 시스템. 개발 일정이 지연된다고 말기에 인원 투입하면 더욱 지연됨
나선형 모형(Spiral model)
  • 계획 수립(planning) > 위험 분석(risk analysis) > 개발 및 검증(engineering) > 고객 평가(customer evaluation)
  • 위험 관리 중심
  • 프로토타입을 지속적으로 발전시켜 최종 소프트웨어 개발까지 이르는 개발 방법
  • 폭포수+원형 모델 장점 결합 모델
V 모형

 

 

5. 테일러링을 위한 품질 관리

 

ISO 12207 표준 기조지

기본 공정 공급, 획득, 개발, 운영, 유지보수
조직 공정 관리, 기반 구조, 개선, 교육 훈련
지원 공정 문서화, 형상 관리, 문제 해결, 품질 보증, 검증, 확인, 합동 검토, 감리

 

ISO/IEC

ISO/IEC 9001 설계/개발, 생산, 설치 및 서비스 과정에 대한 품질 보증 모델
ISO/IEC 9126 소프트웨어 품질 특성과 척도에 관한 표준 지침서
ISO/IEC 12119 패키지 소프트웨어의 일반적인 제품 품질 요구사항 및 테스트를 위한 국제 표준
ISO/IEC 12509 OSI 7계층의 관리 기능에 대한 공통된 정보를 명세화하는 규격(폐지)
ISO/IEC 14598 소프트웨어 제품 평가 프로세스 및 평가를 위한 국제 표준
ISO/IEC 29119 소프트웨어 테스트 관련 국제 표준

 

ISO/IEC 9126

 

 

 

CMM(Capability Maturity Model) 초관정관최

특징
  • 소프트웨어 개발 능력/성숙도 평가 및 프로세스 개선 활동의 지속적인 품질 개선 모델
  • 적용 및 평가 방식은 조직 차원의 성숙도 평가하는 단계별 표현과 프로세스 영역별 능력도 평가하는 연속적 표현
5가지 성숙 단계와
핵심 프로세스
프로세스 평가 기준
  • Level 높을 수록 위험성 감소, 생산성/품질 증가

 

 

 

SPICE(Software Process Improvement and Capability Determination) 모델 불수관확예최

목적
  • 소프트웨어 프로세스에 대한 개선, 능력 측정 기준에 대한 국제 표준
  • 개발 기관이 프로세스 개선 위해 스스로 평가
  • 기관에서 정한 요구 조건 만족하는지 개발 조직 스스로 평가
  • 계약을 맺기 위해 수탁 기관의 프로세스 평가
단계

 

 

 

 

 

Reference

https://book.naver.com/bookdb/book_detail.naver?bid=17134434 

 

이기적 정보처리기사 필기 기본서

- 기초부터 탄탄히 잡아주는 영진닷컴의 이기적 수험서!영진닷컴이 자랑하는 수험서 브랜드 ‘이기적’ 시리즈는 쉽고 풍부한 내용으로 기초부터 튼튼하게 쌓아주는 합격의 동반자입니다. 기

book.naver.com

 

반응형