Course Brief

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 life-cycle, 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.


  • This course is offered in 60 hours
  • Software Engineering, Software Charateristics, The Process – SDLC Models
  • The People – Stakeholders, Teams
  • Quality – Testing the Product and the Process
  • Design: Modularisation, What Makes a Good Design
  • Introducton to UML, Use Cases
  • Objects: Concept Diagrams, Composition and Inheritance
  • Sequence Diagrams
  • Class Diagrams
  • State Machine Diagrams, Acitivity Diagrams
  • Advanced Class Diagrams
  • A Complete Example
  • Testing Strategies and Tactics, Black Box Testing, White Box Testing
  • Coursework Tutorial ( Coursework 1 & 2)
  • Introduction to Alogrithms, Big O Notation, Asymptotic Analysis
  • Abstract Data Types: Array, Lists, Stacks, Queues, Sets
  • Alogrithm Design Techniques: Sorting Selection, Searching and Traversal
  • Alogrithm Design Techniques: Divide & Conquer, Recursion
  • Alogrithm Design Techniques: Dynamic Programming, Trees and Graphs
  • Alogrithm Design Techniques: Greedy Approaches & Heuristics,
  • Hash Tables & Heaps
  • Limits of Computing: Intractable Problems & Approximation,
  • NP-Completeness
  • String Matching Problems
  • Computational Geometry Problems

Lectures and tutorials.

Two coursework submissions.

One three-hour unseen written paper.

  • BSc (Hons) Computing and Information Systems (UoL)

    This degree prepares you to develop systems that can grow to meet new and changing needs in modern business environments. 

    • This degree is internationally recognized, giving you an advantage in the job market, wherever your career takes you.
    • You can rely on the quality of the content of this degree.
    • You will gain specialist expertise in the development and application of innovative technologies.
    • Our courses are designed to help you develop the analytical, organizational and creative skills sought by employers in the fast-evolving sector.
    • You will receive comprehensive subject guides approved by Goldsmith's academics, as well as access to a wealth of online resources.
    • This programme provides an excellent preparation for a career as a computing or information systems professional.

    In order to obtain the BSc (Hons) in Computing and Information Systems, students will pursue:-

    • 8 core full modules
    • 6 electives (half modules)
    • Final Project

    At SBCS we focus on -

    • Producing graduates who are capable of thinking critically, creatively and ethically.
    • Graduates who are team players with the ability to communicate persuasively.

    Highlights at a glance -

    • Global Recognition
    • Excellent Facilities and Administrative Support
    • Expert Lecturers