De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

OGO coordinatoren: K.M. van Hee & J.P. Veltkamp

Verwante presentaties


Presentatie over: "OGO coordinatoren: K.M. van Hee & J.P. Veltkamp"— Transcript van de presentatie:

1 OGO 2.2 2006 coordinatoren: K.M. van Hee & J.P. Veltkamp
Ontwerp van een generiek bedrijfsinformatiesysteem OGO coordinatoren: K.M. van Hee & J.P. Veltkamp

2 Agenda Leerdoelen Voorkennis Projectopdracht Projectaanpak Tijdlijnen
Begeleiding Beoordeling

3 Leerdoelen (1) Ontwerpen van een complex software product met wetenschappelijk verantwoorde methoden en technieken I.h.b. een functioneel ontwerp met verificatie en validatie: verificatie: bewijzen van structuur en gedragseigenschappen validatie: door middel van experimenten met een prototype

4 Leerdoelen (2) Leren toepassen van methoden en technieken
Inzicht krijgen in product-software (een generiek systeem) Leren prototypen Leren efficient en effectief samen te werken Leren presenteren van een complex ontwerp

5 Voorkennis Databases 1 Systeemmodelleren 1

6 Technieken: datamodelleren (1)
Gebruik ERD techniek Beperk je tot functionele relaties; noteer deze als gerichte arcs. Geef ze een unieke en korte naam Dus n-m relaties worden geobjectiveerd tot een entiteit met functionele relaties Schrijf constraints op in predicaten logica

7 Technieken: datamodelleren (2)

8 Technieken: datamodelleren (3)
Constraints: Een werknemer kan alleen activiteiten hebben in een project waar hij in mag werken: Een werknemer kan alleen werk invullen voor een taak van een activiteit die hij mag uitvoeren:

9 Technieken: procesmodelleren (1)
Maak per use case een (klassiek) Petri net Beperk je tot workflow netten (Wfnet) Wfnet heeft 1 begin plaats i (initial) en 1 eind plaats f (final) en elke andere plaats of transitie ligt op een pad van i naar f. Wfnetten modelleren procedures (flowcharts met parallelliteit) Als we I en f weglaten hebben we een zgn t-workflow

10 Technieken: procesmodelleren (2)
pay_damage start register c5 c3 c4 c2 c1 check_damage send_letter NOK OK check_policy NOK NOK

11 Technieken: procesmodelleren (3)
pay_damage start register c5 c3 c4 c2 c1 check_damage send_letter NOK OK check_policy NOK 2 x !

12 Technieken: procesmodelleren (4)
pay_damage start register c5 c3 c4 c2 c1 check_damage send_letter NOK OK check_policy NOK NOK

13 Technieken: procesmodelleren (5)
Soundness: workflows moeten altijd netjes kunnen eindigen Formeel: voor elke bereikbare toestand vanuit marking [i] moet de marking [f] bereikbaar zijn. Er zijn technieken om soundness te verifieren (Woflan) Er zijn constructietechnieken om soundness te garanderen

14 Technieken: procesmodelleren (6)
Er zijn constructietechnieken om soundness te garanderen: “soundness by construction” Hier zijn 5 refinement regels: Door een model met een enkele plaats te beginnen en deze regels toe te passen krijg je een sound Wfnet

15 Technieken: CRUD matrix
C=create, R=retrieve, U=update, D=delete Voor elke transitie is de worklows en elke entiteit in het data model leggen we vast of de transitie de entiteit gebruikt en hoe (CRUD) Zo kunnen we onderzoeken of entiteiten wel netjes beheerd worden en of transtities wel iets “nuttigs” doen

16 Technieken: componentenmodel (1)
Component is een subnet met data stores Een component heeft 1 t-workflow en 0 of meer data stores Data store is een speciale plaats met altijd bidirectionele verbindingen met transities en altijd 1 token. Componenten zijn onderling verbonden door uitwisselen van tokens via interface plaatsen. In een componenten model specificeren we datatypes en de transitielogica

17 Technieken: componentenmodel (2)

18 Foute koppelingen (1)

19 Foute koppelingen (2) Kan dit gerepareerd worden?
Is er een betere oplossing?

20 Foute koppeling (3) Betere oplossing!

21 Foute koppelingen (4)

22 Projectopdracht (1) Een ontwerp voor een generieke bedrijfsapplicatie
Een informatiesysteem voor een bedrijfstype dat configureerbare producten maakt op bestelling (Make-To-Order) op basis van een productencatalogus Voorbeelden: computers, racefietsen, auto’s, adventure reizen

23 Projectopdracht (2) Enige fysieke activiteit: ontvangen van componenten, assembleren van deze componenten tot een product en het klaar zetten voor vervoer naar de klant Alle overige activiteiten worden uitbesteed of geautomatiseerd De componenten worden gemaakt / geleverd door toeleveranciers Transport door verzorgd door transportbedrijven

24 Projectopdracht (3) Actors (stakeholders): klanten
componenten-leveranciers transporteurs banken (voor betaling) system engineers XXX (configuratie) management XXX (beheer van systeem)

25 Projectopdracht (4) Context diagram

26 Projectopdracht (5) component leverancier bank klant system transport
rfi rfp proposal proposal payment add to account confirm deliver transport order delivery onvolledig voorbeeld van use cases als Message Sequence Chart (MSC)

27 Projectopdracht (6) UR: user requirements
Informeel, in tekst of plaatjes: business: wat is het bedrijfsdoel? actors: welke personen en andere systemen hebben interactie met het systeem? use cases: een “stuk functionaliteit” of een service van het systeem. Te beschrijven als scenario’s (actie-rijen) of als MSC entities: object typen die een rol spelen

28 Projectopdracht (7) BA: business architecture
Data model beschrijft the business objects, hun relaties en de constraints Process modellen voor elke use case en voor elke object life cycle (met een workflow net) Verificatie (soundness, CRUD)

29 Projectopdracht (8) SA: software architectuur
Componenten model (componenten en onderlinge interactie-relaties) Model per component (transitielogica en data types) Verificatie (soundness, database integrity)

30 Projectopdracht (9) DD: Detailed design in de vorm van een prototype
Validatie door ontwikkeling van een prototype met behulp van YasperWE, Infopath (MS), met name het user interface

31 Projectopdracht (10) Parameters voor flexibiliteit: # klanten
# toeveranciers # banken # transporteurs # producten

32 Projectopdracht (11) Parameters voor genericiteit:
Productencatalogus (vorm) Business rules: betaling door klanten (vooraf, achteraf, mengvorm) wel of geen ruggespraak met toeleveranciers voordat een proposal wordt gedaan betaling van toeleveranciers regels voor selectie van toeveranciers

33 Projectopdracht (12) Tips voor prototype:
maak stubs voor banken, toeveranciers maak een incrementeel model: test steeds stukken die klaar zijn doe het eerst voor ongekleurde netten en als dat goed gaat, met kleur Gebruik YasperWE en Infopath

34 Projectaanpak (1) Werk gefaseerd, registreer tijdsbesteding
Mijlpalen in contract met opdrachtgever UR: user requirements en werkplan BA: business architectuur: datamodel en workflows, CRUD SA: functionele architectuur: componenten en hun interacties; specificaties van plaatstypen en processorlogica; verificatie DD: Prototype YasperWE+ Infopath PD: Presentatie/demonstratie

35 Projectaanpak (2) Maak werkplan:
definieer taken door 1 persoon of koppel te doen zonder tussenkomst van anderen bepaal de precedentierelaties tussen de taken schat de tijd die een taak kost wijs taken toe aan personen bepaal de doorlooptijd en het kritieke pad Onderscheid product- en procesdocumenten: productdoc: beschrijving van views op het systeem procesdoc: planningen, logboek, vergaderstukken, vragen en antwoorden.

36 Projectaanpak (3) Houd in elk geval rekening met de volgende taken:
projectmanagement: vertegenwoordiging naar de opdrachtgevers, bewaking van de planning en de afstemming tussen de taken en hun uitvoerders kwaliteitsmanagement: zorg dat de producten gecontroleerd worden voordat ze vrijgegeven worden projectadministratie: bijhouden van product-en procesdocumentatie

37 Tijdlijnen Mijlpalen die fasen afsluiten:
12 dec UR (user requirements) 12 jan BA (software requirements) 13 feb College pres./dem. 16 feb FA (software architecture) 9 mrt DD (prototype) 14 mrt PD (presentatie en dem.)

38 Begeleiding (1) Elke groep heeft een tutor: Wekelijks overleg
Jeroen Keiren Jan Martijn van der Werf Wekelijks overleg Tutor heeft 3 rollen: opdrachtgever (als vertegenwoordiger van coordinatoren) technisch adviseur beoordelaar

39 Begeleiding (2) Tutoren hebben wekelijks overleg met de coordinatoren
In deze vergaderingen worden de problemen besproken en oplossingen geboden In het begin zullen de teams vragen hebben over de user requirements: de tutoren beslissen, soms na ruggespraak met de coordinatoren Reinier Post is op de achtergrond beschikbaar voor YasperWE/Infopath vragen StudyWeb: voor uitwisseling van kennis Vragen zoveel mogelijk per stellen College: presenteren/demonstreren

40 Beoordeling Criteria: Differentiatie:
producten (ca 70%) procesverslag (ca 10%) presentatie/demonstratie (ca 20%) Differentiatie: op basis van onderlinge beoordeling Tutoren doen voorstel, coordinatoren, (Van Hee, Veltkamp) beslissen


Download ppt "OGO coordinatoren: K.M. van Hee & J.P. Veltkamp"

Verwante presentaties


Ads door Google