Master of Science in Software Architecture & Design

Course Code: CR_KSADE_9 Delivery: Part-time, Online Duration:  4 Semesters (24 months)Hosting Academic Department: Computing




Dr Ruairí O'Reilly
Department of Computer Science

Apply for this course now

Who is this course aimed at?

The MSc in Software Architecture & Design is an advanced industry-focused programme that addresses the skills gap of software developers and/or architect in the face of evolving software development practices.


As part of this programme students will learn and understand the role of a software architect, in creating an extensible and maintainable software solution by applying abstract knowledge and well known patterns to software architecture and design. This traditional role of software architect will also be critically assessed in the face of agile development methodologies and the adoption of tools and practices that avoid or decouple up front systems or architectural design.


In this unique programme, students will learn skills to fulfil the role of software architect or senior member of the development team. The programme is designed to form part of the evolutionary path that a software developer takes in becoming a software architect, allowing them to advance their technical career path.



What skills will I learn?

Our programme aims to provide students the opportunity for in-depth study of the advanced design and architectural and software development and process skills required for the successful design and development of complex software distributed systems. It provides students with the theoretical and practical knowledge necessary to advance their career in software development as a senior member of the development team or as a software architect.


The programme places a major emphasis on developing higher level software development skills. Students are exposed to current state-of-the art principles, methods and research of software design and architecture. Students will learn about the principles of software architecture and design and common architectural design patterns to solve problems when designing software. Students will also develop an understanding on how programming languages are implemented, an invaluable step in successfully designing, developing and maintaining software systems. Students will also develop skills in applying emerging trends and paradigms in software architecture, and the challenges, risks and opportunities in migrating from a monolithic software architecture to microservices.


What are the benefits of doing the course online?

Delivered exclusively online, the programme offers working professionals flexible opportunities to learn more about technological advances in the industry. Learning technologies such as Blackboard, Adobe Connect and virtualised lab infrastructures are just some of the systems that we will be used to deliver this innovative programme. All lectures will be streamed live over the Internet and each session will be captured and stored in the cloud for later retrieval by students. This will facilitate lecture review and revision and will enable students to access lectures and labs anytime, anywhere on any device with a web browser.


What is Software Architecture?

Architecture regardless of the domain is about creating structure and a vision. As a noun, architecture is about create a “unifying or coherent form or structure” [Merriam-Webster]. As a verb, the process of architecting something involves gaining an understanding of what you need to build, creating a vision to realise this and making appropriate design decisions along the way.


In software, architecture spans across a number of pillars which include the application, system, software and enterprise. Application architecture represent the fundamental building blocks of the software and at this layer an architect needs to make decisions about the programming language, the constructs, libraries and frameworks that will be used to develop the software. It is rare that an application lives in isolation and typically a system is composed of multiple collaborating applications.


More Course Information

For more information on the programme, please click here.

Detailed information on the timetable for the MSc in Software Architecture & Design is available here.


© 2021 CIT | web development by Granite Digital