The IT Solution Architecture course integrates design concepts and methods to develop IT solutions from both the software and system-level perspectives. It focuses on the analysis, design and implementation of an IT solution through which business requirements, software qualities and solution elements are transformed into implementable artefacts. By combining critical analysis with hands-on design and development, the course prepares students to participate effectively in the architecture design and development stages of a software-intensive IT solution project.
It is highly recommended that students are also proficient in IS442 Object Oriented Programming and Java programming language prior to reading this course. Students are also strongly encouraged to revise basic networking concepts (e.g., IP, DNS, DHCP, routing etc) for this course.
This course will be conducted as an SMU-X course. Unless there are unforeseen circumstances (e.g., no partner is secured), an industry partner will be involved to provide project requirements for the teams.
In the past, students were polled to take either a final examination or an industry certification examination. However from AY21-22 Term 1 onwards, this course is conducted for CS students as a core module. Based on SMU policy, there will have to be a final examination.
iPrep subsidy is still not yet available at time of writing. We will utilise funding from SCIS and SMU-X to pay for the certification examination fees and all CS301 students will be required to take the industry certification exam as a graded component in this course.
More information can be found at smu.sg/cs301
Previous course code & title: IS303 Architectural Analysis
Upon finishing the course, a student will be able to:
● Familiarise students with software design and systems thinking skills and instil an appreciation for the value of software architecture.
● Design the architecture for an end-to-end IT Solution.
● Understand and implement architectural styles and design patterns for software systems.
● Use standard practices in documenting system architectures using views and perspectives.
● Impact analysis to understand the implications of design choices.