Andrew Mccuan

CMPS 4350: Advanced Software Engineering

Project 2: Project MAD

Project MAD - Status Update 1

Screenshots of Running App

Description:

The screenshots above show the main screen of the App when launched. In this screen are 4 buttons that will redirect you to different screens with 4 different uses once implemented. Right now, the only button that is working is the "List Hotels" button, when clicked on the Hotel List screen will appear, as shown in picture number 2. In this screen, the app is grabbing a list of hotels from the database and displaying them to the user. Right now there is a warning on the bottom of the screen because I haven't yet given the app the ability to scroll on that screen but once I do this it will go away.

Source Code Sample

Description:

In this source code being displayed, the database is being referenced and looking for the table named "Hotels", when it successfully finds this table and grabs the results it gets displayed to the screen in a list class format. In the code there is a FutureBuilder() function that makes sure the app connects and grabs the results from the database. Most of the code here is for stylizing for display purposes. The language being shown is the Dart language, because this app is being built in Flutter the language being used is Dart. I have approximately written about 200 lines of code so far.

Interesting Features

Features:

An interesting feature that is implemented in the app right now would be the ability to view a list of hotels available from the Firebase database. This shows there is a connection between the app and the database and can view the results.

Additional

Completion on Project:

At this time I would estimate that the program is 25% complete. This is because 1 of 4 features is completed and only 3 more need to be done before a final product.

Interesting thing Learned:

One thing that I have learned from the start of this project is how useful the waiting features are when communicating with the database from the app. If there was no waiting, then the app would most likely just load a screen with no data, or only a few results.