-
Notifications
You must be signed in to change notification settings - Fork 0
Software Requirements Specification
Risk | Severity | Response |
---|---|---|
New Team | Low | Get to know each members strengths and weaknesses and assign relevant roles based off that |
Unfamiliar with coding language/style | High | Go through online tutorials, man pages, online examples to become more familiar with Java and app development as a whole |
New environment | Medium | Find locations such as group meeting rooms for a quieter space to work with less distractions. Use phones as personal hotspots when the wifi is being extremely slow |
Version Control | Medium | Make sure every team member is set up correctly with Git and knows how to use it effectively |
Time Constraint | High | Work efficiently during the allotted times to work on the project as well as in spare time at night after classes to make sure the project gets completed on time |
Chiau Global aims to revolutionise the social aspect of meeting up for drinks through the app Drinking Buddies. The key deliverable for this project is a service that allows users to be matched with those around them based on their individual drink preferences ranging from alcohol to coffee. This application will place users into a group chat that allows for direct-communication to finalise their drinking experience. Drinking Buddies will partner with local businesses to suggest bars, restaurants and cafés in addition to offering a selection of beverages that can be browsed in-app before meeting at the agreed destination. These menu items as well as the places of business will be user-rated to guide those in the future to a new, enjoyable experience or one that best suits their taste.
Inside Scope | Outside Scope |
---|---|
|
|
Term | Definition |
---|---|
Drinking Buddies | The name of the app |
Activity | An activity is a single, focused thing that the user can do. Almost all activities interact with the user |
Intent | An intent is an abstract description of an operation to be performed. It can launch an activity |
Fragment | A Fragment represents a behavior or a portion of user interface in a FragmentActivity. You can combine multiple fragments in a single activity to build a multi-pane UI and reuse a fragment in multiple activities. |
Recycler view | A flexible view for providing a limited window into a large data set. |
Adapter | A subclass of RecyclerView.Adapter responsible for providing views that represent items in a data set |
The below table describes the multiplicity options used in the Use Case Diagram.
Multiplicity | Option | Cardinality |
---|---|---|
0..0 | 0 | Collection must be empty |
0..1 | No instances or one instance | |
1..1 | 1 | Exactly one instance |
0..* | * | Zero or more instances |
1..* | At least one instance | |
5..5 | 5 | Exactly 5 instances |
m..n | At least m but no more than n instances |
Drinking Buddies is a social platform which allows users to match up with others based off their drink preference. Users select their preferences for group size, type of drink, and location, and are matched with other users with similar selections. Drinking Buddies also offers a solution to users with busy schedules who struggle to find a time to meet up with friends. With options to automatically pick a time to meet based off synced calendars, as well as providing suggestions for where to go, meeting up with friends will never be easier and more straightforward.
Name of Actor | Stakeholder Classification | Consideration Justification |
---|---|---|
App Users | Consumer | The user must be considered at each stage of planning and implementation in order to deliver a service that improves their social drinking experience. A user-focus has been adopted to increase the number of app downloads that will be essential for matching based on nearby users. |
Businesses - Restaurants, Bars, cafés | Retailer | Establishments will be responsible for the monetisation of Drinking Buddies. This is through partnership where local businesses can sponsor their content to appear highlighted or suggested to users. This strategy ensures that pop-up and banner advertisements won’t be required, ultimately improving the app experience. |
Drinking Buddies is designed for any individuals or groups looking to meet new people over a drink of their preference. A possible scenario is someone who has just moved to a new city and perhaps does not know anyone there. Drinking Buddies is the perfect way to meet new friends and bond over a common interest in drink choice. Another possible outcome for this scenario is the city that the user has moved to is known for a having a specialty in a certain drink choice. Drinking Buddies suggests new venues and drink options for the user to try which would be a great way to get to know the city better.
The other main case of users that Drinking Buddies caters for is anyone with a busy schedule who struggles to find time to meet up with their friends. Drinking Buddies not only places the users into a group chat to find a time to meet, but further provides options to automatically suggest a time to meet based off the groups calendars, and also different venues and drink options based off companies partnering and sponsoring the app.
There are a variety of environmental requirements employed to create the prototype for Drinking Buddies.
Tool | Description |
---|---|
Google Chrome | Web browser used for research as well as gaining access to version control |
GitHub | Version control platform used for this project |
Git Bash | Main tool used for all version control related functions e.g. pushing and pulling to/from the repo |
Android Studio | IDE used for developing Drinking Buddies and writing all source code |
Emulators | Used to test the source code to see how the app would look on a physical device |
There are also an array of environmental requirements for the end user once the app is fully functional. Users will need to be in a populated space where there is a large variety of establishments offering drink options, as well as other users who will also be utilizing the app. Drinking Buddies will not work as intended in rural areas.
A variety of hardware is required for the development of the Drinking Buddies prototype:
Tool | Description |
---|---|
Internet Connection | Strong enough connection to the internet to be able to download IDE's, view web pages for research etc. |
Laptop | Laptop/Computer which is powerful enough to run android studio and the emulator. Emulators use large amounts of RAM |
Android Mobile phone | To see how the app fully functions on a non-emulator device, a physical android mobile phone will be necessary |
It is also worth mentioning the code written in Android Studio was designed for a Nexus5X model, so while the app will still function for any other android device, it is optimised for the Nexus5X.
It is required that any user running the app have an operating system over version 8.1 (Oreo).

Initially, users are presented with a guide on how to navigate the app and use its features.

After swiping to the last guide page, the user can press the button shown to create an account.

On this page you can create your account by inputting your details into the text fields. Press the ‘next’ button to go to the Confirm information Page.

Example UI of the user inputting their personal details when initially creating an account.

First preference option allowing the user to select their preferred drink.

Second preference option letting the user set how many people they would like to meet up with.

Third preference option lets the user set the age bracket of the people they are interested meeting up with.

Final page after setting up an account. Pressing the "Let's start!" button first takes the user to the matching tab.

Users are able to view their requests and change their preferences of groupsize,type of drink,and range before pressing find to search for people around them.

Layout of users looking at their requests.

Option for the user to change their preference for the group size.

Option for the user to change their preference for the type of drink.

Option for the user to select the range on a map they would be willing to travel to.

Main layout of the Chat tab. Can view existing chats.

An example of the UI of a group chat.

Main layout of the destination tab. Shows how many people in the group have arrived, different drink suggestions as well as an alert button in case anything goes wrong.

Confirmation screen after pressing the alert button.

An example of the screen to review a drink.

Layout of the review tab. Will show reviews for certain drinks/establishments.

Example layout of the user reviewing an establishment.

Example layout of the user reporting an individual that they met up with. The user has to provide reasoning.

Layout of the profile tab. All personal information can be viewed and changed here.