Abstract
Dark is an astronomy tool that makes it easy for everyone to explore the night sky. It provides detailed information about constellations, planets, and satellites that you can see tonight based on where you are. With Dark, discovering what’s up in the night sky becomes simple and enjoyable, helping you to find and enjoy these celestial sights from your location. The Dark application is versatile and accessible from a wide range of devices, allowing users to embark on their astronomical adventures at any time, from any location, and with the exact observational data they seek! 💫
Author
Name: Shixun Li
Student number: 45580352
Functionality
Dark delivers a wide range of features that every astronomy enthusiast needs:
- Location Identification: Dark effortlessly identifies a user’s current location or the coordinates of any specified location.
- Visible Astronomy: Dark showcases the celestial objects that are visible from your location, complete with brief yet informative descriptions. For instance, a dedicated page within the app will present these objects in an organized chart, offering precise visibility times and insightful explanations, enhancing both understanding and navigation.
- Searching and Filtering: Dark’s efficient search feature enables users to quickly locate celestial objects and relevant information through specific keywords. This includes advanced order options, allowing searches to be organized alphabetically or by the time they appear, facilitating user navigation and enhancing the discovery experience.
- Interactive Sky Simulator: Incorporating a highly interactive night sky map, Dark simulates the sky above the user, facilitating easy tracking of targeted celestial objects.
- Astronomical News: Featuring an astronomical calendar, Dark provides updates on upcoming stargazing events and news, keeping enthusiasts informed.
- Discussion Board: Dark offers a dedicated platform for users to exchange information, share their astronomical photographs, and connect over their shared interest in astronomy.
Scope
Minimum Viable Product (MVP) of Dark will include:
- Location Identification
- Searching and Filtering
- Image uploading and text editor
- Location-based sky viewing
- Basic celestial object identification
- Event calendar
- User Login/Sign up
- User authentication
Quality Attributes
Dark has three most important quality attributes described at below:
- Availability: Availability for the Dark app ensures users can access it on mobile devices at any time, catering to the practicality of observing the night sky without the burden of carrying a laptop. Recognizing users’ global distribution and varying time zones, Dark is designed to be accessible 24/7, facilitating observation planning and real-time celestial tracking. This approach aligns with the spontaneous nature of stargazing activities, ensuring users worldwide have the flexibility to engage with the app whenever the skies allure them.
- Scalability: Scalability is crucial for Dark, especially considering the fluctuation in user numbers. Normally, user traffic is moderate, but it spikes significantly around major astronomical events like meteor showers. This variable demand means Dark must be capable of handling sudden increases in user load efficiently. Ensuring scalability not only addresses user experience during peak times but is also vital for the app’s economic sustainability, accommodating a growing user base without compromising service quality.
- Security: Ensuring user security is a top priority for Dark, especially in protecting sensitive personal information. We employ token-based authentication and encrypt sensitive data like passwords in our database. These measures are crucial in building trust with our users and providing a robust defense against malicious attacks, safeguarding both user privacy and the integrity of the platform.
Evaluation
To identify whether this project has achieved the desired attributes, I list out all possible ways for different attributes:
- Availability: To evaluate the app’s availability, monitoring user access logs and app uptime is essential, alongside using analytics to track user engagement across different time zones. Periodic testing also plays a crucial role in assessing whether Dark consistently meets availability standards. This approach ensures that any potential downtime or accessibility issues are swiftly identified and rectified, maintaining high availability for users worldwide.
- Scalability: To assess scalability, executing load tests using specialized tools will be key. These tests, alongside the analysis of performance metrics during regular and peak usage times, will determine the app’s ability to handle increased traffic, especially during significant astronomical events. Stress and load testing are vital for simulating high user traffic to ensure Dark maintains functionality without compromising service quality under pressure. This strategy guarantees the app’s readiness for sudden surges in user activity, affirming its scalability.
- Security: For security, it’s crucial to implement regular security audits and vulnerability scans to pinpoint any potential threats. Monitoring incident reports and measuring the response times to these incidents are also essential to gauge how effectively the app manages and mitigates security breaches. This comprehensive approach ensures ongoing vigilance and the strengthening of defenses against evolving security challenges.