Software Architecture Document (Golf App)
About this document
This document provides a basic architectural overview of the product, summarizing the key architectural issues and the solutions that have been decided upon. In other words, it is intended to capture and convey the significant architectural decisions which have been made for this game. Logical, Deployment and Process Views may be added later.
Architectural Factors & Decisions
Overview and development environment: The golf app will be built using the Eclipse Editor for the Android Market since all users of Android Phones (and to a lesser degree tablets) will be able to use the Android Market as it comes preinstalled on the vast majority of the devices that will run our game.
As far as coding the application, we are currently evaluating several methods to share code but are leaning towards a solution using SVN on the same server that is hosting this wiki. Since none of the members of our group have worked with Android programming prior to the start of this class, we have also started sharing information Android_Development.
Issues in core program that have been decided
We have determined that:
- the app will have both pre-populated data and user-entered data on each hole
- there will be scoring functionality in the app
- the date and personal scores will be included
To be considered
Important aspects of the architecture include the ability to balance showing both hole info and hole notes as well as score on a small screen, while allowing the user to enter both score and hole notes easily and intuitively as possible.
We also need to be able to have a scalable solution so that we can add other features such as score sharing between devices (advanced feature that may be outside the scope of this class) and multiple golf courses (may be added during the iterations in the class). Some of the ideas so far are listed in the Feature Ideas (Golf App) document.
- Mission Statement and Aims (Golf App)
- Game Rules (Golf App)
- Basic Scope (Golf App)
- Business Case (Golf App)
- Use Cases (Golf App)
- Non-Functional Requirements (Golf App)
- Business and Technical Decisions (Golf App)
- Supplementary Specifications (Golf App)
- Functionality/Reliability (Golf App)
- Glossary (Golf App)
- Feature Ideas (Golf App)
- UI Mockups (Golf App)
- Software Architecture Document (Golf App)
- InceptionPresentation (Golf App)
- Elaboration 1 Presentation (Golf App)
- Elaboration 2 Presentation (Golf App)
- Elaboration 3 Presentation (Golf App)