Gwybodaeth Modiwlau

Module Identifier
CS31310
Module Title
AGILE METHODOLOGIES
Academic Year
2009/2010
Co-ordinator
Semester
Semester 1
Pre-Requisite
CS21120
Other Staff

Course Delivery

Delivery Type Delivery length / details
Lecture 20 Hours.
Seminars / Tutorials Up to 2 hours.
Practical Up to 4 x 3 hour worksheets
 

Assessment

Assessment Type Assessment length / details Proportion
Semester Exam 2 Hours   90%
Semester Assessment Worksheets  10%
Supplementary Assessment Supplementary examination will take the same form, under the terms of the Department's policy.  100%

Learning Outcomes

On successful completion of this module students should be able to:

1. demonstrate a critical appreciation of a range of software development methodologies, and their relative advantages and disadvantages.

2. reason about the impact of project context on choice of methodology.

3. demonstrate an in-depth knowledge of the practices that comprise the several agile methodologies.

4. undertake simple test-driven software development.

5. identify and then rectify code that requires refactoring.

Brief description

We look at development processes, techniques and technologies for constructing real operational software systems. We examine the spectrum of development methodologies available to software projects, from agile methodologies through to plan-driven methodologies. Students will learn about the advantages and disadvantages of various methodologies.

Content

1. Introduction to module: 1 Lecture.

The lecture provides a road-map to the module, with a brief overview of main concepts and how they interrelate. Introduces the planning spectrum.

2. Overview of Extreme Programming (XP): 1 Lecture

12 core and two supplementary practices of XP are overviewed.

3. XP project planning games: 2 Lectures, 1 Tutorial

Initial, release and iteration planning games. The eXtreme Hour Planning Game tutorial.

4. Pair programming practice: 1 Lecture

5. Test-driven development: 3 Lectures, 2 Worksheets

6. Refactoring: 3 Lectures, 1 Worksheet

De-oderising smelly code.

7. Feature-Driven Development: 2 Lectures

A more respectable agile methodology?

8. Anti-patterns: 2 Lectures

Striving not to repeat the mistakes of others.

9. Unified Process Overview: 1 Lecture

10. Model Based Architecture Overview: 2 Lectures

12. Agile vs plan-driven methodologies: 2 Lectures

We look at balancing agile and plan-based methodologies depending on project context.

Module Skills

Skills Type Skills details
Application of Number None, apart from simple planning estimates
Communication Students will practice communication skills during the tutorials and is a major concern within agile methodologies
Improving own Learning and Performance The assessed coursework requires students to develop their understanding of issues associated with the module.
Information Technology The module is IT focused. Students will use computer tools to develop and run their applications
Personal Development and Career planning The module gives students a wider view of the computing industry and potential careers
Problem solving Ability to reason about the clarity of software design and to improve such design through refactoring
Research skills Students will be required to acquire further knowledge from journals and on-line sources
Subject Specific Skills Methodological skills, design skills, programming skills
Team work Team work is required during the tutorials and is of major concern within agile methodologies

Reading List

Recommended Text
Auer, Ken. (2002.) Extreme programming applied :playing to win /[by] Ken Auer, Roy Miller. Primo search
Recommended Consultation
(c1998.) AntiPatterns : refactoring software, architectures, and projects in crisis /William J. Brown ... [et al.]. Primo search Fowler, Martin (2000 (July 2002) Refactoring :improving the design of existing code /Martin Fowler ; with contributions by Kent Beck ... [et al.]. Primo search Kruchten, Philippe (Jan. 2004) The Rational Unified Process:An Introduction Primo search Palmer, Stephen R. (2002.) A practical guide to feature-driven development /[by] Stephen R. Palmer and John M. Felsing. Primo search
Reference Text
Cohn, Mike (c2006.) Agile estimating and planning /Mike Cohn. http://www.loc.gov/catdir/toc/ecip0517/2005023257.html Prentice Hall Professional Technical Reference
Recommended Background
Stephens, Matt. (2003.) Extreme programming refactored :the case against XP /Matt Stephens and Doug Rosenberg. Primo search

Notes

This module is at CQFW Level 6