It is often said that there isn’t a single mobile or web application that is perfect. There are varies way in which the app might be develop. The app may be developing in door, brought off the shelf or outsourced to another company. The app can be native or web based. We look at each option in detail.
Native App -An executable program coded in the machine language of the hardware platform it is running in. A native application has been compiled into the machine language of that CPU.
1. No portability: Application can only work on one platform
2. Platform instability: Mobile platform change quickly, it requires time and investment to keep up.
3. Development cost: it takes time to change and hire skilled people to develop the app .Also to buy hardware to test the app.
4. Limited control: Cannot control the Platform. The mobile might cease to be developing because it is not popular with the mass.
1. Future proof: The web eliminates the problems associated with mobile platform instability. In a world of fragmented mobile devices and operating systems, the web is the only constant. It’s shared by all mobile platforms and operating systems, it’s not controlled by another company, and it won’t disappear in a few years. When a business builds mobile web apps, they choose a platform that will last.
2. Cross-platform: Unlike native apps, one mobile web app works across all mobile platforms and operating systems, both now and in the future. They don’t need a different mobile web app for IOS, Android, Blackberry, and Windows Phones. One mobile web app works everywhere. Additionally, even if another mobile OS becomes popular in the next few years, that same mobile web app will work on that platform as well. They work everywhere, both now and in the future.
3. Inexpensive development: If a business already develops web apps, they already have the skills necessary for mobile web app development. Unlike with native apps, mobile web apps don’t require new developers with specific skillsets. Most businesses already have the skills for cross-platform mobile web app development.
4. Simple maintenance: Since one mobile web app works on every platform, future maintenance is simple. All changes made to that single application instantly reflect across all platforms. Out of the three mobile app methods, mobile web apps require the smallest amount of ongoing maintenance.
5. Instant updates: Since mobile web apps run in a browser, and aren’t installed on the device itself, all updates instantly reflect in the application. Users don’t need to install the latest update, or do anything at all. The app instantly updates for all users.
Disadvantage of web app:
1. Moderate device integration: With the rise of HTML5, mobile web apps can access many device hardware sensors like GPS, file uploading, the accelerometer, gyroscope, and local storage. However, they do have a few limitations. As of now, mobile web apps still cannot access the device’s camera, microphone, or contact list.
2. Limited graphics: While mobile web apps are perfectly suited for displaying most every type of content, they do not handle heavy graphics as seamlessly as native apps. For that reason, any company requiring game-like graphics in their mobile apps should stick with the native approach.
Commercial Software vs. In House Development
Commercial Software: Pre-written or COTS software that is written and update by a vendor.
Advantage of Commercial Software:
1) Development cost shared by users, so software costs less.
2) Features you might not know you need are included. This is especially important if you really don't know the business you’re in. If you want to start retail store and you don't know anything about the retail business, your first purchase may be a good Point-of-Sale package to help you serve your customers, capture your sales, and maintain an accurate record of inventory.
3) Software is more reliable because more users equal less bugs. This of course assumes a mature package; it doesn't apply if you are one of the first users of the package.
4) Software is available right away because it is already written.
Disadvantage of Commercial Software:
2) You need to adjust your workflow and processes to match the software.
3) Updates are on the vendors schedule not your schedule.
4) If you have customized your COTS software and the vendor stops support for the version you are using you may have to pay for some or all of the customizations again.
5) Software targets only the platform that the vendor picks.
6) Software has a bunch of features you don't need and don't want. COTS software has to be designed to work with lots of businesses, not just yours. This extra code adds extra bugs and frequently more complex configuration to the software. One thing for sure, whether you use it or not, you pay for In-House Development- Software that is develop by the company
Advantages in House Development:
1) Development teams are very close to the end user, resulting in a high quality product for the end user. A lot of "the fat" can be cut by a few phone calls to key users. This results in a much greater “specialized” application.
2) Relationships between the development team and the user base can be built, which aids in both communication and expectations on delivery.
3) Business knowledge of the developers’ increases, reducing the time required for
Specification and design, as knowledge of the problem domain is pre-existing.
Disadvantages of in House Development:
1) Heavy investment required by the company. This does not also provide "income" as such. Return of Investment (ROI) is provided by increased efficiency and productivity, quality and so on, this is very difficult to measure, and can be difficult for some management teams to view as ROI.
2) Lack of portability of software could be an issue if the company later decides to sell the application to another business. If the original specification does not have this requirement in, the application may be so tightly coupled with the company identity; it is too difficult to move elsewhere, which could further reduce the possible ROI.
Conclusion: The development of the app should be in house due to the special Requirement of the app. It also should be built using web technology because of the amount different mobile devices we are targeting.
Development of this type of platform based software in house will require a certain level of skilled personals and powerful hardware that might not be able to find locally. Currently we have a system admin, web developer and network admin. We will need to acquire and hire network specialist, junior and senior programmer in mobile application, UX interface designer, mobile specialists and graphics designer. The way in which we plan to acquire these people is through job advertisement through different medium such as website and newspaper.
We will need powerful servers such as the Dell PowerEdge 2950, Hardware firewalls, switch and a fiber optics connection to the location where the server will be stored. To acquire these servers we have to order them from overseas company and estimate the capacity of user. The internet connection will be provided by one of the few internet providers Jamaica has, we are considering flow. Flow has the fastest internet speed at 100Mbps business, this will sufficient for the amount of users we are expecting at time. We also will take internet from LIME as backup internet connection if flow fails.
All requirements will be gathered from three (3) sources: The bookstore (through the use of interviews and questionnaires), university students and universities (through interviews and questionnaires) and through third party mediums (internet, library, newspaper etc.).The teams will also be in constant communication with book stores and libraries to understand their policies. The reason the team has chosen these tools is because they allow for a robust research technique that offers the best results at the cheapest cost, these results also will have the ability to be quantified and justified.
When it comes to development of this application we can develop it in house, outsource it from a foreign entity or neither if doesn’t worth the time or effort. Let’s look at the advantage and disadvantage of each.
lot of things that go into the process, such as analyzing requirements, gathering, programming, designing, implementing, testing, user training and maintenance).
Conclusion: As stated in the Strategic direction that best plan is build the app in house and also to build it as web app. Building the app in house will allow for new features to be added to the app more quickly and allow for less people to know how the system work, which will improve security. This will also give the engineer experiences in development and in the near future will able to offer customize features to business clients. Due to the diverse amount of smartphone the general public have, a web app will be able to reach more people.
This will ensure that mobile players, plans, processes, and Partners are defined and working together to execute the mobile strategy.
The company will have to inform all major stakeholders about the plans for the application. This will allow the company to gather all the necessary information and input from key figure that help to push the app to success. This process will allow for any future problems to arise and also might give rise to features the company might have missed. This will also allow for any stakeholders to get understanding of app being develop.
The application will be dealing with money; the company will have to ensure all transaction is legal. The company will have built a policy that will take in account the security of the user financial detail. The company will have to be register with the required financial institutions to ensure to safety. The company will also have to ensure the distributors are trust worth.
This will involve the inclusion of stakeholders and the utilization of a pilot or focus group to continuously test the application. Furthermore, it will involve the promotion of the application via e-marketing, universities and schools across the island .Application growth will monitored by a select management team who will over periods two 1 year , every 6 evaluate the application and define new directions if necessary for its ultimate success. Finally, together, the contents of this document describe the approach to achieve mobile governance as creating a mobile strategy is an important step in achieving such.