2010년 8월 11일 수요일

컴포넌트 기반 개발(CBD; Component Based Development) 방법론

  • 컴포넌트 기반 개발 개요
    • 컴포넌트 기반 개발 프로세스


    • 컴포넌트 기반 개발 프로세스의 특징
      • CD는 소프트웨어 개발에 필요한 부품을 만드는 것
        • 비즈니스 영역에 대한 이해와 기술 아키텍처에 대한 이해가 선행되어야 함
        • 재사용 목적상 해당 도메인에 대한 분석이 핵심사항
        • 비즈니스 컴포넌트와 소프트웨어 컴포넌트 병행 개발
      • CBD는 컴포넌트들을 조립하여 소프트웨어를 개발
        • 반복적 개발 프로세스를 적용하여 혁신적인 생산성 향상

           
           

  • CBD 방법론의 개요
    • CBD 방법론의 정의
      • 재사용이 가능한 컴포넌트의 개발 또는 상용 컴포넌트들을 조합하여 애플리케이션 개발 생산성과 품질을 높이고, 시스템 유지 보수 비용을 최소화할 수 있는 개발 방법 프로세스
      • 컴포넌트 단위의 개발 및 조립을 통하여 정보시스템의 신속한 구축, 변경, 확장의 용이성과 타 시스템과의 호환성을 달성하고자 하는 소프트웨어 공학 프로세스, 방법론 및 기술의 총체적 개념
    • CBD 방법론의 특징
      • 컴포넌트 기반 개발
      • 표준화된 UML을 통한 프로세스 제공
      • 반복 점진적 개발 프로세스 제공
      • 표준화된 산출물 작성 및 컴포넌트 제작 기법을 통한 재사용성 향상

         
         

  • CBD 방법론의 공정 구성 및 Iteration 대책
    • CBD 방법론의 공정 구성

요구분석

분석

설계

개발

구현

  • AS-IS 모델링
  • TO-BE 모델링
  • 요구 사항 정의
  • 아키텍처 정의
  • Use-Case 모델링
  • UI 프로토타이핑
  • UI 설계
  • 컴포넌트 정의/설계
  • DB, 컨버젼, 테스트 설계
  • 코딩
  • 테스트
  • 릴리즈
  • 교육

  

N회 반복

N회 반복

N회 반복

  

 
 

  • Iteration 대책
    • Iteration 특징
      • 프로젝트 수행 중 최소 두 번 이상 수행
      • Iteration의 결과물은 독립적으로 완벽히 동작하는 실행 모듈을 포함
    • Iteration 계획 수립 시 필수 고려 사항
      • 초기 Iteration은 가장 위험도가 높거나 중요하다고 생각되는 업무영역과 검증 혹은 경험이 없는 기술 아키텍처 포함하여 기간은 2개월 이하로 계획
      • 첫 Iteration 은 전체 범위의 70~80% 정도를 분석 대상으로 하고, 20/80 Rule을 적용하여 20% 정도의 기능만 실제 구현

       
       

  • CBD 성공 요인 및 향후 전망
    • CBD 성공요인
      • CBD 수행을 위한 프로세스를 구성하는 활동들과 역할이 잘 정의되어야 함
      • CBD를 위한 컴포넌트 재사용 과정의 자동화 도구가 필요
      • 활용 가능한 풍부한 컴포넌트와 카탈로그의 확보 및 저장이 필요
      • CBD를 적용하기 위한 조직 차원의 체계적 접근법이 필요

         
         

    • CBD 향후 전망
      • 비즈니스 아키텍처, 소프트웨어 아키텍처 등의 영역별 세분화 및 전문화 진행(MDA)
      • MTS, EJB 컨테이너 등의 미들웨어 발전으로 CBD가 확산되고, UML 및 컴포넌트 기반 소프트웨어 구현 툴(웹 스피어, 웹 로직)의 발전과 함께 CBD촉진
      • WEB 서비스의 출현 이후 비즈니스 컴포넌트의 진화 예상

댓글 없음: