MSDA 9234  Web Technologies, Web Services & API development                    10 Credits

The aim of the module is to provide a foundation for building applications and services on the Java platform, using a JavaScript-based client. The module will enable students to write applications using JAVX-RS API. The web is a critically important application platform in the modern enterprise. It is essentially for any software engineer to have a good grasp of how web applications are developed and deployed.

A key to this is to understand the basic building blocks of the platform like the HTTP protocol itself and the REST (Representational State Transfer) architectural style. The module should also introduce the notion of Object-Relational Mapping (ORM). The module features a quick introduction to the Java Servlet API for basic web applications before moving on to explore the use of JAX-RS (the Java API for RESTful Web Services).

Web applications and services typically interact with databases and this module will briefly cover the use of JPA (the Java Persistence API) for this purpose. Web services have converged around the use of JSON as a data format, so the module will explore the production and consumption of JSON data streams. On the client side, the JavaScript programming language is used to create the interactivity in web applications and Ajax. As JavaScript is a full-featured programming language, with first-class functions, closures and other sophisticated mechanisms, it is explored in some details, as is its use for DOM manipulation and creating Ajax requests. Increasingly, JavaScript code on the client side utilizes some kind of MVC framework and the module will explore the use of Backbone.js for this purpose. The module will examine testing techniques and frameworks that can be used to provide test coverage for both the back end and the client. Lastly, client-side visualization techniques will be examined to present the information in a more meaningful way.

MSDA 9235 Advanced Computer Networking    10 Credits

This module builds upon the student’s knowledge of computer networks. In particular, it focuses on issues relating to network access from a hardware and software perspective. It examines network access technologies and the impact of networked applications on network performance. Covers advanced computer networking concepts: congestion control and avoidance, multimedia and QoS, queuing theory, buffer management, scheduling and fairness policies, wireless and mobile networks, service models, and network security.

MSDA 9221 Internship                                         20 Credits

The aim of this module is to provide the students with an opportunity to explore their career interests while applying knowledge and skills learned in the classroom in a work setting. The internship represents an educational strategy that links classroom learning and student interest with the acquisition of knowledge in an applied work environment. The experience also helps students increase a clearer sense of what they still need to learn and provides an opportunity to build professional networks.

The internship aims to improve the methodological knowledge and technical skills of the students to be applied in Big data analytics domains. This training is included in a defined research project topic under supervision of industrial and faculty supervisors, which allows the student to learn more on the methodological approach to answer a defined research question. The student is introduced into the techniques and supervised by experienced personnel in the working environment. At the end of the internship, a student is requested to write a short report focusing on the techniques, tools and methods learned and applied during the training. The internship can take approximately 2 months.

MSDA 9222 Thesis                                             60 Credits

The aim of this module is to enable students to develop an understanding and obtain practical experience of the research process and research skills required to undertake a supervised research project. The module creates confidence in the learners to do independent project development and management of /research work by applying the knowledge they have gained over the previous two semesters. This will allow the student to develop an understanding of the processes and skills required to undertake a supervised research project at masters’ level of study and to write a thesis. The student will have to publish the results into an international conference and journal.

Code Course Credits Module credit Contact hours SDL Total
MSDA 9111 Advanced Research Methodology 3 10 45 55 100
MSDA 9112 Philosophy of Christian Ethics 3 10 45 55 100
MSDA 9113 R. Programing for Data Science 3 10 45 55 100
MSDA 9114 Python for Data Science 3 10 45 55 100
MSDA 9231 Distributed Systems 3 10 45 55 100
  Total 15 50 225 275 500