As Academy Club, we organized the Understanding Software Architecture training with the Softtech team, with whom we have collaborated and participated in many training processes throughout the year. 🚀

We designed a 2-day training for Softtech employees with our expert trainer and curriculum 🎯

Training Duration : 12 Hours 2 days

Participants of the training : Analysts + Technical Team

Day 1

Introduction:

  • What is software architecture?
  • Why is it important?
  • Why is it necessary for business analysts?

Basic Concepts:

  • Architecture: The design and organization of a building.
  • System A collection of components that work together.
  • Module: Independent units in a system.
  • Interface: The point of interaction between modules or systems.
  • Database: A data storage and retrieval system.

Layered Architecture:

  • Presentation Layer: User Interface.
  • Application Layer: Where business logic and processes reside.
  • Data Layer: Database access.

Architectural Models:

  • Monolithic: A single large application.
  • Microservices: Small, independent services.
  • Event Versioned: Services triggered by events.
  1. Day

Object-Oriented Programming (OOP) and AOP (Aspect-Oriented

Programming):

  • OOP Fundamentals and Principle Structures (Encapsulation, Inheritance,

Polymorphism)

  • What is AOP? How does it work?
  • Advantages and Disadvantages of AOP

Cross-Cutting Concerns:

  • Definition and Examples of Crosscutting Issues
  • Managing Cross-Cutting Issues with Aspect-Oriented Programming
  • Strategies for Isolating and Managing Cross-Cutting Issues

Domain-Driven Design (DDD):

  • Basic Concepts and Principles of DDD
  • Defining Concepts in Modeling Language
  • Implementation and Benefits of DDD

Event-Driven Architecture (EDA):

  • Event-Driven Architecture Fundamentals and Advantages
  • Events and Event Handling
  • Application of EDA and Architectural Patterns

Software Development Process:

  • Analysis Determination of business requirements.
  • Design Architectural selection and design of modules.
  • Development: Writing and testing code.
  • Deployment Release and deployment of the application.

Application Maintenance and Renewal:

  • Redesign: Based on technology and business requirements

Update.

  • Maintenance: Bug fixing and security updates.

Sample Scenarios and Applications:

  • E-commerce Platform: User interface, payment processing.
  • Banking System: Customer accounts, security measures.
  • Social Media App: User profiles, sharing

Features.






Leave a Reply