Component-based Software Development


Unit code: COMP62532
Credit Rating: 15
Unit level: Level 6
Teaching period(s): Semester 1
Offered by School of Computer Science
Available as a free choice unit?: Y

Requisites

None

Aims

The aims of this course are:

  1. To introduce the basic concepts and the goals of the CBD paradigm
  2. To provide an overview of current CBD approaches
  3. To provide an in-depth exposition of key representative CBD approaches

Overview

Building large software systems remains a difficult challenge. a promising approach is to build such systems piecemeal but systematically from pre-built blocks. These blocks should be such that putting them together can be done hierarchically and compositionally. Such an approach is called a component-based approach. This course introduces the students to such approaches.

Learning outcomes

Learning outcomes are detailed on the COMP61521 course unit syllabus page on the School of Computer Science's website for current students.

Employability skills

  • Analytical skills
  • Group/team working
  • Oral communication
  • Problem solving
  • Research
  • Written communication

Assessment methods

  • Written exam - 50%
  • Written assignment (inc essay) - 50%

Syllabus

  1. Basic concepts
    • components
    • composition
    • component models
  2. The CBD process
    • component life cycle
    • system life cycle
  3. Survey of current component models
    • categories based on components
    • categories based on composition mechanisms
  4. Component models based on objects
    • objects as components
    • method call as a composition mechanism
    • Enterprise JavaBeans, JavaBeans
  5. Component models based on architectural units
    • architectural units as components
    • port connection as a composition mechanism
    • Acme/ArchJava, UML2.0
  6. Component models based on encapsulated components
    • encapsulated components
    • coordination as a composition mechanism
    • web services, X-MAN

Recommended reading

COMP61521 reading list can be found on the School of Computer Science website for current students.

Feedback methods

Feedback in lectures is given interactively both verbally and via Classroom Presenter - a software system for interactive lectures. Feedback in labs is given both interactively (verbally) and in written form. Feedback on group presentations is given interactively (verbally).

Study hours

  • Assessment written exam - 2 hours
  • Lectures - 20 hours
  • Practical classes & workshops - 15 hours
  • Independent study hours - 72 hours

Teaching staff

Kung-Kiu Lau - Unit coordinator

▲ Up to the top