- Both Sections: Friday, November 9
Homework can submitted via email or printout by deadline.
Giving reasons for your answer, suggest an appropriate structural model for the following systems:
The most appropriate architectural structural model would be a centralized model with a shared repository for route and pricing information. Storing all the information in a central location allows for changes to be immediately available to all ticket machines. It's reasonable to assume that there are other subsystems used for administrative functions (such as updating the data in the repository). The centralized system also allows global information (e.g., ticket sales) and route use to be collected and processed.
Given the distributed nature of this application, one might be led to consider a client/server architecture. If there is only one server (the repository), the actual structure would be the same (as the repository structure), regardless of what you call it.
The most appropriate structure here is a client-server model. The client application would be required to do considerable processing to handle the complex multimedia data fed to it from the server(s).
The most appropriate model is a repository model, with each of the subsystems (wall and obstacle sensors, path planning, vision (perhaps), etc.) placing information in the repository for other sub-systems to use. Robotic applications are in the realm of Artificial Intelligence, and for AI systems such as this, a special kind of repository called a blackboard (where the presence of data activates particular subsystems) is normally used.
Here are some example graphical designs:
Giving reasons for your answer, suggest an appropriate control model for the following systems:
Call-return model of control. There are no special requirements for this system, no need for real-time support, no unexpected events to handle. Therefore the simplest control model can be used.
The broadcast model of control is the most appropriate here. The various tools do not need to know which other tools are available and this approach allows tools which operate on different types of computers to work together.
The most appropriate control model here is a centralized control model, using polling to detect events. The system must be able to respond to external events (key presses on the remote control unit), but the rapid response characteristic of interrupt driven systems is not required. An event-driven, interrupt-driven model is also acceptable.