Modeling in Industry. DTU 27 April 2011. 2011 Netcompany A/S Netcompany A/S Grønningen 19 1270 København K Tlf. 70131440 Page 1. Version: 1.



Relaterede dokumenter
Byg din informationsarkitektur ud fra en velafprøvet forståelsesramme The Open Group Architecture Framework (TOGAF)

Projektledelse i praksis

IBM Network Station Manager. esuite 1.5 / NSM Integration. IBM Network Computer Division. tdc - 02/08/99 lotusnsm.prz Page 1

Molio specifications, development and challenges. ICIS DA 2019 Portland, Kim Streuli, Molio,

IBM Software Group. SOA v akciji. Srečko Janjić WebSphere Business Integration technical presales IBM Software Group, CEMA / SEA IBM Corporation

CHAPTER 8: USING OBJECTS

2a. Conceptual Modeling Methods

Design til digitale kommunikationsplatforme-f2013

Privat-, statslig- eller regional institution m.v. Andet Added Bekaempelsesudfoerende: string No Label: Bekæmpelsesudførende

SOFTWARE PROCESSES. Dorte, Ida, Janne, Nikolaj, Alexander og Erla

PARALLELIZATION OF ATTILA SIMULATOR WITH OPENMP MIGUEL ÁNGEL MARTÍNEZ DEL AMOR MINIPROJECT OF TDT24 NTNU

Project Step 7. Behavioral modeling of a dual ported register set. 1/8/ L11 Project Step 5 Copyright Joanne DeGroat, ECE, OSU 1

LESSON NOTES Extensive Reading in Danish for Intermediate Learners #8 How to Interview

Danish Language Course for Foreign University Students Copenhagen, 13 July 2 August 2016 Advanced, medium and beginner s level.

Danish Language Course for International University Students Copenhagen, 12 July 1 August Application form

CONNECTING PEOPLE AUTOMATION & IT

Black Jack --- Review. Spring 2012

MSE PRESENTATION 2. Presented by Srunokshi.Kaniyur.Prema. Neelakantan Major Professor Dr. Torben Amtoft

ECE 551: Digital System * Design & Synthesis Lecture Set 5

Experience. Knowledge. Business. Across media and regions.

GUIDE TIL BREVSKRIVNING

Basic statistics for experimental medical researchers

User Manual for LTC IGNOU

Den røde tråd fra testdækning til releasemetrikker

Business Opening. Very formal, recipient has a special title that must be used in place of their name

Business Opening. Very formal, recipient has a special title that must be used in place of their name

Vina Nguyen HSSP July 13, 2008

Sikkerhed & Revision 2013

Vores mange brugere på musskema.dk er rigtig gode til at komme med kvalificerede ønsker og behov.

From innovation to market

Application form for access to data and biological samples Ref. no

Online kursus: Content Mangement System - Wordpress

Øg sporbarhed og produktivitet gennem integration

Finn Gilling The Human Decision/ Gilling September Insights Danmark 2012 Hotel Scandic Aarhus City

Engelsk. Niveau D. De Merkantile Erhvervsuddannelser September Casebaseret eksamen. og

how to save excel as pdf

Portal Registration. Check Junk Mail for activation . 1 Click the hyperlink to take you back to the portal to confirm your registration

Observation Processes:

Engelsk. Niveau C. De Merkantile Erhvervsuddannelser September Casebaseret eksamen. og

Learnings from the implementation of Epic

Improving data services by creating a question database. Nanna Floor Clausen Danish Data Archives

Aktivering af Survey funktionalitet

Linear Programming ١ C H A P T E R 2

Den nye Eurocode EC Geotenikerdagen Morten S. Rasmussen

Nanna Flindt Kreiner lektor i retorik og engelsk Rysensteen Gymnasium. Indsigt i egen læring og formativ feedback

DSB s egen rejse med ny DSB App. Rubathas Thirumathyam Principal Architect Mobile

Small Autonomous Devices in civil Engineering. Uses and requirements. By Peter H. Møller Rambøll

Vind Seminar Fredericia 4. april 2013 JOB2SEA

Tema: Pets Fag: Engelsk Målgruppe: 4. klasse Titel: Me and my pet Vejledning Lærer

New Nordic Food

Procuring sustainable refurbishment

Lovkrav vs. udvikling af sundhedsapps

The X Factor. Målgruppe. Læringsmål. Introduktion til læreren klasse & ungdomsuddannelser Engelskundervisningen

Database. lv/

Dean's Challenge 16.november 2016

Sikkerhedsvejledning

United Nations Secretariat Procurement Division

3C03 Concurrency: Model-based Design

Mustafa Saglam SAP Integration & Certification Center

Solvency II Clarification of current regulations

Overfør fritvalgskonto til pension

Managing stakeholders on major projects. - Learnings from Odense Letbane. Benthe Vestergård Communication director Odense Letbane P/S

extreme Programming Kunders og udvikleres menneskerettigheder

Sport for the elderly

Barnets navn: Børnehave: Kommune: Barnets modersmål (kan være mere end et)

Design by Contract. Design and Programming by Contract. Oversigt. Prædikater

Titel: Barry s Bespoke Bakery

Bilag. Resume. Side 1 af 12

En god Facebook historie Uddannelser og valgfag målrettet datacenterindustrien!?

Remember the Ship, Additional Work

Listen Mr Oxford Don, Additional Work

Baltic Development Forum

CONNECTING PEOPLE AUTOMATION & IT

PROGRAM Erfaring - Inspiration - Network - Idéer - Viden. HP Test Brugergruppe Brugerkonference. 11. november 2010

Financial Literacy among 5-7 years old children

DK - Quick Text Translation. HEYYER Net Promoter System Magento extension


Implementing SNOMED CT in a Danish region. Making sharable and comparable nursing documentation

To the reader: Information regarding this document

Vendor Management Strategies for Managing Your Outsource Relationships

Teknologispredning i sundhedsvæsenet DK ITEK: Sundhedsteknologi som grundlag for samarbejde og forretningsudvikling

Øvelse Slides må ikke deles uden godkendelse fra Anne Holmbæck

CS 4390/5387 SOFTWARE V&V LECTURE 5 BLACK-BOX TESTING - 2

Udbud på engelsk i UCL. Skabelon til beskrivelse

Healthcare Information Suite. oktober 2010

Shooting tethered med Canon EOS-D i Capture One Pro. Shooting tethered i Capture One Pro 6.4 & 7.0 på MAC OS-X & 10.8

Udrulning af globalt Intranet I Novo Nordisk. Henrik Nordtorp Senior Solution Architect esolutions NNIT A/S

Subject to terms and conditions. WEEK Type Price EUR WEEK Type Price EUR WEEK Type Price EUR WEEK Type Price EUR

Programledelse, Organisatorisk transformation og Gevinstrealisering. Praktiske erfaringer fra Signalprogrammet

Det er muligt at chekce følgende opg. i CodeJudge: og

Userguide. NN Markedsdata. for. Microsoft Dynamics CRM v. 1.0

LEADit & USEit 2018 CampusHuset - Campus Bindslevs Plads i Silkeborg 25. Oktober 2018

USERTEC USER PRACTICES, TECHNOLOGIES AND RESIDENTIAL ENERGY CONSUMPTION

Bookingmuligheder for professionelle brugere i Dansehallerne

A Strategic Partnership between Aarhus University, Nykredit & PwC. - Focusing on Small and Medium-sized Enterprises

Agenda. The need to embrace our complex health care system and learning to do so. Christian von Plessen Contributors to healthcare services in Denmark

Director Onboarding Værktøj til at sikre at nye bestyrelsesmedlemmer hurtigt får indsigt og kommer up to speed

Microsoft Dynamics CRM 2011 (CRM2011) From a Technical point of view

Design by Contract Bertrand Meyer Design and Programming by Contract. Oversigt. Prædikater

Appendix 1: Interview guide Maria og Kristian Lundgaard-Karlshøj, Ausumgaard

Transkript:

Modeling in Industry DTU 27 April 20 Version:.0 Status: Final Author: Esben Erland 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page

Agenda Introduction About Netcompany About me The Netcompany development process - Phases - Modelling - A case - Case introduction - The model - Leveraging the model - Summary - Key points - Model Driven Development a wish list Please ask questions both during and after the lecture 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 2

About Netcompany Facts 250+ employees Offices in Copenhagen, Aalborg, Aarhus and Warszawa Established in 999 What do we do? We develop business critical IT solutions Portals, integration platforms, business applications, SOA Technologies: Java J2EE and Microsoft.Net We support the full application life-cycle: Inception Implementation Maintenance Projects Size: From 2 to 00 people (client and Netcompany) Time: From 2 months to 5 years Principles We deliver projects, not people Everybody can code (The CEO holds a PhD in Computer Science) 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 3

About Netcompany focus areas Process optimization & BPM Front end applications Portals & Co-operation (Internet, Intranet, Extranet) Self-service, Digital service, E-trade Document management Enterprise Content Management (ECM) Workflow System Integration & SOA Business applications CRM Business Intelligence Back end applications 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 4

About Netcompany - clients Client base: Large danish and international companies Public Pharmaceuticals Finance Media IT and Telco Service/consulting Production Energy 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 5

About me Name: Esben Erland Rank: Manager Education: M.Sc. in Computer Systems Engineering from DTU (2006) Thesis: Robust and Efficient Boolean Operations on Triangular Meshes Experience: 4½ years in Netcompany Industries: Energy, Telecommunications, Finance (Pension and Insurance) Projects in Java J2EE and Microsoft.Net Developer, Architect, Team-lead, Project manager Currently project manager (and developer) on a 5 man project. 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 6

Agenda Introduction About Netcompany About me The Netcompany development process - Phases - Modelling - A case - Case introduction - The model - Leveraging the model - Summary - Key points - Model Driven Development a wish list 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 7

The development process We do IT the old fashioned way Agile methods are GREAT If you don t know how your application is supposed to work! 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 8

The development process Pre- Analysis Analysis Design Build Test Operation Classical waterfall-model 6 phases 4 main phases Pre-Analysis : Determine what the customer wants and needs (decision point) Analysis : Define requirements and high-level design. Design : Define functional and technical design to a level where implementation can begin Build : Implement an executable application Test : : Clear the application for all critical and functional errors Operation : Release the application for production 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 9

The development process How the waterfall process really works Phases (over time) Task category Analysis Change Requests Design Detailed Design Build Test Operation Analysis Design Detailed Design Build Test Operation 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 0

The development process - details When do we do the modeling? Analysis Design Why do we use models? They create a visual abstraction Models are easier to understand than a physical representation (code, xml, etc.) A proper model says more than a 000 words They can be leveraged e.g. code generation Requirements Are specified during pre-analysis detailed during analysis Models help support a pragmatic requirements: Avoid a 7000 page requirement specification! The test phase The analysis and design and their models are input to the test phase Use cases Test cases 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page

The development process - modeling Analysis Objective: Create high-level design. Define requirements and detail the scope of the project. Models Use case model Business process model Domain model Component/Architecture model Component diagram Use case diagram Business process 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 2

The development process - modeling Design Objective: Create a detailed design of all components, incl. both functional and technical architecture Models: Physical data model Logical data model Detailed component design (Activity, sequence, class diagrams) Physical data model But remember: Models are an abstraction Do not design or model what you could just as well implement Sequence diagram (detailed component design) 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 3

The development process modeling Modeling languages UML 2.x BPMN 2.0 Flowcharts The language is not always important The purpose of most of the diagrams is communication Tools Paper and white boards! Enterprise Architect : Complex models, models for generation Visio : Diagrams and models for deliverables only Modeling tools are often cumbersome and expensive (5.000+ $) 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 4

Agenda Introduction About Netcompany About me The Netcompany development process - Phases - Modelling - A case - Case introduction - The model - Leveraging the model - Summary - Key points - Model Driven Development a wish list 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 5

The case - introduction THE CASE A set of business processes needs to be supported by IT at a Danish pension company A new IT architecture needs to be established including modernization of existing backend-systems The first process to be supported is the transfer of pensions to the pension company ( 4 transfers) Simplified setup: The reel setup: 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 6

The case the model Problem: Several systems having each their data model Many interfaces between the systems Solution: One model to rule them all Models the business domain and all system interfaces used in the system Model coverage The model 3 parts Domain model Information model detailing the domain model Service model uses the information model 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 7

The case domain model Domain model Purpose: Describes the relations between all central business entities Supported by a vocabulary describing central business terms Created in collaboration with key business resources approved by the business Phase: Analysis Model type: Simple UML class diagram aftaler4..* aftaler4 Arbejdsgiverforening Fagforening Overenskomst medlem af 0.. ejer..* består af..* Arbejdsgiver Indbetaler tilknyttet Arbejdssted..* har..* 0..* medlem af Kunde..* Pensionskasse administrerer 0..* PenSam Forbrugergruppe 0.. Omvalgsprioritering Overførselsprioritering 0.. varetager4..* udbyder4 0..* 0.. anvendes til4 anvendes til4..* Pensions- og Forsikringsmodel anvendes til4..* har4 bidrager til definition af4 Tilbud 3 deltager i..*..* Overslag defineres for4 Pensionsmodel (privat) Forsikringsmodel defineres for4 effektueres effektueres til4 til4 Arbejdsmarkedspensionsordning operationaliseres i..* Pensionsmodel (arbejdsmarked)..* oprettes under..* 0..* Kundeforhold afgiver4 består af..* 0..* Lov..* 3 regulerer Helbredsoplysning opgøres Navn Afledt Anden Begunstiget Arbejdsgiver Arbejdsgiverforening Arbejdsmarkedspensionsordning Arbejdssted Barn Bidrag (ordinær) Beskrivelse Synonymt med Pårørende, se Pårørende. Ydelsesmodtager, som kan være andet end Pårørende. I så fald skal der foreligge et Testamente, som har højere prioritet end Arvelovens Virksomhed, som foretager Indbetalinger til Kunders Kundeforhold. Forening dannet af Arbejdsgivere, Kommunernes Landsforening eller Danske Udgør en del af en Overenskomst og varetages af en Pensionskasse. Pensionskassen kan videregive administration af pensionsordningerne til et En Kunde kan have flere Arbejdssteder (geografisk lokation af arbejdspladsen; kan være forskellig fra Arbejdsgiverens lokation/adresse) Kundens barn, som kan være Ydelsesmodtager af Udbetalinger fra visse Løbende indbetaling til Kundeforhold, som foretages af Indbetaler. Indbetaling foretages med jævne mellemrum, typisk månedligt, som en procentdel af månedsløn evt. et fast kronebeløb som defineret i foretager4 Andet pensionsselskab fra 0..*..* Overførsel (ind) Indbetaling..*..* foretages på4 ProduktAftale indeholder Depot Vocabulary til Bidrag (ordinær)..* 0..* Overførsel (ud) 0..* i form af Indskud Frivilligt bidrag (privat) Tegningsenhed indeholder summerer til YdelsesModtager 3 udbetales til FortsættelsesForsikring..* 3 giver Udbetaling..* Dækning har Reserve 0..* Pårørende registreret på 0..* 0.. 0..* Simple class diagram Ægtefælle / samlever Barn Anden Begunstiget 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 8

The case information model Information model Purpose : Details all business entities including properties and data types Phase: Design Model type: UML class diagram Class diagram 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 9

The case service model Service model Purpose: Describes the usage of interfaces between the systems Contains all service.operations (interfaces) provided by the systems Phases: Analysis Design Model type: Lists and data sheets a pragmatic service repository Service list Service details The service model enables load analysis, impact analysis, etc. 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 20

The case leveraging the model The UML information model is used to generate physical models: Xml schemas for service.operations Classes for implementation Database descriptions (DDL) for persistence 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 2

The case leveraging the model The generation is automated using a build server ) The model is changed 2) Physical models are generated 3) Applications are build and verified Model generation combined with continuous integration 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 22

Agenda Introduction About Netcompany About me The Netcompany development process - Phases - Modelling - A case - Case introduction - The model - Leveraging the model - Summary - Key points - Model Driven Development a wish list 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 23

Summary Key points The case: What was generated Interfaces Model classes Data storage Behavior/logic Model validation Modeling behavior Behavior often requires details details are hard to abstract Model driven development the good stuff Transition: Eases the transition from design to implementation Documentation The model is both the documentation and (part of) the implementation Helps keeping the documentation alive! - no one likes writing or updating documentation Life-cycle: Enables detailed models to live across project phases and across projects 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 24

Summary MDD wish list ) Tool support Usable tools that fully support leveraging the model Affordable, non-bloated tools Currently: Generation is partly scripted Setting up the generation and automation is time consuming 2) Behavior modeling Methods and languages for detailing behavior at an appropriate level Combining abstract models with behavior Currently: It takes longer to model behavior than to implement it Action languages (like OAL) are similar to programming languages, but are limited in functionality 3) Executable models Why generate if you could execute the model! Currently: Programming languages have a high maturity level Executable model languages (like Executable UML does not). Discussion: Is it possible to create an abstract model of something that can be executed? Are 2) and 3) realistic? 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 25

Agenda Introduction About Netcompany About me The Netcompany development process - Phases - Modelling - A case - Case introduction - The model - Leveraging the model - Summary - Key points - Model Driven Development a wish list Agenda done - Any questions? 20 Netcompany A/S Netcompany A/S Grønningen 9 270 København K Tlf. 703440 Page 26