1st year course project: Shark tracking application using OSEARCH data
The [not-for-profit organisation] OCEARCH has been busy tagging great white sharks and tracking their movements in near real time, using new technology to advance our understanding of these wondrous sea creatures.
OCEARCH works with 20 different institutions and it even has its own at-sea laboratory. “[Utilising] a custom 75,000 lb.-capacity hydraulic platform designed to safely lift mature sharks for access by a multi-disciplined research team, up to 12 studies are conducted in approximately 15 minutes on a live mature shark,” the [organisation] says of its M/V OCEARCH vessel. The data collected from these expeditions aids in conservation efforts for great white sharks as well as promoting a better understanding of these apex predators and their role in the ecosystem.
The research – such as tagging and blood sample collection – means only minimal discomfort for the sharks, and there’s been no evidence of long-term problems or pain, according to OCEARCH (Source: International Business Times).
- Connect to a server to access shark tracking data
- Search for sharks that have appeared within a given time frame (in the last 24 hours, in the last week or in the last month)
- Filter the search for sharks by gender, stage of life and tag location
- Display all pertinent shark details, including species, length, weight and a description of the shark, ordered by recency
- "Follow" a shark such that they appear in a list of favourites
- Different user profiles
- Show visual statistics about the types of shark present in a given time period
- "Shark of the day" feature
- Display a map that depicts the geographical location of all followed sharks
- Developing user-friendly interfaces;
- Building self-contained applications with widgets, layout managers and event han- dlers;
- Using a version control system for managing source code;
- Interpreting application requirements that go beyond a Computer Science technical level and relate to application domain user needs;
- Identifying difficulties in GUI design;
- Working with pre-existing code, provided as a library;
- Performing task analysis and UI design;
- Documenting code.