K-INFO
HU
EN
Login

Software Architectures

Szoftverarchitektúrák
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
Subject name (Hungarian, English)
Szoftverarchitektúrák
Software Architectures
Subject code BMEVIAUMA06
Subject type
Training Level
Course types and hours (weekly/semester)
Course type lecture tutorial laboratory
hours (weekly) 3 0 0
type (linked/independent)
Assessment type félévközi érdemjegy
Credits 4
Subject coordinator
DR. Charaf Hassan
position: egyetemi tanár
Responsible department
Automatizálási és Alkalmazott Informatikai Tanszék
Faculty Villamosmérnöki és Informatikai Kar
Subject website https://www.aut.bme.hu/Course/VIAUMA06
Primary curriculum type
Direct prerequisites – Strong prerequisite none
Direct prerequisites – Weak prerequisite none
Direct prerequisites – Parallel prerequisite none
Direct prerequisites – Milestone prerequisite none
Direct prerequisites – Exclusion none

Objectives

Programme

1.       Introduction

-          Definition

-          Evolution of Software Architectures

-          Architecture Basics

Characteristics of Software Architectures, Key elements. Basic elements. Design and Architecture Patterns. Scalability, Distributed, System Parameters.

2.       Software Architecture Basics

-          The role of Architect

-          Goal of Software Architectures, Design steps

-          Typical Mistakes in Software Architecture, Top 10

 

3.       Software Architecture Patterns

-          Motivation

-          Calassification of Patterns: Services Acces And Configuration, Event Handling, Concurrency, Synchronisation

-          First Group of Patterns: Wrapper Facade, Component Configurator, Interceptor, Extension Interface

 

4.       Second Group of Patterns: Event handling

-          Reactor

-          Proactor

-          ACT

-          Acceptor-Connector

 

5.       Third Group of Patterns: Concurrency

-          Active Object

-          Monitor Object

-          Half Sync/Half Async

-          Leader-Followers

-          Thread Specific Storage

 

6.       Fourth Group of Patterns: Synchronisation, Summarizing the Patterns

-          Scoped Locking

-          Stragized Locking

-          Thread-Safe Interface

-          Double Checked Locking Optimization

-          Summary

 

7.       Layered Architectures,

-          Basic Patterns: MVC, Document/View, Layered

-          Design Requirements

-          Software Layers Design Questions

 

8.       Esettanulmány

Az esettanulmány célja, hogy szemléltető példán keresztül illusztráljuk a minták használatát és az előzőekben ismertetett témakörök felhasználása egy konkrét rendszerben. Igyekszünk meghívott ipari szakembert hívni minden esettanulmány alkalomra.

 

9.       Cloud Architectures

Cloud Specific Architectural Patterns. Backends for Frontends, Circuit Breaker, Static Content Hosting, Etc.

 

10.   Microservices

 

 

11.   Documentation of Architectures

-          Basic Questions of Documentation, Software documentation specific issues

-          Goals, Stakeholders, tasks

-          Software Architecture specific documentations

 

12.   Architectural Methodologies

-          Top 4 Enterprise Architecture methodologies (Actually 4) Like:

-          Zachman Framework

-          TOGAF

-          Federal Enterprise Architecture

-          Gartner Methodology

 

13.   Performance issues of Software Systems, Tuning tasks, aspects

-          Performance modells

-          Tuning issues

 

14.   Integration Solutions

 

 

15.   Architectural issues of Distributed Information Systems (DIS)

Basics of Distibuted Systems, Design and Implementation of DIS, Basic services of DIS. Component-based and Service-Based System development.

 

16.   Typical or Well-known Distributed Architectures, Middleware Services, Flexible IT Architectures

 

17.   Distributed Data Systems, Distributed Data Processing

 

18.   Autonom Computing

 

The course provides an overview of cutting-edge software architectures used in applications, research, and development, discussing their role and significance in the development of information systems. Building on a review of current industry trends, it offers insights into future distributed and high-reliability system architectures and technologies expected to emerge. Previously introduced object-oriented, component-based, and service-oriented architectures are summarized in a synthesized form.   The course emphasizes systematic software reusability and, in light of ongoing research in the field of software architecture, analyzes the challenges of designing loosely coupled systems as well as the importance of architectural patterns. Another key objective of the course is to organize and deliver up-to-date knowledge related to the above topics to the students.   In enterprise systems development practice, multi-tier object-oriented platforms, microservices, and cloud technologies dominate. Practical experience demonstrates that these tools and technologies can effectively support application development; however, without adequate architectural expertise, numerous challenges may arise during implementation. Failures and unsuccessful development efforts often result from software engineers lacking sufficiently deep and broad architectural knowledge. In this regard, another primary aim of the course is to fully prepare students to perform professional development tasks for enterprise systems.

Learning outcomes

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Knowledge

No learning outcomes recorded.

Skills

No learning outcomes recorded.

Attitudes

No learning outcomes recorded.

Autonomy and responsibility

No learning outcomes recorded.

Oktatási módszertan

-         Lecture Independent work (homework assignment completion)

Tanulástámogató anyagok

Online források
1.      ; Patterns of Enterprise Application Architecture. Martin; Fowler et al.; 2.      ; Pattern-Oriented Software Architecture, Patterns for; Concurrent and Networked Objects, Wiley press, vol.1 ,2.; 3.      ; Addison Wesley - Enterprise Integration Patterns -; Designing, Building And Deploying Messaging Solutions (Fowler) – 2003.; 4.      ; Jain R., The Art of Computer Systems; Performance Analysis, John Wiley and Sons, 1991; 5.      ; Menascé D.A., Almeida V., Capacity Planning; for Web Services. Metrics, Models, and Methods, Prentice Hall, 2002; 6.      ; Meier J.D., Vasireddy S., Babbar A., Mackman; A., Improving .NET Application Performance and Scalability (Patterns &; Practices), Microsoft Corporation, 2004; 7.      ; Virgilio A.F. Almeida: Capacity Planning for; Web Services, Techniques and Methodology; 8.      ; Written materials available on the course; website.; 9.      ; Errol Simon,; Distributed information systems, McGraw-Hill.; 10.  ; Mary Kirtland,; Designing component-based applications, Microsoft Press.

Recommended preliminary knowledge for completing the subject

Knowledge type competencies
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
A programozás alapjai 1-3, Szoftvertechnológia
Skill type competencies
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Recommended (non-compulsory) preliminary competencies
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
A programozás alapjai 1-3, Szoftvertechnológia
General rules
Requirements: Szorgalmi időszakban 1 major midterm exam 2 minor midterm exams 1 homework assignment   Successful completion of the course requires an acceptable (at least passing) result on the major midterm exam, successful completion of at least one of the two minor midterm exams, and satisfactory performance on the homework assignment. Grade calculation: Major midterm exam – 40%, Minor midterm exams – 10%, Homework assignment – 50%.   Vizsgaidőszakban       Additional possibilities: In accordance with the regulations set forth in the Academic and Examination Rules (TVSZ), one retake opportunity is provided for the midterm exam during both the regular semester and the make-up period.
Assessment methods
In-term assessments

No detailed assessments provided.

Weight of in-term assessments

No weights provided.

Exam-period assessments

No detailed assessments provided.

Weight of exam elements

No weights provided.

Grade calculation

No grade thresholds provided.

Attendance requirements

No attendance requirements provided.

Rules for retake and resubmission

Not provided.

Short description

Not provided.

Detailed description

Not provided.

Recommended courses

Not provided.

Workload to complete the subject

No workload breakdown provided.

Validity of subject requirements
Requirements valid from:
Requirements valid until:
Curriculum placement

No curriculum placements recorded for this subject version.