Software Technology for Embedded Systems
A tantárgyleírás hatályossága
| Subject name (Hungarian, English) |
Szoftvertechnológia
Software Technology for Embedded Systems
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Subject code | BMEVIMIM150 | ||||||||||||
| Subject type | — | ||||||||||||
| Training Level | — | ||||||||||||
| Course types and hours (weekly/semester) |
|
||||||||||||
| Assessment type | vizsga | ||||||||||||
| Credits | 4 | ||||||||||||
| Subject coordinator |
DR. Kovácsházy Tamás
position: egyetemi docens
contact:
kovacshazy.tamas@vik.bme.hu
|
||||||||||||
| Responsible department |
Mesterséges Intelligencia és Rendszertervezés Tanszék
|
||||||||||||
| Faculty | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Subject website | http://www.mit.bme.hu/oktatas/targyak/vimim150/ | ||||||||||||
| 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
1. The
complexity of software (1 hour theory/lecture):
Aims: The introduction of the complexity of
software, its reasons and consequences.
The reasons of software
systems’ complexity, and the related difficulties in the software development
process. Tools proposed to handle the difficulties.
2. Programming paradigms (2 hours theory/lecture):
Aims: Presenting the differences between procedural
and declarative programming.
The evolution of software
technology and programming languages, the comparison of procedural and
declarative programming.
3. Software architectures of embedded systems (3 hours theory/lecture):
Aims: Introduction and evaluation of the representative
embedded software architectures, and the conditions and consequences of their
application.
The introduction
and evaluation of the representative embedded software architectures.
Application of embedded operating systems, the advantages and limitations of
them. Low level, procedural, and object-oriented software development for embedded
systems.
4. Parallel, event-driven, and time-driven programming
(8 hours theory/lectures + 4 hour practice):
Aims: Introduction to parallel, event-driven,
and time-driven programming.
An
introduction to the fundamentals and basic concepts of parallel, event-driven, and time-driven
programming. Concurrent and real-time schedulers, time-driven architectures.
The concepts of processes and threads. Resource management, shared resources.
The solutions to mutual exclusion, synchronization, and communication in
concurrent systems. Reentrant functions, blocking and non-blocking
(asynchronous) function calls. Architectural patterns of parallel embedded
software.
5. Model driven software development (8 hours theory/lecture + 4 hour practice):
Aims: Introduction to the fundamentals of model
driven software development.
The
role of modeling in the software development process, the model driven
approach, and an introduction to the related terminology. Introduction to UML from
the point of view of modeling embedded systems, with special attention to class
diagram, state diagram, and sequence diagram. UML profiles, description of
requirements, and modeling of resources. Domain-specific languages presented through
examples. The model driven architecture (MDA). Generating code from models,
implementation patterns for code synthesis from state diagrams. The SysML language
and its role in the development of embedded systems.
6. Databases in embedded systems (2 hours theory/lecture):
Aims: Introduction to the application of
relational and object oriented databases in embedded systems.
Application
possibilities of relational and object oriented databases in embedded systems.
7. Declarative systems (1 hour theory/lecture):
Aims: Introduction to declarative systems.
The
fundamentals and architecture of declarative systems. Production systems and
search strategies.
8. 4GL development systems (2 hours theory/lecture + 1 hour practice):
Aims: Introduction to 4GL development systems.
The
characteristics of 4GL development systems, the typical architecture of the
applications developed in them, and the available components. The relation of
model driven and 4GL approaches. NI Labview as an example of 4GL development
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
Tanulástámogató anyagok
Online források
Recommended preliminary knowledge for completing the subject
General rules
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
Curriculum placement
No curriculum placements recorded for this subject version.