PowerPoint-presentatie

Download Report

Transcript PowerPoint-presentatie

LauwersCollege Buitenpost
Hoofdstuk 15 Informatiesystemen
Systemen
Soorten systemen
UML
Ontwikkelmethoden
SDM
DSDM
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Systeem
Een systeem bestaat uit een aantal componenten
die onderling zijn verbonden (er is een structuur).
Tussen de elementen vindt interactie plaats.
E
E
E
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Soorten systemen.
Open systeem: het systeem heeft relaties met de omgeving.
Omgeving
E
E
Output
Input
E
Systeem
Gesloten systeem: het systeem heeft geen relaties met de
omgeving.
Voorbeeld: De Galapagos-eilanden
voordat ze door de mens ontdekt waren.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Systemen beschrijven.
Beschrijving van de componenten op detailniveau
compositie
Skateboard: wieltjes, assen, bevestigingsplaatjes,
plateau, boutjes en moeren
Relaties tussen de componenten en de omgeving
van het systeem
interface
Skateboard: wielen en
plateau
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Soorten deelsystemen.
1. Subsysteem of Segmentsysteem:
Een deel van het systeem,
bijvoorbeeld het subsysteem hoofd
van het systeem menselijk lichaam.
2. Aspectsysteem:
Die componenten bekijken die een
bepaalde functie van het systeem
vervullen of een bepaalde rol hebben,
bijvoorbeeld de bloedsomloop van het
menselijk lichaam.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Systeemmodel en black box
Als een systeem ingewikkeld is wordt er meestal een
Systeemmodel gemaakt.
Dat is een vereenvoudigde weergave van de werkelijkheid
Model van een enschakeling
Black Box: alleen kijken naar input en output van het systeem
en niet naar de componenten.
En-schakeling als black box
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Real-time systemen
• Een real-time systeem is een computersysteem dat
binnen een bepaalde tijd (de responstijd) moet
reageren op externe invoer
• de correctheid van het systeem is
niet alleen afhankelijk van het
resultaat ook van het tijdstip
waarop dat resultaat gegeven werd
• niet op tijd reageren is even erg
als foutief reageren
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Soorten real-time systemen
• harde real-time - systemen: absolute noodzaak om te
reageren binnen een deadline
– bijv een vlucht-controle systeem
– wanneer de deadlines erg klein zijn en de mogelijke
gevolgen catastrofaal zijn dit zeer kritische systemen
• zachte real-time - systemen: deadline is belangrijk, maar
het systeem functioneert correct ook als een deadline
‘af en toe’ gemist wordt
– bijv het verzamelen van gegevens bij procescontrole
– de waarde van een reactie vermindert als deze te laat
komt, maar heeft geen catastrofale gevolgen
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Voorbeelden real-time systemen
•
•
•
•
•
•
•
•
•
automatische bediening van vliegtuigen en raketten
luchtverkeer controle
bankoperaties per terminal
hartbewakingssysteem in ziekenhuizen
pacemakers bij patiënten
mobiele telefoniesystemen
procesbeheersingssystemen in chemische fabrieken
communicatiesystemen in een auto
inbraakalarm-meldingsysteem.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Kenmerken van een RTS
Moet extreem betrouwbaar en veilig zijn.
– Steeds meer vitale functies in de samenleving
worden toevertrouwd aan computer systemen
– Slecht functionerende systemen kunnen
catastrofaal zijn, vaak zijn mensenlevens
gemoeid
– Vaak parallelle systemen die elkaars taken
kunnen overnemen
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Kennissysteem of expertsysteem
• In dit systeem wordt kennis vastgelegd.
• Kan voorgelegde problemen interpreteren en
analyseren waarna een oplossing of diagnose wordt
gegeven
• Werkt altijd in combinatie met een database
• Bij de ontwikkeling worden speciale
programmeertalen gebruikt: vaak SmallTalk of Prolog
• Expertsystemen probeert men zo te maken dat het lijkt
alsof ze ‘menselijke intelligentie’ hebben: kunstmatige
intelligentie
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Pijlers van Kennissysteem
Kennisbank (of knowledge base)
• Database met gegevens: bevat feitelijke kennis alsmede
regels hoe de kennis gebruikt moet worden.
• Alle mogelijke relaties tussen kenniselementen zijn
nauwkeurig aangegeven.
Referentiesysteem (interference engine)
• Mechanisme dat logische regels op het kennisbestand
toepast om een voorgelegd probleem op te lossen; ook
wel redeneeralgoritme genoemd.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Voorbeelden van kennissystemen
•
•
•
•
•
•
Systeem voor signaleren van fraude
Adviessysteem (bijvoorbeeld hypotheek)
Herkenningssystemen (gezicht, handschrift, nummerbord)
Systeem dat aardbevingen voorspelt
Schaakprogramma
De Maeslantkering heeft deuren die op basis van een
kennisgebaseerd systeem worden geopend of gesloten
• Het alarmnummer 112 gebruikt een kennisgebaseerd systeem om
te bepalen of er een ambulance mag worden gestuurd of niet
• Verzekeraar AEGON gebruikt een kennisgebaseerd systeem om
te kijken onder welke voorwaarden iemand voor een
autoverzekering mag worden geaccepteerd
• Het gebruik van een neuraal netwerk.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Simulatiesystemen
• De werkelijkheid wordt nagebootst (gesimuleerd).
• Ervaringen met simulatiesystemen geven inzicht in
het gedrag van het werkelijke systeem.
─ Vooraf is grondige studie van praktijksituatie nodig.
• Uitvoer bestaat uit bewegende beelden en geluid.
─ Dit vereist hoge verwerkingscapaciteit.
• Speciale randapparatuur is nodig om de beleving
van de werkelijkheid op verschillende niveaus
zichtbaar te maken.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Voorbeelden van Simulatiesystemen
• Weersimulatiesystemen
• Systemen voor opleiding en training,
bijvoorbeeld een vluchtsimulator.
• Filmproductiesystemen
• Virtual Reality voor specifieke toepassingen
• SimCity
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Hoe werken simulatiesystemen
In dynamische computersimulaties worden de veranderingen in de tijd
van het systeem nagebootst door de tijd op te delen in kleine blokjes.
De toestand van het systeem wordt op basis hiervan
stapsgewijs berekend, door middel van iteratie.
Ook de ruimte kan worden opgedeeld in kleine blokjes; we noemen
dit cellulaire automaten.
De essentie van cellulaire automaten is hoe een willekeurige
eenvoudige reeks van enen en nullen in het volgende tijdstip tot
een andere reeks enen en nullen ontwikkelt.
Voorbeeld: Game of Life
Toepassing: Onderzoek van complexe processen in de natuur,
zoals koraalgroei, bloedstroming in het menselijk lichaam,
verdeling van insecten en/of bacteriën over de ruimte, de
verspreiding van epidemieën of bosbranden, enz.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Wat is een embedded systeem?
• Een product dat onzichtbaar door een microcomputer
wordt bestuurd
– software is onlosmakelijk verbonden met het product
– software wordt niet apart verkocht
– software biedt vaak belangrijke toegevoegde waarde
– het product vervult een bepaalde functie
• Zeer veel voorbeelden in de huidige consumentenmarkt
• Real-time systemen zijn vaak ook embedded systemen
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Voorbeelden van embedded systemen
• wasmachine
– één specifieke taak, beperkte
functionaliteit
– weinig flexibel
– goedkoop, massaproductie
• communicatiesysteem in auto
– zeer complex
– goedkoop
– zware real-time vereisten
– laag vermogen gebruik
– moet zeer flexibel zijn, open
voor nieuwe toepassingen
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Voorbeelden van real-time en embedded
– hoofdcomponenten van de globale infrastructuur
• al onze energiebronnen hangen af van embedded systemen
(olie, gas, nucleaire energie)
• vliegtuigen vliegen, schepen varen, allemaal gebaseerd op
embedded systemen
• voedsel, drank, zuiver water komen hoofdzakelijk van
processen die afhankelijk zijn van embedded systemen
– de farmaceutische industrie gebruikt embedded systemen om
medicijnen te produceren en te creëren
– embedded systemen zijn vitaal in autoproductie, medische
uitrusting, telecommunicatie, radio en televisie, enz
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Systeemontwikkeling
Tijdens de systeemontwikkeling wordt gestreefd naar de
ontwikkeling van een (gedeeltelijk) nieuw informatiesysteem.
Definitie van een informatiesysteem:
Het geheel van mensen, apparaten, programma’s en
procedures dat zorgdraagt voor de informatievoorziening
van (een deel van) een organisatie, product of dienst
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
UML
UML: Unified Modeling Language.
UML is een modelleertaal die we kunnen gebruiken om situaties
te beschrijven of te tekenen, voordat er wordt begonnen met
programmeren.
UML is geen ontwikkelmethode, maar het helpt om een te maken
systeem te visualiseren, en te communiceren met anderen.
De eisen (de zogenaamde Requirements) voor een systeem
worden m.b.v. UML beschreven.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
UML: use-case diagram
beschrijving van het gedrag van een systeem
vanuit het standpunt van een gebruiker.
actor
systee
m
use-case
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
UML: Klassen en objecten
Bij informatiesystemen heb je te maken met objecten, dat zijn
zaken die bepaalde handelingen verrichten.
De verzamelnaam voor alle objecten is een klasse.
Een object is een instantie van de bijbehorende klasse.
In UML worden klassen door rechthoeken
voorgesteld, met bovenin een vak waarin de
naam van de klasse.
De attributen staan in het middelste vak en
de methoden in het onderste vak.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
UML: Sequentiediagram
Sequentiediagram of volgordediagram:
Een diagram met een aantal objecten, waarin de interactie
tussen de objecten in de tijd zichtbaar wordt gemaakt.
De objecten staan horizontaal naast elkaar,
verticaal wordt er een tijdbalk getekend.
In welke chronologische volgorde worden de verschillende
acties uitgevoerd?
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
UML: Sequentiediagram (2)
object
event
actief
objec
t
LauwersCollege Buitenpost
Tijd
balk
Informatica
LauwersCollege Buitenpost
UML: Toestandsdiagram
Toestandsdiagram of statechartdiagram
Een toestandsdiagram geeft aan op welke wijze een
object van toestand kan veranderen als reactie op
gebeurtenissen.
Op de volgende dia zie je wat er op het scherm van de
pinautomaat verschijnt, dus de toestand van het
pinapparaat, na bepaalde acties.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
UML: Toestandsdiagram (2)
startpun
t
eindpunt
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Ontwikkelmethoden: Watervalmethode
1. Watervalmethode
Definitie
Analyse
Fasen vinden na
elkaar plaats.
Een fase moet eerst
af zijn voordat de
volgende kan
beginnen.
Ontwerp
Na elke fase een
rapport (mijlpaal)
Realisatie
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Voordelen en nadelen van de Waterval methode
Voordelen:
•
•
•
•
Heldere procesgang
Scheiding van taken
Kwaliteitscontrole
Kostencontrole
Nadelen:
• Neemt veel tijd in beslag
• Kans op het bouwen van een verouderd systeem met
verouderde technieken
Er wordt vanwege de nadelen nog weinig gebruik
gemaakt van de Waterval methode
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Ontwikkelmethoden: Cyclische methode
2. Cyclische methode of
evolutionaire methode
Product 4
Product 3
Product 2
Product 1
Het product
wordt gemaakt
en in stappen
verder
ontwikkeld
todat de
volledige
functionaliteit is
bereikt
Tijd
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Principes van de cyclische methode
Principe: Iteratieve verfijning
• Probeer zo snel mogelijk iets aan de praat te krijgen!
• Opeenvolgende verfijningen
• De gebruiker geeft steeds commentaar op de volgende
verfijning
• Snelle prototypes
• Pilot, schaduwdraaien
• Veel overeenkomsten met de Deming-cirkel
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
SDM: System Development Methodology
•
SDM is een watervalmethode; speciaal voor informatiesystemen.
•
Het behandelt de hele levenscyclus
•
Bij iedere fase wordt in een mijlpaalproduct vastgelegd wat is
gedaan/afgesproken.
•
Voor fase 0-6, werd in de jaren 1970-1980 ongeveer 1 tot 2 jaar
uitgetrokken.
•
De fase Gebruik en beheer duurde vijf jaar of langer.
•
Daarna vonden veel bedrijven het noodzakelijk een nieuw systeem
aan te schaffen, dus een systeem ging circa zeven jaar mee.
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
De fasen van SDM
0 Vooronderzoek
1 Definitiestudie
2 Functioneel ontwerp
3 Technisch ontwerp
4 Programmeren
5 Testen
6 Conversie en invoering
7 Gebruik en beheer
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
SDM-fasen samengevat
0 Vooronderzoek
Onderzoeken wat de wensen en behoeften van de klant zijn
en wat de tekortkomingen van het vorige systeem zijn.
1 Definitiestudie
Onderzoeken of de ontwikkeling van het informatiesysteem
zinvol en mogelijk is.
2 Functioneel ontwerp
Vaststellen wat het systeem moet doen en vaststellen van het
ontwerp van het systeem in algemene zin.
3 Technisch ontwerp
Een nauwkeurige en gedetailleerde beschrijving geven van
het te maken systeem; ook de interface.
4 Programmeren
Programmeren en productiegereed maken van het systeem.
5 Testen
In samenhang testen. De klant doet een acceptatietest.
6 Conversie, Invoering
Gegevens van het oude systeem zullen omgezet moeten
worden. Nieuwe systeem invoeren en overdragen.
7 Gebruik en beheer
In gebruik nemen, onderhouden en beheren
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
DSDM: Dynamic System Development Method
De meest bekende RAD-methode (Rapid Application Development)
1 Gebruikersbetrokkenheid is cruciaal
2 DSDM teams moeten kunnen beslissen
3 Het team levert regelmatig producten
4 De producten moeten onmiddelijk bruikbaar zijn voor het doel
waarvoor ze zijn ontwikkeld
5 Herhalende en cyclische ontwikkeling zijn nodig om het product
zo optimaal mogelijk te laten zijn
6 Alle veranderingen die gedurende de ontwikkeling gedaan worden,
zijn omkeerbaar
7 Er wordt uitgegaan van een hoog niveau van benodigdheden
8 Er wordt gedurende de hele levenscyclus van een product getest
9 Alle betrokkenen moeten meewerken en samenwerken
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
DSDM bestaat uit de volgende vijf fasen:
1.
2.
3.
4.
5.
•
•
•
•
Haalbaarheidsonderzoek
Bedrijfsonderzoek
Wat moet de applicatie doen (functioneel) en hoe wordt het opgezet (architectuur)
De functiebepalende cyclus
Er worden prototypes gebouwd voor de functionaliteit
De cyclus ontwerpen en bouwen
Er worden prototypes gebouwd om in het operatonele proces gebruikt te kunnen worden
De implementatie cyclus
Het nieuwe (deel)systeem wordt in de operationele omgeving geïmplementeerd
Daarna zijn er vier mogelijkheden:
Het is klaar; er is geen behoefte aan verdere ontwikkeling (pijl 1 op de volgende dia)
Een nieuwe functionele omgeving is ontdekt; de verdere ontwikkeling start dan weer bij
het bedrijfsplan (pijl 2 op de volgende dia)
Een deel van de functionele omgeving ontbreekt. Er wordt weer gestart met het
bepalen van de functionaliteiten (pijl 3 op de volgende dia)
Een functioneel onderdeel was onvoldoende ontwikkeld; terug naar ontwerp en bouw
van dat onderdeel (pijl 4 op de volgende dia)
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Klaar
Systematiek van DSDM
1
1 Haalbaarheidsonderzoek
Overeengekomen plan
Maken
functioneel
prototype
2
Bedrijfsonderzoek
3
3 Functies
bepalen
Implementeren
2
Herzie
bedrijfsvoering
Stel
functioneel
prototype
vast
Train
5 Implementatie gebruikers
Gebruikers goedkeuringen en
aanwijzingen
Herzie prototype
4
Stel ontwerp
prototype vast
Overeengekomen
plan
Herzie
4 Ontwerpen en ontwerp
bouwen
protottype
Bouw ontwerp
prototype
LauwersCollege Buitenpost
Informatica
LauwersCollege Buitenpost
Verschil DSDM en SDM
• SDM:
Het gevraagde product ligt vast
De benodigde tijd niet
• DSDM: De tijd ligt vast
Je weet niet of alle wensen binnen die tijd
gerealiseerd kunnen worden.
Bepaling volgens het MoSCoW-principe.
Gebruik van tijdframes
Volgens de Paretoregel gebeuren toch 80% van
de dingen in 20% van de tijd
Einde
LauwersCollege Buitenpost
Informatica