Abstract
Mobile applications are on the rise globally and Nigeria as one of the leading countries in Africa in internet and mobile phone consumption should not be left behind. Mobile phones are affordable and now come with a lot of processing power. Applications written on mobile devices can go a long way in solving some really serious problems. The objective of this paper, therefore is to showcase a mobile application in windows phone platform that loads locations of police stations close to the user through his/her GPS coordinate readings. It goes further to show the need of having Nigerians developing applications for Nigerians using tools like the Android ADT and the Endows phone SDK. Agile development methodology was used in this sample as it supports increments which makes development circle flexible and allows developers to focus on a feature at a time depending on the size of the team. It was established that having locals develop applications for their communities in most cases, lead to development of applications that are really geared towards solving users' problems.
Keywords
Windmvs phone, GPS, Android, ADT and SDK
1. Introduction
The launch of Global System for Mobile (GSM) communications in 2001 has revolutionized how Nigerians communicate it not only showed Nigerians' readiness to accept teclmology but their readiness to spend their hard-earned money on teclmology that makes their life a lot easier. It is not strange to see a Nigerian with two or more phones trying to make sure he enjoys the benefit of all service providers and OEMs (Original Equipment Manufacturer) regardless of the cost.
The burst of the mobile teclmology in Nigeria lias opened up new possibilities for services to be brought closer and faster to the users and these services to meet the ever growing consumer requirements and needs. It is no longer uncommon to see average user whip out a smart phone from his pocket and access a plethora of information consumed from big data systems. Mobile phones now have more processing power than the whole of NASA (National Aeronautics and Space Administration), OMG Facts [1], when it placed two astronauts on the moon. Modem mobile devices can process data at 1.2GHz which is faster than some early day desktop computers and laptops. What this actually means is that mobile devices now have the capacity to ran applications that can help solve complex problems we encounter every day. There is a serious lack of service delivery in Nigeria not because of the lack of accessible mobile applications but mainly because of the lack of mobile application infrastructure tailored towards providing accessible and consumable services. With almost everyone owning a mobile phone, not only can we capitalize on this to give people faster information, but it also gives the possibility for us to also get feedback on what people are saying about particular services within a very short time frame. Imagine such processing power in the pockets of so many and the ability to make life better for these people at little or no cost!
According to Rupnik, Bajee and Krisper [2], the information society is enabled by teclmology, but it is far more than just a teclmology-driven society. In a study of over 34,000 people worldwide as reported by Singer [3] browser Opera found that in some countries almost half of new Internet users use mobile devices only. From the above statistics, it is evident that the mobile applications are increasingly becoming the major source of internet connectivity and source of information.
2. Literature Review
According to Iwhiwhu et al [4], GSM lias greatly improved the socioeconomic, security and information based sectors of the economy. It is now a known fact that the world has left Nigeria behind on technology. Hacker [5] ranks Nigeria as the largest internet consuming country in Africa with a population of about 167,000,000 people, a mobile penetration of 69.01% and a 28% internet user base. It would be considered wise if we could capitalize on this medium to pass and obtain information faster.
In the opinion of Blueberry Consults Ltd [6], the "furious rate of technological change and growth in the mobile market lias made it very challenging for developers to strategically plan a bespoke project, not only from a technical standpoint, but also because the market share for smartphones is changing rapidly between different systems."
Until recently, according to Kosaraju [7], the iPhone iOS has dominated the mobile market, but Google Android lias now demonstrably overtaken iPhone in terms of market share, due partly to the power of the Google brand and partly to the platform's openness. Other mobile operating systems according to Kosaraju [7] include the Blackberry RIM OS and Windows 8.
The Federal Government of Nigeria, through the Ministry of Communications Technology and other departments and agencies of the government, according to Opara [11] "had also developed machineries and frameworks to drive this new area of growth and sustain its relevance and contributions to the economy. One of the known efforts of govermnent was the creation of incubation centers for app developers across the country."
Kosaraju [7] has predicted that three horse race of IOS, Android and Windows mobile will dominate mobile market. He predicted further that Mobile application war will heat up further. But, Gartner [9] in a recent global report revealed that consumers are increasingly turning to recoimnendation engines, friends, social networking or advertising to discover mobile applications rather than sorting through the thousands of mobile apps available. Pyramid Research [8] and Opera [11] believed that this is a new consumer trend.
Dulaney as reported by Gartner [9] and Opera [11] describes the mobile application market as "hyperactive" with more than 200 vendors developing mobile application development platforms and millions of developers using these products and open-source tools to build mobile applications. This view was supported by Lynn 17], Furthermore, Dulaney as reported in Gartner [9] stated that the bounty of good, free mobile apps has set high expectations for what should be paid for.
In today's world, according to Olofin [10] the speed of changes and emergence of novelties in the area of technology often overtake the science and development of methodologies to support changes. Mobile applications according to Olofin [10] are examples of such overtaking.
In the words of Rahul [12], a typical end-to-end mobile testing process, should start from creating test cases of the application, performing user acceptance and finally device testing stage.
3. Case Study: MobileCop
We have decided to design this application to help people who are in danger have a better chance of contacting the police to help them out or even help their neighbour out. In advanced countries, a single 911 call will do the trick but we don't have that in Nigeria, so the platform is mobile.
Input
The input of this application will be JavaScript Object Notation (JSON). JSON-LD[19] stated that JSON is a lightweight data-interchange fonnat. Jonathan Vanderoost .Net Consultant [18] affirmed that JSON is easy for humans to read and write. Furthermore, Jonathan Vanderoost .Net Consultant [18] stated that JSON is easy for machines to parse and generate. Also, Jonathan Vanderoost .Net Consultant stated that JSON is based on a subset of the JavaScript Programming Language. JSON is language independent that uses conventions which prograimners of Python, Perl, C#, C++, Java, and JavaScript are familiar with. According to Jonathan Vanderoost .Net Consultant [18], these properties make JSON an ideal data-interchange language. Due to its lightweight nature, affirms Code Mobile [13], JSON fits nicely for mobile application development because of its still little processing power compared to nonnal computers.
JSON takes on these forms:
An object and an array An object (figure 1) is an unordered set of name/value pairs. An object according to Code Mobile [12] begins with { (left brace) and ends with } (right brace). Each name in the words of Balkar [21] is followed by : (colon) and the name/value pairs are separated by , (coimna).
An array (figure 2) according to ECMA-404 The JSON Data Interchange Standard [20] is an ordered collection of values. According by ECMA-404 The JSON Data Interchange Standard [20], an array begins with [(left bracket) and ends with] (right bracket). Values are separated by , (coimna) asserted ECMA-404 The JSON Data Interchange Standard [20], An array according to ECMA-404 The JSON Data Interchange Standard [20] is an ordered collection of values. An array according to Code Mobile [12] begins with [ (left bracket) and ends with ] (right bracket). Values as stated also by Code Mobile [12] are separated by , (coimna)
Output
The output of our REST API is the JSON data we wish to consume and this comes in the following fonn:
{"location":[{"pid": "4", "longitude": "8.8359202 210 ", "latitude "7.49 74 748 750", "description "0812 9698896", "created at": "2014-02-11 3:52:43", "updated at": "0000-00-00 00:00:00", "station name"Gwarimpa"}, {"pid": "5", " longitude": "5.6518000000", "latitude": "10.32810000 00", "description"08071477282", "created at": "201 4-02-19 1 6:28:51 ", "updated at": "0000-00-00 00:00:00", "station name": "Kontagora"},{"pid": "6", " longitude":"8.0303000000", "latitude":"8.854900000 0", "description":"08026464732", "created at":"2014 -02-19 1 6:28:51 ", "updated at": "0000-00-00 00:00:00", "station name": "Kefß"},{"pid": "7", "longit ude": "8.2336000000", "latitude": "8.4313000000", "de scription"08071687282", "created at": "2014-02-19 16:31:05", "updated at": "0000-00-00 00:00:00", "station name": "Lafia"}, {"pid": "8", "longi tude "6.8548000000 ", "latitude "8.2085000000 ", "d escription "08026409 732 ", "created at": "2014-02- 1916:31:05", "updated at": "0000-00-00 00:00:00", "station name": "Kogi"},{"pid": "9", "longit ude"6.0967000000", "latitude"9.0937000000", "de scription "08071324282", "created at": "2014-02-19 16:33:45", "updated at": "0000-00-00 00:00:00", "station name"Kafanchan"}, {"pid": "10" , "longitude": "7.9864000000", "latitude": "9.46230000 00", "description"08023835632", "created at": "201 4-02-19 1 6:33:45", "updated at": "0000-00-00 00:00:00", "station name": "Bida"}], "success":1}
The final output of our data is the processed readable JSON data which we will use to attach our pushpins to Bing maps and eventually call the respective police station.
4. Methodology
Agile methodology is the choice methodology for this system since there is no telling how big it will grow and agile methodology supports incremental development. This means more features can come later without requiring any major system rebuild. The flowchart of Agile Methodology is presented in figure 3.
Incremental development
This is a form of agile development where releases are referred to as "increments" (figure 4) with each increment providing more functionality to the customers. After the first increment, a core product which wraps the whole idea is delivered, which is ready to be used by the customer. Based on customer feedback or rise of better ways of solving this problem, a plan is developed for the next increments, and modifications are made accordingly. The system is not considered delivered until the increment process is complete.
5. Tools
The following tools were used in the development of the mobile application.
* Visual studio is the native development enviromnent for developing windows phone applications.
* Windows phone SDK is the software development kit that allows us to package our applications for windows phone devices.
* REST API is meant to avoid a situation where the application lias to be updated whenever we get new data, a REST API is used to supply JSON data to our application which doesn't require us recompiling every time.
* Bing Maps SDK is used because of compatibility, being also a Microsoft product.
* GPS (Global Positioning System) will be used to load current location
* NewtonSoft.Json.dll: This is a dynamic link library that helps us serialise and de-serialise JSON data, which is what we have to the JSON we get from the REST API.
6. Work flow
The work flows of the application are detailed thus:
1. First we have to download our JSON data to our mobile device.
2. The next step is to de-serialized data.
3. Load the bing maps of our current using GPS.
4. Populating our map with JSON data locations of police stations on the map from the one closest to us on the map.
5. Allow touching of pushpin to call respective police stations.
6. Implement a phone task to call the police station closest or the one he wishes to call.
7. Implementation
This is the stage where an executable file is created. In this case it is called a xap file. This stage involves converting requirements to high level language which is then compiled into machine language thus giving birth to the required xap file.
The application will have a single interface on a map and numerous pushpins to depict numerous police stations. Figure 5 shows the stages of navigating through the application.
The first tiling we will need is the Bing maps API key which can be gotten from Microsoft [14] link, without this key we can't add our own features to the maps. After doing that we then have to reference Newtonsoft.json. This is the library that will help us process our JSON (figure 6).
To achieve this we have to consider the fact that internet and power are not on our side as Nigerians so we have to try our best to minimize how much we consume. The fact that we are not God means we are prone to mistakes so every key coimnand lias to be within a try block in case of any unhandled exception which we should be would catch in the catch block.
As shown in figure 6, when the user launches the application to trigger the code in figure 7, he/she is welcomed by Bing Maps with different police stations already pinned on the map and the users' location is also displayed.
The user can now touch the police station pushpin closest to him to trigger the code as shown in figure 8 and load the page displayed in figure 9 to dial and report an emergency or crime.
When a user touches a pushpin he/she gets to the dial screen where they can proceed with the call or cancel the operation. If a user continues the operation, it will lead to the call screen in figures 10 and 11 where the user will have a one on one communication with the police station.
After the user is done with the call he ends the call and is taken back to the home where he can close the application.
The implementation stages are made straight forward as this application is built to make the user get fast communication to the police station before situations get out of hand.
8. Conclusion and Future Work
After testing this application and seeing the positive effects it can have on its mobile based platform, we suggest the development of different mobile platforms (Android, iPhone, Java, Symbian, Meego, Cosmos) to increase coverage in future.
A mobile application will enable the public feel close to security enforcement agencies and will increase intelligence supply of the agencies as people can now give them information without fear of exposing their identities. Imagine many applications like this that are tailored to tackle our own very problems in our own unique way. Nobody knows Nigeria's problem more than Nigerians.
References
[1] OMG facts. (2014). A modem cell phone has more computer power than all of NASA back in 1969, when it placed two astronauts on the moon, online at http://www.omg-facts.com/Animals/A- modem-cell-phone-has-more-computer-po/31351 (as of 3 January 2014).
[2] Rupnik, R., Bajee, M. and Krisper, M. (2003). The Role of Mobile Applications in University Systems, online at Academia.edu/4255716/The- Role-of-Mobile_Applications-in- University_Infonnation_systems (as of 15/2/2014).
[3] Singer, Dirk (2012) "Stats that show why you need a mobile first approach now," online at http://www.sociahnediatoday.com/content/look- company-social- media-guidelines (as of 14 July 2014).
[4] Iwhiwhu, B.E., Ruleyan, J.O. and Eghwubare, A. (2010). Mobile Phones for Library Services: Prospects for Delta State University Library, Abraka, online at www.webpages.uidalio.edu/ (as of 5/5/2014).
[5] Diana Hacker (2006). A Call to Action: Regulate Use of Cell Phones on the Road. <Sample MLA formatted paper>.
[6] Blueberry Consultants Ltd (2009). Software Development For The Mobile Market, online at http://www.bbconsult.co.uk/Mobile-Web- Software-Development.aspx (as of 10/8/2014).
[7] Kosaraju, S. (2012). Upcoming Mobile Trends for 2012, online at http://www.rapidvaluesolutions.com/mobile- trends-2012/ (as of 13/8/2014).
[8] Pyramid Research (2009). The impact of mobile services in Nigeria, online at www.pyramidreasearch.com (as of 23/3/2014).
[9] Gartner [2008], Forecast: Mobile Communications Devices by Open Operating System, Worldwide, 2008-2015, online at http://www.gartner.com/resIdM619615 (as of 2/2/2014).
[10] Olofm, B.B., Ayatalumo, C., "Mobile Technologies: Adopting Application Model for Economic Productivity in Nigeria", Conference Proceedings of the 25th Nigeria Computer Society on Building a Knowledge Based Economy in Nigeria, Vol.25, pp.67-78,2014.
[11] Opara, Stanley. (2014). Consumer mobile apps market gloomy through 2018. Punch Newspaper, online at http://www.punclmg.com/business/teclmology/co nsumer-mobile-apps-market-gloomy-through- 2018/(as of 12/3/2014).
[12] Rahul E.T. (2012). Mobile Application Testing: Step-by-Step Approach, online at http://www.rapidvaluesolutions.com/mobile- application-testing-step-by-step- approach/#sthash.xwQitNoE.dpuf (as of 10/8/2014).
[13] Code Mobile (2009). "Parsing Json array windows phone," Online at http://codemobiz.blogspot.coin/2014/02/parsing- j son-array-windows-phone.hhnl (as of 12/4/2014).
[14] Microsoft (2014). Create a Bing Maps Key. Online at http://www.microsoft.com/maps/create- a-bing-maps-key.aspx (as of 20/9/2014],
[15] Fori, Barka (2014). Adding Google Hangouts to Blogger Easy as Ctrl-C and Ctrl-V. Online at http://www.codemobiz.blogspot.com (as of 24/9/2014).
[16] Karlrose. C# Winfonns WebClient.UploadQ Post and PhP. Online at www.dreamincode.net/forums/topic/83871-c%- winfonns-webcli.....Dream.In.Code (as of 26/9/2014).
[17] Lynn Jennifer (2014). Measuring Consumer Mobile Apps Success By Developers. Online at http://www.droidreport.com/measuring- consumer-mobile-apps-success-developers-8750 (as of 10/10/2014).
[18] Jonathan Vanderoost .Net Consultant, My Technical Blog online at http : //j onathanvanderoo st. com/2013/10/2 9/tip- use-j query-getj son-witli-parameter-and-mvc4/ ( as at 12/9/2014).
[19] JSON-LD. JSON tor Linking Data, online at http://json- ldctg/ (as at 12/9/2014).
[20] ECMA-404 The JSON Data Interchange Standard. Introducing JSON, online at http://json.org/ (as at 12/9/2014).
[21] Karan Balkar (2014). Parsing JSON using Qt 5 framework, online at http://karanbalkar.com/2014/02/parsing-json- using=qt-5-framework/ (as at 13/09/2014).
[22] Jonathan (2003). C# & pdfereativex, online at www. amyuni. com/ forum/ viewtopic. php?t=2 54 (as at 13/09/2014).
[23] Pablo Castilla (2014). CQRS with event sourcing using NServiceBus, Event Store, Elastic Search, AngularJS and ASP.NET MVC (part 2), online at http://pablocastilla.wordpress.com/2014/09/27/cq rs-with-event-sourcing-using-nservicebus-event- store-elastic-search-angulaijs-and-asp-net-mvc- part-2/(as at 14/09/2014).
Ogedebe, Peter1 and Makinde, Julius Adebowale2
This work was supported in part by the Department of Computing, Faculty of Computing and Applied Sciences, Baze University, Abuja, Nigeria.
Manuscript received July 24, 2014.
Ogedebe, Peter, Department of Computing, Baze University, Abuja, Nigeria.
Makinde, Julius Department of Computing, Baze University, Abuja, Nigeria .
fOgedebe, Peter obtained his Bachelor degree in Business computing from the University of Teeside, Master degree in Computer Based Information Systems from the University of Sunderland and Doctor of Philosophy degree in Information Technology from Commonwealth University. He has several years teaching experience in tertiary institutions. His research interests include: software engineering, cloud computing, Information systems and Web Development Issues.
Makinde, Julius A. is a lecturer in the Department of Computer Science at Baze University, Abuja, Nigeria. He obtained his Master degree in Information Technology from the De Montfort University, Leicester, United Kingdom in 2007. He received his HND in Electronics and Telecommunication from the Federal Polytechnic, Bida, Niger State, Nigeria in 1993. His research interests include wireless networks and cyber security.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Copyright International Journal of Advanced Computer Research Sep 2014
Abstract
Mobile applications are on the rise globally and Nigeria as one of the leading countries in Africa in Internet and mobile phone consumption should not be left behind. Mobile phones are affordable and now come with a lot of processing power. Applications written on mobile devices can go a long way in solving some really serious problems. The objective of this paper is to showcase a mobile application in windows phone platform that loads locations of police stations close to the user through his/her GPS coordinate readings. It goes further to show the need of having Nigerians developing applications for Nigerians using tools like the Android ADT and the windows phone SDK. Agile development methodology was used in this sample as it supports increments which makes development circle flexible and allows developers to focus on a feature at a time depending on the size of the team.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer