Skip to content
brayank edited this page May 6, 2016 · 64 revisions

#Mutirão

###Team Members

Evis Brayan Gabriel Ian
evis brayan
Developer Scrum Master Product Owner Developer
el01403n@pace.edu bk29400n@pace.edu gr06604n@pace.edu ic34882n@pace.edu

###What is Mutirão?### The app is a tool to help people find, promote and organize a very specific, very common in Brazil, type of communal work called “mutirão”. The app is going to use Facebook to leverage reach of the promotion and will use geolocation info so people can see nearby “mutirões” to participate.

###Idea Proposal###

###Calendar###

###Product Backlog###

###Architecture & Design### We chose to implement Firebase as our back-end system. The service offers a NOSQL database that can be used to store and retrieve data. It offers an API that uses JSON for its transactions, so the whole content of the database can be thought as a JSON file. When architecting for Firebase, some design decisions were made. First of all, structures should be as flat as possible, making easy to access data without having to download the whole JSON structure, just by accessing the necessary keys. In order to represent couples data relations, Firebase suggest always using the key (imagine a dictionary) associated with desired data as the ID for the relation. As we can see on the image below, there are two main entities: User and Events. Those entities will mainly hold all the information need for the App. We can see an example of how a relationship between data works in Firebase looking at the fields ‘events_created’, ‘events_participating’ and ‘creator’. The placeholder (event_id or user_id) will be replaced for the actual key that index the user or the event within their respective dictionaries.

Firebase Image
    1. Mapkit - Apple's default map implementation Classes/delegates
    1. CocoaPods - Open source libraries/command line tools to help implement certain features such as Firebase
    1. Viewcontrollers/Scenes - The core functions of our application
    1. TableViews - A controller to implements lists/interactions with our app
    1. Firebase - The core of our app. Observes any changes to our map/events/users and updates the database JSON

###Content###

###Sprints/Demos/Scrums###

###Process Description###

###Communication###

  • Slack App
  • Email
  • Text
  • In-Class Meetings

###Tools###

Clone this wiki locally