rsa(rational software architect)를이용한소프트웨어 아키텍처관리 · 2007-10-08 ·...
TRANSCRIPT
®
IBM Software Group
© 2007 IBM Corporation
RSA(Rational Software Architect)를 이용한 소프트웨어
아키텍처 관리
Rational Software, IBM Korea 홍미영([email protected])
IBM Software Group | Rational software
2
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
요약
IBM Software Group | Rational software
3
IBM Rational Software Delivery PlatformRational 통합 솔루션
시장을 선도하는 통합 솔루션 플랫폼에 기반한
프로세스 설계 및 구현을 위한 기술력
개방형 기술과 커뮤니티에 기반
프로세스 및 포트폴리오 관리
변경 및 릴리스 관리
소프트웨어 품질 관리
소프트웨어 아키텍처 관리
Governance expertise & dashboards
Development productivity
Geographically distributeddevelopment & delivery
SOA governance for service delivery lifecycle management
Risk & compliance management
IBM Software Group | Rational software
4
Trace
Compare
Reconcile
Creates businessprocess model
Create & manage software delivery requirements
Create architectural model enablingthe tasks from BPM to be
automated
Implement new& integrate existing services
IBM Rational의 아키텍처 관리 솔루션
소프트웨어 전체 개발 주기에 걸쳐 아키텍처
변경을 관리업무 분석가
소프트웨어 설계자
요구사항 분석가
개발자
WebSphereBusiness Modeler
RationalRequisitePro
RationalSoftware Modeler
RationalApplication Developer
비지니즈 아키텍처와 서비스 구현과의 연결
프로세스 및 패턴, 프로파일 지원
코드 생성에 대한 아키텍처 제어Architecture to code transform
아키텍처 진화 및 조정
프레임웍 자동화 제어 및 추적성 관리
Rational ClearQuest
RationalSoftware Architect
Transform Models to Code
IBM Software Group | Rational software
5
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
요약
IBM Software Group | Rational software
6
“기존에 비해 훨씬 복잡해진 어플리케이션을 어떻게설계하고 개발할 것인가”
“업계 표준에 기반하여 상호운용 가능한 어플리케이션을어떻게 개발 할 것인가”
“현재 구현된 코드나 프레임웍의 아키텍처를 어떻게 파악할것인가?”
“실제 프로젝트 내에서 초반부터 가지고 있었던 문제를 프로젝트종반까지 발견하지 못한다”.
“제공된 비즈니스 프로세스와 IT를 어떻게 잘 매핑할 것인가?”
“소프트웨어 아키텍처가 견고하다고 해도 계획된대로 구현되지 않는다.”
“재사용을 통해 어떻게 소프트웨어 품질을 향상 시키고 개발기간을 단축할 수 있을 것인가?”
“실제 계획대로 프로젝트가 제대로 수행되고 있는지 어떻게확인할 것인가?”
어플리케이션 개발에서 직면하는 과제들
IBM Software Group | Rational software
7
솔루션 : Rational Software Architect(모델링과 추적성 관리를 통한 어플리케이션 아키텍처 관리)
보다 효과적인 요구사항관리도구(Rational RequisitePro ), 비즈니스 프로세스 모델링 도구(WBI Modeler)와의 통합을 제공
보다 효율적인 의사소통을 가능하게 하는 기술을 제공
UML 2 지원
아키텍처 관련 산출물과 개발 환경과의 통합 제공
변환(Transformation) 기능 제공
아키텍처 관련 의사결정에 기반한 코드 생성
모델 to 모델, 모델 to 코드로의 변환 작성을 위한 Tool 제공
IT team (Headquarters)
IT team(Acquired company)
IBM Software Group | Rational software
8
솔루션 : Rational Software Architect(모델링과 추적성 관리를 통한 어플리케이션 아키텍처 관리)
아키텍처를 지원하기 위한 규칙 생성 및 제어 가능
프로세스 가이드 라인 제공
모델의 변경을 시각적으로 비교 가능.
요구사항과 설계와의 연계
어플리케이션 개발 생산성 향상
개발 생산성 향상
보다 견고하고 고품질의 어플리케이션의 개발을 가능하게 하는
비주얼 편집기
코드 분석 기능 제공
IT team (Headquarters)
IT team(Acquired company)
IBM Software Group | Rational software
9
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
요약
IBM Software Group | Rational software
10
IBM Rational Software Architect v7.0:IBM Rational Software Architect는 통합된 설계 및 개발을 위한 도구
UML을 기반으로 한 모델 기반의 어플리케이션
및 서비스 설계를 지원
어플리케이션 개발 생산성 향상
최신의 모델링 표준 지원
확장 가능한 개방형 플랫폼에 기반
Java 및 서비스 기반의 어플리케이션의 구조를
리뷰하고 제어
어플리케이션 개발 주기의 다룬 도구와의 통합을
통해 보다 유연한 설계 및 개발 가능
IBM Software Group | Rational software
11
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제어
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
12
통합 개발 환경 제공
완벽한 설계 및 개발을 위한 도구 셋을 제공
RAD의 모든 개발 기능 포함
J2EE, Java, and C++ 의 구조 및 행위에 대한 비주얼 편집 가능
Eclipse 에 기반한 엔터프라이즈 환경의 통합 개발 플랫폼
Eclipse 기반의 플러그인을 통해 개발 환경을 확장 가능
Web services 및 SOA(Service Oriented Architectures) 지원
보다 신속한 어플리케이션 개발 도구 및 마법사 지원
Portal, SOA and J2EE 개발 생산성 향상
IBM Software Group | Rational software
13
C/C++ 개발 환경 제공Perspective for C++
Development
C/C++ project hierarchical tree view
UML class diagram visualization of C/C++
classes and structs
C/C++ editor with syntax highlighting, code
completion, and advanced search
C/C++ 개발 환경 지원
syntax highlighting 에디터 and
커스터마이징 가능한 빌드
디버거 프래임웍
Java 및 XML 같은 다른 언어와 동일한 개발
환경에서 C++ 어플리케이션을 개발 가능
IBM Software Group | Rational software
14
Class Diagram
Database Diagram
Java, Enterprise Java Beans, and Database objects를 위한 UML Class diagram 에디터 제공
C++ 코드를 위한 UML Class diagram 에디터
제공
Database objects (ER Modeling)에 대한 IE 및 IDEF diagram 에디터 제공
보다 향상된 UML 지원
IBM Software Group | Rational software
15
Java 소스를 위한 UML Sequence diagram 에디터 지원
UML 2 Sequence diagram을 이용한 Java 매쏘드 내부를 시각화
상세한 UML 다이어그램을 포함한 Javadoc 생성
보다 향상된 UML 지원
IBM Software Group | Rational software
16
자동화된 다이어그램 생성:Topic and Browse Diagrams
Topic diagrams 및 Browse diagrams을 통한 보다 손쉬운
다이어그램 생성
설계 및 산출물, 커뮤니케이션을 위해
UML을 보다 쉽게 활용
사용자들이 별도의 다이어그램을
작성하지 않고도 모델 및
어플리케이션의 구조를 쉽게 파악
Web Browser-like controls to navigate workspace or model
IBM Software Group | Rational software
17
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제어
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
18
Unified Modeling Language (UML) 2.1 지원
최신의 개방형 표준인 Unified Modeling Language (UML) specification version 2.1 지원
표준에 근거한 UML 다이어그램 지원
Class, Communication, Component, Composite Structure, Deployment, Activity, Sequence, State, Object and Use Case 다이어그램 지원
자동화된 다이어그램 생성
프로젝트에 참여하는 다양한 구성원들이 표준 표기법을 이용하여 어플리케이션
아키텍처를 표현하고 이를 기반으로 커뮤니케이션
IBM Software Group | Rational software
19
보다 손쉬운 모델링 환경 제공
Content assistance 기능을 이용한
비주얼 모델링
액션바, 작업 내용에 근거한 모델링
cheat sheet 제공, 온라인 도움말 및
샘플 제공
다양한 View을 통한 에디팅 기능 향상
“Project Explorer” view provides a filtered view of the models and
workspace
Diagram links as first-class citizens
“In diagram editing” to accelerate modeling.
Properties view
Inheritance view
IBM Software Group | Rational software
20
Patterns 및 Transformations 지원
Pattern 및 변환(transformation) 구현 지원
개발 생산성을 향상
기존의 자산을 재사용 가능
주요 기술에 대한 공유
개방형 Open API에 기반한 Pattern 구현을 통한 유연성 극대화
사용한 가능한 Pattern 제공
IBM Software Group | Rational software
21
Patterns 지원
손쉬운 패턴 적용
개방형 API를 이용한 Pattern 구현의
유연성이 증가
모든 Gang of Four design patterns 제공
IBM developerWorks의 RAS repository를 통해 추가적인 Pattern 제공
New patterns view providing outline and
description of the pattern
Pattern rendered as a collaboration to support incremental application
Support “drag-and-drop” of pattern parameters into the
collaboration
IBM Software Group | Rational software
22
Transformations 지원
JET2 에 기반한 Transformation Engine 제공
“Batch”성 변환 작업에 Transformation은 최적의
솔루션
Model-to-model
Model-to-code
제품에서 제공되는 코드 변환
UML-to-J2EE/Java and reverse
UML-to-C++ and reverse
WSDL and XSD
UML-to-Logical Data Model*
IBM developerWorks내의 RAS repository 를통해 업데이트
*Integration with Rational Data Architect
IBM Software Group | Rational software
23
Reconciliation 및 ReverseTransformations 지원
설계와 개발 사이의 Reconciliation 가능
설계와 개발자 사이의 작업에 대한 조정(reconcile) 가능
보다 향상된 비교 및 병합 기능을 제공
Code 에서 모델로의 역변환 지원
모델 조정(reconcile)
모델 병합
모델에서 코드로의 변환 지원
코드에서 모델로의 역공학 지원
Reverse transformations for Java, C++
IBM Software Group | Rational software
24
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제어
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
25
다양한 코드 분석 기능 제공
아키텍처에 기반한 코드 분석, 리뷰, 모델 분석 기능 제공
무제한 분석에 대한 구성 작성 가능
정의된 규칙에 근거하여 지정한범위(workspace, working set, or project)에 대해 실행
IBM Software Group | Rational software
26
아키텍처 측면의 분석 및 제어 지원
J2EE/J2SE 어플리케이션을 위한
Architecture discovery 기능 제공
상위 레벨에서 코드를 시각화
현재 실행되고 있는 코드를 통해 아키텍처를 이해
템플릿 기반의 Rule 작성을 통한 전체적인
아키텍처 관리
Anti-pattern 및 pattern 발견
Cyclic dependencies, hubs, breakable 파악
자동화된 quick-fix를 지원하기 위한 마법사 기능
제공
코드 분석에 따른 자동화된 “topic” diagrams 생성
Patterns 및 anti-patterns 이 검색, 코드로의 Navigation
지원
anti-patterns에 대한가이드 제시를 위한 상세
뷰 제공
Code review 기능 제공
IBM Software Group | Rational software
27
코드 품질 보장
다양한 유형의 문제를 발견 가능
GlobalizationJ2EE Best PracticesJ2SE Best PracticesPrivate API UsagePerformanceNaming Conventions
규칙에 위배된 내용에 대한 매트릭스 와 리포트제공
문제에 대한 자세한 설명 및 예제, 빠른 수정을제공
사용자가 규칙을 생성 혹은 enable disable 할지를 선택가능
템플릿에 기반한 규칙 생성 가능
Complete Code Review (200+ rules)Quick Code Review (34 rules)
IBM Software Group | Rational software
28
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제언
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
29
확장 가능한 개방형 플랫폼: Eclipse 기반
Rational Elite Support for Eclipse – serves broader mix of practitioners
Option to install Rational desktop v7 offerings directly into existing Eclipse 3.2 environments
New product installer technology offering greater choice on which features to install
150+ member companiesOver 2.3 million usersBasis of 1,300+ products
Community innovation Scalable enterprise support
IBM Rational SoftwareDelivery Platform
모듈화
보다 강력한 기능 제공
보다 편리한 사용환경 제공
Eclipse
IBM Tools Packages (Assemblies of Components) 3rd Party Tools
Custom Customer Plug-insOpen Source
IBM Tools Functional Components
IBM Software Group | Rational software
30
보다 손쉬운 제품 설치 및 업데이트
기본의 Eclipse 개발 환경에 추가적인 설치
가능
세부 기능 단위로 설치 가능
업데이트 관리
IBM Software Group | Rational software
31
재사용 가능한 자산(Reusable Assets) 지원
재사용 가능한 자산에 대한 Asset browser 제공
OMG의 RAS(Reusable Asset Specification) 지원
리파지토리는 보다 손쉽게 Asset을 찾을 수
있도록 구조화 가능
리파지토리에서 Asset을 검색하고 Import할 수
있는 Asset Browser 제공
사용자는 개발 단계의 모델이나 산출물을 RAS 형태로 패키징 가능
IBM Software Group | Rational software
32
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제언
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
33
도구의 확장성
모델링 환경을 커스터 마이징 하고 확장하기 위한 Open API를 제공
UML profile을 통해 UML 모델에 사용자 정의의 Property를 추가 하는 것이 가능
분석 및 설계도구를 자신의 개발 프로세스에 맞도록 커스터 마이징 가능
도구를 확장하기 위한 풍부한 인프라스트럭처 제공
Open Source API and frameworks (UML 2.1, EMF, GEF)에 기반, 이를 확장
UI, menu, layout, command management, query에 대한 확장 가능
Eclipse plug-ins을 통한 확장 기능 구현
“Pluglet” 을 통한 java 기반의 lightweight 스크립트 제공
위저드와 샘플 등을 통한 다양한 사용자 편의 기능 제공
IBM Software Group | Rational software
34
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v 7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제어
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
35
다양한 도구와의 통합 제공 - RequisitePro
요구사항과 설계 단계의 산출물과의 추적성 관리
가능
설계모델, 분석 모델, 소스와 연관된 요구사항을
쉽게 찾을 수 있음
Requirements perspective 를 통해
Rational RequisitePro 내의 요소를 탐색하고
모델 요소와의 Link 생성 가능
여러 개의 RequisitePro projects를 열고 탐색
가능
요구사항 및 패키지, 뷰에 대한 확인 가능
모델요소와 요구사항간의 drag and drop을 통해
손쉽게 연결
요구사항으로 부터 새로운 모델 요소 생성
구성 가능한 동기화
Requirements Explorer for viewing requirements in Eclipse.
Associate requirements and model elements using
Drag-and-Drop
View requirements traceability from the perspective of either “trace-to” or
“trace-from”
IBM Software Group | Rational software
36
보다 향상된 팀 개발 지원
멀티 모델, 비교 및 병합 기능, 형상관리와의 연계를 통해 팀 개발을 지원
CVS, Rational ClearCase and Rational ClearQuest과의 연계를 지원함으로써 보다
향상된 팀 개발 기능 제공
모델을 의미 있는 레벨에서 병합 가능
다이어그램 레벨에서 비교 및 병합 가능
모델이 쉽게 분할되고 재 통합됨
ClearQuest 와의 연계를 위한 View 제공
IBM Software Group | Rational software
37
시각적인 모델 비교 및 병합 기능 제공
Model differences & conflicts
Description of selected difference or conflict
Diagram view of selected difference or conflict for
left contributor
Choose View Type
IBM Software Group | Rational software
38
프로세스 가이드 라인 제공
RUP configuration for Software Architects를 통해 관련 내용에 대한
동적인 프로세스 가이던스 제공
프로세스 가이던스와 사용자 지원이
동적으로 제공됨
SOA and UML2에 대한 가이던스
제공
Tool Mentors 를 통해 각 작업에
대한 가이던스 제공
사용자가 정의 가능한 View 및Content 지정 가능
Improved navigation of RUP
Search is integrated with Eclipse search
Process Advisor provides context sensitive guidance
IBM Software Group | Rational software
39
Agenda
IBM Rational SDP 소개
어플리케이션 개발에서 직면하는 과제들
Rational Software Architect v7.0 주요 특징
통합 개발 환경 제공
아키텍처에 기반한 모델링 및 표준 준수
Java 소스에 대한 리뷰 및 제어
편리한 사용 환경 제공
개방형 확장 플랫폼에 기반
팀 작업 지원
요약
IBM Software Group | Rational software
40
요약:IBM Rational Software Architect v7.0
IBM Rational Software Architect는 통합된 설계 및 개발
도구입니다.
UML 을 기반으로 모델 기반의 개발방식을 보다 진화시켜
어플리케이션과 서비스를 보다 잘 설계할 수 있도록 합니다.
기존의 도구에 비해 어플리케이션 및 웹 서비스를 보다 빠르게 개발
가능하도록 합니다.
최신의 모델링 표준을 지원하며 개방형의 확장 가능한 모델링
플랫폼입니다.
Java 및 service-oriented applications 기반의 어플리케이션을
분석하고 문제를 찾아냅니다.
다양한 도구와의 통합을 통해 보다 설계와 개발작업을 보다 단순화
합니다.
IBM Software Group | Rational software
41
For More Information…
Technical Resources on IBM developerWorks
www.ibm.com/developerworks/rational
Technical library of whitepapers, utilities, betas
Downloadable demos
Discussion forums
Software Architect on ibm.com:http://www-306.ibm.com/software/awdtools/architect/swarchitect/index.html
Contacting your IBM representativehttp://www.ibm.com/contact/us
Call 1 800 728 1212
IBM Software Group | Rational software
42
IBM Software Group | Rational software
43