SDLC is een afkorting voor Software Development Life Cycle. Dit concept is eerder uitgelegd, maar omdat het model van Avans iets anders is, heb ik besloten een apart artikel te maken.

De Software Development Life Cycle (SDLC) is een gestructureerde methode die het ontwikkelingsproces van software begeleidt. Het is een raamwerk dat wordt gebruikt om ervoor te zorgen dat software van hoge kwaliteit, betrouwbaar en kosteneffectief wordt ontwikkeld. Het bestaat uit een reeks stappen die zorgen voor een georganiseerde en efficiƫnte aanpak van softwareontwikkeling.

img

The stages

1. Defining

Tijdens deze fase ga je kijken naar het volgende:

  • Wat is het probleem?
  • Wie heeft het probleem?
  • Hoe ziet een concrete oplossing er uit?
  • Is het haalbaar om die te maken?
  • Waar kan het mis gaan?
  • Wanneer moet het klaar zijn?

TIjdens deze fase ga je ook de volgende activiteiten doen:

  • Probleem analyse
  • stakeholder analyse
  • doelstelling opstellen
  • oplossingsrichting onderzoeken
  • scope bepalen
  • aanpake bepalen
  • risico’s inventariseren
  • planning opstellen

Al de bovenstaande puntjen leg je vast in het Projectplan.

Aan het einde van deze fase weet je wat de vraag of het probleem van de opdrachtgever is, wie er betrokken zijn bij het project (derde partijen niet vergeten), wat het concrete doel is in text en als afbeelding, wat dat doel wel en niet omvat, hoe we het project aanpakken, welke risico’s er zijn en hoe we daarmee omgaan en tot slot hoe het project in de tijd verloopt.

2. Requirements Engineering

Tijdens deze fase stellen we vast wat de eisen en wensen zijn. Hierom stellen we de volgende vragen:

  • Wat wil de opdrachtgever precies?
  • Wat zijn de belangrijke eisen, wat minder belangrijke? Wat moet eerst en wat kan later?
  • Hoe haalbaar is iedere eis of wens? Wat is er precies voor nodig?
  • Hoe weten we na de afloop of een eis of wens behaald is?

Achterhalen van de precieze eisen en wensen • Uitgevoerd in haalbaarheidsstudie, vastgelegd in Projectplan

Requirements proces: • Requirements Elicitation • Requirements Analysis • Requirements Specification • Requirements Validation • Requirements Management

Aan het einde van de fase zijn de eisen en wensen van de opdrachtgever zo precies mogelijk gespecificeerd, en zijn deze eisen en wensen afgestemd met de opdrachtgever en ten slotte zijn deze eisen en wensen vastgelegd in een document of tool die hiervoor geschikt is. Eisen en wensen noemen we Requirements.

3. Designing

In deze fase gaan we de oplossing ontwerpen. We gaan ons zelf afvragen hoe de oplossing er uit ziet. Dit doen we visueel door te kijken naar de schermen en hoe het product gebruikt gaat worden. Ook kijken we hier naar de software architectuur en het software ontwerp. Verder gaan we hier functionaliteit groeperen, interne en externe systemen etc.

  • Wireframes: We gaan hier mooie wireframes en prototypes maken.
  • Diagrams: we gaan tijdens deze fase ook meer dan genoeg diagrams maken.

Wireframes

Wireframes zijn tekeningen van hoe een pagina er uit gaat zien.

Diagrams

Je kan meerdere soorten diagrammen maken, denk hierbij aan UML. Ik zal hier onder nog wat voorbeelden van diagrammen laten zien.

Business process diagram

img

Class diagram Als je meer wilt weten over hoe je een class diagram maakt heb ik hier een duidelijke uitleg.

img

Sequence Diagram Als je meer informatie wilt over de sequence diagram, dan heb ik hier een artikel er over.

img

Deployment Diagram

img

Dit waren een paar voorbeelden, Verder kan je altijd nog andere soorten UML Diagrammen kiezen, er zijn er genoeg.

4. Realizing

TIjdens deze fase ga je werken aan de oplossing. Je gaat hier de Requirements bouwen. Als je in een groep bent doe je code reviews en werk je met Branches. Verder is het ook slim om een Daily standup meeting te houden.

5. Testing

Tijdens deze fase ga je valideren of jouw oplossing doet wat je verwacht. Hebben we de goede oplossing gemaakt? Zijn de verwachtingen duidelijk? Kan de gebruiker met de oplossingen werken? Lost het product het oorspronkelijke probleem op? Dit ga je testen. Je maakt een test strategie, hoe gaan we het testen aanpakken? Wat testen we wel en wat testen we niet? Verder gaan we testcases maken, dit zijn de specefiecaties van testen die uitgevoerd gaan worden, gerekateerd aan de requirement die je test. Ten slotte gaan we ook een testrapportage maken met de uitkomsten van de testen.

img

6. Releasing

Bij deze fase gaan we de software in gebruik nemen, hier maken we het beschikbaar voor de gebruikers. In deze fase lossen we ook de problemen op die de gebruikers tegen komen.

Verschillende methodes

Waterval

img

V-Model

img

Spiraal model

img

Rational Unified Process

img

Agile

img

Dev-ops

img

Nawoord