UML 소개.

Slides:



Advertisements
Similar presentations
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
Advertisements

© 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)
학습목표 UML 소개 2010 학년도 2 학기. 학습목표 2 이번 시간의 학습목표 이번 시간을 정상적으로 이수하면 우리들은 … UML(Unified Modeling Language) 의 개념을 설명할 수 있다. UML 의 구성요소를 설명할 수 있다.
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
게임프로그래밍 입문 멀티미디어공학과 이재문.
소프트웨어 공학 Lecture #5: 모델링 최은만 저 6차 개정판 1.
UML의 구성 UML 구성 요소 UML 아키텍처 UML 메커니즘.
교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006
그래픽스 및 웹 응용설계 자기소개 멀티미디어 학과 4학년 장정환.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
Power Java 제3장 이클립스 사용하기.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
4강. Servlet 맛보기 Servlet 문서 작성 하기 web.xml에 서블릿 맵핑 어노테이션을 이용한 서블릿 맵핑
최윤정 Java 프로그래밍 클래스 상속 최윤정
Entity Relationship Diagram
제 2 장 객체지향의 이해.
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
제 4 장 관계 학기 소프트웨어설계.
Windows Server 장. Windows Server 2008 개요.
데이터베이스 및 설계 금오공과대학교 컴퓨터공학부 이 이섭.
Pincom Study team ARDUINO of IOT Members : 이학성, 김도건.
31강 JAVA 네트워크 JAVA 네트워크 InetAdress, URLConnection 클래스 Socket의 이해
11 장 LAN 기본 개념과 Ethernet LAN
Object Oriented Programming
Linux서버를 이용한 채팅프로그램 지도 교수님 : 이형원 교수님 이 름 : 이 은 영 학 번 :
컴퓨터과학 전공탐색 배상원.
3. 데이타베이스 관리시스템.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
제 1장. 멀티미디어 시스템 개요.
Wireless Java Programming
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
소프트웨어 공학 (Software Engineering)
멀티미디어시스템 제 6 장. 운영체제 IT응용시스템공학과 김 형 진 교수.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
Lesson 2. 기본 데이터형.
CHAPTER 04. 프로그래밍 언어 인간과 컴퓨터의 대화_진화하는 소통. 진화하는 컴퓨터
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
제 5 장 집합연관, 복합연관, 인터페이스, 실체화 (교재: J. Schmuller 저/곽용재 역, 초보자를 위한 UML 객체지향설계, 제3판, 정보문화사, 2006) 학기 소프트웨어설계.
2019년도 전자정보공학과 이수체계도 1학년(트랙) 2학년(트랙) 3학년(트랙) 4학년 1학기 2학기 1학기 2학기 1학기
AUTODESK AUTOCAD ELECTRICAL 전기제어 2D 설계 소프트웨어 표준기반 설계 생산성 도구 구조도 설계
04. DBMS 개요 명지대학교 ICT 융합대학 김정호.
LabVIEW WiznTec 주임 박명대 1.
데이터마이닝, 빅데이터, 데이터과학: 정의 데이터마이닝(data mining)
Part 1 개요 Chapter 1 : 컴퓨터와 프로그램 그리고 자바 Chapter 2 : 자바의 환경
자바로 만든 채팅 프로그램 임경진 조주경 지도교수님 : 이광세 교수님.
웹사이트 분석과 설계 (화면 설계) 학번: 성명: 박준석.
운영체제의 개요 과목: 운영체제 학번: 이름: 조장호.
Self Introduction Template PowerPoint
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
강의 제목 강사 이름 | 강의 번호.
배치 다이어그램 배치 다이어그램의 UML 표기법 결합된 다이어그램의 모델링 예 배치 다이어그램의 간단한 예
UML과 객체지향 모델링 UML의 개요 객체지향 모델링.
클러스터 시스템에서 효과적인 미디어 트랜스코딩 부하분산 정책
Part 2 개념적 데이터 모델 Copyright © 2006 by Ehan Publishing Co. All rights reserved.
멀티미디어시스템 제 4 장. 멀티미디어 데이터베이스 정보환경 IT응용시스템공학과 김 형 진 교수.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
MIDP 네트워크 프로그래밍 ps lab 김윤경.
발표자 : 이지연 Programming Systems Lab.
4장. 데이터 모델링 데이터 모델링과 데이터 모델의 개념 개체-관계 모델 논리적 데이터 모델.
Component Diagram 1.
.Net FrameWork for Web2.0 한석수
학부 컴퓨터공학부 교육과정 (학부) 2학년 4학년 3학년 1학년 1학기 2학기 IPP 자격과정 전공트랙
1. 강의 소개 컴퓨팅적 사고와 문제해결.
DBMS & SQL Server Installation
6 객체.
소프트웨어 설계 및 실습 강기준.
Presentation transcript:

UML 소개

이번 시간의 학습목표 이번 시간을 정상적으로 이수하면 우리들은… UML(Unified Modeling Language) 의 개념을 설명할 수 있다. UML의 구성요소를 설명할 수 있다.

컴퓨터의 발전 (1) 컴퓨터의 여명기 제1세대 컴퓨터(1950~1957) BC 2000년경 : 주판 (중국) 1642년 : 톱니바퀴식 계산기 (프랑스 Pascal) 1672년 : 가감승제 계산기 (독일 Liebnitz) 1834년 : 해석기관 (Difference Engine, 영국 Barbage)  컴퓨터와 유사(입출력, 기억, 연산 및 제어 장치) 1890년 : 천공카드시스템(PCS ; Punch Card System, 미국, Hollerith) 제1세대 컴퓨터(1950~1957) 진공관 배선방식  내장 프로그램 방식(Von Newmann) 기계어, 어셈블리어

컴퓨터의 발전 (2) 제2세대 컴퓨터 (1958~1964) 제3세대 컴퓨터(1965~1974) 트랜지스터 프로그래밍 언어 (COBOL, FORTRAN) 탄생 운영체제 등장 온라인(On Line) 작업 제3세대 컴퓨터(1965~1974) 집적회로(IC) 시분할 방식 다중처리 경영정보시스템(MIS : Management Information System)

컴퓨터의 발전 (3) 제4세대 컴퓨터 (1975~1984) 제5세대 컴퓨터(1985~ ) LSI, VLSI 마이크로프로세서 등장 PC 개념 등장 제5세대 컴퓨터(1985~ ) VHSI, GSI, 초전도체 추론기구 등장 순차처리로 부터의 탈피 멀티미디어 인공지능

컴퓨팅 환경 변화 하드웨어(Hardware) 소프트웨어(Software) 메인프레임 : 중앙컴퓨터에 예속 (80년도 후반까지) 클라이언트/서버 컴퓨팅 : 오픈 시스템 (80년도 후반~90년도 초반) 네트워크 컴퓨팅 : 분산시스템 (90년도 초반 이후) 소프트웨어(Software) 하드웨어 예속 : C, COBOL, FORTRAN 하드웨어 독립, 분산처리 소프트웨어 : Visual BASIC, Power Builder, Delphi, Middleware 하드웨어 독립, 분산처리, 컴포넌트, 프레임웍 소프트웨어 : Java, EJB, CORBA, ActiveX, DOOM, .NET)

정보시스템 구축방법론 (1) 구조적 방법론 : 업무 프로세스 중심 (DFD) 정보공학 방법론 : 데이터 중심 (ERD) 객체지향 방법론 : 객체중심 프로세스 지향 방법론 데이터 지향 방법론 객체 지향 방법론

정보시스템 구축방법론 (2) 구조적 방법론 예 : 구매관리 DFD 2. 제품주문 관리 1. 공급자 관리 3. 제품수요 산정 주문서 수요예측보고서 2. 제품주문 관리 1. 공급자 관리 공급자 선정 3. 제품수요 산정 1. 공급자 관리 주별 기대제품수요 주문품목 정보 주문 정보 재고수량 주 문 주문제품할당 주 문 납품명세서 주문 내역 창고재고 5. 대금관리 4. 납품제품 관리 대금 납품명세서 반품명세서 송장

정보시스템 구축방법론 (3) 정보공학 방법론 예 : 학원관리 ERD 강좌 강사 학생 강의된다 코드 성명 강좌명 전화번호 수업료 수업일수 강사 성명 전화번호 강의된다 강의한다 수강된다 수강한다 학생 성명 전화번호

객체지향 기술(1) 객체(Object)란? 탄생 배경 실세계(현실)에 존재하는 사물(물체)이나 개념 ‘개체’라 부르기도 함 사용자 모델과 개발자 모델의 불일치 낙후된 생산성 수정 및 유지보수 시간과 비용 과다 분산처리 환경에서의 프로그래밍 멀티미디어 정보처리 프로그램의 규모 증가에 따른 프로그래머간 의사소통 증가

객체지향 기술(2) 객체지향의 장점 인간의 자연스러운 사고방식과 일치 업무 전문가와 개발자 사이의 상호이해 증진 크고 복잡한 시스템의 이해 용이 변화에 강함 생산성 증가 (재사용)

객체지향 기술(3) 객체지향의 기본 사상 생물체의 구조원리와 유사(세포=객체, 세포핵=속성) 인간의 사고방식을 소프트웨어 기술에 그대로 도입 객체는 일종의 블랙박스(속성+메서드)에 비유 3대 핵심요소 : 객체, 클래스, 메시지 3대 핵심 원리 : 추상화, 캡슐화, 상속성 객체 객체 메세지 속성 (Attribute) 속성 (Attribute) 메소드 (Method) 메소드 (Method) <객체의 동작 원리>

복잡한 세상 바로잡기 초창기의 프로그래머 현대의 컴퓨팅 환경 치밀한 사고와 기획만이 살아 남는다. 분석 없는 프로그램은 잊어야 할 무용담 누더기 프로그램은 거추장스럽고, 까다로우며, 사용하기 불편 현대의 컴퓨팅 환경 여러 대의 하드웨어는 기본 여러 개의 소프트웨어도 기본 네트워크와 데이터베이스도 필요 치밀한 사고와 기획만이 살아 남는다.

UML이란? UML(Unified Modeling Language) UML의 탄생 개발에 참여하는 모든 이들이 이해하고 동의할 수 있는 방법으로 설계과정을 조직화하는 도구 소프트웨어를 사용할 고객에게 보여주는 설계도 디자인 표기(Design Notation) UML의 탄생 1990년대 중반 : Grady Booch, James Rumbaugh, Ivar Jacobson 1997년 OMG의 표준 모델링언어(UML 1.1)로 채택

UML의 구성요소 (1) 클래스 다이어그램 비슷한 속성과 공통적인 행동수단을 지닌 것들의 범주 / 그룹 속성(attribute)과 행동(behavior)으로 정의 주변 사물을 속성과 행동으로 생각하는 버릇 예) 세탁기 클래스 Washing Machine brand name model name serial name capacity add clothes() add detergent() remove clothes()

My Washer : Washing Machine UML의 구성요소 (2) 객체 다이어그램 클래스의 인스턴스 값이 매겨진 속성과 행동을 갖고 있는 개별적인 개체 클래스의 한 인스턴스 인스턴스 이름은 콜론(:) 좌측에, 클래스 이름은 우측에 기술 인스턴스 이름엔 밑 줄 예) 세탁기 객체 My Washer : Washing Machine

UML의 구성요소 (3) 유스 케이스(use case) 다이어그램 사용자의 입장에서 바라본 시스템의 행동 사용자가 원하는 시스템의 요구사항을 얻어내는데 유용 타원으로 표현 예) 세탁기 쓰임새 다이어그램 Wash clothes Washing Machine User

UML의 구성요소 (5) 상태 다이어그램 시간에 따라 변화하는 객체의 상태 표현 시작상태와 종료상태를 가짐 동적인 다이어그램 예) 세탁기 상태 다이어그램 Soaking Washing Rinsing Spinning

UML의 구성요소 (6) 시퀀스 다이어그램 객체들 간의 메시지 순서를 시간의 흐름에 따라 표현 세탁기(입수관, 드럼, 배수관)의 use case 행동 단계 예) 세탁기 시퀀스 다이어그램 Water Pipe Drum Drain Send fresh water Stop Remain stationary Rotate back and forth Send soapy water Send rinse water Rotate unidirectionally

Rotate drum back and forth 15 minutes UML의 구성요소 (7) 활동 다이어그램 활동간의 제어 흐름을 보여주는 일종의 플로우차트 프로세스의 순차적인 단계 혹은 병행적인 단계에 대한 모델링 동적인 다이어그램으로 대개 시퀀스 내에서 발견 예) 세탁기 활동 다이어그램 Rotate drum back and forth 15 minutes Empty soapy water Restart water input

UML의 구성요소 (8) 협력 다이어그램 시스템 구성요소 간의 협력관계를 표현 구조적 요소와 행위적 요소를 포함 예) 세탁기 협력 다이어그램 Water Pipe Drum Internal Timer 1 : Stop 2 : Rotate back and forth

UML의 구성요소 (9) 컴포넌트 다이어그램 현대 소프트웨어 개발 추세는 컴포넌트 중심 특히 팀 단위의 프로젝트에서 매우 중요 예) 컴포넌트 다이어그램 A component

UML의 구성요소 (10) 배치 다이어그램 컴퓨터를 기반으로 하는 시스템의 물리적 구조 예) 배치 다이어그램 <<Processor>> Cobalt Networks Qube Microserver 2700WG Vectra VL Series 7 Dell Dimension XPS R450

UML의 구성요소 (10) 패키지 서브 시스템을 구성하는 다이어그램들의 그룹 예) 패키지 Package 1 Class 1

UML의 구성요소 (11) 노트 다이어그램에 대한 보충 설명 예) 노트 Comments for Class 1 Class 1

<<interface>> UML의 구성요소 (12) 스테레오타입 기존의 UML 요소를 기본으로 하여 다른 새로운 요소를 만들게 하는 장치 일종의 변형 거듭 인용표(<< >>)로 표시 인터페이스(interface)는 오퍼레이션만 갖고 속성을 갖지 않는 클래스 예) 스테레오타입 <<interface>> Class 1

그리고 … 왜 이렇게 다이어그램이 많을까? UML은 시스템을 여러 가지 관점(view)에서 점검하고 관찰하는 도구 대개 많은 참여자들이 각자의 관심에 맞추어 시스템을 바라봄 (예 : 세탁기) 모든 참여자를 만족시키기 위해서는 가능한 모든 관점에 필요한 다이어그램을 포함하여야 함

이번 시간의 학습 내용 요약 UML은 시스템 개발 세계에서 세계 표준으로 인정 받은 표기 시스템 부치, 럼버, 야콥슨 등이 개발 개발 과정에 참여한 모든 사람들이 각자의 관점에서 이해할 수 있는 다방면의 설계도를 그리는 표준 도구 디자인 표기(design notation)