Module Catalogue 2024/25

CSC8104 : Enterprise Middleware

CSC8104 : Enterprise Middleware

  • Offered for Year: 2024/25
  • Module Leader(s): Dr Ellis Solaiman
  • Owning School: Computing
  • Teaching Location: Newcastle City Campus
Semesters

Your programme is made up of credits, the total differs on programme to programme.

Semester 1 Credit Value: 10
ECTS Credits: 5.0
European Credit Transfer System
Pre-requisite

Modules you must have done previously to study this module

Code Title
CSC8404Advanced Programming in Java
Pre Requisite Comment

None

Co-Requisite

Modules you need to take at the same time

Co Requisite Comment

None

Aims

The module introduces students to modern enterprise middleware technologies and their application to building multi-tier distributed applications on cloud and other platforms. Developers of distributed applications require convenient abstractions to help manage the complexity of development and deployment. To be useful, such abstractions must be appropriate to the target execution environment (e.g. within the enterprise, between enterprises and at large scale). There is therefore a need to trade-off system properties in order to provide suitable abstractions (e.g. relaxing consistency guarantees to increase service availability in the cloud). The module uses technologies such as Java Enterprise Edition, messaging middleware and Amazon cloud infrastructure services to explore such design choices. There is a focus on systems and services to provide reliability and consistency guarantees at appropriate levels of abstraction.

Outline Of Syllabus

- Introduction to concepts of distributed computing
- Distribution transparency, local procedure calls, remote procedure calls
- Object-oriented middleware, synchronous and asynchronous invocation
- Messaging middleware, loosely-coupled interaction, interoperability, delivery guarantees in different
execution contexts
- Component middleware and separation of concerns
- Consistency guarantees, ACID transactions, extended transactions, eventual consistency
- Introduction to Web services and the REST architectural style

Learning Outcomes

Intended Knowledge Outcomes

The ability to describe and discuss the development of enterprise applications using a set of middleware services and components.

The ability to discuss design choices for development of middleware services and to select services that are suited to a given execution context (e.g. within the enterprise, between enterprises and at large scale).

Intended Skill Outcomes

The ability to design and develop reliable distributed applications using enterprise middleware.

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Structured Guided LearningLecture materials101:0010:00Recorded videos of learning materials.
Scheduled Learning And Teaching ActivitiesLecture32:006:00Lectures (3x2 hour Lectures (PiP))
Scheduled Learning And Teaching ActivitiesPractical82:0016:00Practicals (8x2hour practical sessions in the lab (PiP))
Guided Independent StudySkills practice12:002:00Formative Assessment [Quiz]
Guided Independent StudyProject work401:0040:00Coursework
Guided Independent StudyIndependent study201:0020:00Background reading
Scheduled Learning And Teaching ActivitiesScheduled on-line contact time32:006:00Online synchronous discussions
Total100:00
Teaching Rationale And Relationship

Lectures, recorded videos and online synchronous sessions will be used to introduce the learning material and for demonstrating the key concepts by example. Students are expected to follow-up within a few days by re-reading and annotating lecture notes to aid deep learning.

This is a very practical subject, and it is important that the learning materials are supported by hands-on opportunities provided by practical classes. Students are expected to spend time on coursework outside timetabled practical classes.

Students aiming for 1st class marks are expected to widen their knowledge beyond the content of lecture notes through background reading.

Reading Lists

Assessment Methods

The format of resits will be determined by the Board of Examiners

Other Assessment
Description Semester When Set Percentage Comment
Practical/lab report1M100Programming exercise (40 hours)
Formative Assessments

Formative Assessment is an assessment which develops your skills in being assessed, allows for you to receive feedback, and prepares you for being assessed. However, it does not count to your final mark.

Description Semester When Set Comment
Computer assessment1MFormative assessment
Assessment Rationale And Relationship

Nature of coursework: programming project for building an online web service using enterprise middleware.

The formative assessment is a none marked quiz to go over important theoretical concepts.

Timetable

Past Exam Papers

General Notes

N/A

Welcome to Newcastle University Module Catalogue

This is where you will be able to find all key information about modules on your programme of study. It will help you make an informed decision on the options available to you within your programme.

You may have some queries about the modules available to you. Your school office will be able to signpost you to someone who will support you with any queries.

Disclaimer

The information contained within the Module Catalogue relates to the 2024 academic year.

In accordance with University Terms and Conditions, the University makes all reasonable efforts to deliver the modules as described.

Modules may be amended on an annual basis to take account of changing staff expertise, developments in the discipline, the requirements of external bodies and partners, and student feedback. Module information for the 2025/26 entry will be published here in early-April 2025. Queries about information in the Module Catalogue should in the first instance be addressed to your School Office.