Course Description
This course provides students with fundamental knowledge in software development based on service-oriented architecture. After completing this course, students can know how to classify services towards business processes; besides that, students can also program a small service-oriented-based information system, and understand types of message exchange, life cycle, performance and security of the service. Each semester, the lecturer will choose some specific topics and organize them into lecture and hands-on-practice sessions. This semester, we will organize the course into three parts. In the first part, we take one week to present some fundamental definitions of SOA and get familiar with the RESTful API through some example programs. In the second part, we will present Flask by taking a demonstration on a real-world application. We organize the third part as a self-study to present how to program APIs with Java programming language. We note that there are some prerequisites before registering and studying this course. You need to be familiar with programming languages such as Java and Python. You also need to have a good background in databases, either SQL or NoSQL.
No. of credits: 3(3,0)
Time allocation:
Theory + Practice (hours): 45
Self-study (hours): 90
📚 Textbooks
Sam Newman. Building Microservices. O'Reilly Media, Inc., 2021. [PDF]
Miguel Grinberg. Flask Web Development, Second Edition. O'Reilly Media, Inc., 2018.
Bogunuva Mohanram Balachandar. RESTful Java Web Services, Third Edition. Packt Publishing, 2017.
Nicloai M. Josuttis. SOA in Practice, First Edition. O'Reilly Media, Inc., 2007. [PDF]
Antonio Melé. Django 3 By Example. Packt Publishing, 2020. [EPUB]
👨🏫 Staffs
Phuc H. Duong, M.Sc. [Homepage]
Teaching assistants:
Nguyen Dinh Nhat Minh (B.Sc.) - nguyendinhnhatminh [at] it.tdt.edu.vn
Luu Thanh Duy (B.Sc.) - luuthanhduy [at] it.tdt.edu.vn
🧑🏼🎓 Policies
You are allowed to absent up to 3 sessions of lecture hours.
Exercises, assignment and final project must be submitted by the due date. No late submission will be accepted.
For assignment and final project, all group members must submit the work together.
About collaboration, you may discuss with other students on the review reports. However, you must write up the reports on your own independently.
You need to be honest in all academic work and understanding that failure to comply with this commitment will result in disciplinary action.
For online class sections (if any), attendance and participation are determined by active interaction in the weekly discussion forums and submission of on-class exercises/homework/assignments. Failure to complete at least 50% of the work each week will be deemed as lack of active participation in the course.
📨 Contact Info
Course homepage: https://cs504070.duonghuuphuc.com
Site Redundancy: https://cs504070.dhpit.com
Email: duonghuuphuc [at] tdtu.edu.vn