Course Description

The focus of this course is software products development organization in order to create a reliable, secure, and efficient software products. This includes analyzing the overall structure of the developmental and release stages of a software, how the software is decomposed into components, the server organization, and the technologies used to build the software.
Aims & Objectives

To teach the basic concepts of software architectural designs, patterns and views with specific emphasis on the practical issues involved in software project management. Additionally, introduction to cloud-based software and micro-services architecture will be discussed.

Students will work in teams on projects related to software architectural design and procedures. They will also review research papers on related topics individually and present their findings in class. The aim is to develop their skills in designing software architectures and developing software as a team.