[17]UML의 미래 소프트웨어공학과 2004512030 이성운.

Slides:



Advertisements
Similar presentations
CI(Continuous Integration) 이학성. C ontinuous I ntegration? 2 지속적으로 품질관리 를 적용하는 과정 개발자가 기존 코드의 수정 작업 을 시작할 때, 코드 베이스의복사본을 받아서 작업을 시작하면서 코드의 변경.
Advertisements

프로그래밍언어론 TA 윤들녁. 소개 윤들녁 연락처 : 공대 7 호관 4 층 401 호 데이터베이스 연구실 실습 후 날짜 _ 학번.zip 으로.
StarUML UOS, SELab. Jinhan Kim.. University of Seoul, Software Engineering Laboratory 1. StarUML 특징  StarUML™ 은 UML(Unified Modeling Language)
Cinema Manager System 최종 발표 조 team05 발표자 : 임 창목 1.
The UML (Unified Modeling Language) Software Engineering Laboratory.
© Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models 배재대학교 멀티미디어 정보공학 연구실 발표자 : 이 상 조
.Net History. Visual Studio.Net 2002 /.Net Framework 1.0 제품의 버전 / 특징 2002 년 - Visual Studio.Net 2002 /.Net Framework 1.0 첫 통합 개발 환경 - C# 언어 등장 (C# 1.0)
Dept. Computer Science, Korea Univ. Intelligent Information System Lab. 웹 서비스와 시멘틱 웹의 연동 방안 연구 고려대학교 지능정보시스템 연구실 이 윤 수.
대표자명 / 연락처 / 이메일 ( 기 창업인 경우 회사 명칭 ) 지원하려는 사업 명칭 사업계획서 작성양식.
컴퓨터와 인터넷.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006
Power Java 제3장 이클립스 사용하기.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
최윤정 Java 프로그래밍 클래스 상속 최윤정
제 2 장 객체지향의 이해.
제 4 장 관계 학기 소프트웨어설계.
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
Bluetooth & ZigBee 통합 Interface - IEEE
UML (Unified Modeling Language)
- Pipeline Submission : submit - Pipeline 등록 : register
데이터베이스 및 설계 금오공과대학교 컴퓨터공학부 이 이섭.
소프트웨어공학 UML 학기.
2장. UML 기본 개념.
31강 JAVA 네트워크 JAVA 네트워크 InetAdress, URLConnection 클래스 Socket의 이해
소프트웨어설계 UML 학기.
OMT와 UML 1.
Visual Basic .NET 처음 사용하기.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
Power Java 제14장 배치 관리자.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
(Extensible Markup Language)
APPLYING UML AND PATTERNS PART I. Introduction Chapter 1
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
웹 어플리케이션 보안 2016년 2학기 3. Mongo db.
Method & library.
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
아틱 기반 전력 통합 모니터링 시스템 검증을 위한
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
소프트웨어공학 윤일노 STARuml Guide 소프트웨어공학 윤일노
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
컴퓨터소프트웨어설계및실험 년 1학기 실험계획 -.
제목소개 1. 안드로이드소개 2. 패킷캡쳐를 위한 환경 소개 3. ndk 소개 4. lipcap 5. 6.도식화 그림
EAI 구현 사례 : A사 System Architecture
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
제 5 장 집합연관, 복합연관, 인터페이스, 실체화 (교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006) 학기 소프트웨어설계.
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
Chapter 03. 관계 데이터베이스 설계.
04. DBMS 개요 명지대학교 ICT 융합대학 김정호.
데이터 베이스 DB2 관계형 데이터 모델 권준영.
컴포넌트 다이어그램 컴포넌트 정의 컴포넌트 다이어그램의 UML 표기법 컴포넌트와 클래스 컴포넌트 다이어그램의 간단한 예
웹사이트 분석과 설계 (화면 설계) 학번: 성명: 박준석.
07. 소프트웨어 아키텍처 설계 전략 명지대학교 융합소프트웨어학부 김정호 교수.
CHAP 21. 전화, SMS, 주소록.
Part 2 개념적 데이터 모델 Copyright © 2006 by Ehan Publishing Co. All rights reserved.
논리회로 설계 및 실험 4주차.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
Map Designer Solution 소개자료
발표자 : 이지연 Programming Systems Lab.
08. 소프트웨어 아키텍처 설계 전략 명지대학교 융합소프트웨어학부 김정호 교수.
ER-관계 사상에 의한 관계데이터베이스 설계 충북대학교 구조시스템공학과 시스템공학연구실
Component Diagram 1.
.Net FrameWork for Web2.0 한석수
Power Java 제14장 배치 관리자.
교량 구조물의 개념 설계 및 프로토타입 제작 과정
 6장. SQL 쿼리.
유승석 FILE I/O File Input/Output 유승석 SD50 – C# & .NET Platform.
Presentation transcript:

[17]UML의 미래 소프트웨어공학과 2004512030 이성운

17. UML의 미래 1. UML 2.0 UML의 진화과정 UML 2.0에서의 변화 UML 2.0에서 추가된 Diagram UML Diagram 분류 및 Spec

17. UML의 미래 MDA MDA 배경 MDA 개요 MDA 핵심 기술 MDA 모델변환 4 Layer metamodeling hierarchy UML Profiles 결론

1. UML 2.0 UML의 진화과정 UML 2.0 feedback UML 1.x UML 1.1 UML 1.0 Superstructure Infrastructure Diagram Interchange OCL UML의 진화과정 UML 2.0 feedback UML 1.x OMG제안 ’97년11월 표준채택 UML 1.1 OMG제안 ’97년1월 UML 1.0 Other method UML 0.9 Unified Method 0.8 Booch Rumbaugh Jacobson

<<component>> 1. UML 2.0 UML 2.0에서 변화 Collaboration Diagram -> Communication Diagram State chart Diagram -> State machine Diagram Component Diagram 표기법 변경 Sequence Diagram while문이나 if-else문, switch-case문과 같은 반복문, 조건문, 선택문 등으로 나타나는 것은 Interaction Frame (상호연동프레임)으로 표현한다 전체 다이어그램을 Frame으로 묶을 수 있고, 다이어그램에 Interaction Frame을 이용할 수도 있다 Interaction Frame를 여러 형태로 결합이 가능하며 Frame의 operator를 통하여 결합형태를 표시한다 A Component <<component>>

1. UML 2.0 :Customer :Front :Register :Dispenser par 동시진행사건을 표현 Accept(cash,selection) getCustomerInput(cash,selection) [cash>price] checkForChange(cash,price) [no change] returnCash(cash) <<transaction over>>[no change] displayPrompt(“Use Corrent Change”) checkAvailability(selection) 동시진행사건을 표현 [sold out]displayPrompt(“Sold out”) <<transaction over>>[sold out] returnCash(cash) par Update(cash,price) [cash>price] receiveChange(cash,price) releaseSoda(selection) <<transaction over>>

1. UML 2.0 :Customer :Front :Register :Dispenser alt [sold out] [else] Accept(cash,selection) getCustomerInput(cash,selection) [cash>price] checkForChange(cash,price) [no change] returnCash(cash) 조건에 따른 분기를 표시 <<transaction over>>[no change] displayPrompt(“Use Corrent Change”) checkAvailability(selection) alt [sold out]displayPrompt(“Sold out”) <<transaction over>>[sold out] [sold out] returnCash(cash) [else] Update(cash,price) [cash>price] receiveChange(cash,price) releaseSoda(selection) <<transaction over>>

1. UML 2.0 UML 2.0에서 변화 Activity Diagram … … 시간표시(time signal) 가능 Exception handler 처리 Object node를 활용하여 활동(action)에 input/output부분을 지정 간단한 전송신호(send signal), 수신신호(accept signal)를 표시할 수 있다. 활동(action)을 세밀하게 분해가 가능 Activity name 1sec input … output … input

1. UML 2.0 UML 2.0에서 추가된 diagram Composit structure Diagram car UML 2.0의 복합체 구조 다이어그램(composite structure diagram)에는 각 컴포넌트 클래스를 전체 클래스 안에 위치시킴으로써 클래스의 내부 구조가 어떤 것으로 이루어져 있는지 살펴보는 데에 매우 유용하다. car Wheel tire : String size : String leftfront: wheel frontaxle rightfront: wheel leftrear: wheel rearaxle righttrear: wheel

1. UML 2.0 UML 2.0에서 추가된 Diagram Interaction overview Diagram 각 활동마다 객체 사이에 시간의 흐름을 갖는 메시지가 존재한다면 몇몇 활동 부분은 Sequence diagram이나 Communication diagram(혹은 두 다이어그램의 조합)으로 표현할 수 있다 Interaction overview diagram은 전체로 보면 하나의 Activity diagram이지만 각각의 활동 내부를 보면 Interaction diagram으로 이루어져 있다 즉, Interaction overview diagram은 Activity diagram과 Interaction diagram을 Frame 단위로 묶어서 Activity diagram처럼 사용한다

1. UML 2.0

1. UML 2.0 UML 2.0에서 추가된 diagram Timing Diagram :WashingMachine 시간 제약의 기술에 초점을 맞추고 있다 하나의 객체 또는 여러 객체를 한꺼번에 기술할 수 있다 서로 다른 객체 사이에 시간 제약 조건이 있는 경우 유용하게 사용할 수 있다 5 10 15 20 25 30 35 40 {>5m} 입수단계 세탁단계 헹굼단계 탈수단계 :WashingMachine state Timing constraint

1. UML 2.0 UML Diagram 분류 new new new

1. UML 2.0 UML Specification UML Superstructure UML Infrastructure Meta-model을 기반으로 사용자 수준에서 모델을 활용하여 시스템 구조(structure)와 행위(behavior)를 정의하고 있는 14개 Diagram을 명세 UML Infrastructure UML 뿐만 아니라 OMG가 주관하는 각종 표준의 통합과 정의에 활용되는 메타모델 수준의 기본 구조체(constructs)를 명세 UML Diagram Interchange Case 도구 벤더들간의 모델 호환성 문제를 명세 UML OCL(Object Contraint Language) 모델 수준에서 요소(elements)제어 및 제약 문제를 명세

2. MDA MDA 배경 다양한 미들웨어 플랫폼의 등장 다양한 컴포넌트 아키텍쳐의 등장 ex) CORBA, .NET, JE22 다양한 컴포넌트 아키텍쳐의 등장 ex) ActiveX, COM, COM+, CCM, EJB Interoperability, portability 문제로 시스템 통합의 어려움 다양한 컴포넌트를 지원하는 표준모델의 정의가 필요 플랫폼이나 특정 벤더의 제품에 독립적인 UML로 중심축이 이동 2001년 3월에 MDA 소개 2003년 6월 MDA Guide 1.0.1 공개

2. MDA MDA 개요 설계모델과 구현모델의 분리 소프트웨어의 설계모델을 명세하고, 이를 상세설계모델과 코드로 변환하여 프로그램을 자동 생성하는 새로운 개발 기술 PIM (platform independent model) : 플랫폼에 독립적인 설계모델(기능중심) PSM (platform Specific model) : mapping을 통해 PIM을 PSM으로 변환 UML을 이용하여 PIM, PSM을 기술한다 PIM과 PSM간의 MAPPING방법을 OMG의 핵심표준인 MOF, UML, CWM, XMI로 기술되는 메타모델을 기반으로 하고 있다.

2. MDA MDA 개요 Mapping tool Platform- Independent Model CORBA Java / EJB XML / SOAP Other Mapping tool

2. MDA MDA 핵심 기술 UML (Unified modeling language) 객체 및 컴포넌트 시스템을 표현하기 위한 표준언어 Infrastructure, OCL, Diagram Interchange, Executable UML MOF (Meta object facility) 메타모델 또는 모델의 공통 기반 모델 메타모델의 필수요소와 문법, 구조 등을 정의하는 메타메타모델 메타모델의 구축 및 검색,갱신을 지원하는 Repository 서비스를 정의 모델정의를 위한 기본구성요소와 구성요소를 IDL로 mapping하는 MOF-IDL로 구성 CWM (Common warehouse metamodel) Data repository 통합을 위한 산업표준

2. MDA MDA 핵심 기술 CWM (Common warehouse metamodel) 데이터베이스모델, 스키마 변형 모델,OLAP,데이터마이닝 모델들의 표현방법을 표준화 다양한 벤더들 사이에 메타데이터의 인스턴스를 교환하는 기반을 제공 XMI (XML metadata interchange) MOF 기반 모델들을 XML형태로 mapping하기 위한 표준 사양 MOF 기반 데이터베이스에 저장할 수 있도록 하는 표준 사양 다양한 도구들이나 Repository 사이에 호환성을 제공 모델을 저장하고 교환하기 위한 표준 사양 XML tag가 MOF 기반의 모델을 XML로 표현하는데 어떻게 사용되는지 정의 XMI는 XML DTD와 Schema를 통해서 XML 메타모델과 모델의 표현을 표준화(MOF기반의 메타모델은 XML DTD로 번역되고 모델은 XML 문서로 변환)

2. MDA MDA 모델 변환 OMG의 핵심표준인 MOF,UML,CWM,XMI로 기술되는 메타모델을 기반으로 이루어진다 PIM PSM Platform Independent Model Transformation Specification Specific PIM작성 UML을 이용하여 비즈니스 기능과 행위를 모델링 기본서비스 및 도메인 특성에 대한 내용도 포함 MOF 기반 repository에 저장 PSM작성 Repository에 저장된 내용이 input UML profile은 PSM의 세부적인 표현을 제공, 매핑규칙을 제공 자동화 도구에 의해 구현종속적인 UML model로 변환 Application 생성 Code generator에 의해 PSM으로부터 Application 생성

2. MDA 4 Layer metamodel hierarchy MDA기반 시스템 모델링의 기본구조이다. Meta-Metamodel : 메타모델링을 위한 infrastructure 제공 메타모델을 정의하는 언어를 정의 MOF Metamodel : 메타메타모델의 instance 모델을 정의하는 언어를 정의 UML 2.0 Infrastructure Model : 메타모델의 instance 도메인 영역을 모델링 하는 언어를 정의 User Object(User data) : 모델의 instance 특정 도메인 영역의 실제 구현 객체레벨

2. MDA UML Profiles UML Infrastructure Profile 패키지 메타모델을 지식 영역의 특정 부분에 적용할 수 있도록 하는 메커니즘을 제공 Stereotype, constraints, tagged value를 사용하여 정의 PIM에서 PSM으로, PSM에서 코드를 생성하기 위한 변환규칙을 제공한다 표준 프로파일들 UML Profile for CORBA UML Profile for EJB UML Profile for .NET UML Profile for EAI UML Profile for EDOC UML Profile for Schedulability, Performance and Time UML Profile for SOAP UML Profile for QoS and Fault Tolerance

2. MDA 결론 MDA 방식의 이점 해결해야 할 과제 Portability 향상 Reusability 향상 Interoperability 향상 Productivity 향상 해결해야 할 과제 기술 변화 상황에 맞게 UML Profile을 제때 표준화해야 한다 기존의 legacy 시스템에 대한 PIM변환이 좀 더 명확해야 한다 MDA표준이 좀더 개발자에 이해하기 쉬워야 한다

참고자료 UML 객체지향설계, 곽용재 외, 정보문화사 UML과 객체지향 시스템 분석설계, 이우용 외, 그린 전자통신동향분석 제17권 제6호 2002년 12월 “MDA기술소개” 정보처리 제9권 제2호(2002.3) “MDA기반 소프트웨어 컴포넌트 아키텍쳐” TTA 저널 제80호 “ MDA기반 소프트웨어 컴포넌트 OMG, “UML 2.0 Specification”, http://www.omg.org/docs/formal/05-07-04.pdf OMG, “MDA Guide Version 1.0.1”, http://www.omg.org/cgi-bin/doc?omg/03-06-01 OMG, “Meta Object Facility Specification Version 2.0”, http://www.omg.org/docs/ptc/03-10-04.pdf OMG, “XML Metadata Interchange(XMI)”, http://www.omg.org/docs/formal/05-09-01.pdf OMG, “Common Warehouse Metamodel”, http://www.omg.org/docs/formal/03-03-02.pdf