Android Applicaton Development: Mandatory assignment

This text is preliminary: I might add more requirements, hints, etc. later.

This is the mandatory assignment for the 4th semester elective course Android Application Development.

Your solutions to this assignment must be "passed" before you can attend the 4th semester elective exam.

The case: Room reservations

In a few years the all educations at ZIBAT (EASJ) will move to a new location. Here we need an system to take care of room reservations. You must make an Android based prototype of this system.

Outside each class room, meeting room, etc. there will be an Android table showing reservations etc. for the room.

Teachers, students, administrations, etc. can see room reservations etc. on their Android devices (mobile phones etc.)

Users must be able to do CUD (Create, Update and Delete) on reservations.

The back-end

I have made a simple prototype of the back-end of the system: Some REST services accessible on http://anboroomreservation.cloudapp.net/Service1.svc/

GET methods

POST methods

Add a new reservation to the back-end

http://anboroomreservation.cloudapp.net/Service1.svc/reservations

Request body format JSON
{
"RoomId": 1,
"UserId": 1,
"FromTimeString": "2016-03-02 13:00",
"ToTimeString": "2016-03-02 15:30",
"Purpose": "DSR meeting",
"DeviceId": "ksff4ld"
}

Hint: Use your browser and/or Postman to try the back-end before you use it in your application.

Hint 2: Information about DeviceId

Hint 3: DeviceId is a string "....", not an integer.

PUT methods

Updates an existing reservation

http://anboroomreservation.cloudapp.net/Service1.svc/reservations/5
Updates the reservation with id=5

Request body format JSON
{
"FromTimeString": "2016-03-15 8:20",
"Purpose": "Android lessons",
"RoomId": 1,
"ToTimeString": "2016-03-15 13:50",
"UserId": 2,
"DeviceId": "ksff4ld"

}

DELETE methods

Changing the back-end

If you want more service from the back-end you can ask for it in an email anbo@easj.dk. If I find you request relevant (and easy) I might implement it ... some day.

You are allowed to make your own back-end, but this is NOT part of the mandatory assignment.

Technical requirements

Activities

Screen size and density

Screen orientation

Lists

Gestures

Error handling

Extras