vissza a tantárgylistához   nyomtatható verzió    

    Software Technology for Embedded Systems

    A tantárgy neve magyarul / Name of the subject in Hungarian: Beágyazott rendszerek szoftvertechnológiája

    Last updated: 2018. február 22.

    Budapest University of Technology and Economics
    Faculty of Electrical Engineering and Informatics

    Electrical Engineering, MSc

    Embedded Information System Specialization

    Course ID Semester Assessment Credit Tantárgyfélév
    VIMIMA09 1 2/1/0/v 4  
    3. Course coordinator and department Dr. Kovácsházy Tamás,
    Web page of the course https://www.mit.bme.hu/eng/oktatas/targyak/vimima09
    4. Instructors Tamás Kovácsházy, PhD, Department of Measurement and Information Systems
    5. Required knowledge Operating systems, Parallel event-driven programming, Object-oriented programming , C/C++ programming
    6. Pre-requisites
    Kötelező:
    NEM ( TárgyEredmény( "BMEVIMIM150" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIMIM150", "FELVETEL", AktualisFelev()) > 0)

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

    7. Objectives, learning outcomes and obtained knowledge 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.
    8. Synopsis

    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.

     

    9. Method of instruction Lecture and practice.
    10. Assessment 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).
    11. Recaps The homework can be done also in the repetition period. The homework cannot be substituted with a mid-term exam.
    12. Consultations On appointment, based on the needs of the students. 
    13. References, textbooks and resources [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.

    14. Required learning hours and assignment
    Contact lessons
    42
    Preparing for lectures
    7
    Preparing for exercises7
    Homework32
    Preparing for exam
    32
    Total120
    15. Syllabus prepared by

    Tamás Dabóczi, PhD, associate professor

    Tamás Kovácsházy, PhD, associate professor

    István Majzik, PhD, associate professor

    Balázs Scherer, master lecturer
    Comments Angol név: Software Technology for Embedded Systems