Programmering af Store OO Sys. Programmeringsprojekt
Programmering af Store OO Sys. Programmeringsprojekt. Henrik Bærbak Christensen Department of Computer Science University of Aarhus Denmark. Målsætning. Læringsmål
Programmering af Store OO Sys. Programmeringsprojekt
E N D
Presentation Transcript
Programmering af Store OO Sys.Programmeringsprojekt Henrik Bærbak Christensen Department of Computer Science University of Aarhus Denmark
Målsætning • Læringsmål • • Anvende begreber, teknikker og praktiske metoder fra fagpakken til at analysere, designe, og implementere en pålidelig og fleksibel løsning for en given problemstilling af større kompleksitet. • • Evaluere og diskutere teknikkers, metoders, og fundamentale begrebers styrker og svagheder i den konkrete sammenhæng. • • Beskrive og dokumentere løsningen og analyser klart og utvetydigt på skrift. • Indhold: • Projektet formuleres som en central, bunden, opgave samt krav om en eller flere udvidelser som vælges af kursisten. • Projektet vil tage udgangspunkt i et antal centrale problemstillinger: • Objektorienteret design og designdokumentation • Fleksibilitet gennem brug af design- og arkitektur patterns • Anvendelse og konstruktion af frameworks. • Systematisk test og test-dreven udvikling • Værktøjsstøtte, build-management, versionskontrol. • Desuden vil kursisten kunne inddrage et eller flere andre aspekter i projektet, såsom relationelle databaser, distribution og concurrency, o.a. Henrik Bærbak Christensen
Projekt: HotTargui • Produkt-mål: • Udvikle et framework til at afvikle varianter af spillet Targui. • Hvorfor brætspil? • Veldefineret domæne • Variabilitet • Kompleksitet • Valgfrie udvidelser Henrik Bærbak Christensen
Projekt: HotTargui • Læringsformål: • Test-dreven udvikling • Software arkitektur views og UML • Kompositionelt design og Patterns brug • i udviklingen • i kobling med grafisk brugergrænseflade • Framework • “reading”: brug af MiniDraw • “writing”: definition og implementation af HotTargui • Systematisk test • på udvalgt algoritme Henrik Bærbak Christensen
Projekt: HotTargui • Læringsformål: • Værktøjer: Ant og SCM (CVS el. SubVersion) • Valgfrie emner • Distribution • Databaser • Web-services • eller noget fjerde (inden for fagpakkens rammer) • Reflektion over teknikker Henrik Bærbak Christensen
Projekt-plan • Seminar 1 • Projekt definition. Afleveringsplan. Gruppearbejde over specs. MiniDraw GUI. APere • Seminar 2 • Diskussion over formulerede problemstillinger. • Seminar 3 • Pending... • Aflevering: • ? Henrik Bærbak Christensen
Praktiske detaljer • Rapporter i grupper af 2-3 personer. • Grupper: • Alle individuelle bidrag skal fremgå af et bilag • ikke kun “ib skrev afsnit 4”! • deltagelse i diskussioner, implementationsarbejde, analyser, osv. • “Retvisende uden at være pedantisk” • Tvivl om individuelle bidrag: så holder vi et lille møde med gruppen • Jeg går ud fra grupperne er organiserede? Henrik Bærbak Christensen
HotTargui Framework for Brætspil
Targui Territorier Kameler Bevægelse Stamme-kort Penge Runder Henrik Bærbak Christensen
Computski version Henrik Bærbak Christensen
Varianter • AlphaTargui • opgave 1 • BetaTargui • opgave 2 • GammaTargui eller DeltaTargui + SemiTargui • opgave 3 • Grafisk brugergrænseflade • opgave 4A • Distribueret Targui • opgave 4B • ? • opgave 4C Henrik Bærbak Christensen
1. Delaflevering • Deadline: Ti 22/4 2008 • Til: hbc@daimi.au.dk • Format: email: pdf+zip • Indhold: • Status på assignment 1, (2) og 3 • hvad har vi nået, hvad har vi lært, hvad funker ikke • Rapport i skeletform • Mindst to diskussionsoplæg ala • Design alternativer A og B på problem X • Brug af teknik X giver ikke de forventede fordele • Hvordan opnår man kvalitet X bedst Henrik Bærbak Christensen
2. Delaflevering • Deadline: 13/5 2008 • Til: hbc@daimi.au.dk • Format: email: pdf+zip • Indhold: • “næsten” færdigt udkast til delopgave 1,2 og 3 • Status på assignment 4x • hvad har vi nået, hvad har vi lært, hvad funker ikke • Hold øje med website ang krav og seminar status. Henrik Bærbak Christensen
Endelig aflevering • Deadline: 29/5 2008 • Til: hbc@daimi.au.dk • Format: email: pdf+zip • Indhold: Rapport + Kode til evaluering. Henrik Bærbak Christensen
Kommentar • Formål med delafleveringer • Taktslag i arbejdsprocessen • Indspark til diskussioner på seminarerne • Jeg giver ikke individuelle kommentarer på delafleveringer • Kommentar + evaluering på endelig aflevering medio juni 2008. Henrik Bærbak Christensen
Øvelse • Gør jer bekendt med • domænebeskrivelse • opgave formuleringer • Lav oplæg til • Spørgsmål til domæne og opgavebeskrivelse • Test liste for opgave 1 • Evt lave de første par JUnit tests og iterationer • Overvej hvilke partitioner der er i opgave 2 • Overvej variabilitetspunkter og kompositionel design for opgave 3 Henrik Bærbak Christensen