Michael Mohan
The project for this module was a business proposal for a digital business cards and events manager phone application, developed with 4 other students. The proposal included presentations and a business plan along with a prototype created for Windows Phone 8 with C#. The artefacts of the project (along with a presentation about Sun Microsystems) can be downloaded here and the source code for the prototype application can be viewed here.












Scattr
Before coming up with the idea of a mobile app to exchange business cards and host events, we met as a group to discuss various different ideas for businesses. Various other ideas were thought of and discussed such as personalised advertisements, electronic point of sale for shopping purchases using an app to scan items, emergency services tracking and accident detection to be built into the car or an app, an app that tracks available parking spaces in real time, as well as others (some of these ideas such as the electronic point of sale and the personalised advertisements have since become more and more ubiquitous in society with personalised recommendations online using big data and Amazon brick and mortar stores using the same payment approach). After reducing the litany of ideas to 5 groups, each of us took one of the groups and did some research on the area to help choose. Eventually we settled on the digital business card app, which we later decided to further extend to also include event organisation. After making a choice about the idea to develop, and creating an initial 2 page proposal for the idea, we had the requirements to get to work on developing the business idea.
Part of the module also involved each student giving an individual presentation on some aspect of business development. My presentation was on attitudes to risk or uncertainty, and used the example of Scott McNealy and the creation of Sun Microsystems to show how the right attitude to risk and the possibility of failure can help to bring a successful business to fruition. The presentation slides can be downloaded along with the other artefacts created for the project here. During the course of the module we liaised with industry professionals within Queen’s university as well as externally at offices of CITI, an American investment bank and financial services company. Throughout these discussions we absorbed valuable wisdom and advice from people with relevant experience of working on business development.
After coming up with an initial idea for a business, and developing an initial business proposal, we developed a business model for the app, giving an initial look at the different avenues of interest for the business idea. As we continued to develop the application we iterated on and improved this business model with the extra information we gleaned. We also developed an initial design of the application itself with a mock up design. Next we began to build upon the initial business model by developing a business plan for the application. The business plan was initially split into 5 different areas to research and flesh out; marketing, vision, finance, running the business and an executive summary. Each of these sections were assigned to the 5 of us to complete, with the section I looked at being marketing. As part of the marketing for the application, we developed a survey and had 26 people that we felt represented a wide range of our target market fill it in, including employees of a banking technology institution, university lecturers and professors, a vice president at a large technology company and a small business owner.
We asked various questions in order to assess the market opportunity of the application, and to get feedback to inform on the business decisions we made. From the conclusions we received, we concluded that the market existed for the app, and the responses helped us improve upon our initial designs for the application. I also researched the potential competitors of the application, looking at the advantages and disadvantages of the applications currently available for business card sharing. The survey, along with the market research of the competitors, allowed us to reach various conclusions. Our application would provide constant connectivity through Bluetooth for business card transfer, and the design of the application would allow for this to happen seamlessly unlike the clunky designs of some other applications. We would also developed the application to be available across all major mobile platforms (Android, iOS and Windows Phone). We would put focus on the development of the functionality to organise events, charging one off fees depending on the size of the events. We also decided on a price for the app that was estimated based on the research of what the competition charges, and on how much the survey participants would be willing to pay. Over half of the respondents would pay £4 or above for the app, with some even willing to pay as much as £10. Based on this, and to undercut the prices of the competition, we decided to charge £3.99 per month for use of the application.
The application would follow the freemium model, giving basic users enough functionality to use the application, but meaning they would have to pay for more enhanced features if they began to depend on it. Certain features like the ability to share and store unlimited business cards, and high customisability for the business cards would be available in the premium version of the application. The events functionality would also be a paid for feature with the pricing dependant on the size and type of the event. Event organisers would also be able to pay more for extra promotion of their event within the application. The business plan also included estimates of the finance and resources needed to start the business. As part of this, we developed a 3 year projection of what we believed the income would be for the business, including a profit and loss forecast. We created a breakdown of the amount of customers we believed we would secure for the app over the 3 years, as well as the amount of those customers that would be subscription based and from that predicted the growth rate of the income for the application. From this we concluded that we would be working at a profit by the third year of the business. We developed a plan to identify the amount of finance needed within those 3 years and how to obtain finance for the start up costs within that time. We also identified financial risks for the company as well as measures to minimise those risks.
As part of our assets for the development of the application we also needed a group portfolio, for which we developed a technical document for the app, which was named Scattr. As part of the design for the application prototype, we created user stories to outline the functionality we desired in the application. There were 30 different user stories created, and to provide proof of functionality, we developed acceptance tests for each of the user stories. Due to my background as a test engineer as part of my 12 month placement, I was chosen to create these acceptance tests. Both the set of user stories and the corresponding acceptance tests were included in the technical document. I also worked on the customer requirements and future work section of the technical document, to highlight the necessary functionality needed for the development of the application and the order in which this functionality was to be introduced, depending on its priority. The technical document also highlighted the user interface design for the application, as well as the database design and server architecture plan for the application. The plan would be to use a noSQL database such as MongoDB to create a document store with JSON files, and to use Neo4j as a graph database to store relations for automatic business card filtering. Mongoose would be used to access document information from the MongoDB database. We would rent server space from Amazon Web Services, to use a cloud based client server architecture that is horizontally scalable. We would and use Node.js along with numerous npm libraries to develop the server architecture for the application, and use RESTful API to connect to the servers.
With the business idea decided and researched, and the business plan developed, we had to present our idea to lecturers and fellow students. We also pitched the idea to industry veterans at an event and created a poster to be presented within an exhibition space for networking purposes and to highlight elements of the application with a demo of the prototype. In order to work on the prototype we established various techniques. Along with the previously mentioned user stories, we developed a feature release plan in order to know which features to work on and in what order. To aid with this we adopted Kanban as our development methodology, and used Visual Studio Online to create our Kanban board to keep track of feature development. We were then able to use the user acceptance tests to test whether the features had been adequately implemented.
We developed the application using Visual Studio 2013, working on an initial version of the application for the Windows Phone. We each used a virtual machine on our devices in order to have the operating system needed to develop for the Windows Phone. We also needed to download the Windows 8 SDK for development. We used the Model View ViewModel (MVVM) architectural pattern in order to facilitate easier development of the system as a Windows Phone app, and we used Microsoft Blend in conjunction with Visual Studio to develop the UIs for the application on the Windows Phone. We used a Git repository for version control on the application prototype, and used Git (which was included with Visual Studio) to develop concurrently on the application. With this approach, we could have a master branch with clean code and individual development branches to work on. The development branches could be used to work on individual screens for the application and tested in isolation to ensure the particular functionality works adequately, before being merged into the master branch as a release candidate. We also created a coding standards document to adhere to so that we could maintain a consistent coding style for the application prototype. Each developer worked on certain aspects of the prototype, with my feature being the contacts screen and contact details screen in the application. Before the event, we integrated together all of the screens that we had developed for the prototype into the master branch, in order to use the prototype for demoing purposes at the event within the exhibition space.