이미 소장하고 있다면 판매해 보세요.
|
1. 컴포넌트와 CBD 개요
1.1 왜 컴포넌트인가? 1.2 CBD 개요 2. 모델 기반 개발 2.1 MDD(model-driven development) 2.2 MDA(model-driven architecture) 2.2.1 비즈니스 모델과 소프트웨어 모델 2.2.2 MDA 개발 라이프사이클 2.2.3 변환(transformation) 2.3 MDD 프로세스 2.4 모델링 도구 2.5 UML 기초 3. 아키텍처란 무엇인가? 3.1 소프트웨어 아키텍처 개념의 이해 3.1.1 소프트웨어 아키텍처 정의 3.1.2 소프트웨어 아키텍처와 다른 작업 사이의 관계 3.1.3 소프트웨어 아키텍처가 왜 중요한가? 3.2 비기능 요구사항과 품질 속성(quality attribute) 3.2.1 시스템 품질 속성(system quality attribute) 3.2.2 비즈니스 품질 속성(business quality attribute) 3.2.3 아키텍처 품질 속성(architectural quality attribute) 3.3 소프트웨어 아키텍처 구조 3.3.1 구조, 뷰 타입, 스타일, 뷰 그리고 문서화 3.3.2 모듈 뷰 타입(module viewtype) 3.3.3 컴포넌트-커넥터 뷰 타입(component-and-connector viewtype) 3.3.4 할당 뷰타입(allocation viewtype) 3.4 소프트웨어 아키텍처 구조의 응용 3.4.1 4+1 뷰 아키텍처 모델(4+1 view model of architecture) 3.4.2 Applied Software Architecture 의 4개 뷰 3.5 ooCBD 방법론에서의 소프트웨어 아키텍처 구조 3.5.1 비즈니스 아키텍처(business architecture) 3.5.2 애플리케이션 아키텍처(application architecture) 3.5.3 기술 아키텍처(technical architecture) 3.5.4 데이터 아키텍처(data architecture) 3.6 아키텍처 관련 개념들 3.6.1 아키텍처 스타일과 아키텍처 패턴 3.6.2 아키텍처 스타일과 레퍼런스 아키텍처 3.6.3 아키텍처 패턴과 디자인 패턴 3.6.4 프레임워크 3.6.5 아키텍처와 설계 4. ooCBD 방법론 개요 4.1 ooCBD 방법론 특징 4.2 ooCBD 방법론 프로세스 4.2.1 요구 파악 단계 4.2.2 아키텍처 정의 단계 4.2.3 설계 단계 4.2.4 구현 단계 4.2.5 테스트 단계 4.2.6 추적성(traceability) 4.2.7 ooCBD 방법론 프로세스 4.3 사례 시스템 개요 5. 요구 파악 5.1 요구 파악 단계 5.2 요구사항 이해 5.2.1 사용자 요구 수집 5.2.2 공통 용어 파악 5.3 요구사항 정의 5.3.1 유스케이스 기술 5.3.2 유스케이스 우선 순위 결정 5.4 요구사항 정제 5.4.1 유스케이스 상세 5.4.2 유스케이스 모델 구조화 5.4.3 비기능 요구사항 명세 6. 아키텍처 정의 6.1 아키텍처 정의 단계 6.1.1 왜 아키텍처가 필요한가? 6.1.2 소프트웨어 아키텍처 설계 과정 개요 6.2 초기 아키텍처 개요 정의 6.2.1 초기 아키텍처 모델 정의 6.2.2 성공적인 아키텍처 설계 원칙 6.3 행위 분석 6.3.1 유스케이스 분석 6.3.2 비즈니스 객체 모델 생성 6.3.3 사용자 인터페이스 모델 생성 6.4 애플리케이션 아키텍처 설계 6.4.1 비즈니스 컴포넌트 6.4.2 후보 비즈니스 컴포넌트 도출 6.4.3 비즈니스 컴포넌트 모델 정의 6.4.4 비즈니스 컴포넌트 설계 6.4.5 애플리케이션 아키텍처 설계 이후의 과정 7. 기술 아키텍처 설계 7.1 기술 아키텍처 설계 개요 7.2 기술 유스케이스 정의 7.3 기술 유스케이스 실현 7.3.1 기술 유스케이스 실현 생성 7.3.2 Java 플랫폼 기술 유스케이스 실현 예 7.3.3 .NET 플랫폼 기술 유스케이스 실현 예 7.4 프레임워크 설계 7.4.1 프레임워크 설계 개요 7.4.2 Java 플랫폼 프레임워크 설계 및 구현 예 7.4.3 .NET 플랫폼 프레임워크 설계 및 구현 예 7.5 배포 모델 설계 7.6 설계 전략 정의 7.7 아키텍처 프로토타이핑 8. 데이터베이스 설계 8.1 논리 데이터 모델 설계 8.2 물리 데이터 모델 설계 9. 설계 9.1 설계 단계 9.2 설계 요소 식별 9.2.1 인터페이스 실현 9.2.2 구현 컴포넌트 식별 9.2.3 구현 클래스 식별 9.3 컴포넌트 설계 9.3.1 구현 컴포넌트 설계 9.3.2 구현 클래스 설계 9.3.3 저장 프로시저 설계 10. 구현 및 테스트 10.1 구현 단계 10.2 구현 모델 구조화 10.2.1 자바 구현 모델 정의 10.2.2 자바 구현 모델 정의 10.3 설계 요소 구현 10.4 테스트 10.4.1 테스트 케이스 생성 10.4.2 테스트 프로시저 설계 찾아보기 |
|
효율적이고 성공적으로 엔터프라이즈 시스템을 구축을 하기 위해서 가장 중요한 것은 견고한 소프트웨어 아키텍처를 설계하는 일이라고 생각한다. 많은 엔터프라이즈 시스템 구축을 위한 프로젝트가 행해지지만 이들 모든 프로젝트가 성공하는 것은 아니었다. 이들 중 어떤 것은 성공하며, 어떤 것은 쓰라린 실패를 경험하게 된다. 그리고 확실한 통계 자료를 제시하기는 어렵지만 실패하는 대부분의 프로젝트에는 어떤 공통점이 있었다. 그것은 아키텍처가 빈약하거나 아예 아키텍처를 설계하지 않았다는 것이다. 모든 시스템에는 어떤 형태로든 아키텍처가 존재한다고 전제한다면, 적어도 실패하는 프로젝트의 시스템은 견고한 아키텍처를 갖고 있지 못하다는 것이다. 그리고 어쩌면 개발 위주로 프로젝트를 진행하는 우리 주변의 상황은 많은 경우에 있어서 실패를 각오하고 있어야 하는지도 모른다.
이 책은 아키텍트의 시각으로 엔터프라이즈 시스템을 구축하는 방법을 고민하고 이해하고자 하는 사람들을 위한 책이며, 실무에서의 많은 경험으로 뒷받침이 되어 있는 개발자로부터 아키텍트로 도약하려는 사람들을 위한 책이다. 일반적으로 소프트웨어 구축 방법론은 크게 개발 방법론과 관리 방법론으로 구분되며, RUP 나 마르미 방법론은 이 두 가지 방법론이 모두 포함되어 있다. 그러나 이 책은 관리 방법론에 대해서는 다루지 않는다. 엔터프라이즈 시스템을 구축하는 개발 방법론만을 대상으로 한다. 이 책은 CBD 방법론에 대한 이론서가 아니다. 객체지향 개념을 근간으로 하는 컴포넌트 기반의 소프트웨어 개발 방법을 엔터프라이즈 시스템 개발 실무에 적용하고자 하는 사람들을 위한 실무 지침서이다. 개발 프로세스에 대한 설명도 중요하지만, 보다 더 중요한 것은 각 단계의 활동과 작업에 의해 생성되는 구체적인 사례 시스템의 산출물이라고 판단된다. 그러나 사례 시스템을 구축하는 동안 생성된 산출물이 하나의 책에 모두 담을 수 없을 정도로 많아 다 싣지 못하여, 독자는 각 단계의 활동과 작업에 언급된 산출물 리뷰 항목에 지시된 대로, 와우북스 출판사 웹하드 www.webhard.co.kr (ID: wbs123 PASS: 1234)에서 사례 시스템의 산출물을 다운로드하여 반드시 리뷰하기 바란다. |