문) CBD 방법론
답)
1. 컴포넌트 재사용을 통해 생산성을 향상시키는 CBD 방법론 개요
가. CBD(Component Based Development)방법론의 정의
- 컴포넌트 개발, Repository에 저장, 컴포넌트 조립을 통해 재사용성과 비즈니스 적시성을 향상시키는 개발방법론
나. CBD 방법론의 진화형태
- Product Line : 제품중심 Core Assets 식별, CBD기반 개발
- SoA : 공유와 재사용 가능한 서비스를 컴포넌트와 조합
2. CBD 방법론의 주요 특징
가. CBD 방법론의 주요 특징
1) UseCase Driven : 사용자 요구사항분석으로 컴포넌트 식별
2) Blackbox Reuse : I/F 기반의 컴포넌트 호출
3) Iteration : 개발단계 반복을 통해 위험을 최소화
4) Lossely Coupled : MVC 모델에 기반한 약결합 구현
나. CBD 방법론 절차
1) 컴포넌트개발(CD) : UseCase로 컴포넌트 식별하고 개발, 저장소 저장
2) 컴포넌트조립(CBSD) : 기존 컴포넌트를 조립하여 SW개발
다. CBD 방법론의 종류
1) UP(Unified Process) : UML기반, 아키텍처중심, 2차원구조(동적,정적)
2) 마르미III : 한국형, 분석강조, 미니프로젝트 반복, 프로토타입 후 진행
3) Catalysis : UML표기기반 CBD, 분산시스템 모델링/구축
3. CBD 개발 SW의 평가요소
가. 응집도 : 컴포넌트 기능의 충실도, 높을수록 좋음
나. 결합도 : 컴포넌트간의 관련성, 낮을수록 좋음
다. 독립성 : 플랫폼 종속성 여부, 종속되지 않아양 함
라. Round Trip Engineering : 분석/설계/구현/테스트 자동화 도구 지원 여부
====================추가사항=====================================
1. CBD 방법론의 장점
가. 생산성 : 부품 조립을 통해 APP 개발시간 단축 및 개발 생산성 향상
나. 변경용이성 : 요구사항 수용에 안정적이고 신속한 변경 가능
다. 재사용성 : 바이너리 기반의 재사용 및 컴포넌트 대체 용이
라. 관리용이성 : 독립적인 컴포넌트 단위로 복잡성 최소화
마. 기술집약성 : 기술 숙련에 대한 검증, 아키텍처, 프레임워크,분산객체 기술 등
2. 컴포넌트 식별 방법
가. 유즈케이스 시나리오 분석을 통한 컴포넌트 도출
- include : 동일하게 반복되는 <> 관계의 유즈케이스 도출
- extend : 특정조건에 의해 수행되는 <> 관계의 유즈케이스 도출
나. 설계단계의 UI Layout 설계 혹은 UI 네비게이션 설계 시 도출
- 공통 UI(공통화면일경우), 공통UI컨트롤(페이지 Up/Down 등 상/하위 컨트롤 도출)
다. <>클래스 상관관계 분석을 통한 컴포넌트 도출 : Core클래스+종속클래스그룹핑
라. Usecase와 <>클래스의 상관관계 분석으로 도출
마. 전문가판단
끝.