Undergraduate Course: Embedded Software (INFR10013)
|School||School of Informatics
||College||College of Science and Engineering
||Availability||Available to all students
|Credit level (Normal year taken)||SCQF Level 10 (Year 4 Undergraduate)
|Home subject area||Informatics
||Other subject area||None
||Taught in Gaelic?||No
|Course description||Embedded (or reactive) systems monitor, respond to, or control an external environment through sensors, actuators and other I/O interfaces. These systems are inherently concurrent and require reliable software which satisfy timing constraints. This module provides an introduction to the fundamental principles underlying the specification, design and implementation of embedded systems with particular emphasis on the software.
Entry Requirements (not applicable to Visiting Students)
||Other requirements|| Successful completion of Year 3 of an Informatics Single or Combined Honours Degree, or equivalent by permission of the School.
|Additional Costs|| None
Information for Visiting Students
|Displayed in Visiting Students Prospectus?||Yes
Course Delivery Information
|Not being delivered|
Summary of Intended Learning Outcomes
|1 - An understanding of the principles underlying the development of software for embedded systems, from specification through to validation.
2 - An appreciation of the interplay between the different requirements in a complex embedded software design, involving issues such as concurrency, reliability and adherence to timing constraints.
3 - The ability to compare different specification techniques through hands-on experience of programming in the Esterel language as part of the assessed coursework
4 - Comparision of features in high-level languages intended for embedded software, such as Ada, Esterel, Real-time Java and C/Posix
|Written Examination 75|
Assessed Assignments 25
Oral Presentations 0
Development of a small embedded system using the Esterel language environment.
If delivered in semester 1, this course will have an option for semester 1 only visiting undergraduate students, providing assessment prior to the end of the calendar year.
||* Introduction to the unique characteristics and requirements of embedded systems
* Models for embedded software: process-based, cyclic executives, OS-based & object-oriented
* Overview of specification and design techniques: Data Flow Diagrams (DFDs), Statecharts, Tabular Languages, Traditional logics & Real-time logic
* Introduction to the Esterel, a synchronous programming language for control-dominated applications
* A linguistic comparison between Ada, Esterel, Real-time Java, C/POSIX
* Validation of embedded systems, in particular the representation and satisfaction of temporal requirements
* Scheduling in Real-time Operating Systems (RTOS)
* Reliability & software fault-tolerance issues
* Software interfaces to hardware components
Relevant QAA Computing Curriculum Sections: Concurrency and Parallelism, Operating Systems, Software Engineering, Systems Analysis and Design
||* Alan Shaw, 'Real-Time Systems and Software', John Wiley & Sons, Inc. 2001.
* Alan Burns & Andy Wellings, 'Real-Time Systems & Programming Languages', Third Edition, Addison Wesley, 2001.
* The Esterel website: www-sop.inria.fr/meije/esterel/esterel-eng.html
Timetabled Laboratories 0
Non-timetabled assessed assignments 25
Private Study/Other 55
|Course organiser||Dr Amos Storkey
Tel: (0131 6)51 1208
|Course secretary||Miss Kate Weston
Tel: (0131 6)50 2701