Software Engineering & Architecture (CS 380)

Master the systematic principles of professional software engineering and system architecture. Transition from writing basic programs to designing, building, and managing complex, dependable, and secure enterprise-grade systems.

  • 20:09:40 hr(s)
  • Wed, 09-Sep-2026
  • English
  • Certified Course
Card image

About This Course

Welcome to Software Engineering & Architecture, a comprehensive online course designed in alignment with BCS (Bachelor of Computer Science) curriculum standards and grounded in Ian Sommerville's world-renowned textbook, Software Engineering. This course is engineered to transition you from an individual programmer to a professional software engineer capable of designing, building, and managing complex, large-scale software systems. You will explore modern software development practices, including agile methods, dependability, secure systems design, advanced architectures, and modern management methodologies.

 

What You Will Learn

In this course, you will master the principles and practices that define professional software engineering. Through video lectures, case studies, and practical exercises, you will learn to:

  • Formulate software processes using both traditional plan-driven models (such as the Waterfall model) and contemporary Agile development methodologies like Scrum.
  • Engineer precise software requirements and utilize UML (Unified Modeling Language) for robust system modeling.
  • Design scalable software architectures using critical patterns (such as MVC, Layered, Repository, and Client-Server) while balancing non-functional requirements.
  • Build dependable, safe, and secure systems by incorporating resilience engineering, fault-tolerant architectures, and security engineering principles.
  • Apply advanced engineering paradigms, including software reuse, component-based software engineering (CBSE), and service-oriented architectures (SOA).
  • Manage professional software projects through effective project planning, risk assessment, quality management, and configuration management (including version control with Git).

 

Why Take This Course?

Modern society cannot function without complex, large-scale software systems. However, building reliable, secure software on time and within budget remains a major challenge. This course provides you with the systematic, rigorous engineering principles needed to manage this complexity. Grounded in the curriculum standards of the BCS, this course equips you with industry-relevant skills, making you highly competitive in the global software development market.

 

Who Should Take This Course?

This course is designed for:

  • Computer Science and Software Engineering students seeking a comprehensive, curriculum-aligned foundation to prepare for BCS professional exams or industry roles.
  • Software developers and programmers who want to transition from writing individual code to architecting and engineering enterprise-level systems.
  • Systems architects and IT project managers looking to update their knowledge on modern agile practices, resilience engineering, and advanced distributed architectures.
  • Prerequisites: A basic understanding of programming and fundamental data structures is assumed.

 

What will I learn?

  • Architectural Fluency: Ability to design, document, and evaluate complex system architectures using industry-standard patterns.
  • BCS Exam Readiness: Confident preparation to sit for professional certifications in Software Engineering.
  • Advanced Engineering Leadership: Mastery of risk management, project cost estimation (COCOMO II), and modern CI/CD release governance.
  • Dependability Auditing: Capacity to design and audit safety-critical and high-security enterprise systems.

Verifiable Credentials

Every single course certificate issued by Atlanta College of Liberal Arts and Sciences (ACLAS) is verifiable via our digital registry and is eligible for institutional authentication (Apostille/IECC), ensuring your professional milestones are recognized globally as of 2026.

Curriculum

Requirements

  • Programming Basics: Familiarity with at least one object-oriented programming language (e.g., Java, C++, Python, or C#).
  • Basic Computer Science Concepts: Fundamental knowledge of data structures, databases, and general operating system concepts.
  • Technical Environment: Access to a computer capable of running UML modeling tools, Git, and a modern IDE.
Video Images
Preview this course
$ 45 $ 94.99
  • Lectures174
  • Skill LevelBeginner
  • LanguageEnglish
  • Quizzes2
  • CertificateYes
  • Expiry period Lifetime
Show More

Software Engineering & Architecture (CS 380)
$ 45 $ 94.99