Real-time/embedded systems development RESD

(modified)

Designing and developing reliable real time software typically within embedded systems.

Guidance notes

Embedded systems provide a dedicated function within a larger mechanical or electronic system with real-time, safety, security, and reliability constraints. Typically, it involves interfacing with hardware, sensors, and actuators for monitoring and control in industrial, automotive, aerospace, medical, robotic equipment, including IoT (Internet of Things) devices and intelligent systems.

These systems typically perform critical functions and have demanding requirements such as - but not limited to integrity, reliability, safety, security, power consumption.

Typical Activities:

  • defining non-functional requirements such as performance, safety, and security
  • using specialist techniques to define systems and to assure essential attributes are achieved
  • comprehensive verification, validation and testing methods and techniques
  • using specialised tools such as in-circuit emulators, logic analysers and digital oscilloscopes

Real-time/embedded systems development: Level 6

(modified)

Provides overall direction and leadership in the development of real-time/embedded systems. Sets, drive adoption and ensure the adherence of organisational policies, strategies and standards for development. Ensures achieving system requirements, including the critical non-functional requirements such as performance, safety, security, and reliability. Develops effective implementation and procurement strategies consistent with specified requirements, architectures and constraints of performance, cost and feasibility. Identifies opportunities to exploit new technologies or enhance and improve existing technologies and practices. May undertake the largest or most complex real-time/embedded system developments or oversee many such developments. Has overall accountability for verification, validation and testing to demonstrate integrity, reliability, safety and security are addressed.

Real-time/embedded systems development: Level 5

(modified)

Designs and develops real-time/embedded architectures and systems to meet agreed system requirements, including requirements for power, cost, physical space, response time, reliability safety and security. Analyses design options and trade-offs between hardware and software, makes recommendations and assesses and manages associated risks. Plans and manages the development of complex real-time/embedded systems and selects the approaches and techniques to be used. Accountable for the work of other engineers and oversees the integration of many sub-systems into the system as a whole. Ensures that effective validation, verification and testing is undertaken throughout development to demonstrate high levels of integrity, reliability, safety and security are addressed.

Real-time/embedded systems development: Level 4

(modified)

Designs, builds and integrates complex real-time/embedded components and sub-systems often incorporating fail-safe/secure characteristics or graceful degradation. Designs physical layouts reflecting connection between system components to test and optimise performance. Fully familiar with specialist tools (such as in-circuit emulators logic analysers or oscilloscopes), and often builds system prototypes and simulations to aid development and enable debugging, testing and troubleshooting embedded software. Applies a range of approaches to the validation, verification and testing of real-time components and sub-systems to demonstrate high levels of integrity, reliability and, often, safety and security are addressed.

Real-time/embedded systems development: Level 3

(modified)

Designs, builds and integrates medium-complexity real-time/embedded components as part of an overall larger systems design. Drives specialist hardware typically sensors and actuators and optimises component code for performance. Is fully familiar with the specialist tools in use such as in-circuit emulators and logic analysers. Applies a range of approaches to the verification and testing of real-time components to demonstrate that high levels of integrity and reliability are addressed.

Real-time/embedded systems development: Level 2

(modified)

Designs, builds and test simple real-time/embedded components as part of an overall larger systems design. Uses appropriate programming languages to drive simple sensors and actuators. Learns to use specialised tools such as in-circuit emulators, logic analysers and digital oscilloscopes.