Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

Podobné dokumenty
Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

Vývoj informačních systémů. Přehled témat a úkolů

Vývoj informačních systémů. Přehled témat a úkolů

Návrhové vzory. Jakub Klemsa, Jan Legerský. 30. října Objektově orientované programování.

Návrhové vzory pro J2EE. Miroslav Beneš

modelu MVC pro tvorbu aplikací

Návrhové vzory pro J2EE

Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr

A7B39WPA Webové podnikové aplikace. Zdeněk Kouba Petr Aubrecht Petr Křemen

SAP a SUSE - dokonalá symbióza s open source. Martin Zikmund Technical Account Manager

Architektury informačních systémů

MVC (Model-View-Controller)

Architektura softwarových systémů

KIV/PIA 2013 Jan Tichava

Budování architektury pomocí IAA

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o.

Architektury informačních systémů

Architektura aplikace

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

IS pro podporu BOZP na FIT ČVUT

Architektury Informačních systémů. Jaroslav Žáček

Znalostní systém nad ontologií ve formátu Topic Maps

Návrhové vzory pro GUI

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server

Design Patterns. Tomáš Herceg Microsoft MVP (ASP.NET)

Modelování webových služeb v UML

IBM Connections pro firmy s Lotus Notes/Domino. Petr Kunc

Vývoj informačních systémů. Obecně o IS

Využití návrhových vzorů v praxi. Josef Miléř

Tvorba aplikace typu klient/server pomocí Windows Communication Foundation

VYUŽITÍ MDA PRO INTEGROVANÝ VÝVOJOVÝ NÁSTROJ QI BUILDER

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Úvod do Entity Frameworku

Architektura GIS KMA/AGI. Karel Jedlička

Vzory pro HCI a GUI. Miloš Kudělka. Katedra informatiky PřF UP Olomouc

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU

Řešení Oracle pro správní centra místních samospráv. Michal Zbořil Solution Specialist Oracle Corporation

Servisně orientovaná architektura Základ budování NGII

Architektury Informačních systémů. Jaroslav Žáček

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

Usage of modular scissors in the implementation of FEM

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Architektura v organizaci

Procesní dokumentace Process Management. Pavel Čejka

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu

Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control)

Principy OOP při tvorbě aplikací v JEE. Michal Čejchan

IMPLEMENTACE USE CASE POMOCÍ NÁVRHOVÉHO VZORU CONTROLLER

MYBIZ - Řešení pro zpřístupnění dat ze stávajících aplikací na mobilních zařízeních (Mobilize your business!) Požadavky zákazníka.

Petr Vlk KPCS CZ. WUG Days října 2016

Návrh softwarových systémů - architektura softwarových systémů

Databázové a informační systémy

SOAP & REST služby. Rozdíly, architektury, použití

Metadata. RNDr. Ondřej Zýka

Architektúra modulu témata

Information and Data Management. RNDr. Ondřej Zýka

Platformy / technologie. Jaroslav Žáček

TRANSFORMACE RELAČNÍHO DATOVÉHO MODELU NA OBJEKTOVÝ TRANSFORMATION OF RELATIONAL TO OBJECT DATA MODEL

ZÁZNAM PROCESU TVORBY INFORMAČNÍHO SYSTÉMU CAPTURING OF AN INFORMATION SYSTEM DEVELOPMENT

A7B39WPA Webové podnikové aplikace. Zdeněk Kouba Petr Křemen

Analýza a Návrh. Analýza

PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK

Objektově orientované programování? Co to je?

KAPITOLA 3. Architektura aplikací na frameworku Rails. V této kapitole: modely, pohledy, řadiče.

Integrace podnikových Open Source aplikací v praxi. RNDr. Petr Novák, Open Source Conference Praha, 19. duben 2011

Content management: organizace informací na webových stránkách. Petr Boldiš Studijní a informační centrum Česká zemědělská univerzita v Praze

Demilitarizovaná zóna (DMZ)

Objektově orientované technologie Diagram komponent Implementační náhled (Diagram rozmístění) Pavel Děrgel, Daniela Szturcová

Architektura. Vedení sesterské dokumentace

SenseLab. z / from CeMaS. Otevřené sledování senzorů, ovládání zařízení, nahrávání a přehrávání ve Vaší laboratoři

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni

Microsoft Azure Workshop

Tvorba informačních systémů

Semin aˇr Java N avrhov e vzory Radek Ko ˇc ı Fakulta informaˇcn ıch technologi ı VUT Duben 2008 Radek Koˇc ı Semin aˇr Java N avrhov e vzory 1/ 24

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Sem vložte zadání Vaší práce.

Semin aˇr Java N avrhov e vzory Radek Ko ˇc ı Fakulta informaˇcn ıch technologi ı VUT Duben 2009 Radek Koˇc ı Semin aˇr Java N avrhov e vzory 1/ 25

Návrh programu v Black Box Component Builderu s využitím architektury Model View Controller

Víte co Vás čeká?

Přehled systému Microsoft SQL Server. Komu je kniha určena Struktura knihy Nejvhodnější výchozí bod pro čtení knihy Konvence a struktura knihy

}w!"#$%&'()+,-./012345<ya

Business Intelligence

Projekt Kreslítko X36ASS

SEARCH & BIG DATA [ & ANALYTICS] INFORUM 2015, Pavel Kocourek

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

UAI/612 - Cloudová Řešení. Návrh aplikací pro cloud

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

(Enterprise) JavaBeans. Lekce 7

Proč Angular JS framework?

27/11/2017. Business analýza a sběr požadavků. Dotazy na event #G865

Framework pro vývoj ERP aplikací

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace

INFORMAČNÍ SYSTÉMY NA WEBU

Architektura softwarových systémů

NOVINKY V JEE EJB 3.1. Zdeněk Troníček Fakulta informačních technologií ČVUT v Praze

CONNECTING GOVERNMENT AND CITIZENS Creating a Single Citizen View Konference ISSS, Jaroslav Novotný Sun Microsystems Czech

INTERACTION BETWEEN DESIGN PATTERNS AND INSTANTIATED OBJECTS BY REFLECTION. Jaroslav Žáček

D R U P A L V O J T Ě C H K U S W O J T H A

Tvorba informačních systémů

Transkript:

Vývoj informačních systémů Architektura, návrh Vzory: Doménová logika

Zachman Framework

Zdroje Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. 1995. Návrh programů pomocí vzorů - Stavební kameny objektově orientovaných programů. 2003. [GoF] Martin Fowler. Patterns of Enterprise Application Architecture. 2003. David Trowbridge, Dave Mancini,Dave Quick, Gregor Hohpe, James Newkirk, David Lavigne. Enterprise Solution Patterns Using Microsoft.NET. 2003. Adam Bien. Real World Java EE Patterns Rethinking Best Practices. 2009.

Gang of Four (1994, 1995) Obecné principy tvorby software 23 vzorů (C++, Smalltalk) Creational patterns Structural patterns Behavioral patterns

Vzory jako připravené návody GoF je pouze začátek. Vzory a jazyky vzorů. Vzor je to, co opakovaně funguje. Existují i antivzory (opakovaně nefungují ).

Struktura vzorů Výstižné jméno (název) Problém (Co) Souvislosti (Kdo, Kdy, Kde, Proč) Řešení včetně UML diagramů(jak) Příklady včetně zdrojových kódů

Fowler (EAA, 2003) Různě rozsáhlá řešení formou katalogu Více než 50 vzorů (Java, C#). Domain Logic Patterns, Data Source Architectural Patterns, Object- Relational Behavioral Patterns, Object-Relational Structural Patterns, Object-Relational Metadata Mapping Patterns, Web Presentation Patterns, Distribution Patterns, Offline Concurrency Patterns, Session State Patterns, Base Patterns Další na http://martinfowler.com/eaadev/

Pohled architekta, návrháře, vývojáře

Třívrstvá architektura Three-Layer Architecture Three-Tier Architecture První se stává druhou, pokud je fyzicky oddělena od toho, kdo ji používá Prezentace, doménová logika, přístup k datům, servisní vrstvy. Klient server, p-vrstvá architektura.

MVC Model View Controller Klíčový koncept návrhu (Trygve Reenskaug, Smalltalk-76) Oddělení vrstev na logické úrovni Minimalizace závislostí, izolovaná modifikace jednotlivých vrstev

MVC - nedorozumění Obvykle vůbec neřeší přístup k datům (ve smyslu přístupu k databázi). Existují variace pro různé platformy a situace. Je nutno chápat jako velmi obecný (a velmi správný) architektonický koncept. Neplést si s třívrstvou architekturou (která je lineární).

Vzory blízké MVC Observer a Data Binding (řešení založená na událostech) Presentation Model a jeho varianta Model View ViewModel (Microsoft) Model View Presenter (Supervising Controller a Passive View) Page Controller a Front Controller (středně složitá a složitá řešení pro web)

Vzory pro enterprise architekturu Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. 1995. (Návrh programů pomocí vzorů - Stavební kameny objektově orientovaných programů. 2003. Martin Fowler. Patterns of Enterprise Application Architecture. 2003. David Trowbridge, Dave Mancini,Dave Quick, Gregor Hohpe, James Newkirk, David Lavigne. Enterprise Solution Patterns Using Microsoft.NET. 2003. Adam Bien. Real World Java EE Patterns Rethinking Best Practices. 2009.

Vzory pro doménovou logiku Transaction script Domain model Table module Service layer

Transaction script Organizes business logic by procedures where each procedure handles a single request from the presentation.

Domain model An object model of the domain that incorporates both behavior and data.

Table module A single instance that handles the business logic for all rows in a database table or view.

Service layer Defines an application's boundary with a layer of services that establishes a set of available operations and coordinates the application's response in each operation.

Projekt: Specifikace požadavků Funkční požadavky ve formě use-case modelu use-case diagram (celý systém) use-case (strukturovaný popis pro 3 scénáře) diagram aktivit (po jednom k use-case a přes use-case)