Computer Laboratory – Course pages 2015–16: Software and Interface Design Skip to content | Access key help Search Advanced search A–Z Contact us Computer Laboratory Computer Laboratory Teaching Courses 2015–16 Software and Interface Design Preparation for Computer Science Digital Electronics Discrete Mathematics Foundations of Computer Science Hardware Practical Classes ML Practical Classes Object-Oriented Programming Registration Algorithms Operating Systems Further Java Briefing Numerical Methods Software and Interface Design Course pages 2015–16 Software and Interface Design Syllabus Course materials Information for supervisors Principal lecturer: Prof Alan Blackwell Taken by: Part IA CST Past exam questions No. of lectures: 11 Suggested hours of supervisions: 3 to 4 Companion courses: Object-Oriented Programming, Programming in Java This course is a prerequisite for the Group Project (Part IB). Aims This course introduces principles and methods for the design of software systems in professional contexts. The whole of the software development lifecycle is considered, but with special emphasis on techniques for requirements capture and testing of interactive systems. Lectures Introduction. Design process overview: Inception phase, Elaboration phase, Construction phase, Transition phase (1 lecture). Inception. Structured description of system usage and function (2 lectures). Elaboration. Development and evaluation of interactive prototypes (2 lectures). Construction. Use of source code as a design model (1 lecture). Transition. Testing and debugging techniques (2 lectures). Evaluation. Measurement with respect to design objectives (2 lectures). Iteration. Design process responses to uncertainty and requirements change (1 lecture). Objectives At the end of the course, students should be able to undertake design of an interactive system in a methodical manner, starting from a general requirement, analysing user needs, developing a design model, approaching iterative model refinement and implementation in a manner that minimises risk, and using appropriate methods to identify and prevent faults. Recommended reading Pressman, R.S. (2010). Software engineering. McGraw-Hill (7th international ed.). ISBN 9780073375977 Sharp, H., Rogers, Y. & Preece, J. (2007). Interaction design: beyond human-computer interaction. Wiley (2nd ed.). Further reading McConnell, S. (2004). Code complete: a practical handbook of software construction. Microsoft Press (2nd ed.). Broy, M. & Denert, E. (ed.) (2002). Software pioneers: contributions to software engineering. Springer-Verlag. Schon, D.A. (1990). Educating the reflective practitioner. Jossey-Bass. © 2016 Computer Laboratory, University of Cambridge Information provided by Prof Alan Blackwell