MSc ACS: Computer Security
Year of entry: 2020
Course unit details:
Component-based Software Development
|Unit level||FHEQ level 7 – master's degree or fourth year of an integrated master's degree|
|Teaching period(s)||Semester 1|
|Offered by||Department of Computer Science|
|Available as a free choice unit?||Yes|
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.
The aims of this course are:
- To introduce the basic concepts and the goals of the CBD paradigm
- To provide an overview of current CBD approaches
- To provide an in-depth exposition of key representative CBD approaches
Describe the different kinds of components and compositions used in current CBD approaches.
Describe the idealised component life cycle for a generic CBD approach
Analyse, evaluate and classify a CBD approach according to the idealised component life cycle.
Apply a given CBD approach to the construction of a real software system.
- Basic concepts
- component models
- The CBD process
- component life cycle
- system life cycle
- Survey of current component models
- categories based on components
- categories based on composition mechanisms
- Component models based on objects
- objects as components
- method call as a composition mechanism
- Enterprise JavaBeans, JavaBeans
- Component models based on architectural units
- architectural units as components
- port connection as a composition mechanism
- Acme/ArchJava, UML2.0
- Component models based on encapsulated components
- encapsulated components
- coordination as a composition mechanism
- web services, X-MAN
- Analytical skills
- Group/team working
- Oral communication
- Problem solving
- Written communication
|Written assignment (inc essay)||30%|
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).
COMP62532 reading list can be found on the School of Computer Science website for current students.
|Scheduled activity hours|
|Assessment written exam||2|
|Practical classes & workshops||15|
|Independent study hours|
|Kung-Kiu Lau||Unit coordinator|
Course unit materials
Links to course unit teaching materials can be found on the School of Computer Science website for current students.