Embedded Systems Software Services
Development
Developing embedded systems software (firmware) requires more than proficiency with the programming language and computer science fundamentals. A thorough understanding of the microprocessor, the peripheral devices, the electronics that drive the interfaces, and the real-time behavior is required.
Testing/Analysis
Programmers typically miss over 50% of the defects they've introduced into their own code. Testing can be difficult, time-consuming, and costly. But it's especially costly when it's not done well, and software defects end up in the production code, to be uncovered by your customer.
Safety/Risk
Reliable software is not necessarily safe! The software may fail "reliably" whenever a given set of conditions are present.
Safety is a property of the system in which the software runs, so software safety can never be evaluated in isolation.
Support
Successfully fielding an embedded systems-based product involves many varied disciplines. The challenges increase when new processors, languages, technologies, or markets are also introduced.
|