As devices move towards being always online, and software development moves away from a fixed release schedule to a more organic continuous development, it is often useful to move end-user releases for those devices to a similar track. Assuming you have good development infrastructure, and suitable testing, it may be worthwhile looking at combining that with continuous deployment to provide maximum speed to market.
Software testing is one of those amorphous terms that covers a massive range of possibilities. Are we talking about integration, unit, black box, white box, systems, acceptance, regression, load, performance? The list goes on. In our experience, this is almost always a worthwhile effort, with paybacks in testing generally exceeding those from other areas, assuming that a pragmatic approach to testing is taken.
Static code analysis is a system where software is automatically analysed for potential issues without ever being executed - purely from looking at the written source code. Here we’ll quickly touch on what makes static code analysis special and then get stuck into some specific technical examples based on our experience of using it in our work at Spore Lab.
When beginning development of an embedded system, it is necessary to make a decision about whether to design a fully custom platform, or to utilize a pre-existing core system component of some kind. This core component could be anything from a bare main processor module right through to a complete and ready-to-use board. Unfortunately there is no definitive answer on which way to go...
There is no getting around it, customised software development requires a significant investment. High quality results do not come cheaply, so it is important to make sure that everything possible is done to achieve the best return. Keeping developers moving along at a crisp pace on the core task is vital, and poor infrastructure can add a huge overhead to development. To ensure this problem doesn’t occur, there are a number of areas that need to be running smoothly.