ANRC Safety Monitor System is a mobile application for Windows Mobile-equipped smartphones which controls radioactivity and temperature levels in radiopharmaceutical firms. A radioactivity sensor network is installed throughout the firm’s rooms. Sensors periodically send relevations to a WSN (consisting of a Sensor Node and a Terminal) which, in turn, broadcasts received relevations to the users devices, where the application runs.
When the system receives a relevation exceeding radioactivity or temperature security levels, an alarm sound is played and a red bullet is shown on the device screen toghether with the values of the relevation, this way alerting the staff of the critic situation so that security procedures can be activated. When the received relevation is within security levels a green bullet and the values of the relevation are shown instead.
Relevations are appended in a Journaling File which contains latest 100 relevations received. These can be taken and viewed by the government authority delegated to monitoring radioactivity levels.
Among other things, ANRC SMS consists of 2317 lines of Java code, 14 classes, a dispatcher and a proxy. It’s been developed using DAO and Singleton design patterns and relies on a mechanism I designed, which lets the application run very fast (I tried to explain it here: http://goo.gl/XYfb5), besides the conscious use of abstraction via Interfaces & Abstract Classes and a configuration file which altogether make ANRC SMS extremely modular and extensible for future changes in the requirements. Of course, this reflects in eased software maintenance, which was what we wanted since the beginning of the project, as we already knew the project had to pass through 3 scheduled changes in the requirements.
ANRC SMS was developed in conjuction with a colleague of mine as the project for the exam in Software Engineering and got full marks. During the project execution (3 months), I fully dealt with Analysis, Design and Documentation phases, while together with my colleague I conducted the Implementation and Testing phases.
You can find the complete project, together with documentation and other manufacts on my LinkedIn page, under the “Projects” section.