Wednesday 17 February 2016

Ground Work


Prior to meeting with my assigned supervisor there was a number of topics researched:

Began familiarising  myself with the android SDK and getting simple projects working it and displaying them on my phone. 

Began looking at possibilities for the GUI elements, such as Unity or OpenGl.

Collected some apps that had a similar style GUI i could reference.

Looked for some guids on building a tile based applciation for android.

Looked into hosting my own server at home, which could host a database that my app could connect to. Another conclusion was that SQLlite that comes with Android could be a suitable option depending on the size of the app.

Discussed with a lecturer web applications vs android apps, how i could implement most of the business logic via a web service using PHP to update/retrieve information from an database, improving data persistence and allowing up to date information be accessed via multiple outlets (app, webpage etc).

Began research on hiring someone to develop sprite images for my growth cycles as a side option. Also looked if these may be available for free online.

Concluded that an object oriented model for populating my crop classes/objects from a database seems like the best way to go 

Outlined the potential need to scrape some websites to populate my own database. This may only be necessary for when i plan to expand my choice of available vegetables for use.

Before all of the above, i tried to think through how the application could be delivered and what the most essential features would be. Additionally i tried to think through additional features that could be added over time in the event that there was time to include before the projects deadline.


I have decided on an iterative approach for two reasons.

1) it will be to experience this software development approach considering it is so widely used in the industry. Being able to talk about this approach in interview will be valuable and i can "hit the ground running"

2) As i have chosen a project with quite a large scope for the time frame we have, it will be best to first identify core features and functionality, and get them working and get feedback on performance and feel of the product. I can then use what i have learned and try implement the next layer of features/functionality, always ensuring that the application is in working "submittable" condition at the end of each "sprint" so that if any feature i try implement appears to not be worth the time it is taking, or that it will not be achievable, i can leave drop it from the project and start on another feature without having disturbed the previous completed phase.



No comments:

Post a Comment