본문 바로가기

자격증/정보처리기사 5과목

5-4강. SW개발 방법론 활용-SW개발 방법론 테일러링

[ 목차 ]

1. 소프트웨어 개발 표준

2. 프로세스 수행 능력 단계

 

 

 

 

1. 소프트웨어 개발 표준

1) 소프트웨어 개발 단계에서 품질 관리를 진행하며, 국제 표준으로 지정

2) ISO/IEC 12207 표준 - 소프트웨어 생명주기 프로세스

  1] 체계적인 소프트웨어 획득, 공급, 개발, 운영, 유지보수를 위해 소프트웨어 생명주기 공정 표준을 제공하여 실무자들이 동일한 언어로 의사소통 할 수 있는 기본 틀을 제공

  2] 주요 프로세스

    - 기본생명주기 : 획득/공급/개발/운영/유지보수

    - 지원생명주기 : 품질보증/검증/확인./동료검토/감사,/문서화/형상관리/문제해결 프로세스

    - 조직생명주기 : 관리/기반/훈련/개선

 

3) SPICE 

  1] 소프트웨어 프로세스 평가를 위한 프레임워크를 제공

  2] 정보 시스템 분야에 특화된 품질 표준, 인증 규격

  3] 정보 시스템 분야에서 SW의 품질 및 생산성 향상을 위해 SW 프로세스를 평가, 개선하는 국제 표준

  4] 목적 : 프로세스 개선을 위해 개발 기관이 스스로 평가

  5] 주요 프로세스

     - 고객-공급 : SW를 개발하여 고객에게 전달하는 것을 지원

     - 공학 : 제품의 명세화, 구현, 유지보수

     - 지원 : SW 생명주기에서 다른 프로세스에 의해 이용되는 프로세스

     - 관리 : 관리자에 의해 사용되는 프로세스

     - 조직 : 업무 목표 달성에 도움

 

4) CMMI모델 - 능력 성숙도 통합 모델

  1] 조직의 프로세스에 대한 가이드이자 기준이며 능려과 성숙도로 조직의 프로세스를 측정하고 평가하는 모델

  2] 주요 프로세스

     - 초기 : 프로세스가 없어 예측통제가 불가능

     - 관리 : 규칙화, 기본적인 프로젝트 관리 체계

     - 정의 : 표준화, 조직 차원의 표준 프로세스를 통한 프로젝트 지원

     - 정량적 관리 : 예측 가능한 프로세스

     - 최적화 : 지속적 개선 프로세스

  3] 평가방법 : 단계적 표현 방법의 성숙단계와 연속적 표현의 능력단계로 나눠서 수행

 

2. 프로세스 수행 능력 단계

1) 불완전 - 수행 - 관리 - 확립 - 예측 - 최적화

 

3. 테일러링

1) 소프트웨어 개발 방법론에 있어 프로젝트 특성 및 상황에 적용하기 위해서 기정의된 개발 방법론의 절차, 기법, 산출물 등을 적용하는 작업

2) 기존의 개발 방법론을 프로젝트에 맞게 수정

3) 고려사항

  1] 내부적 기준

     - 목표환경 : 시스템 개발 유형, 환경이 상이

     - 요구사항

     - 프로젝트 규모

     - 보유 기술

  2] 외부적 기준

     - 법적 제약사항

     - 표준 품질기준

4) 수행절차 : 프로젝트 특징 정의 - 표준 프로세스 선정 및 검증 - 상위 수준위 커스터마이징 - 세부 커스터마이징 - 테일러링 문서화

5) 수행절차 : 프로젝트 특성 파악 - 베이스라인 방법론 선정 - 테일러링 수행 - 교육

6) 테일러링 기법

  1] 규모와 복잡도에 따른 테일러링 : 가장 일반적으로 프로젝트 기간, 작업범위, 참여인원을 분석해서 테일러링

  2] 프로젝트 구성원에 따른 테일러링 : 구성원의 기술적 성숙도와 방법론에 대한 이해적도 파악, 수준을 통해 테일러링

  3] 팀내 방법론 지원에 따른 테일러링 : 방법론 및 모델링 지원 인력 선정하여 개별 교육하여 전문인력 배치

  4] 자동화에 따른 테일러링 : 중간 산출물 자동화 도구 사용

 

4. 프레임워크

1) 하나의 애플리케이션을 구축할 때 애플리케이션의 공통적인 개발환경

2) 즉, 개발에 필요한 화면구성, 데이터베이스 연동, 개발 환경들의 공통적인 부분을 제공하여 개발 시간과 인력, 비용 절감을유도

3) 특징

  1] 특정 개념들의 추상화를 제공하는 여러 클래스와 컴포넌트로 구성

  2] 추상적 개념들이 문제를 해결하기 위해 같이 작업하는 방법을 정의

  3] 컴포넌트 재사용 가능

  4] 높은 수준의 패턴을 조작

4) 라이브러리와의 비교

5) 프레임워크 유형