This case study is based on the software for a wilderness weather station that collects weather information in remote areas that do not have local infrastructure (power, communications, roads, etc.). These weather stations are part of a national weather information system that is intended to capture and analyse detailed weather information to help understand both local and national climate change and to support the national weather forecasting service.
The important characteristic of the weather station is that it has to be entirely self-contained as power and communications are not available. It may also be deployed far from a road so access for repairs is difficult and expensive. This means that the system has to have its own power generation capability (using either solar panels or wind power), communicates via satellite and must be able to reconfigure itself to cope with problems with the instruments and software upgrades. The software is embedded in that it it is part of a wider hardware/software system but the timing requirements are such that very fast responses are not required. Therefore, it need not be based on one of the architectural styles for real-time systems discussed in the book.
Use of this case study in teaching
This case study was originally developed to illustrate object-oriented development and it is well-suited to this as the instruments in the system can be represented as objects as can the data that is collected and uploaded to the weather information system. use cases can be developed showing the different interactions between the wilderness weather system and the weather information system.
However, I also use it as a basis to discuss more general issues of systems engineering – the need for some kinds of system to be entirely self-contained, the notion of power management in situations where available power is restricted, the idea of remote dynamic reconfiguration, where the system software is changed by remote interaction.