Help with Search courses

The course aims to give students an insight into the object-oriented approach to the design and implementation of software systems. The course also considers specific features of the programming language Java, in particular, graphical interfaces and event driven applications. The second part of the course is intended to give students the necessary background to understand the technical software aspects of how computers communicate across the internet. Students will be introduced to the underlying principles of client-server computing systems and will gain the required conceptual understanding, knowledge and skills to enable them to produce simple web-based computing systems in Java.

An individual student project.

This course provides an introduction to software engineering, algorithm design and analysis. The main topics include: Software design in UML: use cases, class modelling, objects and links, aggregations and dependencies, activity diagrams, state-charts; Principles of good software design, software development lifecycle, the role of design and modelling in software development; Software verification and validation; Project management and planning; Case studies and software horror stories. Abstract data types, design patterns, algorithmic issues, complexity theory, the application and implementation of common data structures in Java.

An introduction to the importance of information systems to the organisation.