Dronology as a Data Source
All of our requirements are stored and managed in Jira.
While our project follows an agile approach, we specify our requirements using EARS (Easy Requirements Specification Format).
EARS allows us to express systems requirements using a very simple set of keywords.
Once released, source code and other artifacts will be available on Github and packaged for experimentation purposes on this website. Watch this space to learn more!
All of our code is stored in Github (and will be available in the Spring of 2018).
Our core Dronology engine is written in Java with our UI using the Vaadin framework. Our ground control station is developed using Python and leverages DroneKit python to communicate with UAS via MavLink.
Dronology's architecture is designed for flexibility. Future users may wish to deploy Dronology in new settings - or to experiment with changing various aspects such as the collision avoidance system, the types of UAS flown, the monitoring system and so on.
We have therefore adopted an architecture which is designed to accommodate these usage scenarios.
As Dronology is a safety-critical system, whose failure could cause harm, we also perform a hazard analysis to identify hazards, faults, and safety-related mitigating requirements.
Furthermore, we are interested in environmental assumptions upon which requirements depend. Watch this space for more information about Dronology's requirements and related artifacts.
We are following an agile development process -- which means epics, user stories (written using EARS), tasks, sprints, developer assignments and so on.
We made a few modifications to the typical agile process to accommodate the safety-critical nature of the project -- for example, our backlog includes safety stories.