Tvorba informačných systémov. 4. prednáška: Návrh IS

Similar documents
Basic Structural Modeling. Copyright Joey Paquet,

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

Object-Oriented Design

Chapter 1: Programming Principles

Chapter 5 Object-Oriented Programming

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

Object Orientated Analysis and Design. Benjamin Kenwright

Introduction to UML Dr. Rajivkumar S. Mente

CHAPTER 5 GENERAL OOP CONCEPTS

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships.

Elementary Concepts of Object Class

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

Allenhouse Institute of Technology (UPTU Code : 505) OOT Notes By Hammad Lari for B.Tech CSE V th Sem

Architecture and the UML

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

Examples. Object Orientated Analysis and Design. Benjamin Kenwright

Chapter 1: Principles of Programming and Software Engineering

Software Design Methodologies and Testing. (Subject Code: ) (Class: BE Computer Engineering) 2012 Pattern

Accessibility. EEC 521: Software Engineering. Classes and Objects. Inheritance. Classes and Objects (OO Analysis)

A Conceptual Model of the UML

Data Structures and Algorithms Design Goals Implementation Goals Design Principles Design Techniques. Version 03.s 2-1

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p.

What is a Programming Paradigm

Object-Oriented Design

Advanced Software Engineering

Introduction to UML. Danang Wahyu utomo

Chapter 8: Class and Method Design

Object-Oriented Development and UML. Announcement. Agenda 7/3/2008. Class will resume on July 22. Try to complete the lab assignments by July.

UNIT V *********************************************************************************************

UNIT-II Introduction to UML

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting

Programmazione. Prof. Marco Bertini

06. Analysis Modeling

10조 이호진 이지 호

Object-Oriented Systems Analysis and Design Using UML

Presenter: Dong hyun Park

Classwide Programming 1

Solved Question Paper June 2017

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

CHAPTER 9 DESIGN ENGINEERING. Overview

Software Architecture With ColdFusion: Design Patterns and Beyond Topics Outline Prepared by Simon Horwith for CFUnderground 6

EVENTS AND SIGNALS. Figure 1: Events. kinds of events Signal Event

ADVANCING THE SYSTEMS ANALYSIS AND DESIGN CURRICULUM

CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam

Unit - IV CHAPTER - 13 INTRODUCTION TO OOP WITH C++ Part 1 Choose the best answer

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic

Systems Analysis & Design

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered

History of object-oriented approaches

Chapter 10 Object-Oriented Design Principles

Objectives Pre-Test Questions Introduction Collaboration Diagrams Flow of Events and Special Requirements...

CS487 Midterm Exam Summer 2005

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)

Agenda. Why Model. Why Model? History of OO Modeling Methodologies Object Modeling Technique (OMT) Unified Modeling Language (UML)

Topic : Object Oriented Design Principles

Java EE Patterns. Student Guide - Volume 1. SL-500 Rev C.0.1. D61856GC10 Edition 1.0 D62465

OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis

BASIC CONCEPT OF OOP

SEEM4570 System Design and Implementation. Lecture 11 From Design to Implementation

UML Primer. -Elango Sundaram

Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 8 Slide 1

Programming II. Modularity 2017/18

Meltem Özturan

UML UNIFIED MODELLING LANGUAGE EXEMPLIFIED ON BLACKJACK. Object Oriented Programming (Samy Zafrany)

MCQS for Midterm cs504 Combined by Anees Ahmad

Experiment no 4 Study of Class Diagram in Rational Rose

OMG Modeling Glossary B

Software Design Heuristics

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY

Object oriented programming Concepts

UML Unified Modeling Language

INTRODUCING THE UML. Chapter 2

Agile Model-Driven Development with UML 2.0 SCOTT W. AM BLER. Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE. gile 1.

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

Object-Oriented Design. Module UFC016QM. and Programming. Objects and Classes. O-O Design Unit 2: Faculty of Computing, Engineering

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.

Fundamental Concepts (Principles) of Object Oriented Programming These slides are based on:

The Unified Modeling Language. Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL

Lesson 11. W.C.Udwela Department of Mathematics & Computer Science

Lecture 17: (Architecture V)

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML

Lecture 1. Abstraction

Darshan Institute of Engineering & Technology for Diploma Studies

INTERNAL ASSESSMENT TEST III Answer Schema

SE 1: Software Requirements Specification and Analysis

Unit 1 Introduction to Software Engineering

Object-Oriented Modeling Using UML. CS151 Chris Pollett Aug. 29, 2005.

OO Analysis and Design with UML 2 and UP

UML Diagrams & And Some Of Their Elements

Structured Analysis and Structured Design

The Analysis and Design of the Object-oriented System Li Xin 1, a

Object Oriented Software Development CIS Today: Object Oriented Analysis

COURSE 2 DESIGN PATTERNS

Welcome to Design Patterns! For syllabus, course specifics, assignments, etc., please see Canvas

1: Introduction to Object (1)

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

What s Next. INF 117 Project in Software Engineering. Lecture Notes -Spring Quarter, Michele Rousseau Set 6 System Architecture, UML

Transcription:

Tvorba informačných systémov 4. prednáška: Návrh IS

Návrh informačného systému: témy Ciele návrhu ERD DFD Princípy OOP Objektová normalizácia SDD Architektonické pohľady UML diagramy Architektonické štýly Návrhové vzory

Principal goals of software design: Sufficiency: handles the requirements Understandability: can be understood by intended audience Modularity: divided into well-defined parts Cohesion: organized so that like-minded elements are grouped together Coupling: organized to minimize dependence between elements Robustness: can deal with wide variety of input Flexibility: can be readily modified to handle changes in requirements Reusability: can use parts of the design and implementaion in other applications Information hiding: module internals are hidden from others Efficiency: executes within acceptable time and space limits Reliability: executes with acceptable failure rate

Entitno-relačný diagram pojem: entita

Princípy OOP 90 roky 20.storočia v centre pozornosti sú DÁTA! operácie nad dátami sú blízko dát OOP = inheritance + polymorphism + encapsulation abstrakcia abstraktný dátový typ (ADT) ako funguje polymorfizmus? Kritika: príliš zväzujúce a statické hierarchie tried nové trendy nahrádzať objekty a triedy a dedičnosť inými konceptami a mechanizmami (jazyk GO)

Návrh dátového modelu: objektová normalizácia

Návrh dátového modelu: objektová normalizácia pôvodný model...

Návrh dátového modelu: objektová normalizácia 1ONF

Návrh dátového modelu: objektová normalizácia

Návrh dátového modelu: objektová normalizácia 2ONF

Návrh dátového modelu: objektová normalizácia

Návrh dátového modelu: objektová normalizácia 3ONF Viac: http://www.agiledata.org/essays/classnormalization.html

Návrh dátového modelu: objektová transformácia neefektívne dotazovanie

Návrh dátového modelu: objektová transformácia neefektívne dotazovanie:

Návrh dátového modelu: objektová transformácia efektívnejšie dotazovanie:

Príklady: Návrh dátového modelu: refaktorizácia

IEEE 1016-1998 SDD

UML in a nutshell... Množstvo spôsobov, ako tímu vývojárov vysvetliť architektúru, UML je priemyselný štandard, ktorý by informatici mali vedieť použiť Modelovací jazyk, model = zjednodušená skutočnosť UML: stavebné prvky, pravidlá na ich kombinovanie bežné mechanizmy 3

Stavebné prvky (building blocks) Elements Relationships Diagrams Elements: Structural (static parts) Behavioral Grouping Annotational 4

Structural Elements Class Interface Component Node (conforms to and provides realization of a set of interfaces) (computational resourse existing at runtime, with some memory and CPU) 5

Behavioral Elements Interaction State Grouping Element Anotational Element 6

Dependency Relationships Aggregation Generalization 7

Common Mechanisms Specifications textual description Adornments public(+), private(-), protected(#) Common divisions - notation about instances: instance :class_of_anonymous_instance a:circle Extensibility UML is open Stereotypes Tagged values Constraints 8

Diagrams Structure diagrams class, component, deployment, package diagrams Behavior diagrams activity, statechart, use-case, communication diagrams Interaction diagrams sequence diagrams, collaboration diagrams 9

Class Diagram Shows set of classes, interfaces, and collaborations and their relationships static design view of a system 10

Class Diagram 11

Component Diagram Organizations and dependencies among a set of components Static implementation view of a system Component diagram maps to classes, interfaces or collaborations communicates the overall pattern for the system to be followed by developers (e.g. MVC or DAO) 12

Component Diagram 13

Deployment Diagram Configuration of run-time processing nodes adnd the components that live on these nodes Static deployment view of an architecture Nodes typically enclose one or more components Helps developers to understand the boundaries of the system components and what protocol they will use to communicate with dependent components 14

Deployment Diagram 15

Package Diagram Special kind of class diagram Organization of system in groups 16

Package Diagram 17

Activity Diagram Special kind of statechart showing flow from activity to activity within a system Dynamic view of the system Modelling system function and emphasizing the flow of control among objects 18

Activity Diagram 19

Statechart Diagram State machine consisting of states, transitions, events, and activities Dynamic view of the system Used for modelling of behavior of interface, class, or collaboration Event-ordered behavior of an object, reactive systems 20

Statechart Diagram 21

Use-Case Diagram Set of use cases and actors and their relationships Static use-case view of a system Model behaviors of a system 22

Use-Case Diagram 23

Sequence Diagram Interaction of a set of objects and their relationships, including the messages dispatched among them Interaction diagram emphasizing the time ordering of messages. Communicates flow of events between objects, useful in cases of complex interactions. 24

Sequence Diagram 25

Collaboration Diagram Interaction of a set of objects and their relationships, including the messages dispatched among them Interaction diagram emphasizing the structural organization of the objects that send and receive messages. Isomorphic with sequence diagram. 26

Collaboration Diagram 27