교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006

Slides:



Advertisements
Similar presentations
StarUML UOS, SELab. Jinhan Kim.. University of Seoul, Software Engineering Laboratory 1. StarUML 특징  StarUML™ 은 UML(Unified Modeling Language)
Advertisements

The UML (Unified Modeling Language) Software Engineering Laboratory.
© Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models 배재대학교 멀티미디어 정보공학 연구실 발표자 : 이 상 조
Introduction to UML © copyright 2001 SNU OOPSLA Lab.
2.1 UML 이해 ❑모델링의 개념, 역사, 방법 ❑ UML 정의 및 배경, 필요성 ❑구성요소, 공통메커니즘, 아키텍처와 같은 UML 구조 모델링 개요 UML 개요 UML 구조.
Use Cases Fashion Network System. 2 Overall Use-Case Outline: User 에게 Clothing Parsing System 의 기능들을 제공해준다. Use-Case Diagram.
컴퓨터 종합설계 2012 년 2 학기 Syllabus 개요 (1/2) 목표  실 세계의 문제를 제시하고, 이에 대한 해결책을 컴퓨터 공학적인 방법으로 해결하기 위하여 팀을 주축으로 소프트웨어 개발 프로젝트 수행  프로젝트 계획에서부터 구현까지.
학습목표 UML 소개 2010 학년도 2 학기. 학습목표 2 이번 시간의 학습목표 이번 시간을 정상적으로 이수하면 우리들은 … UML(Unified Modeling Language) 의 개념을 설명할 수 있다. UML 의 구성요소를 설명할 수 있다.
컴퓨터와 인터넷.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
소프트웨어 공학 Lecture #5: 모델링 최은만 저 6차 개정판 1.
UML의 구성 UML 구성 요소 UML 아키텍처 UML 메커니즘.
인터넷의활용.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
UML 소개.
Power Java 제3장 이클립스 사용하기.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
4강. Servlet 맛보기 Servlet 문서 작성 하기 web.xml에 서블릿 맵핑 어노테이션을 이용한 서블릿 맵핑
최윤정 Java 프로그래밍 클래스 상속 최윤정
Entity Relationship Diagram
제 2 장 객체지향의 이해.
제 4 장 관계 학기 소프트웨어설계.
UML (Unified Modeling Language)
- Pipeline Submission : submit - Pipeline 등록 : register
Chapter 02 : Class 다이아그램. chapter 02 : Class 다이아그램.
2장. UML 기본 개념.
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
Unified Modeling Language UML 2.0
Object Oriented Programming
OMT와 UML 1.
Visual Basic .NET 처음 사용하기.
C++ Programming: Sample Programs
FTP 프로그램 채계화 박재은 박수민.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
APPLYING UML AND PATTERNS PART I. Introduction Chapter 1
건축설계사 임동진.
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
제1장 통계학이란 무엇인가 제2장 자료와 수집 제3장 자료 분석 방법
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
소프트웨어공학 윤일노 STARuml Guide 소프트웨어공학 윤일노
컴퓨터소프트웨어설계및실험 년 1학기 실험계획 -.
제1장 생산공정 개요.
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
제 5 장 집합연관, 복합연관, 인터페이스, 실체화 (교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006) 학기 소프트웨어설계.
Clipping 이진학.
20장. 객체지향 프로그래밍 01_ 객체지향 프로그래밍의 시작.
04. DBMS 개요 명지대학교 ICT 융합대학 김정호.
Lab 8 Guide: 멀티스레딩 예제 2 * Critical Section을 이용한 멀티스레딩 동기화 (교재 15장, 쪽)
LabVIEW WiznTec 주임 박명대 1.
컴포넌트 다이어그램 컴포넌트 정의 컴포넌트 다이어그램의 UML 표기법 컴포넌트와 클래스 컴포넌트 다이어그램의 간단한 예
웹사이트 분석과 설계 (화면 설계) 학번: 성명: 박준석.
프로젝트 제안서 -TCP/IP를 이용한 메신저 구현-
UML과 객체지향 모델링 UML의 개요 객체지향 모델링.
OpenGL 프로젝트 계획서 - 탱탱볼 만들기 팀명 : 훈남들 조원 : _이상민 _박용만
충남대학교 Software Engineering Lab 김 대 엽
Flow Diagram IV While.
Part 2 개념적 데이터 모델 Copyright © 2006 by Ehan Publishing Co. All rights reserved.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
DNA의 구조와 역할 (1) DNA : 이중 나선 구조로 수많은 뉴클레오타이드의 결합으로 이루어져 있다.
4장. 데이터 모델링 데이터 모델링과 데이터 모델의 개념 개체-관계 모델 논리적 데이터 모델.
유스케이스 다이어그램 유스케이스 모델링과 UML 표기법 유스케이스와 유스케이스 관계 액터 사이의 일반화관계
Component Diagram 1.
.Net FrameWork for Web2.0 한석수
Wake On Lan 발표자: 김 홍 기 김홍기 조성오
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
서로 다른 세대 간에 소통과 공존은 가능할까? (2차시)
추상 테스트 케이스 성숙도 모델 기반의 테스트 케이스 추적성 연구
6 객체.
졸업프로젝트.
Presentation transcript:

교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006

차례 1.1 복잡한 세상 바로잡기 1.2 UML의 탄생 배경 1.3 UML의 구성요소 1.4 이외의 것들 1.5 UML2.0의 새로운 다이어그램 1.6 왜 이렇게 다이어그램이 많을까? 1.7 단지 그림 몇 개 묶어 놓은 것 아닌가? 1.8 요약 2010-2학기 소트트웨어설계

1.1 복잡한 세상 바로잡기 왜 UML이 필요할까? UML(Unified Modeling Language)은 오늘날의 객체지향 시스템 개발 분야에서 가장 각광받는 도구 중 하나 UML은 시스템 개발자가 자신의 비전(vision)을 구축하고 반영하는데 있어서 표준적이고 이해하기 쉬운 방법으로 할 수 있도록 지원 자신의 설계 결과물을 다른 사람과 효과적으로 주고받으며 공유할 수 있는 메커니즘 제공 2010-2학기 소트트웨어설계

1.1 복잡한 세상 바로잡기 UML Diagrams (출처: http://www.wikipedia.org, Unified Modeling Language) 2010-2학기 소트트웨어설계

1.2 UML의 탄생 배경 UML이 어떻게 생겼을까? UML 1.0 (1997) 은 세 친구(Three Amigos)에 의해 만들어졌다. Grady Booch - Booch Notation James Rumbaugh - Object Modeling Technique (OMT) Ivar Jacobson - Objectory methodology UML 은 소프트웨어 업계의 명실 상부한 표준이 되었으며, 계속 수정 보완되고 있다. UML 1.3과 UML 1.4 (2000)그리고 UML 1.5 (2003)가 나와 있고, 최근에는 UML 2.0 (2005) 이 OMG에 의해 승인 (참고: http://www.omg.org, Object Management Group) 2010-2학기 소트트웨어설계

1.2 UML의 탄생 배경 (출처: http://www.wikipedia.org, Unified Modeling Language) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 UML 다이어그램 UML의 여러 가지 그래픽 요소는 하나의 큰 그림, 즉 다이어그램을 그리는데 사용 다이어그램의 목적은 시스템을 여러 가지 관점에서 볼 수 있는 뷰(View)를 제공하는 것이며, 이러한 뷰의 집합을 모델(Model)이라 함 UML 모델은 시스템 자체의 “목적 행동”을 설명하는 언어 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 UML diagram (1) (8) (2) (6) (3) (4) (10) (9) (13) (5) (11) (7) (12) (출처: http://www.wikipedia.org, Unified Modeling Language) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 4+1 Architectural View Model (Philippe Kruchten) Class Diagram(1) Communication diagram(7) Sequence diagram(5) (13)Package diagram (3)Use case diagram Activity diagram(6) (9)Deployment diagram (출처: http://www.wikipedia.org, 4+1 Architectural View Model) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (1) 클래스 다이어그램(Class Diagram) 예: 세탁기 클래스 속성 : 브랜드 이름, 모델, 일련 번호, 용량 등 행동 : “옷을 넣는다(accept clothes)” “세제를 뿌린다(accept detergent)” “전원을 켜다(turn on)” “전원을 끄다(turn off)” 등 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 UML 클래스 기호 예: 세탁기 클래스 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (2) 객체 다이어그램 (Object Diagram) 객체(Object) - 클래스의 인스턴스 즉, 값이 주어진 속성과 행동을 가지고 있는 개별적인 개체 UML 객체 아이콘 이름이 있는 객체 익명의 객체 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (3) 유스케이스 다이어그램 (Usecase Diagram) 예: 세탁기 유스케이스 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (4) 상태 다이어그램 (State Diagram) 객체는 시간에 따라 각기 다른 상태에 있을 수 있다. 예: 세탁기 상태 다이어그램 - 세탁기의 상태가 단계적으로 변해감을 알 수 있다. (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (5) 시퀀스 다이어그램 (Sequence Diagram) 객체들끼리 주고받는 메시지의 순서를 시간의 흐름에 따라 표현 예: 세탁기 시퀀스 다이어그램 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (6) 활동 다이어그램 (Activity Diagram) 예: 세탁기 활동 다이어그램 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (7) 통신 다이어그램 (Communication Diagram) 하나의 시스템 구성요소는 다른 구성요소들과 손발을 맞추면서 시스템 전체의 목적을 이루어 나아간다. 시퀀스 다이어그램과 함께 표현 예: 세탁기 통신 다이어그램 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (8) 컴포넌트 다이어그램 (Component Diagram) UML 1.x UML 2.0 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.3 UML의 구성요소 (9) 배포 다이어그램 (Deployment Diagram) 컴퓨터를 기반으로 하는 시스템의 물리적 구조를 표현 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.4 이외의 것들 UML은 다이어그램을 조직화하고 확장하는 방법을 제공 노트 (note) 스테레오 타입 (stereotype) 키워드 (keyword) 2010-2학기 소트트웨어설계

1.4 이외의 것들 노트(note) 붙였다 떼었다 할 수 있는 노란 메모지 모든 다이어그램 요소에 추가적인 설명 제공 모든 다이어그램 요소에 추가적인 설명 제공 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.4 이외의 것들 키워드와 스테레오타입 스테레오타입(stereotypes) - 기존의 UML 요소를 기본으로 하여 다른 요소를 새로 만들 수 있게 하는 장치 키워드(keyword) - UML 요소가 원래 의미가 아닌 새로운 다른 의미로 사용되었음을 나타내며 거듭 인용부호(« ») 안에 위치 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.5 UML2.0의 새로운 다이어그램 UML 2.0 의 다이어그램의 변화/추가 UML 1.X의 다이어그램이 새롭게 변화된 것 컴포넌트 다이어그램 새로운 아이디어가 여러 방면으로 추가된 다이어그램 복합체 구조 다이어그램 교류 개요 다이어그램 타이밍 다이어그램 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.5 UML2.0의 새로운 다이어그램 (10) 복합체 구조 다이어그램(composite structure diagram) 각 컴포넌트 클래스를 전체 클래스 안에 위치시킴으로써 클래스의 내부 구조가 어떤 것으로 이루어져 있는지 살펴보는 데 매우 유용 UML 2.0에서 새로 도입 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.5 UML2.0의 새로운 다이어그램 (11) 교류 개요 다이어그램 (interaction overview diagram) 각 활동마다 객체 사이에 시간의 흐름을 갖는 메시지가 존재한다면 몇몇 활동 부분은 시퀀스 다이어그램이나 통신 다이어그램(혹은 두 다이어그램의 조합)으로 바뀌어야 한다. UML 2.0에서 새로 도입 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.5 UML2.0의 새로운 다이어그램 활동 다이어그램과 교류 개요 다이어그램 예: 도서관에서 책 빌리기 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.5 UML2.0의 새로운 다이어그램 (12) 타이밍 다이어그램 (Timing Diagram) 시퀀스 다이어그램은 시간에 관해서는 전혀 언급하지 않음 타이밍 다이어그램은 객체가 특정 상태에서 얼마나 오래 머무는지 명시 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.5 UML2.0의 새로운 다이어그램 (13) 패키지 다이어그램 (Package Diagram) 다이어그램들을 조직화 구성요소들을 탭이 달린 폴더 안에 표현 (출처: J. Schmuller, Teach Yourself UML in 24 Hours, 3rd Ed., Sams, 2004) 2010-2학기 소트트웨어설계

1.6 왜 이렇게 다이어그램이 많을까? 왜 굳이 여러 가지 다이어그램을 사용할까? 모든 참여자(stakeholder)를 만족시키기 위해서 다양한 다이어그램 사용 좋은 시스템 설계는 모든 가능한 관점의 다이어그램이 포함되어 있어야 함 각각의 UML 다이어그램은 자신이 나타내고 있는 관점을 하나로 통합하는 수단을 제공 2010-2학기 소트트웨어설계

1.7 단지 그림 몇 개 묶어 놓은 것 아닌가? 정확한 모델의 중요성 “Big Dig”: 보스톤의 건설 프로젝트 (1982, 1991-2006; $21.93B) (출처: http://www.wikipedia.org, Big Dig (Boston, Massachusetts)) 2010-2학기 소트트웨어설계

1.8 요약 시스템 개발을 위한 이해하기 쉬운 표기 방식 필요 UML은 시스템 개발 세계에서 표준으로 인정받은 표기 시스템 시스템 분석가, 의뢰인, 프로그래머, 기타 참여자의 관점 제공 각 시점에서 이해하는 다방면의 설계도 작성 표준 제안된 그래픽 요소를 조합하여 다이어그램 작성 UML 모델은 시스템이 “무엇(what)”을 의도하고 있는 지 말해줄 뿐, “어떻게(how)” 구현되는 지 말해주지 않는다. 2010-2학기 소트트웨어설계