SlideShare a Scribd company logo
1 of 12
Wachtlijst applicatie
Demonstratie
context en doel van de applicatie
ontwerp en eindresultaat
implementatie
Auteur: Maarten Zuur
Datum: 6 Oktober 2015
Introductie
Deze Wachtlijst applicatie is een vereenvoudigde versie van
een bestaande applicatie. Het programma opent of sluit de
wachtlijst voor een vlucht. Dit gebeurt op basis van een
plafond (ingesteld door analisten) en het actuele aantal
wachtlijst boekingen op de vlucht.
Plafond voor de lengte
van de wachtlijst
Lange wachtlijst betekent
meer kosten en kleinere
kans op confirmatie
Overzicht
De Wachtlijst applicatie is verbonden met een UserInterface en het
InventorySysteem
Actuele gegevens inlezen (lengte van de wachtlijst en ceilings)
De WL applicatie bekijkt de vluchten en zet de closure updates klaar
De closure updates worden aan het InventorySysteem doorgegeven
(UserInterface en InventorySysteem zijn geen onderdeel van dit project)
Class diagram
De applicatie is opgebouwd uit deze klassen:
– VluchtenProvider levert een lijst met Vluchten
– ClosureCheck bekijkt elke Vlucht en bepaalt of de closure
moet worden geupdate
– VluchtUpdate zet de closure updates klaar.
Alle invoer en uitvoer zijn flatfile Bestanden (grijze kader).
Sequence diagram
Programma flow voor use case ‘UpdateVluchten’
Data interfaces
De invoer en uitvoer zijn allemaal flatfiles.
Flatfiles staan in 1 folder (bestandenMap) voor overzicht en
gemak tijdens testen.
Invoer
Schema.txt
Inventory.txt
Beschrijving
Flatfile met alle vluchten
Inventory gegevens van elke vlucht, zoals de ceiling
Uitvoer
Update.txt
Uitzondering.txt
Log.txt
Beschrijving
Flatfile met closure updates
Vluchten of invoer gegevens die niet kunnen worden verwerkt
Logbestand van de applicatie
Actuele gegevens
In Schema.txt staan alle vluchten met id, vluchtnummer,
vertrekdatum, route:
id,ceiling,reservering,closure
1,20,3,0
2,20,21,0
3,20,1,0
57,20,0,1
58,20,0,1
59,20,37,0
id,label,route
1,ML11/15apr12,AMS-MIL
2,ML11/16apr12,AMS-MIL
3,ML11/17apr12,AMS-MIL
57,ML12/15apr12,MIL-AMS
58,ML12/16apr12,MIL-AMS
59,ML12/17apr12,MIL-AMS
In Inventory.txt staat van elke vlucht (id) de ceiling,
actuele wachtlijst lengte en huidige closure:
Log
In Log.txt staan de voortgang en aantal afgehandelde vluchten:
Applicatie gestart 2015/07/01 12:38:02
Start verzamel vluchten
VluchtenProvider heeft 22 vluchten gelezen
Einde verzamel vluchten
Start toon vluchtLijst
Vlucht : 1 ML11/15apr12 AMS-MIL CT: 20 3 HBN: false false false
Vlucht : 2 ML11/16apr12 AMS-MIL CT: 20 21 HBN: false false false
Vlucht : 3 ML11/17apr12 AMS-MIL CT: 20 1 HBN: false false false
Vlucht : 57 ML12/15apr12 MIL-AMS CT: 20 0 HBN: true false false
Vlucht : 58 ML12/16apr12 MIL-AMS CT: 20 0 HBN: true false false
Vlucht : 59 ML12/17apr12 MIL-AMS CT: 20 37 HBN: false false false
Einde toon vluchtLijst
Start ClosureCheck
ClosureCheck heeft 22 vluchten bekeken
Einde ClosureCheck
Start VluchtUpdate
VluchtUpdate heeft 11 vluchten geschreven
Einde VluchtUpdate
Applicatie succesvol gesloten 2015/07/01 12:38:02
Applicatie output
Inventory : Geen gegevens gevonden Vlucht : 263 ML591/10oct12 AMS-JNB CT: 0 0 null
Inventory : Geen gegevens gevonden Vlucht : 264 ML592/10oct12 JNB-AMS CT: 0 0 null
ML12/16apr12 MIL-AMS false
ML12/17apr12 MIL-AMS true
ML61/21jan12 AMS-BRU true
ML537/7jun12 AMS-JNB false
In Update.txt staat de vlucht en nieuwe waarde voor closure,
dit bestand kan door het InventorySysteem worden ingelezen:
In Uitzondering.txt de exceptions die de applicatie (zelf) opgooit,
de beheerder kan dit bestand raadplegen:
Java klassen
Korte beschrijving van de belangrijkste klassen
model
Vlucht
Schema
Closure
beschrijving
Unieke vlucht (met id, wachtlijst lengte, ceiling)
Schema gegevens
Closure gegevens (huidig, benodigd, nieuw, update)
control
VluchtenProvider
VluchtenProviderFlatfile
ClosureCheck
VluchtUpdate
Control
beschrijving
Java interface die een lijst met Vluchten levert
Een implementatie van VluchtenProvider interface
Klasse die een Vlucht bekijkt
Klasse die de update van een Vlucht aanmaakt
Algemene klasse die de programma flow coördineert
boundary
Bestand
InvoerBestand
UitvoerBestand
beschrijving
Parent klasse voor een flatfile
Klasse voor het lezen van een flatfile
Klasse voor het schrijven naar een flatfile
Techniek
De applicatie is gebouwd met:
Java, NetBeans, eenvoudige Maven structuur
Flatfile invoer en uitvoer
Exceptions voor invoer uitzonderingen en ‘vreemde’
waarden
Testcases met JUnit (voor klassen van model, control,
UitvoerBestand en Exceptions)
Design goals tijdens bouw:
flexibel voor invoer en uitvoer
eenvoudig
uitbreidbaar (web interface voor ceilings, extra logica voor closures)
minder prio voor data dimensies (cabines, multileg)
Samenvatting
De Wachtlijst applicatie is gebaseerd op een
bestaande applicatie.
Bekijkt de vluchten en vergelijkt de ceilings met
het aantal wachtlijst boekingen
Bepaalt welke vluchten een closure update
moeten krijgen
Invoer en uitvoer in flatfile formaat
Flexibel en uitbreidbaar
Maarten Zuur
www.linkedin.com/in/maartenzuur

More Related Content

Featured

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 

Featured (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

Demo Wachtlijst applicatie

  • 1. Wachtlijst applicatie Demonstratie context en doel van de applicatie ontwerp en eindresultaat implementatie Auteur: Maarten Zuur Datum: 6 Oktober 2015
  • 2. Introductie Deze Wachtlijst applicatie is een vereenvoudigde versie van een bestaande applicatie. Het programma opent of sluit de wachtlijst voor een vlucht. Dit gebeurt op basis van een plafond (ingesteld door analisten) en het actuele aantal wachtlijst boekingen op de vlucht. Plafond voor de lengte van de wachtlijst Lange wachtlijst betekent meer kosten en kleinere kans op confirmatie
  • 3. Overzicht De Wachtlijst applicatie is verbonden met een UserInterface en het InventorySysteem Actuele gegevens inlezen (lengte van de wachtlijst en ceilings) De WL applicatie bekijkt de vluchten en zet de closure updates klaar De closure updates worden aan het InventorySysteem doorgegeven (UserInterface en InventorySysteem zijn geen onderdeel van dit project)
  • 4. Class diagram De applicatie is opgebouwd uit deze klassen: – VluchtenProvider levert een lijst met Vluchten – ClosureCheck bekijkt elke Vlucht en bepaalt of de closure moet worden geupdate – VluchtUpdate zet de closure updates klaar. Alle invoer en uitvoer zijn flatfile Bestanden (grijze kader).
  • 5. Sequence diagram Programma flow voor use case ‘UpdateVluchten’
  • 6. Data interfaces De invoer en uitvoer zijn allemaal flatfiles. Flatfiles staan in 1 folder (bestandenMap) voor overzicht en gemak tijdens testen. Invoer Schema.txt Inventory.txt Beschrijving Flatfile met alle vluchten Inventory gegevens van elke vlucht, zoals de ceiling Uitvoer Update.txt Uitzondering.txt Log.txt Beschrijving Flatfile met closure updates Vluchten of invoer gegevens die niet kunnen worden verwerkt Logbestand van de applicatie
  • 7. Actuele gegevens In Schema.txt staan alle vluchten met id, vluchtnummer, vertrekdatum, route: id,ceiling,reservering,closure 1,20,3,0 2,20,21,0 3,20,1,0 57,20,0,1 58,20,0,1 59,20,37,0 id,label,route 1,ML11/15apr12,AMS-MIL 2,ML11/16apr12,AMS-MIL 3,ML11/17apr12,AMS-MIL 57,ML12/15apr12,MIL-AMS 58,ML12/16apr12,MIL-AMS 59,ML12/17apr12,MIL-AMS In Inventory.txt staat van elke vlucht (id) de ceiling, actuele wachtlijst lengte en huidige closure:
  • 8. Log In Log.txt staan de voortgang en aantal afgehandelde vluchten: Applicatie gestart 2015/07/01 12:38:02 Start verzamel vluchten VluchtenProvider heeft 22 vluchten gelezen Einde verzamel vluchten Start toon vluchtLijst Vlucht : 1 ML11/15apr12 AMS-MIL CT: 20 3 HBN: false false false Vlucht : 2 ML11/16apr12 AMS-MIL CT: 20 21 HBN: false false false Vlucht : 3 ML11/17apr12 AMS-MIL CT: 20 1 HBN: false false false Vlucht : 57 ML12/15apr12 MIL-AMS CT: 20 0 HBN: true false false Vlucht : 58 ML12/16apr12 MIL-AMS CT: 20 0 HBN: true false false Vlucht : 59 ML12/17apr12 MIL-AMS CT: 20 37 HBN: false false false Einde toon vluchtLijst Start ClosureCheck ClosureCheck heeft 22 vluchten bekeken Einde ClosureCheck Start VluchtUpdate VluchtUpdate heeft 11 vluchten geschreven Einde VluchtUpdate Applicatie succesvol gesloten 2015/07/01 12:38:02
  • 9. Applicatie output Inventory : Geen gegevens gevonden Vlucht : 263 ML591/10oct12 AMS-JNB CT: 0 0 null Inventory : Geen gegevens gevonden Vlucht : 264 ML592/10oct12 JNB-AMS CT: 0 0 null ML12/16apr12 MIL-AMS false ML12/17apr12 MIL-AMS true ML61/21jan12 AMS-BRU true ML537/7jun12 AMS-JNB false In Update.txt staat de vlucht en nieuwe waarde voor closure, dit bestand kan door het InventorySysteem worden ingelezen: In Uitzondering.txt de exceptions die de applicatie (zelf) opgooit, de beheerder kan dit bestand raadplegen:
  • 10. Java klassen Korte beschrijving van de belangrijkste klassen model Vlucht Schema Closure beschrijving Unieke vlucht (met id, wachtlijst lengte, ceiling) Schema gegevens Closure gegevens (huidig, benodigd, nieuw, update) control VluchtenProvider VluchtenProviderFlatfile ClosureCheck VluchtUpdate Control beschrijving Java interface die een lijst met Vluchten levert Een implementatie van VluchtenProvider interface Klasse die een Vlucht bekijkt Klasse die de update van een Vlucht aanmaakt Algemene klasse die de programma flow coördineert boundary Bestand InvoerBestand UitvoerBestand beschrijving Parent klasse voor een flatfile Klasse voor het lezen van een flatfile Klasse voor het schrijven naar een flatfile
  • 11. Techniek De applicatie is gebouwd met: Java, NetBeans, eenvoudige Maven structuur Flatfile invoer en uitvoer Exceptions voor invoer uitzonderingen en ‘vreemde’ waarden Testcases met JUnit (voor klassen van model, control, UitvoerBestand en Exceptions) Design goals tijdens bouw: flexibel voor invoer en uitvoer eenvoudig uitbreidbaar (web interface voor ceilings, extra logica voor closures) minder prio voor data dimensies (cabines, multileg)
  • 12. Samenvatting De Wachtlijst applicatie is gebaseerd op een bestaande applicatie. Bekijkt de vluchten en vergelijkt de ceilings met het aantal wachtlijst boekingen Bepaalt welke vluchten een closure update moeten krijgen Invoer en uitvoer in flatfile formaat Flexibel en uitbreidbaar Maarten Zuur www.linkedin.com/in/maartenzuur