Software Architecture

Live Online (VILT) & Classroom Corporate Training Course

software architecture course by edForce

Become a proficient software architect with our comprehensive 3-day Software Architecture Course. Learn architectural principles, patterns, and trade-offs to design robust and scalable software systems.

How can we help you?

Thanks for sharing your details. Our team will get in touch with you soon.
There was an error trying to send your message. Please try again later.

  • CloudLabs

  • Projects

  • Assignments

  • 24x7 Support

  • Lifetime Access

Software Architecture

Overview

This comprehensive 3-day course is designed to provide a solid foundation in software architecture. Participants will gain a deep understanding of software architecture concepts, principles, and best practices. The course covers various aspects of software architecture, including its importance, the architecture process, alternative thoughts, and the different types of architecture.

Objectives

By the end of the course, participants will:

  • Understand the definition and significance of software architecture

  • Gain insights into the architecture process and its evolution

  • Explore different types of software architecture and their applications

  • Learn to apply architectural principles in software development

  • Identify and select appropriate architectural patterns

  • Design various types of applications, including web, mobile, and service applications

  • Address cross-cutting concerns such as performance, security, reliability, and testability

  • Acquire knowledge of architecture refactoring and trade-off analysis

  • Develop test design and tactics for architectural validation

  • Enhance soft skills related to architecture, such as translating requirements into architecture and identifying architectural characteristics

Prerequisites

This course is suitable for software professionals, architects, developers, and individuals involved in software development projects. Participants are expected to have a basic understanding of software development principles and terminology. Familiarity with software design patterns and software development methodologies, such as Agile, will be beneficial but not mandatory.

Course Outline

Overview of Software Architecture2023-05-23T16:16:06+05:30
  • Defining Software Architecture
  • What’s Architecture and what’s not
  • Architecture Process
  • Alternative Thoughts of Software Architecture
  • Why Software Architecture Matters
  • Creating an Architecture
  • Patterns and Architecture
  • Architecture Evolution and Migration
  • Features vs Capabilities
  • Different types of Architecture
Architects and Architecture2023-05-23T16:18:09+05:30
  • Applying Architectural Principle to software
  • Acknowledging Requirements
  • Who’s the Architect?
  • Intentional and Accidental Architects
  • The Role of the Architect (Technology Leadership Role)
  • Architecture Approach in SAFe Agile
  • Architecture Review
Progressing on 4+1 Architecture2023-05-23T16:19:19+05:30
  • Logical View and Process View for Dynamic design.
  • Optimization of Class Design taking Architectural principles into account.
  • Identifying Components of Data environment.
  • 4+1 Architectural Views and Stakeholder concerns.
  • Architectural Patterns: Role and need for Creational Patterns and other GOF Patterns
Architecture Styles and Patterns2023-05-23T16:21:22+05:30
  • Finding and selecting correct patterns
  • Component Based Architectural Style
  • Domain Driven Design Architectural Style
  • Test Driven Development Model
  • Layered Architectural Style
  • Message-Bus Architectural Style
  • N or Multi-Tiered Architectural Style
  • Microservices architecture pattern
  • Service-oriented architecture pattern
  • Service-based architecture pattern
  • Comparing service-based architectures
  • Service architecture challenges
  • Team exercises: Pattern selection
  • Layered architecture pattern
  • Event-driven architecture pattern
  • Microkernel architecture pattern
  • Space-based architecture pattern
Application and Architecture2023-05-23T16:23:00+05:30
  • Choosing Different types of application
  • Choosing an Application Type
  • Designing Web Applications
  • Designing Rich Client Applications
  • Designing Rich Internet Applications
  • Designing Mobile Applications
  • Designing Service Applications
  • Designing Hosted and Cloud Services
  • Designing Office Business Applications
  • Designing LOB Applications
Addressing Cross Cutting Concerns2023-05-23T16:26:03+05:30
  • Functional vs Non-Functional Requirements
  • Differences between functional and non-functional requirements
  • Addressing [Assume, this topic deals with Quality attributes along with Design Tactics]
    • Performance
    • Security
    • Reliability
    • Testability
      • TDD
      • BDD
    • Extensibility
    • Reusability
    • Logging
    • Fault Tolerance
      • Technology Consideration
      • Secure Architecture Design
Architecture Refactoring2023-05-23T16:26:47+05:30
  • Architecture Trade-off Analysis
  • Test Design and Tactics
  • Soft Skills – A Slight Touch
Architecture trade-offs2023-05-23T16:27:51+05:30
  • Translating requirements into architecture
  • Identifying architecture characteristics
2023-05-23T17:42:15+05:30

Go to Top