Software Life Cycle
Informatica en informatiekunde | 7,5 EC | Voor dit product gelden ingangseisen
Code IM0303
Deze cursus heeft een vast startmoment. Kijk in het Jaarrooster wanneer de begeleiding is ingeroosterd.

Het ontwikkelen van software is een ingewikkeld proces. De software moet de processen binnen een organisatie zo optimaal mogelijk ondersteunen. Dit betekent dat de software moet voldoen aan de behoeften en de eisen die de gebruikers hebben ter ondersteuning van deze processen. De cursus Software Life Cycle gaat in op het vaststellen en modelleren van de behoeften van gebruikers. In vakjargon heet dat requirement engineering. Maar de software life cycle is meer dan alleen requirement engineering. Er zijn ook veel ondersteunende en sturende facetten binnen de software life cycle die uitvoerig aan bod komen binnen de cursussen. Modellen die tonen hoe de lifecycle als geheel ingericht zou kunnen worden, passeren de revue. Een ander onderwerp waaraan uitvoerig aandacht wordt besteed, is het kwaliteitsaspect van software.

Algemeen

Inhoud

In deze cursus wordt een overzicht gegeven van enkele aspecten die van belang zijn voor het succesvol uitvoeren van softwareprojecten. Elk softwareproduct kent een eigen levenscyclus, de Software Life Cycle (SLC) of vaak ook Software Development Life Cycle (SDLC) genoemd. Een definitie van een SLC is (IEEE Standard Glossary of Software Engineering Terminology, 1983):

`The period of time that starts when a software product is conceived and ends when the product is no longer available for use. The software life-cycle typically includes a requirements phase, design phase, implementation phase, test phase, installation and checkout phase, operation and maintenance phase and sometimes, retirement phase'.

Voor het uitvoeren van softwareprojecten zijn in de loop van de tijd verschillende modellen voor SLC's ontwikkeld, de Software Life Cycle Modellen (SLCM). Deze beschrijven de volgorde en de wijze waarop een aantal activiteiten uitgevoerd zou moeten worden om te komen tot een succesvol softwareproduct. Elk SLC-model heeft eigen uitgangspunten en bij toepassing in de praktijk specifieke voor- en nadelen. Er zijn vele SLC-modellen in gebruik, al is in vrijwel elke situatie sprake van een mengvorm van een of meer modellen.

Kennis over belangrijke aspecten van SLC-modellen is dus belangrijk om in de praktijk bij een concreet product een geschikt model te kunnen kiezen. In deze cursus bekijken we de modellen zelf, maar gaan we ook verder in op de processen die binnen en buiten het softwareproces werkzaam zijn. Hiervoor kijken we naar een algemeen model voor de interne processen bij de ontwikkeling en exploitatie van ict-systemen.

De ontwikkelingscyclus start met de projectdefinitie. Op grond hiervan volgen de fasen van requirements engineering, het ontwerpen, de realisatie en het testen van het systeem. Hierna volgt de acceptatie van het systeem en gaat dit in exploitatie. Het kan voorkomen dat een systeem niet geaccepteerd wordt. Dan volgt er, als er genoeg middelen beschikbaar zijn, een hernieuwde ontwikkelingscyclus om het systeem te verbeteren.

De leereenheden 1 tot en met 5 van de cursus zijn gebaseerd op belangrijke originele publicaties in het vakgebied. Hierin worden vooral de algemene principes beschreven die in de praktijk van industriële softwareprojecten daadwerkelijk tot verbeteringen hebben geleid. De leereenheden 6 t/m 11 over Requirements Engineering zijn gebaseerd op het boek `Requirements Engineering, From System goals to UML models to Software specifications' van Axel van Lamsweerde. Deze geven aan de hand van het tekstboek een overzicht van het vakgebied en van de courante methoden en technieken die gebruikt worden op het terrein van requirements elicitatie en een introductie in de methode van doel-gebaseerd (goal oriented) requirements engineering.

Leerdoelen
Na het bestuderen van de cursus wordt verwacht dat u:
- een aantal lifecyclemodellen voor softwareontwikkeling kent
- inzicht hebt in de aspecten die een rol spelen voor de kwaliteit van software
- een aantal methoden voor procesverbetering kent
- inzicht heeft in SCRUM als projectmanagementmethode
- weet wat systems engineering is en een schets kunt geven van de ontwikkelgang van een systeem
- de rol van requirements engineering in de lifecycle van een systeem kent en inzicht hebt in de belangrijkste obstakels in dit proces
- de verschillende technieken kent voor risicobeheersing en weet wanneer welke techniek geëigend is
- de meest gebruikte technieken kent voor de specificatie van requirements en inzicht hebt in de sterke en zwakke punten van deze technieken
- weet wat binnen de KAOS-methode bedoeld wordt met goals, objects, agents en operations, welke eigenschappen deze hebben en in welke typen ze zijn onder te verdelen
- in staat bent om voor een te ontwikkelen systeem, gebruikmakend van de tool Objectiver, de volgende modellen te construeren
- een goal model ter representatie van wat met behulp van het systeem bereikt moet worden
- een obstacle model ten behoeve van risicoanalyse en als uitbreiding op het goal model.

Aanmelden

Ingangseisen

Aanmelden is alleen mogelijk voor opleidingsstudenten die formeel zijn toegelaten tot de masteropleiding Computer Science of de masteropleiding Software Engineering.

Aanmelden

Aanmelden is alleen mogelijk voor studenten die formeel zijn toegelaten tot de masteropleiding.

Toelichting aanmelden

Deze cursus start 30 april 2018. We adviseren u om u uiterlijk 16 april 2018 aan te melden, zodat u tijdig het cursusmateriaal ontvangt, toegang heeft tot de leeromgeving en (indien van toepassing) ingedeeld kunt worden in een studiegroep.

Bij deze cursus hoort online activerende begeleiding. Deze cursus start op vastgestelde momenten, en ook tijdens de bestudering van de cursus zijn er vaste inlevermomenten van opdrachten en feedback. U studeert online samen met een groep medestudenten. Deze begeleiding is erop gericht u sneller, effectiever en met een beter begrip van de stof door de cursus te helpen. U kunt vooraf aan de begeleidingsperiode in uw eigen tempo de stof alvast doornemen; het materiaal wordt één kwartiel tevoren al uitgeleverd. Aansluitend aan de begeleidingsperiode is uw eerste tentamenkans. Na de begeleidingsperiode heeft u nog twee ingeroosterde tentamenkansen. Informatie over begeleiding en tentamen vindt u op de respectievelijke tabbladen.

Begeleiding

Begeleidingsvorm

Deze cursus heeft een vast startmoment. Kijk in het Jaarrooster wanneer de cursus van start gaat en wanneer de begeleiding is ingeroosterd.

Per kwartiel worden groepen studenten gevormd. De docent organiseert extra begeleidingsactiviteiten zoals online bijeenkomsten, tentamenvoorbereiding of nabespreking van het tentamen. Tijdens de bijeenkomsten gaat de docent inhoudelijke in op de lesstof en bereidt u zich voor op het tentamen. De bijeenkomsten vinden plaats in de avonduren of op zaterdag.
De geboden begeleidingsbijeenkomsten hebben een zeer grote toegevoegde waarde en een verhoogde slagingskans.

Begeleidingsbijeenkomsten


Online bijeenkomsten
Kwartiel 4 - begeleider: dhr. dr. G. Alpar
1. wo 02-05-2018 / 19.30-21.00 uur
2. wo 23-05-2018 / 19.30-21.00 uur
3. wo 13-06-2018 / 19.30-21.00 uur

Docenten

Mw. dr. E. Roubtsova.

Bereikbaarheidsoverzicht

Bereikbaarheidsinformatie docenten/examinatoren

Tentamen

Tentamenvorm

Opdracht.

Tentamendata

Volgens afspraak.

Meer info

Meer informatie

Voor een inkijkje in de cursus, ga naar de snapshot.

Mediagebruik

Als student heeft u toegang tot een groot aantal online diensten die u nodig heeft tijdens uw studie. Deze zijn bereikbaar via MijnOU, uw persoonlijke online werkplek bij de Open Universiteit, Hier heeft u o.a. toegang tot onze digitale leeromgeving, tentamenroosters, en onze uitgebreide digitale bibliotheek.

Digitale leeromgeving

Als medewerker of als student (na inschrijven) kunt u via de cursussite in de digitale leeromgeving naar de discussiegroepen. Hier kunt u met medestudenten en begeleider informatie uitwisselen en discussiëren over de leerstof.