School of Electronics and Computer Science:
COMP6013 Agile and Object Oriented Development


Basic Information

SchoolElectronics & Computer Science
Known asCOMP6013.
Session and SemesterSemester One, 2011 - 2012
Credit10 Credit Points
Unit LeaderDr Robert J Walters
TeachersDr Andrew M Gravell (aka Andy Gravell)
ModeratorsDr Pawel Sobocinski
Study80 hours
AssessmentExamination 75%, OO Development Tool Evaluation 25%
CourseworkOO Development Tool Evaluation
TeachingLectures 20
Prerequisites and Exclusions

Prerequisites: Object oriented programming experience .

ReferralOn referral, this unit will be assessed 100% by examination.
Syllabus Approved2004-04-07 00:00:00.000

Description

Aims

  • To teach state of the art software development methods
  • To prepare students for undertaking large software development projects using modern tools and techniques

Learning Outcomes

Knowledge and Understanding

Having successfully completed the module, you will be able to demonstrate knowledge and understanding of:

  • Modern software development methods such as XP and Scrum
  • Object oriented modelling in UML
  • Object oriented techniques such as inheritance, design patterns, components and frameworks
  • Integrated development environments such as Eclipse and Visual Studio; computer aided software engineering tools such as IBM/Rational Software Architect and Visual Paradigm

Intellectual Skills

Having successfully completed the module, you will be able to:

  • Compare, contrast and evaluate different development methods and environments
  • Create advanced object-oriented models and designs
  • Develop software using object-oriented methods

Practical Skills

Having successfully completed the module, you will be able to:

  • Participate in joint analysis and design sessions
  • Use a CASE tool and the UML notation to model software systems and applications

Topics Covered

  • Modern development methods
  • Iterative and incremental development
  • Agile methods such as eXtreme Programming
  • Different approaches to modelling, implementation, and testing
  • Formal and lightweight modelling
  • The Unified Modelling Language (UML 2)
  • Requirements analysis and documenting use cases
  • Static modelling using class diagrams etc.
  • Dynamic modelling using interaction diagrams etc.
  • OO Tools and techniques
  • CASE tools for UML
  • Integrated CASE and IDEs
  • Design Patterns and Software Architecture
  • Design Heuristics and OO Metrics
  • Agile Development Techniques
  • Test-driven development
  • Refactoring

Teaching and learning activities

Teaching methods include

  • Lectures presenting the different development methods, the UML notation and tools demonstrations
  • Students can familiarise themselves with development tools in the computer laboratories
  • Online and face to face support for assignment
  • Tutorial feedback on the assignment

Learning activities include

  • Demonstrations of modern development tools
  • A design exercise using modern OO development techniques, which will be assessed through a written report
  • Revision for the written examination

Methods of assessment

Assessment methodNumber% contribution to final mark
Evaluation of OO Development Tools [cwork]125
Traditional Written Examination [exam]275

Feedback and student support during module study

  1. Tutorial feedback on the development exercise
  2. Technical guidance from the teaching team, and computer helpdesk, during the assignment

Relationship between the teaching, learning and assessment methods and the planned learning outcomes

  1. The lectures provide the information and explain the relationships to enable students to develop the knowledge and understanding listed in the learning outcomes, which are assessed mainly through the written examination.
  2. The demonstrations prepare students for the assignment.
  3. The assignment allows students to demonstrate their achievement of the practical objectives.

Resources

Core Resources

  • Lethbridge T and Laganiere R, Object-Oriented Software Engineering 2nd Edition, McGraw-Hill 2005. [Library] [Shops]

Background Resources

  • Beck K, eXtreme Programming Explained 2nd Edition, Addison-Wesley 2005. [Library] [Shops]
  • Fowler M and Scott K, UML Distilled 3rd Edition, Addison-Wesley 2004. [Library] [Shops]
  • Fowler M, Refactoring, Addison-Wesley 1999. [Library] [Shops]
  • Riel AJ, Object Oriented Design Heuristics, Addison Wesley 1996. [Library] [Shops]
  • Cockburn A, Writing Effective Use Cases, Addison Wesley 2001. [Library] [Shops]
  • Gamma E et al, Design Patterns, Addison Wesley 1995. [Library] [Shops]
  • Cockburn A, Crystal Clear, Addison Wesley 2004. [Library] [Shops]
  • Larman C, Applying UML and Patterns, Prentice Hall 2005 [Library] [Shops]
  • Pilone D, UML 2.0 Pocket Reference, O'Reilly 2006 [Library] [Shops]

Computer requirements

  • CASE tools such as Rational XDE and IDEs such as Visual Studio (VS.NET) and Eclipse.

Taught to

COMP6013

MSc in Software Engineering (Compulsory)
ECS Socrates Students (Optional)

Students who are not registered on an ECS approved programme may take this module subject to meeting its pre-requisites and the availability of resources. To confirm this, please can you contact the module leader (as listed above) in the first instance. They will then refer you on to the appropriate director of studies for formal approval of your selection.

Change Log

2011-04-04 18:59:42.503 - Roll script