논리적 구조 설계: 패키지도

Similar documents
소프트웨어개발방법론

Intro to Servlet, EJB, JSP, WS

ecorp-프로젝트제안서작성실무(양식3)

시스템 순차도

UML


PCServerMgmt7

2Q SWG Teleweb Business Plan & 1Q Recovery Plan April 2, 2003

Model Investor MANDO Portal Site People Customer BIS Supplier C R M PLM ERP MES HRIS S C M KMS Web -Based

APOGEE Insight_KR_Base_3P11

소프트웨어개발방법론

No Slide Title

thesis

Portal_9iAS.ppt [읽기 전용]

J2EE & Web Services iSeminar

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

0125_ 워크샵 발표자료_완성.key

SchoolNet튜토리얼.PDF

Something that can be seen, touched or otherwise sensed

객체들이책임을가지고협력하는것을어떻게설계할것인가? applying OO Design principles and the UML 책임을할당하고객체들사이의협력을설계하는것은, 설계시에가장중요하고창조적인작업이다. 2/55

thesis

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

Service-Oriented Architecture Copyright Tmax Soft 2005

PowerPoint 프레젠테이션

untitled

06.AnalysisModeling.key

13 Who am I? R&D, Product Development Manager / Smart Worker Visualization SW SW KAIST Software Engineering Computer Engineering 3

Microsoft PowerPoint - se-ch06

NCS : ERP(SAP) ERP(SAP) SW IT,. SW IT 01., 05., 06., 08., 15., , 05. SW IT,,,, SAP HR,,, 4,,, SAP ABAP HR SCHEMA, BSP,

1.장인석-ITIL 소개.ppt


학습영역의 Taxonomy에 기초한 CD-ROM Title의 효과분석

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_ pptx

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer

기술 이력서 2.0

歯I-3_무선통신기반차세대망-조동호.PDF

1217 WebTrafMon II

PowerPoint 프레젠테이션

Week13

¨ìÃÊÁ¡2

<31325FB1E8B0E6BCBA2E687770>

소프트웨어개발방법론

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

final_thesis

Chap7.PDF

김기남_ATDC2016_160620_[키노트].key

Intra_DW_Ch4.PDF

Cache_cny.ppt [읽기 전용]

슬라이드 1

PowerPoint 프레젠테이션

untitled

Joseph Hwang, IBM Rational Software

MVVM 패턴의 이해

슬라이드 1

15_3oracle

歯이시홍).PDF

BSC Discussion 1

001지식백서_4도

JavaGeneralProgramming.PDF

Oracle Apps Day_SEM

The Self-Managing Database : Automatic Health Monitoring and Alerting

歯부장

KYO_SCCD.PDF

Corporate PPT Template

HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API

04-다시_고속철도61~80p

슬라이드 제목 없음

Special Theme _ 모바일웹과 스마트폰 본 고에서는 모바일웹에서의 단말 API인 W3C DAP (Device API and Policy) 의 표준 개발 현황에 대해서 살펴보고 관 련하여 개발 중인 사례를 통하여 이해를 돕고자 한다. 2. 웹 애플리케이션과 네이

Network seminar.key

Interstage5 SOAP서비스 설정 가이드

untitled

Dialog Box 실행파일을 Web에 포함시키는 방법

11¹Ú´ö±Ô

08SW

자바GUI실전프로그래밍2_장대원.PDF

Microsoft Word - [2017SMA][T8]OOPT_Stage_1000_ docx

Microsoft Word - [2017SMA][T8]OOPT_Stage_1000 ver2.docx

À±½Â¿í Ãâ·Â

1

SW¹é¼Ł-³¯°³Æ÷ÇÔÇ¥Áö2013

PowerPoint 프레젠테이션

untitled

강의지침서 작성 양식

untitled

J2EE Concepts

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

ETL_project_best_practice1.ppt

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

정보기술응용학회 발표

Disclaimer IPO Presentation,. Presentation...,,,,, E.,,., Presentation,., Representative...

DW 개요.PDF

Voice Portal using Oracle 9i AS Wireless

기타자료.PDF

00내지1번2번

DBPIA-NURIMEDIA


PowerPoint 프레젠테이션

Microsoft Word - 1-차우창.doc

untitled

2017 1

Transcription:

논리적구조설계 : 패키지도

Objectives. UML. 2

객체설계로옮겨가기 (interaction diagram). /.. : UML -UML. -UML. -. 1. 2. 3

문맥 Sample UP Artifact Relationships Business Modeling Domain Model * * Requirements Use-Case Model Vision Supplementary Specification Glossary The logical architecture is influenced by the constraints and non-functional requirements captured in the Supp. Spec. Design Model. -, - - (, C/S) - - -(Framework) Design package diagrams UI of the logical architecture (a static view) Domain interaction diagrams (a dynamic view) class diagrams (a static view) enteritem (itemid, quantity)... Register makenewsale() enteritem(...)... : Register 1 1 spec = getproductspec( itemid )... ProductCatalog getproductspec(...)... Tech Services : ProductCatalog 4

1. 예제 : 3 계층논리적구조를표현한 UML 패키지도. Presentation Layer UI Workflow Layer Swing not the Java Swing swing libraries, but GUI our GUI classes based on Swing Web Service Layer Domain Sales Payments Taxes depends on Persistence Layer Technical Services Persistence Logging RulesEngine 5

2. 논리적구조의정의및계층구조 (),,. (deployment diagram).,. 3 UI ( ) () (presentation layer) () (business service layer), POS Sale (persistency layer),,. 6

3. 사례연구에서의초점 ( ). UI. UI: Story Board, HCI(Human Computer Interface), Web Interface Design Java C++ STL ODBC Library DB Connection Pool Library API Framework 7

4. 소프트웨어아키텍처란? (Software Architecture) 1), 2) 3), 4),,.,. ( ) 8

5. UML 의적용 : 패키지도도식방법 UI Domain Swing Web Sales UI UI::Swing UI::Web Domain::Sales Swing Web Domain Sales :: subset 9

UML 패키지도 Namespace ) java::util::date Date util, util java. UML.. UI UI Domain. (,.) Domain UI. (.) Domain 10

6. 가이드라인 : 계층을이용한설계, ),. ) OSI 7 Layer : App Presentation Session Transport - Network Data Link Physical Layered Pattern Rising, Pattern Almanac 2000, Addison-Wesley,,,,. (Web -> Flash) (, ) 11

Layered Pattern GUI GUI windows reports speech interface HTML, HTML, XML, XML, XSLT, XSLT, JSP, JSP, Javascript Javascript,... UI (AKA Presentation, View) handles presentation layer requests workflow session state window/page transitions / consolidation/transformation of disparate data for presentation handles application layer requests implementation of domain rules domain services (POS, Inventory) - services may (POS, be used ) by just one application, but there is also the possibility. of multi-application services Application (AKA Workflow, Process, Mediation, App Controller) Domain (AKA Business, Application Logic, Model) dependency more app specific very general low-level business services used in many business domains ) CurrencyConverter Business Infrastructure (AKA Low-level Business Services) () (relatively) high-level technical services and frameworks Persistence, Security, Technical Services (AKA Technical Infrastructure, High-level Technical Services) low-level technical, services, utilities, and frameworks data structures, threads, math,,,,, file, DB, and network I/O DB, I/O Foundation (AKA Core Services, Base Services, Low-level Technical Services/Infrastructure) width implies range of applicability 12

가이드라인 : 응집력있는책임들 ; 관심분리원칙에맞춰분해하라 UI Widget,.,,. UI. ) Jframe., MVC : : :, UI. 13

코드 : 소스코드구조를계층및 UML 로매핑 (, C#,C++,Python ) C# C++ UI (NEXTGEN POS) com.mycompany.nextgen.ui.swing com.mycompany.nextgen.ui.web (NEXTGEN POS) com.mycompany.nextgen.domain.sales com.mycompany.nextgen.domain.payments com.mycompany.service.persistence org.apache.log4j org.apache.soap.rpc com.mycompany.util 14

UML: 몇가지정의 UML : (Reverse Engineering) ui.* UI :? POS sale, Payment : Workflow ) 15

정의 : 티어, 계층, 구획면 (tier): (layer): () (partition) :. ). Domain POS Inventory Tax Vertical Layers Technical Services Persistence Security Logging Horizontal Partitions 16

vs.. UP Domain Model Stakeholder's view of the noteworthy concepts in the domain. A Payment in the Domain Model is a concept, but a Payment in the Design Model is a software class. They are not the same, thing, but the former inspired the. naming, and definition of the latter.. This reduces the representational gap.,. This is one of the big ideas in object technology. Payment amount Payment amount: Money 1 Pays-for 1 inspires objects and names in 1 1 Pays-for date time Sale Sale date: Date starttime: Time getbalance(): Money gettotal(): Money... Domain layer of the architecture in the UP Design Model The object-oriented developer has taken inspiration from the real world domain in creating software classes. Therefore, the representational gap between how stakeholders conceive the domain, and its representation in software, has been lowered. 17

논리적모델과물리적모델을섞어그리지않는다. Worse mixes logical and deployment views Better a logical view Domain(s) Technical Services Domain(s) POS Technical Services Inventory a logical representation of the need for data or services related to these subdomains, abstracting implementation decisions such as a database. Foundation Persistence Naming and Directory Services Web AppFramework MySQL Inventory Novell LDAP Foundation UML notation: A UML component, or replaceable, modular part of the physical system UML notation: A physical database in the UML. 18

7. 가이드라인 : 모델 뷰분리원칙 -. 1. UI UI. Sale ( ) Jframe., -., 2. UI. UI UI,UI(: ), UI. == ==,,, UI Sale, Register,,,. Observer PropertyListener, notify, PropertyListener view update 19.

모델 - 뷰분리이유 UI,,UI UI -, 20

8. SSD, 시스템연산, 계층은어떻게서로연결되는가? UI :System : Cashier makenewsale() enteritem(id, quantity) description, total Domain Swing... ProcessSale Frame makenewsale() enteritem() endsale() makenewsale() enteritem() endsale() : Cashier endsale()... Register makenewsale() enteritem()... UC UI the SSD system operations handled by the system UI in an SSD represent the operation calls on. the Application or Domain layer from the UI layer 21

9. Case Study: 34 장 NEXTGEN POS 의 Layers UI Swing ProcessSale Frame not the Java Swing libraries, but our GUI classes based on Swing Text ProcessSale Console used in quick experiments Domain Sales Pricing Register Sale PricingStrategy Factory ISalePricingStrategy ServiceAccess Payments Services Factory CreditPayment ICreditAuthorization ServiceAdapter Inventory POSRuleEngine Taxes IInventoryAdapter POSRuleEngineFacade ITaxCalculatorAdapter Technical Services Persistence DBFacade Log4J Jess A general purpose thirdparty rules engine. SOAP 22

9. NEXTGEN POS 의존연관 Swing UI ProcessSale Frame Domain Sales Register Sale Pricing ServiceAccess Services Factory Payments CreditPayment ICreditAuthorization ServiceAdapter Inventory IInventoryAdapter POSRuleEngine POSRuleEngineFacade Taxes ITaxCalculatorAdapter Technical Services Persistence DBFacade Log4J Jess SOAP 23