K-INFO
HU
EN
Login

Software Technology for Embedded Systems

Beágyazott rendszerek szoftvertechnológiája
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
Subject name (Hungarian, English)
Beágyazott rendszerek szoftvertechnológiája
Software Technology for Embedded Systems
Subject code BMEVIMIMA09
Subject type
Training Level
Course types and hours (weekly/semester)
Course type lecture tutorial laboratory
hours (weekly) 2 1 0
type (linked/independent) derived course
Assessment type vizsga
Credits 4
Subject coordinator
DR. Kovácsházy Tamás
position: egyetemi docens
Responsible department
Mesterséges Intelligencia és Rendszertervezés Tanszék
Faculty Villamosmérnöki és Informatikai Kar
Subject website https://www.mit.bme.hu/eng/oktatas/targyak/vimima09
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

1st week: The causes of software, especially embedded software complexity and its consequences. Human aspects. Software quality, functional and structural quality.

2nd week: Programming paradigms and their evolution, their application areas. Imperative and declarative approaches.

3rd week: Programming standards and safe programming. Practice with the MISRA standard.

4th week: Object-oriented development and modelling as the form of hierarchical decomposition. The state and behavior of objects. Relationships of objects.

5th week: Introduction to JAVA 1.

6th week: Introduction to JAVA 2, practice.

7th week: Model-based software development, theory and practice of modelling in embedded systems. Advantages and disadvantages. Relationships of model and code.

8th week: UML language, diagrams describing structure.

9th week: UML language, diagrams describing behavior. State-diagram implementations in software with examples.

10th week: Application of UML in embedded systems. An introduction to AUTOSAR architecture.

11th week: The theory and practice of design and architectural patterns. Software architecture. Introduction to the typical patterns usable in embedded systems. Android SW architecture as an example.

12th week: Virtualization and its role in software architecture. Virtualization and software architecture practice.

 13th week: Communication and embedded software, WEB technologies (XML, JSON, BER. HTTP, SOAP), middlewares in embedded systems.

14th week: 4GL development systems and their applications. GUI development practice.

 

The subject introduces the students to the modern technologies used in developing embedded software for better software quality. The introduction is both theoretical and practical. The subject shows why modern embedded software systems are complex, it lists the consequences of complexity, and details how we handle complexity in this context, and how we define and increase software quality.The subject then iterate through the modern solutions available to keep control over the software development process, and how we can increase software quality. These modern solutions are introduced, and its properties are investigate using both a theoretical and a practical approach by programming examples.

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

Tanulástámogató anyagok

Online források
[1] David E. Simon , An Embedded Software Primer, Addison-Wesley, 1999.[2] Bruce Powel Douglass, Real Time UML: Advances in the UML for Real-Time Systems (3rd Edition), Addison-Wesley, 2004.; [3] Bruce Powel Douglass, Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems, Addison-Wesley, 2002.; [4] Miro Samek , Practical Statecharts in C/C++: Quantum Programming for Embedded Systems, CMP Books, 2002.

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)
Operating systems, Parallel event-driven programming, Object-oriented programming , C/C++ programming
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)
Operating systems, Parallel event-driven programming, Object-oriented programming , C/C++ programming
General rules
Requirements: It is required to do a homework for signature and to allow to have an exam. The homework is an object-oriented, parallel, event-driven program done in JAVA or in JAVA in embedded environment (e.g. on PC and/or on Android mobile phone). Additional possibilities: The homework can be done also in the repetition period. The homework cannot be substituted with a mid-term exam.
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.