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.
- 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.





