Skip to content
Muhammad Neiroukh edited this page May 1, 2015 · 47 revisions

Introduction :

Overview :

This Document implements and discuss our app functionality and it's components,more details are displayed in which this the base for our next coding step.

1.Capabilities :

- Capabilities Priority Description Risk
1 Add Restaurants High Adding A Restaurant If not implemented then the number of restaurants saved in the database will not increase fast, which may cause this app to decease
2 Reveal All Near Restaurants On Map High App's Main Purpose Users will not be able to view any restaurant, which may cause this app to decease
3 Rating Existing Res. Medium Rating a Restaurant So Other People Can Check It If not implemented then the user will have a harder time viewing a restaurant, thus acquiring information on whether to try it or not
4 Navigating Medium Navigating To Any Chosen Restaurant Might Be A Trouble To Foreign People Trying To Find A Restaurant In An Unknown City To Them
5 Geo-coding High Searches For Cities Using Google Maps Implementation User might not be able to get restaurants location in advance
6 Display Restaurants List According To Distance Or Rating Medium This Feature Helps Users To Find A Good Restaurant Even Faster If not implemented then the user will have a harder time trying to organize and choosing a restaurant
7 Facebook Login Medium Allows User To Add New Restaurants Not implementing this feature and not creating a database will higher the risk of spamming bots and not being able to block them

##2. Deployment Diagram :

A diagram that explains how the application will be deployed, using the needed devices and servers.

##3. CRC Cards & Class/Object

Diagrams that explain all the needed classes and objects.

##4. Sequence Diagrams

A diagram that explains the sequence of using the app, for searching for a restaurant and adding a new one.

##5. <a href"https://github.com/MuhammadNe/Fast-Food/wiki/Persistence">Persistence This diagram explains the database needed to construct a successful application.

6. Non Functional Requirements

  • Easy To Use - We must provide a fully functional app that is easy to use and meets all user's requirements.
  • Good Looking App - We will also create this app in an attractive way for the user to enjoy using it.
  • Supporting All Devices - Supporting all kinds of devices and making sure this app is compatible on all kinds of screens and android versions.
  • Protected Database - We will prevent any cracking for the database, and always keep a backed up copy for all the restaurants and ratings.
  • Free For You! - This is app with all its features is free to use.
  • No Annoying Ads - We will allow minimal ads that will not disturb the user's pleasure using the app.

7. Risk Management

Risk Severity Probability Avoidance
Non compatibility with different mobile screen sizes High Low We will run the application at each stage of development using wide number of virtual devices to ensure that the application is compatible with all screen sizes.
A spamming bot Medium Medium We will create an algorithm that catches any bot with high amount of restaurants adding, in case of which the bot is spamming with wrong information, the bot will be blocked according to its Facebook name.
A user posting false/bad information High High There will be a button next to any restaurant or comment with the shape of an Exclamation Mark "!", that reports the user for bad posting
Lack of time for developing the App High Medium We will start developing the essential parts of the app, making a working product, then focus on the features.

##8. User Manual.

Clone this wiki locally