CS6301 User Interface Design Assignment 3 Designing for mobile is different from designing for a large-screen PC.  With that in mind, write a miniature contact manager.  It should have only the following fields: A.	First Name B.	Last Name C.	Phone Number D.	E-mail address When the program comes up, you should see a list of contacts.  That list should show the first and last name combined and the phone number. You should be able to scroll through the list.  There should be nothing else visible on the screen except your action bar. An add button on the action bar will bring up a separate screen to add a new contact.  When you finish adding and save, the new contact should be in the list.  The Save button can be either on the entry screen or on the action bar, your choice. This screen disappears when you save and the list shows again. All fields except the first name are optional.   Don’t do validity checking on anything.  There is no duplicate checking. Contacts are stored in a text file, not in a SQLite database.   Touching a contact selects it, at which point you can either edit or delete it. Editing is done through an action bar button.  When a contact is in “selected” state, pressing the Edit button brings up the same screen that the “add” button brings up, with the information filled in.  Saving is done through a button on the action bar or entry screen.  Changed information is reflected in the list.  This screen disappears when you save and the list shows again. Deletion is done through a button on the action bar.  Only the selected contact can be deleted.  Verify deletion rather than providing a way to undo it. The Save button described above should save contact information, either by updating a contact you selected from the list or creating a new one, depending upon program mode. You may work in groups of 2 so that someone in your group has an Android device.  You can do this with the emulator, but it is not easy.  The names of all team members must be in the source code.  Since both team members will be required to write code, the person who writes a given function must put his or her name in it.  Both team members will receive the same grade for this assignment unless they both agree in writing that one should get a different grade.  You will be required to show the application on your device to the TA and/or the instructor.  You will also be required to hand in your entire project through eLearning.  Grading: Meets the above requirements: 60% Clean, object-oriented code: 30% Program comments: 10%