Date: 24 Oct 2008 From: jyrki@diku.dk Subject: Course description: Software construction Kursusnavn Udvalgte emner indenfor softwareudvikling Selected topics in software construction Placering blokstruktur Blok 3 Skemagruppe B Institut stedkode DIKU Syllabus eksport ? ECTS- points 7,5 ECTS Fagområde dat Indhold A collection of selected articles and book chapters concerning software construction will be presented by the teachers. Additionally, the students will themselves select and present articles within the subject matter. Development of software will be presented with focus on the areas: design, implementation, and testing. The following topics will be discussed: * design patterns * development process models * programming psychology * programming style * refactoring * software testing * software tools. Institutter DIKU — TOPSS-unit — PE-lab Kontaktpersoner Jyrki Katajainen, jyrki@diku.dk, 35 32 14 16 Faglige forudsætninger (evt. ingen) None Formelle krav (evt. ingen) 150 ECTS Målbeskrivelse After the course, the students should: 1. have good understanding of the development processes used in industry, 2. have an enlarged vocabulary when communicating with his or her colleagues, 3. have an increased ability to build good software, 4. understand that programming is a social activity, 5. be aware of his or her work habits and those of his or her fellow workers, 6. have an increased ability to apply software tools used in industry, 7. be able to disseminate the results of their work, 8. have the basic skills of criticizing and analysing other people's work, 9. be able to test a sizeable software component, 10. be able to produce text that is scientifically acceptable. Eksamensform (kun ved nyoprettede kurser) Oral exam, mandatory assignments, active participation Grading Assignment P (present an article): 10% Assignment R (review code): 10% Assignment S (write a survey): 30% Assignment T (test a program): 20% Oral exam: 30% Tilmelding ? Undervisningssprog English Undervisningsperiode Blok 3, 2009 Andre undervisere Claus Jensen, surf@diku.dk Lars Yde, larsyde@gmail.com Studieordning ? Skemaoplysninger Tuesdays 9-11; Fridays 9-11 Pensum/lærebøger (oblig. senest i 4. undervisningsuge) Selected articles and parts of the following textbooks (listed in order of importance): Steve McConnell, Code Complete, 2nd edition, Microsoft Press (2004) Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley (1995) Cem Kaner, Jack falk, and Hung Quoc Nguyen, Testing Computer Software, 2nd edition, John Wiley & Sons, Inc. (1999) Brian W. Kernighan and Rob Pike, The Practice of Programming, Addison-Wesley (1999) Steve Maguire, Writing Solid Code, Microsoft Press (1993) Gerald M. Weinberg, The Psychology of Computer Programming: Silver Anniversary Edition, Dorset House Publishing Company, Inc. (1998) Christopher Derek Curry and Jyrki Katajainen, Reengineering a University Department, Jyrki Katajainen and Company (2006) Formål The goal of the course is to increase the students' knowledge of software construction and their ability to build software. This is done by studying the latest research literature on software construction. Medtages forår/efterår Spring Kompetencebeskrivelse See "Målbeskrivelse" Kursushjemmeside/ISIS Yes, please Kursets hjemmeside http://www.diku.dk/~jyrki/Course/Software-construction/ Bemærkninger Please, observe that the words "softwareudvikling" and "systemarbejde" are _not_ synonyms for us. This course is about software, not systems. Uddannelsesdel Graduate program Undervisningsform Lectures/seminar Varighed 7 weeks + 2 weeks exam period Omfang Lectures (7 * 2 hours) Discussion sessions (7 * 2 hours) 4 Assignments Workshop (half day) Oral exam Eksamen/reeksamen the second Tuesday in the exam period Studiekredit 7-grade scale Intern/ekstern censur Intern censur Kursusevaluering Structured dialogue Deltagerbegrænsning max. 48, min. 14 students