Discuss the selection of mobile browser models

Assignment Help Basic Computer Science
Reference no: EM132363307

Mobile client/server application

Objectives

This assessment item relates to the learning outcome 1, 2, 3 and 4. More specifically to design and implement a complex mobile application.
The objective of this assignment is for students to:

Develop, test and maintain a mobile internet application using an integrated suite of mobile software development tools. More specifically on the client side jQuery Mobile, JavaScript and HTML5 and CSS are used. On the server side we use JavaScript and the node server with various node packages. The Mongo database is used as a data store and that data is also stored locally on the mobile device. Using JavaScript store data in a mongdb database in a mongoDB Atlas cloud server using node express middleware.

Introduction

You are assigned the task of creating a data logger to capture experimental data in a mobile application that stores data in a local database. The app has fields to record scientific data for each of five species of chicken. If a chicken species is selected, a page is shown to record data values for that species. A chicken entry consists of a date and log data. When the Save Log Entry button is pressed these values are saved locally in the devices' localStorage. When the Show Log Entries button is pressed a related page is shown that lists all the date/time and chicken entries. More details of these pages will be given in the sections below.

We will refer to our app as chickenLogs. The specification of this app extends that given in Assignment 1. This app is to be tested using the Safari, FireFox or Chrome browser and tested on an Android or iPhone mobile device.

Client Side HTML / CSS / JavaScript Mobile Application

You are to implement this app using HTML5, CSS and JQuery Mobile. The app is used by a chicken farmer who the five varieties of chicken on his farm. A number of individual chickens exist for each species and an ID number is used to identify these. For each individual chicken the farmer wishes to record data that can be used to determine how well that chicken performs compared to others.

Images for the page/views required to implement the assignment were given in assignment 1 and are further refined in the following figures. Please note that the illustrations are for reference only, and your actual pages will be based on the CSS style-guide in use on your actual mobile device.

Home page view
The home page view is the same as in assignment 1.
Chickens view
The pages for entering the treatment data are all the same as in assignment 1 and so are not discussed further.
Chicken logs view
When the Show logs button in the treatment's page header is pressed the current date/time should be added to the data structure used to store the chicken log values being recorded, as in assignment 1. The log entries are saved in the device's localStorage. The chicken logs page is shown with all the locally saved logs listed, as shown in Fig. 1. Note the view now has a Get Logs button on the left of the header bar.

Send button
When the Send... button is tapped all the chicken logs for the treatment are sent to the local server (and saved in the file logs/logs.dat. The chicken data is also saved to the cloud mongoDB Atlas database set up for this purpose. You should provide a success or failure alert. In the success alert, show the data that has been sent. When a response is received another alert should indicate success or failure. When a chicken's logs have been sent the chicken's local logs should be cleared from localStorage so that the chicken's page will not show the sent logs.

If the Yes button is pressed the Send logs dialog shown in Fig. 2 is presented and we return the chicken view. If the No button is tapped thent return to the chicken's view page.

Get logs button
The Get logs button is used to search the mongoDB Atlas database for all database entries that match the chicken variety (FOGHORN in the figure). The entries returned are shown on a new page as shown in Figure 3. The entries are to be shown below the Cloud chicken log entries: label as shown in the figure 3(attached). Again appropriate alerts need to be made when the request is sent and when a response is received.

Server Side: node+packages and JavaScript server script
Our user data scheme has the following fields:

• chicken - one of {FOGHORN, LEGHORN, TWEETY, HAWK, BERTHA}
• date -date and time stamp of log
• latitude -latitude of log
• longitude -longitude of log
• chicken_id - chicken ID
• weight - measured weight of chicken
• eggs - number of eggs collected
• grain - grain consumption
• condition - condition of chicken

This data is to be stored in the mongoDB Atlas database in a chickenLogs collection. Entries are also to be echoed (written) to a file in the ./logs directory of the local server in a file called logs.dat.

The server will have the following URL that provides requested services. The URL is based on
https://your.IP.address/chicken/user/.

Your web service API will support these actions:

search/:query- searches for users in the mongoDB Atlas database and returns all logs with that
:query value. :query will be one of the chicken types {FOGHORN, LEGHORN, TWEETY, HAWK or BERTHA} to search for.

:chicken/log - appends the chicken entry to the local server file ./logs/logs.dat and to the mongoDB Atlas chickenLog mongdb databases chickenLogs collection.

Fig. 4 (attached) shows the message streams in the application. Ideally the mobile device POST's requests to the WWW and receives responses from the WWW. The node server listens for requests on a port. The requests data will be routed to the local mongdb database at mongoDB Atlas. Requests for the information in the mongdb database would be returned to the node server for POST'ing back to the mobile device. The server should produce meaningful output each time a request is received or sent.

Your treatments node server code will consist of a number of files; server.js will contain your business logic, common.js and config.js contains common utility functions and network configuration information. The server.js file will use express middleware to create a server and router to route the web service API to the handler code that writes the JASON data to your mongoDB Atlas database, and returns data from this database to the mobile device. A sample of the kind of responses the server should produce is given in fig. 5 (attached)

Required Documentation

You are also to prepare a Word document. Your word document should include an appropriate title page. Your word document should have sections that address the commentary, hardware and software requirements and the financial analysis given below

Plan for a Testing Strategy for your Mobile Web Site

Your document should:
• Review the list of mobile devices, browsers and networks targeted for the mobile web site.

• Discuss the selection of mobile browser models, mobile OS's and device manufacturers for your testing process
• Discuss whether testing is required on actual devices and what part emulators/simulators and desktop browsers can play in this process

Financial Case & Commentary of Application Features

Your document should:
• List the features you successfully implemented and those you were unable to successfully implement; you should describe the problem in a few sentences and also briefly describe anything you attempted to do to get it to work. Your approach to identifying and attempting to fix these bugs may gain you some partial credit for those features you were unable to implement.
• A description of any additional functionality you believe would be useful to add to this Website should be included. Explain what the features are and how they would help to improve the Website.
• Are there any ethical considerations in making this kind of service available?
• Discuss the economic/financial case for the proposed system.
Assume this simple exercise leads you to consider developing a fully-fledged chickenLogs application (that is generalised to handle any kind of log data) with increased functionality. Assume you model 3 cases; one with 10 users, one with 1,000 users and one with 10,000 users.
- Assume staff development time is costed at $100/hour. Given how long it has taken you to develop this exercise what do you estimate technical development costs to be in hours? What are the development costs for the 3 models, assuming development time increase by 50% for each of the scenarios?
- Database storage costs. If you use the mongdb atlas service to store chickenLogs entries, how much would this cost for your proposed user base, assuming 10 entries per month per employee?
- Discuss your marketing campaign for each of the three cases and estimate a cost for each of these.
- When do you estimate you break even (costs=revenue) in the 3 scenarios? Comment on the results of this analysis.

Attachment:- Mobile client - server application.rar

Reference no: EM132363307

Questions Cloud

A cpa may perform all of following services for different : When performing an audit of property plant and equipment there are inherent risks to consider. Which of the following is one of those risks?
What is the present value of these cash inflows : The present value of an annuity of $1 at 8% has a factor for 3 periods of 2.577097; for 5 periods at 8% the factor is 3.992710.
Criminal justice system and international justice system : Explain the differences between a comparative criminal justice system and international justice system and how they are applied.
What fund journal entries would be made for this transaction : The first $30,000 installment will be due from property owners six months after the initial bond issuance. The bonds are secondarily backed by the city.
Discuss the selection of mobile browser models : Assignment - Mobile client/server application - Review the list of mobile devices, browsers and networks targeted for the mobile web site
How much will mahmets employer with hold in social security : Mahmet earned wages of $118,700 during 2016. He is single and claims two withholding allowances. How much will Mahmet's employer withhold in social security tax
Determine the payback period using the accumulated : Fanning Company has an opportunity to purchase a forklift to use in its heavy equipment rental business. The forklift would be leased on an annual basis.
Determine the amount distributed to each class : Stockholders' equity of Ernst Company consists of 89,000 shares of $5 par value, 9% cumulative preferred stock and 325,000 shares of $1 par value common stock.
Prepare the journal entry to record tamas companys issuance : Prepare the journal entry to record Tamas Company's issuance of 5,900 shares of $100 par value, 7% cumulative preferred stock for $105 cash per share.

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Create implementation plan to analyze options

Boardman plans to hire Smith Systems Consulting to help them analyze their options and to create the implementation plan.

  How can we distinguish good sources of information on web

How can we distinguish good sources of information on the web? What gives certain sites more credibility than others?

  What are the ethical issues raised by this procedure

Compare your reactions to that procedure with your reactions to an analogous one in which people are given false feedback that they possess a very favorable personality trait or a very high ability level.

  Conduct literature review in enterprise risk management

Conduct a literature review on Enterprise Risk Management and challenges faced by the organization using and developing risk management frameworks.

  Private network in a company

Assume we have an isolated link (not connected to any other link) such as a private network in a company. Do we still need addresses in both network layer and data link layer? Explain.

  Types of bankruptcy and define each

1. What is bankruptcy? Name the various types of bankruptcy and define each.

  Provide two examples of possible adversarial attacks

Can someone provide two examples of possible adversarial attacks involving Intelligent Virtual Assistant that may target or involve data confidentiality

  Number on the second card

A deck of 5 cards (each carrying a distinct number from 1 to 5) is shuffled thoroughly. Two cards are then removed one at a time from the deck. What is the probability that the two cards are selected with the number on the first card being one hig..

  Regarding health insurance plans

Various programs provide free or low-cost coverage to millions of families with limited income. Develop a scenario in which an individual or family.

  Winfield transportation system

Winfield is a small city with a population of 22,000. Until now, Winfield was served by a bus route from a nearby city.

  Determine the recommended graphics quality

Assignment - Computer Hardware Project. Determine the recommended graphics quality that the hardware can support

  In the early days of information systems

In the early days of information systems, the IT department controlled all of the components of the system from data retrieval to processing to reporting. Today, the IT department is being directed to do the same tasks, but uses devices that are mobi..

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd