C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[3068] CMM, XP의 특징
sharejoy [] 2663 읽음    2002-01-05 00:13
*** CMM(Capability Maturity Model)

Carnegie Mellon University의 Software engineering Institute에서 제안한
소프트웨어 개발에 있어서 개발 process의 성숙도에 대해서 판달한 수 있도록 만들
모델입니다.
일단 5단계로 개발 process의 성숙도를 판단합니다.

1단계 : Initial
  Focus : 능력있는 개발자에 의존
  특징 : 임기응변식 대응, 개발 process가 거의 정의되어 있지 않음
2단계 : Repeartable
  Focus : Project management processes
  특징 : Requirement management(고객 요구 분석)
         Software project planning(개발 계획 수립)
         Software project tracking and oversight(일정 관리 및 역할 분담 관리)
         Sofware subcontract management(서브 개발 계약 관리)
         Software quality assurance(소프트에어 품질 관리)
         Software configuration management(버전 관리, 개발 변경 사항 관리)
3단계 : Defined
  Focus : Engineering processes and organizational support
  특징 : Organization process focus(조직의 역량 강화를 위한 절차 및 책임 규명)
         Organizaion process definition(장기적인 절차 개선을 위한 개발 자원 관리)
         Training program(조직원 훈련)
         Integrated software management(조직의 개발 절차 및 자원 표준안 확립 및 관리)
         Software product engineering(잘 규정된 엔지니어링 절차 확립 및 사용)
         Intergroup coordination(그룹간 의사소통 및 협력 관계 확립)
         Peer reviews(오류 제거를 위한 상호 관찰 및 비평 절차 및 방법)
4단계 : Managed
  Focus : Product and process quality
  특징 : Quantitative process management(정량적인 process의 성능 확인 및 개선)
         Software quality management(제품의 품질 기준 확립 및 정량적인 측정 및 개선)
5단계 : Optimizing
  Focus : Continual process improvement
  특징 : Defect prevention(오류의 원인 분석 및 제거)
         Technology change management(신기술 분석 및 도입, 적용)
         Process change management(개발 절차의 계속적인 개선 및 생산성 향상)



Extreme Programming(XP)의 특징

XP는 기본적으로 나선형 개발 모델을 따릅니다.
즉 점진적인 성능 향상을 전제로 합니다.

Planning game : 우선 순위에 따른 차기 목표 수립
Small release : 짧은 시간 내에 신버전 release(2주-1달)
Metaphor : Guide all development with a simple, shared story of how the overall system works.
Simple design : 주어진 때에 가능한 한 간단하게 설계한다
Testing : Unit test를 먼저 한다. 그리고, 그 모듈을 이용해서 개발
Refactoring : 동작 방식의 변경 없이 중복되는 부분 제거, 정보 전달 개선, 간략화 및 융통성 부여
Pair programming : 모든 프로그램 코드는 한 기계에서 두명의 프로그래머가 담당
Collective ownership : 누구든지 어느 때, 어느 곳에서나 코드를 개선시킬 수 있다.
Continuous integration : integrate and build the system many times a day
40-hour weeks(sustainable pace) : 주당 40시간 이상의 작업을 피한다. 프로젝트를 지속할 수 있는 속도 유지
On-site customer : 고객(개발 요구자)가 항상 함께 하면서 작업 진행
Coding standards : 소스 코드 작성에 있어서 표준 룰 설정

XP의 경우에는 일반적인 프로젝트에서 초기 문서화 작업(요구사항 분석, 디자인 등등)에 있어서
시간이 많이 걸리는 부분과 절차를 간소화시키는 방법론입니다.
그래서 XP의 경우에는 작은 개발팀에서 주로 사용을 합니다.



위의 내용은
Software Engineering - A Practitioner's approach, Roger S. Pressman, 5판
IEEE Software manazine, 2001년 11-12월호
를 참고하여서 정리했습니다.

+ -

관련 글 리스트
3048 다음 용어에 대해서 익숙하신가요? sharejoy 2440 2002/01/04
3061     Re:다음 용어에 대해서 익숙하신가요? 박지훈.임프 2373 2002/01/04
3068         CMM, XP의 특징 sharejoy 2663 2002/01/05
3059     Re:다음 용어에 대해서 익숙하신가요? 남병철.레조 2475 2002/01/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.