Your Partner In eBusiness Solution Delivery

Slides:



Advertisements
Verwante presentaties
De zin en onzin van escrow
Advertisements

De volgende stap in BIM René van der Sluis, Ben Spreen, Jeroen Leeuw.
PSO for Microsoft Dynamics 2013
Stijn Hoppenbrouwers Software Engineering les 1 Algemene inleiding en Requirements Engineering.
Alumni-portals gezien vanuit een ICT-perspectief Robert van ‘t Sant.
Samenwerking met MOSS 2007! Chris Hoppenbrouwers.
De kracht van SBA Business Solutions Vanuit een oplossingsgerichte gedachte, waarbij de klant altijd centraal staat, koppelen wij innovatieve producten.
Software Architectuur Over de samenhang der dingen = Over de connecties tussen componenten Over de afhankelijkheden tussen modules Over de belangen van.
Henk Stultiens voorzitter OBSV Governance groep.  IT-Governance oftwel IT-besturing richt zich op de besluitvorming rond Informatie Technologie i.c.
Een introductie. Open source Betere kwaliteit Hoge innovatiesnelheid Betere prijs/kwaliteit verhouding Vrijheid in keuze van leverancier Gedreven door.
Kennis Sessie PSO 2013.
I-Concept InternetWorks BV Bergweg BH Rotterdam Tel +31(0) Fax +31(0)
Introductie Electronisch Factureren voor: Johan van Tongeren – Managing Director Olaf Minnema – Business Solution Manager.
Easy Bis Bestuursdienst Informatie Systeem Van agendapunt tot besluit Met automatische internet publicatie.
Haal wel rendement uit IT investeringen Ton Tijdink.
17 april 2008 WAB*info De digitale bron van de Nederlandse waterbodems Gaston Lamaitre Data-ICT-Dienst, Delft Uitvoerders: Atlis (hoofdaannemer), CSO (functioneel.
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
Hoofdstuk 4 Globale structuur van een project
Sanne van der Palen – Yoshi Denis – Aïcha Cardoen
E-Government Architectuur Dordrecht Eén loket voor burgers
Wat kunnen wij voor uw organisatie betekenen ? Even voorstellen
Activiteit 1.6 Bepalen niet-functionele eisen
Tussentijdse presentatie
1 Orientatie InformatieSystemen K.M.van Hee hgl. architectuur van informatiesystemen dir. Deloitte & Touche Bakkenist TU/e 2001.
SQL & datamodelleren.
Projectmanagement Week 8 31 maart Agenda De PM tools van het kernproject Planning Begroting Statusrapport Actie- en besluitenlijst Afronding van.
The vision at work Batteries included Ervaringen van een ISV op hosting avontuur Sven Middelkoop Corporate ICT Manager Exact Holding N.V.
De kracht van SBA Business Solutions Vanuit een oplossingsgerichte gedachte, waarbij de klant altijd centraal staat, koppelen wij innovatieve producten.
De kracht van GAC Business Solutions GAC is meer dan een leverancier van softwareoplossingen. Als business partner zorgen we samen met u voor optimalisatie.
Applicatieplatform congres 12 & 13 maart. Sneak Preview Technologie van morgen MS SQL server bij REAAL Peter de Visser IT Architect
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
1 Uit ons domein: Verzameling programmatuur voor het toewijzen van afstudeerders aan examinatoren. Invoer van voorkeuren Toewijzen Overzichten Practicum.
Hoofdstuk 6 Kwaliteitsbewaking
LIPS versie 2.1 Een logische evolutie Carl Possemiers & Tim Vander Borght Gebruikersdag VERA Leuven, 24 Oktober 2005.
Samen werken aan betere dienstverlening VERA gebruikersdag Leuven 14 september 2007.
1 OMI Technisch ontwerp. 2 Technisch ontwerp ‘content’ Veel breder dan business portals (Carlson) Verschillende aspecten / aandachtspunten:
Presentatie Studiemiddag Indexen en Nadere Toegangen Ralph Stuyver, Projectmanager 4 maart 2010.
Welkom bij de presentatie van CodeMunity. Voorstellen Khai Pham Corné Strijkert Sebastiaan Wezenberg.
Conference Tour | 18 maart 2010 Conference Tour Multimedia en Mijn IB-Groep.
Mamut Kassa K.D.C Swakhoven
Technische Architectuur
Toepassing PAF Maatschappijen- Producten, Formules, Commerciële programma’s.
Risk Based Testing van pakketsoftware
Dankzij Java 8 en lambda's productiever ontwerpen en coderen TETRA project proposal 2015.
.NET-productiviteit verhogen met een gepast gebruikt van lambda's en F# TETRA project proposal 2015.
Thesispresentatie LocQSmith project Bedrijf: Barco Purup Eskofot Johan Andries.
Business Intelligence
Content Management Systeem. Maart 2000Case: World Online International2 Klantprofiel I World Online International BV is een beursgenoteerde Pan-Europese.
LogiVisi Rendement door Boordcomputer Marc den Engelsman.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Van data naar kennis. Customer Case – Robeco Forms naar Apex Migratie.
APP Platform Rivium, 5 maart 2013 Rik Vietsch.
Kennisnet – Copacabana Van Dienst naar Service.
UML 1. Use cases1. Use cases. Het probleem: Hoe inventariseer ik wensen en eisen voor mijn project? Hoe leg ik ze vast? Hoe geef ik vorm en structuur.
Oracle licenties…… Hoe kunt u besparen? David Abeln
Beheer in BedrijfsContext AD ICT Leerjaar 2 George Pluimakers Module: ICTBBC01DX Studiejaar 2013/2014.
FLOWer is… Case Handling Proces management zonodig tot op het bot
Door de bomen het bos weer zien Henk Post Bedrijfsanalist ISZF November 2005.
Bra1 STUDENTMOBILITEIT Eindrapport Andre Brands – 4 augustus 2015.
Ministerie van BZK – 3 november 2016
‘Business at the speed of change’
Projectplan en fasering BGT regio Nijmegen
SLTN Inter Access ontzorgt ICT
Lectora als ontwikkeltool voor interactieve multimedia programma’s
ASP.NET MVC Web Development
OPENINGSCASE: De flexibele supply-chain van DaimlerChrysler
Technisch Ontwerp inhoud
Software Development fundamentals
Transcript van de presentatie:

Your Partner In eBusiness Solution Delivery Functional Design Patterns september 2006 Universiteit Utrecht Robert Guitink Jeroen Snijders Your Partner In eBusiness Solution Delivery

Welkom Van harte welkom Voorstellen Functional Design Patterns Ervaring met FO, TO, Frameworks, Java, J2EE? Vragen en opmerkingen tussen oor zijn welkom

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Organisatie Oprichting maart 2000 Gestart met 5 personen Per heden: ruim 70 medewerkers Minimale overhead Gecontroleerde groei

Cijfers / Resultaten Omzet 2005: > Euro 5.000.000 Meer dan 70 klanten Maliebaan, Utrecht

Werkzaamheden Wij voeren volledige maatwerkprojecten uit van begin tot eind. Wij verzorgen: business consultancy, technical consultancy, projectmanagement, informatieanalyse en functioneel ontwerp, technisch ontwerp en programmering, infrastructuurontwerp, organisatorische invoering, migratie en conversie, onderhoud, opleidingen.

Technologie Wij werken met Java technologie (J2EE) op de volgende platformen: Linux (open source), Windows 2000/XP, Unix varianten van IBM, SUN, HP, AS/400, OS/390; Tomcat (open source), IBM Websphere, Borland AppServer; PostgresSQL (open source), IBM DB2, Oracle, MS SQL Server, MySQL (open source) Ontwikkelomgeving: IBM WSAD (Eclipse), OptimalJ, Borland Jbuilder CVS MS Visio MS Word Diverse tools, o.a. performancetesttools, HTTP sniffers

Deel van onze klanten                                                                             

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Kenmerken Veel van de toepassingen die wij bouwen bevatten complexe functionaliteit. Kenmerken: Complexe en omvangrijke gegevensstructuren Tijdafhankelijkheid v.w.b. gegevens en functionaliteit Complexe (actuariele) rekenregels Complexe interfaces en uitvoer Voortdurende functionele wijzigingen

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Problemen Standaarden voor beschrijven van de functionaliteit ontbreken Standaarden voor het vertalen van functioneel ontwerp naar technisch ontwerp ontbreken Programmatuur is weinig inzichtelijk en slecht onderhoudbaar (geen vast pad van functionaliteit naar programmaregels en vice versa) Programmatuur is instabiel door grote complexiteit -> hoge kosten voor testen en debuggen Manieren om herbruikbare oplossingen generiek vast te leggen ontbreken -> Programmatuur is klant- en projectspecifiek

Internet technologie Het gebruik van Internet technologie versterkt de problematiek: Technische complexiteit applicatieservers Vereiste schaalbaarheid Performance en responsetijd Interactie tussen browser en server Beveiliging Interface requirements worden net zo belangrijk als functionele requirements

In de pers “Bedrijven in West-Europa hebben vorig jaar gezamenlijk bijna 160 miljard euro over de balk gesmeten als gevolg van verkeerde IT-beslissingen. Dit blijkt uit onderzoek van Gartner. Gartner schat dat bedrijven wereldwijd ongeveer 567 miljard euro voor niets uitgeven.” (Infoworld) “Slechts een op de vijftig computertoepassingen in bedrijven werkt goed. De rest kan de toets der kritiek niet doorstaan. Alleen al in de VS lijdt de economie een schade van 60 miljard dollar als gevolg van slechte software. Forrester acht besparingen mogelijk van 22 miljard dollar per jaar.” (Accountingweb.nl) “Uitkeringsinstantie UWV heeft de afgelopen jaren honderden miljoen euro's uitgegeven aan ICT-projecten. Ondanks de expertise van vele externe ICT-adviseurs slaagt nog geen dertig procent van die projecten. De ICT-verspilling over de afgelopen jaren wordt op honderden miljoenen euro’s geschat.” (De Telegraaf)

Consequenties Extreme overschrijdingen van tijd en budget Veel projecten worden gestopt Als er iets wordt opgeleverd, is dit niet onderhoudbaar tegen aanvaardbare kosten Kapitaalvernietiging op grote schaal Waarom hebben wij daar geen last van?

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Onze aanpak Functional Design Patterns User Interface Patterns Herbruikbare patronen in functionaliteit User Interface Patterns Herbruikbare patronen in gebruikersinteractie Technical Design Patterns Herbruikbare patronen in class structuren en gedrag Deels bekend (GOF patterns, J2EE patterns; bv MVC) Performance patterns Herbruikbare patronen voor performance en capaciteit

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Ontwerppatronen Functionele ontwerp patronen: beschrijven herbruikbare functionele onderdelen van toepassingen. We gebruiken hierbinnen o Informatie(deel)functies o Gebruikersinteractiepatronen o Gegevenspatronen Technische ontwerppatronen: beschrijven een bepaalde technische implementatie op een zodanige manier dat deze implementatie over meerdere domeinen cq meerdere projecten hergebruikt kan worden.

Wijze van werken

Vastleggen van patronen

Ontdekkingen / uitzoekpunten Soms doe je een functionele of technische ontdekking. Voorzie die van een lampje! Soms is het niet duidelijk wat de beste oplossing is. Voorzie verder uitzoek te zoeken punten van een microscoopje!

Ontwerppatronen Performancepatronen: beschrijven een bepaald performance aspect op een zodanige manier dat dit aspect over meerdere projecten hergebruikt kan worden.

Vastleggen van patronen

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Implementatie: code generatie Code generatie voor voorgaande patronen op aandachtsgebied vindt plaats op basis van datamodel. 12 XSLT sheets voor o.a. lijstschermen en detailschermen DDL (Data Definition Language) XML met Gegegevensdefinities Java classes en JSP paginas met basispatronen Aangepaste Java classes en JSP paginas Gegevensmodel in Visio Database In combinatie met MVC framework

Implementatie: componenten Implementatie middel componenten en maatwerk. Standaard componenten: formulierencomponent rekencomponent afsprakencomponent integratiecomponent (met externe systemen) autorisatiecomponent rapportagecomponent synchronisatiecomponent content management systeem Implementatie per klant middels: Parametriseren vd componenten Subclassing vd component Aanpassing Java classes en JSP templates XSLT-sheets (interfaces en PDF) Aanvullend maatwerk Klant 1 Klant 4 Klant 2 Klant 3

FDP workflow – verzekeringsmij Workflow bestaat uit: Statussen Informatiefuncties Dimensies: Reizen mee van status naar status Bepalen of informatiefunctie uitgevoerd kan worden Bepalen keuze in informatiefunctie mbt volgende status Laten zien hoe een status is bereikt als er meerdere paden naar toe lopen Deelacties Diagram Aparte dimensies voor: - Acceptatieverwerking - Acceptatieniveau

FDP workflow – extra per klant Extra invoerkanalen: SOAP Internet

Implementatie: componenten Implementatie middel componenten en maatwerk. Standaard componenten: Productdefinitiecomponent (gebaseerd op formulierencomponent) Rekencomponent Contractencomponent (gebaseerd op afsprakencomponent) Integratiecomponent (koppeling met externe systemen) Acceptatiesysteem Workflowcomponent Autorisatiecomponent Rapportagecomponent Synchronisatiecomponent Intermediairadministratie Polisinzage en mutatie Polisadministratie Klantenadministratie Generieke Interface Manager (GIM) Server Back-office interface Content management systeem Implementatie per klant middels: Parametriseren vd componenten Subclassing vd component Aanpassing Java classes en JSP templates XSLT-sheets (interfaces en PDF) Aanvullend maatwerk Klant 1 Klant 4 Klant 2 Klant 3

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Tijdafhankelijkheid Een entiteit kan tijdafhankelijke gegevens bevatten. In dat geval moeten we: op basis van datum de waarde kunnen bepalen, historie bijhouden van gegevens Voorbeelden: Premietabellen Producten en Prijzen Adresgegevens Polissen Onderscheid tussen: Stamgegevens Productiegegevens

FDP Tijdafhankelijkheid Entity entityId externalIdentifier dateUseStart dateUseEnd <tijdonafh. data> Entiteit Identificatie Begin/Eindkoppelingsdatum EntiteitInstanties Tijdafhankelijke gegevens Begin/Einddatum Einddatums altijd ‘tot en met’ Twee peildatums: Koppelingspeildatum Gegevenspeildatum EntityInst entityId entityInstId dateStart dateEnd <tijdafh. data> EntityInst entityId entityInstId dateStart dateEnd <tijdafh. data>

FDP Tijdafhankelijkheid Niet meer dan één instantie per datum geldig. Geen directe referenties van buitenaf naar instanties. 0dagen geldig als einddatum vóór begindatum. Instanties niet aanpassen als ze gebruikt worden (obv gegevenspeildatum) Instanties aanmaken op basis van hoogste instantie of geheel nieuwe instantie.

FDP Tijdafhankelijkheid Productiegegevens: PolisVersie 3 2/12/2006 – Polis 12345 PolisVersie 2 2/6/2006 – 1/12/2006 PolisVersie 1 1/1/2006 – 1/6/2006

FDP Tijdafhankelijkheid Wijziging terugdraaien -> versie ongeldig maken PolisVersie 3 X 2/12/2006 – Polis 12345 PolisVersie 2 2/6/2006 – PolisVersie 1 1/1/2006 – 1/6/2006

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Onze projectfasering Projectmanagement met een duidelijke fasering: Functioneel Ontwerp Technisch Ontwerp en Realisatie Acceptatietest Invoering Klant heeft remote (via Internet) toegang tot het systeem in wording

Producten in de ontwerpfase Opstellen van de offerte voor ontwerpfase Opstellen van het requirements document (optioneel) Opstellen van het gegevensmodel - gebruik van FDPs - Opstellen van de Informatiefuncties (Functionele beschrijving, Use-cases) - gebruik van FDPs en UIPs - Tijd Opstellen van het Prototype -gebruik van UIPs - Opstellen van de offerte voor realisatiefase

Technisch ontwerp We hebben al technische ontwerppatronen voor de functionaliteit die uit een FDP voortkomt technische documentatie bij de standaard componenten technische documentatie bij de standaard constructies We hebben al technische documentatie van het framework technische documentatie van de superclasses , libraries, stylesheets etcetera technische documentatie van de gegenereerde onderdelen We maken dus alleen een technisch ontwerp voor de projectspecifieke uitzonderingen!

Agenda Even voorstellen De toepassingen die wij bouwen De problematiek daarbij FDPs - onze aanpak FDPs - werkwijze FDPs - voorbeelden Case FDPs in onze projectfasering Hoe verder?

Verder met FDPs Functional Design Patterns (met name op aandachtsgebied) vormen de basis voor ons succes tot nu toe (100% geslaagde projecten). Wij zullen op steeds grotere schaal gebruik gaan maken van domein specifieke FDPs in complexe administratieve omgevingen. Vervolgstappen: Uitwerken theorie Literatuurstudie Uitwisselen ervaringen met universiteiten/onderzoeksinstellingen Uitwerken praktijk Voorbereiden generieke patterns op basis van kennis van probleemgebieden Harvesten binnen reeds uitgevoerde projecten Stageplaatsen zijn hierbij een belangrijk middel.

Vragen?