IEMS5722 Mobile Network Programming and Distributed Server Architecture

Spring Semester, 2020 - 21


Instructor: Prof. WU Daoyuan

Email: dywu [AT]

Office Hour: 3:00pm - 4:00pm, Monday at SHB 814, or by appointment

Teaching Assistant: Mr. YI Xiao

Email: yx019 [AT]

Office Hour: 1:30pm - 2:30pm, Wednesday at SHB 826B, or by appointment

Class Time: 7:00pm - 09:30pm, Monday (see detailed dates in the schedule page)

Class Venue: Online teaching via Zoom (link available on the course Blackboard page)


  • Jan 4, 2020: The course website is online. Welcome to IEMS5722.

  • Jan 9, 2021: The course schedule and assessment scheme are updated.

Course Description

This course studies the essentials, advanced topics and emerging technologies on mobile network programming on two popular mobile platforms - Android and iOS.

Topics include the mobile programming language fundamentals, application framework, application components, network programming, multithreading and so on.

Further, different distributed server architectures and models that can offer scalability and extensibility will be highlighted.

Textbooks and Papers

No textbook. Android developer document is our most important resource.

You must be familar with Java and Python. You may use Java API document sometimes.

Learning Outcomes

At the end of the course, participants will:

  • Learn how to develop an Android app

  • Learn how to develop a server application in Python that supports the app

  • Learn how to build an instant messaging app using various components and services

Assessment Scheme

Method of Assessment Weight (%)
Attendance 10
Five Individual Assignments 4 + 10 + 10 + 12 + 14
Group Project 40