290 likes | 613 Views
OOS Object geOrienteerd Software-ontwerp. 1 Organisatie OOS Proces van software-ontwikkeling Requirements Inleiding Analyse & Ontwerp. Organisatie OOS. Leerdoelen Leerproces Activiteiten Afronding Informatie http://intranet.hi.fontys.nl/users/hem/. Leerdoelen.
E N D
OOSObject geOrienteerdSoftware-ontwerp 1 Organisatie OOS Proces van software-ontwikkeling Requirements Inleiding Analyse & Ontwerp
Organisatie OOS • Leerdoelen • Leerproces • Activiteiten • Afronding • Informatie • http://intranet.hi.fontys.nl/users/hem/
Leerdoelen • Correct interpreteren van UML en toepassen gedurende het ontwerp • in een juiste volgorde schetsen proces van software ontwikkeling en van de diverse stappen aangeven wat de belangrijkste kenmerken zijn • toepassen van een aantal ontwerppatronen en het gebruik van packages • leren werken met een OO case-tool
Leerproces • Werken in projectgroepjes van maximaal 4 studenten aan casus. • Individuele begeleidingsgesprekken, eenmaal halverwege de module, 15 minuten per student. • Wekelijkse werkbijeenkomsten per groep • Taakverdeling tussen docent en student • Docent begeleidt, student moet zorgen dat hij iets leert
Afronding • Student moet aantonen dat hij de doelen gerealiseerd heeft. • Voorbeelden verzamelen en daar een goed verhaal bij vertellen. In de voorbeelden alleen die dingen opnemen die zelf gemaakt zijn. • Het gerealiseerde product speelt op zich geen rol • Mondeling van 30 minuten waarin student aantoont doelen gerealiseerd te hebben. • Docent gebruikt checklist en criteria. • Om de mondelinge toets met een voldoende te kunnen afronden, is een eerste voorwaarde dat de doelen duidelijk zijn. Dit zal niet vanaf week 1 het geval zijn. Het is daarom zaak steeds weer naar te doelen terug te kijken en “doelgericht” te werken. • Herkansing: Voor de herkansing geeft de docent op basis van de beoordeling voor de toets een extra opdrachten en een deadline waarvoor die moeten zijn afgerond. Deze deadline ligt altijd voor het begin van het volgende blok. Daarna volgt opnieuw een mondelinge toets over alle onderwerpen. Voor deze herkansing is nog slecht 15 minuten beschikbaar.
Interactief • Een systeem voor klanten • Domeindeskundige • Communicatie mbv standaardtaal (UML) • Use case (diagram) • Klassendiagram (statisch) • Sequentiediagram • Klassendiagram (dynamisch) • Toestanddiagram • …
Incrementele softwareontwikkeling Incrementeel Iteratief Interactief
Use-case Template: • name • actor(s) • preconditions • normal flow (alles gaat goed) • results (alles gaat goed) • alternate flow
Mediatheek ‘De Uitleen’ Uitlening van boeken, audio-cd’s, cd-rom’s, videocassettes, video en dvd’s. Er zijn allerlei categoriën voor de diverse uitleenbare media. Klanten kunnen lenen, reserveren, afgeschreven items kopen. Bij te laat terugbezorgen is boete verschuldigd. Van klanten worden naam, adres en telefoonnummer bijgehouden.
Object: 2 dimensies • creatie • gedrag (inspectie, wijziging) • (opruiming) gedrag object toestand • eigenschappen • statische constraints
Klassendiagram • Bouwtekening • Eigenschappen van objecten (statisch) • Associaties • Attributen • Gedrag van objecten (dynamisch) • Methoden • Constructoren • Restricties (statische)
Bedrijf 1 naam : Text adres : Text Praktijk periode Student Docent 0..* afk : Text id : Integer naam : Text start : Date 1 is voorzitter bij 0..* Afstuderen Stage Voordracht ◄i.v.m. nr : Integer datum : Date 1 1 Statisch klassendiagram(voorbeeld) ◄vindt plaats bij 0..* 1 0..3 0..1 doet wordt begeleid door
Klassendiagram • Conceptueel perspectief • communicatie analist/ontwerper • communicatie met domeindeskundige? • Specificatie perspectief • communicatie analist/ontwerper • Implementatie perspectief • communicatie ontwerper/programmeur • welke keuze in programmacode
Associatie • Relatie • associatienaam • Uiteinden: • rolnaam • multipliciteit
Attribuut verschil met associatie: • conceptueel nivo • geen verschil • minder details • specificatieniveau • eenrichting • implementatieniveau: • zichtbaarheid • suggestie voor opslag van data
GUI Legacy Domeinmodel Netwerk Persistentie Domeinmodel binnen totaal systeem
deze week • keuze casus • bestudeer: UML distilled • Hoofdstukken over Klassendiagram en Use Cases • opstellen use cases • eerste aanzet klassendiagram (domein)
volgende week • Together • Werken met CRC • Gedrag • Navigatie • Generalisatie • Compositie