Group 4 Anders Linseth Magdalena Lipska Nicolai Friis Tobias Melcher Robot Project Group 4 Anders Linseth Magdalena Lipska Nicolai Friis Tobias Melcher
Project problems Development of a robot controller: Creating a requirement specification. Designing an architecture. Evaluation (ATAM). Implementing and testing. Quality attributes in focus: Performance Availability
Availability Fault detection Fault recovery Fault prevention Exception handling will ensure that the system keeps running. Fault recovery Passive redundancy. Checkpoint/rollback. Fault prevention Process monitor. When a fault is detected the monitoring process shall delete the nonperforming process and create a new instance of it.
Performance Resource demand Resource management Resource Arbitration Increase computational efficiency. By implementing efficient algorithms in critical areas latency can be reduced. Bound sensor information queue sizes depending on speed. Resource management Introduce concurrency. Threads should be implemented to enable concurrency whereever this is possible. Resource Arbitration Priority scheduling of accessing sensor information.
Architectural pattern Control loop
Logical view Controller User Feedback and Fault reporting Movement Control Sensor Input
Process view Robot Control Fault Prevention Sensor Interpreter
Demonstration And now some action…
Experiences Importance of doing exhaustive work in early phases. Learnt to design an architecture with focus on certain quality attributes. ATAM, how not to do it… How hard and time consuming it is to implement a robot controller.
Findings / achievements The ATAM process can be a useful evaluation method if implemented correctly. Managed to partly implement the architecture.
Conclusion In a small project like this it is difficult to see the effect of a well designed architecture. ATAM – too big for a small project. Architecture is ”easy”, implementation is ”difficult”.