Questions & AnswersSoftware engineering

Considering that a good percentage of their employees use iPhones,...

Question
Answered step-by-step
Asked by BrigadierMoosePerson697 on coursehero.com

Considering that a good percentage of their employees use iPhones,...


Considering that a good percentage of their employees use iPhones, you are being asked to develop the same biometric attendance application for iOS using Swift.

I. Project tasks in detail:

1.    Create signup screen, where you will have some text fields for getting data from the user like name and email.  

2.    Integrate email validations user should be able to proceed further only if entered email id is valid, else you should give an appropriate error message on the screen.

3.    Create the next screen such that the user can set up his/her password.  

4.    Store data in the database after successful signup.  

5.    Show the sign-in screen to the user with two text fields , to get the mail id and password.

6.    If the credentials entered by the user match the ones he had given at signup, then they should be able to log in.  

7.    Otherwise, show an error message on the screen.  

8.    After successful sign-in, the user should land on the home screen of the app.  

9.    On the home screen, add two buttons: - 1 to check-in, and 2 to check-out.

10. Handle the following error cases:  

a.    If there is no internet  

b.    If there is no data returned from the server, instead it returns an error  

Note that both Part 1 and 2 are to be answered for this assignment.

 

Part 1


Create the app, test it on your iOS device or emulator/simulator, and take screenshots of all the screens, functionalities, and cases. (ULO 7.3, 7.4)

For check-in and checkout (I. 9):

Case 1: If the user has not registered his/her biometric, you need to show an alert asking the user to register their biometric with the app. When the biometric is registered successfully show a message that the biometric is registered successfully and save the biometric in the database.

Case 2: If the biometric is already registered, you have to ask for the biometric and when the user provides their biometric, you need to match those with the ones saved in the database.

a) If the biometric entered matches with the ones saved in the database, then check if the user is on office premises by matching the GPS location of his mobile phone with the office location. If the location matches, then you can let them check-in/out, otherwise, show an appropriate error message. You also need to save the date and time for every successful check-in/out.

b) If biometrics do not match then show an appropriate message to the user.

Case 3:  If the user already checked in/out for the day, they should not be able to check-in/out again and you need to give a proper message to the user in this case.

You may use this dummy API to get sample data: JSONPlaceholder  

Hint:

Create single-screen app, with a button on it that may be titled 'fetch data'. 
With the tap of the button, you will be making the internet connection and will be calling the dummy API given in the question above. 
Handle the following cases using Swift's error handling concept:
       - when there will be no internet connection
       - when there will be no data fetched from the internet

Part 2

Answer the following questions based on the app developed by you: (ULO 7.1)

A.   Which error handling approach you have used in the app?  

B.   What is the significance of the protocols used by you while developing the app?  

C.   Explain significance of the Generic code in your app.  

 


 

You will be assessed on:

Developing and testing the biometric attendance application. 
How to make an internet connection in an iOS application and handle exceptions. 
Explanations of the concepts used by you.

 

Submission instructions  
Submit both part 1 and part 2 in one document (MS Word or PDF). 
Share screenshots for all the test cases as evidence. 
Your submission should be between 750 to 1250 words not including references.  
APA7

 

Answer & Explanation

Solved by verified expert
Answered by clarseornino on coursehero.com

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellen

 

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, d

 

sectetur adipiscing elit. Nam lacinia pulvinar tor

  • sec
CliffsNotes Logo

Unlock access to this and over
10,000 step-by-step explanations

Unlock Explanation

Have an account? Log In

<ul><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, da</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, c</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam ris</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a mo</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapi</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, u</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie cons</li></ul><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilis</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, con</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ult</p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna</p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pel</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam ri<strong>sectetur adi</strong>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facil</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. N</p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam ris<strong>sectetur adi</strong>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molest<strong>sec</strong>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laore<strong>secte</strong>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie conseq</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vit</p><ul><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec</li><li>sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit am</li></ul><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac mag</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante,</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor si</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectu</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, c</p><p style="margin-left:0px;"> </p><p style="margin-left:0px;">sectetur ad</p><p style="margin-left:0px;">sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vita</p>

Step-by-step explanation

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur l

 

sec

sectetur adipiscing elit. Nam lac

 

sectetur adi

sectetur adipiscing elit. Nam lacinia pulvinar
sectetur adipiscing elit. Nam lacinia pulvinar to
sectetur adipiscing elit. Nam lacinia pulvinar tor
sectetur adipiscing elit. Nam lacinia pulvina

sectetur adipiscing elit. Nam la
sectetur adipiscing elit.
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus effic
sect

sectetur adipiscing elit. Nam lacini
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus e
sectetur adipiscing elit. Nam l
sectetur adipiscing elit. Nam lacinia pul
sectetur adipiscing elit. Nam lacinia pulvina
sectetur adipis
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec fa
sectetur
sect

sectetur adipiscing elit. Nam lacinia pulvinar
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec faci
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. P
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec f
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapi
sect

sectetur adipiscing elit. Nam lacini
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus effi
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque
sectetur adipiscing elit. Nam lacinia pulvinar tortor
sect
s
 

sec

sectetur adipiscing elit. Nam laci

 

sectetur adi

sectetur adipiscing elit. Nam lacinia pulvinar
sectetur adipiscing elit. Nam lacinia pulvinar tor
sectetur adipiscing elit. Nam lacinia pulvinar tortor
sectetur adipiscing elit. Nam lacinia pulvina

sectetur adipiscing elit. Nam la
sectetur adipiscing elit.
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus effic
sect

sectetur adipiscing elit. Nam lacini
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur
sectetur ad
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilis
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis.
sectetur adipiscing elit. Nam lacinia pulvinar t
sectetur adipisc
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pe
sectetur
sect

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisi
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec faci
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facil
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesqu
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisi
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapi
sectetur adipiscing elit. Nam lacinia
sectetur adipisci
sectetur adipis
sectetur adipiscing elit. Nam lacinia pulvina
sectetur
sect

sectetur adipiscing elit. Nam lacini
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus effi
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque
sectetur adipiscing elit. Nam lacinia pulvinar tortor
sect
s

sectetur adipiscing eli
sectetur adipiscing elit.
s
 

sec

sectetur adipiscing elit. Nam lacinia pu

 

sectetur adipiscing elit.

sectetur adipiscing elit
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pelle
sectetur adipiscing elit. Nam la
sectetur adipiscing elit.
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus effi
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a
sectetur adipiscing elit. N
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pell
sectetur adipiscing eli
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis.
sectetur adipisc
sectetur adi
sectetur adipis
sectetur adipiscing elit. Nam lacinia pulvinar tortor ne
sectetur
sect

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facil
sectetur adipiscing elit. Nam la
sectetur adipiscing elit.
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus effi
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec
sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus
sectetur adipiscing elit. Nam laci
sectetur adi
sectetur adipis
sectetur adipiscing elit. Na
sectetur
sect
s

 

sectetur adipis

 

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus

 

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante

 

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus

 

sectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dap

Get unstuck with a CliffsNotes subscription

Example CliffsNotes Question and Answer
Unlock every step-by-step explanation, download literature note PDFs, plus more.Get Access

Related Q&A