Back to Main
Projects & Publications
Feature of the week
Looking for New Students

Resources and links



  1. Marwah Hemdi (MSc 2016)
  2. Oluwabunmi Adewoyin (PhD 2016)
  3. Samiul Monir (MSc 2016)
  5. Yaowen Chen (MSc 2016) Comparison of Graph Databases and Relational Databases When Handling Large-Scale Social Data
  6. Khaled Haggag (MSc 2016) Design of a New Messaging System for use in the Mobile Space with the IOT protocol CoAP
  7. Nan Chen (MSc 2016) Bluetooth Low Energy Based CoAP Communication in IoT CoAPNonIP: An Architecture Grants CoAP in Wireless Personal Area Network
  8. Nam Hoang (MSc 2016) Graphy: Exploring the potential of the Contacts application
  9. Sara Mansouri (MSc 2016) Exporing the Influence of Different Factors in Designing a Gamified Online Community for Girls
  10. Wesley Waldner (MSc 2015) Presenting tiered recommendations in social activity streams 
  11. Mohsen Mokhami (MSc 2015) Dynamic Credibility Threshold Assignment in Trust and Reputation Mechanisms Using PID Controller 
  13. Milan Bogunovic (MSc 2015) Comparative analysis of PropertyFirst vs. EntityFirst modeling approaches in graph databases 
  14. Wen Fu (MSc 2014) Data Synchronization in a Network-Volatile Mobile Ecosystem 
  15. Sinh Pham (MSc 2014) Key-value storage system synchronization in peer-to-peer environments 
  17. Sayooran Nagulendra (MSc 2014) Providing awareness, explanation and control of personalized stream filtering in a P2P social network 
  20. Hashim Al-Adhami (Msc 2013) NoSQL Data Stores In Publish/Subscribe-Based RESTful Web Services
  22. Flaivio Ishii (MSc 2013) PURIC: A Multimedia Uniform Resource Identifier Management System
  23. Dong Liu (PhD 2013) RESTful Service Composition
  24. Sunny Sharma (M.Sc. 2013) Enterprise Resource Bus and Views in Restful Web Services
  26. Xiaobo Zhang (M.Sc.2012) N-Screen Application Framework
  27. Yiding Chai (M.Sc. 2012) A General Framework for Motion Sensor Based Web Services
  30. Shomoyita Jamal (M.Sc. 2012) Combining caching with a cloud hosted proxy to support mobile consumers of RESTful services
  32. Sabrina Nusrat (M.Sc. 2012) Recommending Services in a Differentiated Trust-Based User Modeling System
  33. Daniel Merino (M.Sc. 2012) Dependable IPTV Hosting
  34. Nicoleta Brad (M.Sc. 2012) Data De-Duplication in NoSQL Databases
  35. Richard Lomotey (M.Sc. 2012) Enabling Mobile Devices to Host Consumers and Providers of Restful Web Services
  36. Shi Shi (M.Sc. 2011) Keeping up with the information glut by visualizing patterns of posting by friends on Facebook
  37. Dmytro Dyachuk (Ph.D. 2011) Ensuring Service Level Agreements for Composite Services by Means of Request Scheduling
  38. Zachary Harrington (M.Sc. 2011) Influencing the run-time behaviour of complex services using contexts
  39. Quian (Andy) Wang (M.Sc.2011) Mobile cloud computing
  40. Yuan Wang (M.Sc. 2010) SocConnect : a social networking aggregator and recommender
  41. Yao Wang (Ph.D. 2010) Trust and Reputation Management in Decentralized Systems
  42. Radhika Ramasahayam (M.Sc. 2010) Moving Social Networking Applications into the Cloud
  43. Kadhambari Raghavun (M.Sc. 2010) Visualizing Reciprocity in an Online Community to Motivate Participation
  44. Manju Shree Chava (M.Sc. 2010) Designing a User Configurable Online Community Framework
  45. Indratmo (Ph.D. 2010) Supporting Exploratory Browsing with Visualization of Social Interaction History
  46. Yuting (Tracy) Luo (M.Sc. 2009) Using cooperation to improve the experience of web services consumers
  47. Kamal Elbashir (M.Sc.2009) A cache framework for nomadic clients of web services
  48. Sazedul Alam (M.Sc. 2009) Fault management of web services
  49. Zina Sahib (M.Sc. 2009) WISETales: Designing a New Niche Online Community for Women in Science and Engineering to Share Personal Stories
  50. Tariq Muhammad (M.Sc. 2009) Polices for distributed user modeling in online communities
  51. Yuxuan Meng (M.Sc. 2008) The Runtime Behavior of Composite SOAP Web Services under Transient Loads
  52. Adnan Fida (M.Sc. 2008) Workflow Scheduling For Service Oriented Cloud Computing
  53. Karolina Zurowska (M.Sc. 2008) Model Aware Execution of Composite Web Services
  54. Yan Mao (M.Sc. 2008) Use Multiple Modeling Approaches To Study Sustained Online Communities
  55. Andrew Webster (M.Sc. 2007) Visible Relations in Online Communities: Modeling and Using Social Networks
  56. Svetlana Slavova (M.Sc.2007) Dynamic Selection Of Redundant Web Services
  57. Xin Liu (M.Sc. 2007) Model-Driven Dual Caching For Nomadic Service-Oriented Architecture Clients
  58. Pinata Winoto (Ph.D. 2007) Modified Bargaining Protocols for Automated Negotiation in Open Multi-agent Systems
  59. Nyik San Ting (M.Sc. 2006) Simulating Peer-to-Peer Networks
  60. Weidong Han (M.Sc. 2006) Integrating Pe-to-Peer Into Web Services
  61. Ran Cheng (M.Sc. 2005) User Motivation Mechanism for Building Sustained Online Communities
  62. Julian Day (M.Sc. 2005) A Framework for Autonomic Web Service Selection
  63. Lingling Sun (M.Sc. 2005) Motivational Visualization for Resource-Sharing Online Communities
  64. Chris Brooks (M.Sc. 2005) Supporting Learning Object Versioning
  65. Yamini Upadrashta (M.Sc. 2005) Semantic Social Routing In Gnutella
  66. Xiaolin Niu (M.Sc. 2004) Purpose-Based User Modelin in a Multiagent Investment Portfolio Management System Lichun Ji (M.Sc. 2004) Coordination and P2P Computing
  67. Jeremy Pfeiffer (M.Sc. 2004) JOLTS: Checkpointing and Coordinating in Grid systems
  68. Peng Xu (M.Sc. 2004) ??
  69. Emir Halepovic (M.Sc. 2004) Performance Evaluation and Benchmarking of the JXTA Peer-To-Peer Platform
  70. Shubhash Vasti (M.Sc. 2004) ??
  71. Golha Sharifi (M.Sc. 2004) Seamless Communication and Access to Information for Mobile Users in a Wireless Environment
  72. Alan Fedoruk (M.Sc. 2002) Agent Replication in Multi-Agent Systems
  73. Silvia Breban (M.Sc. 2002) Long Term Coalitions for the Electronic Marketplace
  74. Chhaya Mudgal (M.Sc. 2000) Negotiation in Multi-agent Systems: A Decision Theoretic Approach

ABSTRACTS and LINKS to PDF of THESES (ONLY THOSE DEFENDED BEFORE 2007, the rest are directly available from the links above)

M.Sc. Thesis: Simulating Peer to peer Networks

Nyik San Ting


Peer-to-Peer (P2P) systems are emerging as a new form of distributed computing with a strong emphasis on self-organization, decentralization, and autonomy of the participating nodes. The characteristics of self-organization, autonomy, and decentralization allow for highly adaptive, robust, and scalable networks, making P2P an increasingly interesting way to design distributed systems.
Since the deployment of P2P systems involves significant resources, e.g., hundreds of hosts and users, it is often not possible to run realistic tests prior to the rollout of the system. Consequently, simulation is the only realistic approach for testing or predicting the behavior of large P2P networks. However, the majority of the existing simulators tend to provide limited flexibility in simulating the details of the users, application, protocol, and physical network.

In this research, the impact of user behavior, protocol, and physical network characteristic on the overall P2P system are being observed. The aim is to investigate the importance of simulating P2P systems in such detail.

Defended: August 16, 2006

More information and Download the Thesis

M.Sc. Thesis: Integrating Peer-to-Peer into Web Services

Weidong Han


The Service Oriented Architecture (SOA) is emerging as a new standard for building large loosely coupled systems. Web Services, the dominant implementation platform for SOA, use a server-centric approach to manage all components. This limits the deployment of Web Services to static domains, since a service invocation will fail if the server component changes its availability or location.
This research focuses on the possibilities of integrating P2P technology into the Web Services environment as a means of increasing its robustness. A P2P-Web Services architecture is presented that enables service discovery and service invocations in dynamic environments. The corresponding experiments on the reference system and the simulation system present the characteristics and improvements of the hybrid system.

Defended: August 16, 2006

More information and Download the Thesis


Ran Cheng


The proliferation of online communities on the Internet nowadays may lead people to the conclusion that the development of custom-made communities for particular purpose is straightforward. Unfortunately, this is not the case. Although software providing basic community infrastructure is readily available, it is not enough to ensure that the online community will “take off” and become sustained. Most online communities suffer from the scarcity of the user participation in their initial phase. To address the problem, this thesis proposes a motivational mechanism to encourage user participation. The main idea is to introduce a set of hierarchical memberships into online communities and reward active users with better quality of services. The mechanism has been applied in a small-scale online community called Comtella and evaluated. The results showed that, although the mechanism was able to motivate users to participate more actively and make more contributions, it led to a deteriorating quality of user contributions, catalyzed “information overload” in the community and resulted in a decrease in user participation towards the end of the study.
Therefore, to regulate the quality and the quantity of user contributions and ensure a sustainable level of user participation in the online community, the proposed mechanism was improved so that it was able to adapt the rewards for particular forms of participation for individual users depending on their reputation and the current need of the community, thereby influencing their actions of contributing. The improved mechanism was also implemented and evaluated in the Comtella system. The results of evaluation showed that the mechanism can guarantee stable and active user participation and lower the level of information overload in the online community and therefore it can enhance the sustainability of the community.

Defended: September 15, 2005

More information and Download the Thesis


Julian Day


Web services are a form of distributed computing. As applications accessible over standard internet protocols, web services allow access to disparate computational resources. Recently, with an increased commoditization of web services, there has been a greater interest in the problem of selection. If a web service client can be configured to use one of a number of different web services, which should it select? In this thesis, an approach based on examining the past quality of service (QoS) parameters of similar clients is presented. Standard web service clients are augmented to report their experiences, and can reason over both these and the experiences of others using a number of formal techniques, thereby arriving at an informed decision.

Date defended: August 15, 2005

Supervisor: Ralph Deters

More information and download document



Lingling Sun

As online applications such as online newsgroups, internet game-rooms, online chat-rooms, and peer-to-peer (P2P) resources-sharing systems become popular, online community visualization became a hot research topic. Different forms and metaphors of visualizations focused on various aspects of online communities have been proposed. In this thesis, I propose one prototype of online community visualization which is designed to motivate user contributions in various aspects and stimulate users to participate in the online community more actively. The uneven participation is a well known problem in human society; according to the 80-20 rule, 20% of the people make 80% of contributions, for example, 20% of the employees in a company do 80% of the work. This problem exits in all kinds of online communities, e.g. newsgroups, chat-rooms, but it is particularly crucial for P2P online resources-sharing communities. Such communities do not have a central server and rely solely on the peers not just to provide contributions, but also to ensure the infrastructure. Large P2P file-sharing communities like KaZaA and Limewire can provide the redundancy of peers and resources needed to support the infrastructure and availability of resources. However, when an online community is small, for example, the students in a class, a research group, a department, or a school, the problem of lack of users it is hard to reach a “critical mass” of user participation, leading to poor service and resource availability, which reduces users’ interest in participating in the system.
To attract users and motivate them to make more contributions into an online resources-sharing community, I propose to use motivational visualization of the community and the contributions of its members. The motivational effect of the visualization is grounded on two theories in social psychology which explain how individuals align their behaviour with each other and with their group (community). In this thesis, I discuss three stages in the design of the visualization and the subsequent redesigns following results from evaluation and user feedback.

Date defended: May 31, 2005

Supervisor: Julita Vassileva

More information and download document


Chris Brooks

Abstract: A current popular paradigm in e-learning is that of the "learning object". Broadly defined, a learning object is a reusable piece of educational material intended to be strung together with other learning objects to form larger educational units such as activities, lessons, or whole courses. This aggregating of learning objects together is a recursive process - small objects can be combined to form medium sized objects, medium sized objects can be combined to form large objects, and so on. Once objects have been combined appropriately, they are generally serialized into content packages, and deployed into an online course for delivery to learners. Learning objects are often stored in distributed and decentralized repositories throughout the Internet. This provides unique challenges when managing the history of such an object, as traditional versioning techniques (e.g. CVS, RCS, etc.) rely on centralized management. These challenges have been largely ignored by the educational technology community, but are becoming more important as sharing of learning objects increases. This thesis explores these issues by providing a formal version model for learning objects, a set of data bindings for this model, and a prototype authoring environment which implements these bindings. In addition, the work explores the potential benefits of version control by implementing a visualization of a learning object revision tree. This visualization includes the relationship between objects and their aggregates, the structural history of an object, and the semantic changes that an object has undergone.

Defended: February 21, 2005

Supervisors: John Cooke and Julita Vassileva

More Information and Download Document


Yamini Upadrashta

Abstract: The objective of this project is to improve the performance of the Gnutella peer-to-peer protocol (version 0.4) by introducing a semantic-social routing model and several categories of interest. The Gnutella protocol requires peers to broadcast messages to their neighbours when they search files. The message passing generates a lot of traffic in the network, which degrades the quality of service. We propose using social networks to optimize the speed of search and to improve the quality of service in a Gnutella based peer-to-peer environment. Each peer creates and updates a "friends list" from its past experience, for each category of interest. Once peers generate their friends lists, they use these lists to semantically route queries in the network. Search messages in a given category are mainly sent to "friends" who have been useful in the past in finding files in the same category. This helps to reduce the search time and to decrease the network traffic by minimizing the number of messages circulating in the system as compared to standard Gnutella. This project will demonstrate by simulating a peer-to-peer type of environment with the JADE multi-agent system platform that by learning other peers' interests, building and exploiting their social networks (friends lists) to route queries semantically, peers can get more relevant resources faster and with less traffic generated, i.e. that the performance of the Gnutella system can be improved.

Defended: January 28, 2005

Supervisors: Julita Vassileva and Winfried Grassmann

More Information and Download Document


Xiaolin Niu

Abstract: A user model is needed when a system is supposed to automatically adapt to the requirements of the current user. In order to build this model, an agent needs information from various sources. Traditional user modelling focuses on collecting data from one or more sources and maintaining a single global description of a user. However, in a decentralized multi-agent based software environment, it often doesn't make sense to try to integrate information from many sources, since valuable context information will be lost. Therefore the central global model is replaced by user model fragments, developed by the various software agents populating the environment for particular purposes. The focus of user modelling thus shifts from the collecting at one place as many data about a user as possible to collecting on demand whatever user information is available at this moment and interpreting it for a particular purpose. This new focus is called active user modelling.
This thesis presents a purpose-based approach to the active user modelling, which aims to create a generic procedural representation of purposes for user modelling. A taxonomy of purposes is created and organized on different levels of generality and associated with routines for retrieval and integration of user modelling data. These procedures are retrieved and executed by distributed components (agents), as they are needed to compute user models just in time for a purpose in hand. The purposes also can be regarded as clichés, which can be re-used in different ways, for example, generalization or specialization of a purpose by inheritance; sharing one common sub-purpose among several purposes; or adapting a purpose for use in a new domain. This purpose-based approach is demonstrated in a multi-agent portfolio management system.
We conduct experiments that demonstrate that the proposed purpose-based approach is feasible and there is a methodology of systematic development of purposes through organizing them in hierarchies that allow for reuse. The experiments are carried out in a simulation environment which allows the creation of agents with various capabilities and constraints.
The experiments results show that with the availability of more resources (more agents in the system and more time to execute more purposes), the quality of adaptation (in this case matching users with expert-investors) improves. These results help to establish a performance baseline for the system and to discover the influence of environmental factors on the system and possible measures.

Defended: December 10, 2004

Supervisors: Julita Vassileva and Gord McCalla

MSc. Thesis: Coordination and P2P Computing

Lichun Ji


Peer-to-Peer (P2P) refers to a class of systems and/or applications that use distributed resources in a decentralized and autonomous manner to achieve a goal. A number of successful applications, like BitTorrent (for file and content sharing) and SETI@Home (for distributed computing) have demonstrated the feasibility of this approach.
As a new form of distributed computing, P2P computing has the same coordination problems as other forms of distributed computing. Coordination has been considered an important issue in distributed computing for a long time and many coordination models and languages have been developed.

This research focuses on how to solve coordination problems in P2P computing. In particular, it is to provide a seamless P2P computing environment so that the migration of computation components is transparent. This research extends Manifold, an event-driven coordination model, to meet P2P computing requirements and integrates the P2P-Manifold model into an existing platform. The integration hides the complexity of the coordination model and makes the model easy to use.

Defended: September 9, 2004

Supervisor: Ralph Deters

More Information and Dowload of Thesis

MSc. Thesis: JOLTS: Checkpointing and Coordination in Grid Systems

Jeremy Pfeiffer

Abstract: The need for increased computational power is growing faster than our ability to produce faster computers. Already researchers are proposing systems that require peta-flop capable super computers, a far cry from what is currently capable. To meet such high computational requirements, networks of computers will be required. While it is possible to network together computers to achieve a single task, making that network more flexible to handle a multitude of different tasks is the promise of grid computing.
Grid systems are slowly appearing that are designed to run many independent tasks, and provide the ability for programs to migrate between machines before completion. However, these systems lack coordination capabilities. Many grid systems/environments allow multiple tasks to communicate/coordinate with each other based on various paradigms, but don't provide migration capabilities.

This thesis proposes a system, called JOLTS, that attempts to fill a gap by providing both checkpointing and coordination capabilities. The coordination model offered by JOLTS is based on the Objective Linda coordination language, with some additions. This thesis will show that the object space model is an effective form of coordination and communication, and can effectively be combined with checkpointing capabilities inside the same grid system.

Defended: August 16, 2004

Supervisor: Ralph Deters

More Information and Download Document

MSc. Thesis:

Peng Xu


Defended: August 12, 2004

Supervisor: Ralph Deters

MSc. Thesis: Performance Evaluation and Benchmarking of the JXTA Peer-To-Peer Platform

Emir Halepovic

Abstract: Peer-to-peer (P2P) systems are a relatively new addition to the large area of distributed computer systems. The emphasis on sharing resources, self-organization and use of discovery mechanisms sets the P2P systems apart from other forms of distributed computing.
Project JXTA is the first P2P application development platform, consisting of standard protocols, programming tools and multi-language implementations. A JXTA peer network is a complex overlay, constructed on top of the physical network, with its own identification scheme and routing.

This thesis investigates the performance of JXTA using benchmarking. The presented work includes the development of the JXTA Performance Model and Benchmark Suite, as well as the collection and analysis of the performance results. By evaluating three major versions of the protocol implementations in a variety of configurations, the performance characteristics, limitations, bottlenecks and trade-offs are observed and discussed.

It is shown that the complexity of JXTA allows many factors to affect its performance and that several JXTA components exhibit unintuitive and unexpected behavior. However, the results also reveal the ways to maximize the performance of the deployed and newly designed systems.

The evolution of JXTA through several versions shows some notable improvements, especially in search and discovery models and added messaging components, which make JXTA a promising member of the future generation of computer systems.

Defended: August 5, 2004

Supervisor: Ralph Deters

More Information and Download Document

MSc. Thesis:

Shubhash Vasti



Supervisor: Ralph Deters

MSc. Thesis: Seamless Communication and Access to Information for Mobile Users in a Wireless Environment

Golha Sharifi

Abstract: The goal of this research is to investigate ways of providing non-critical information in a timely fashion for nomadic users of mobile devices in a wireless network. Since solutions for seamless access are highly domain specific, homecare at the Saskatoon District Health (SDH) was chosen due to the availability of preliminary studies and existing contacts with the SDH. Providing the workers with a mobile device, such as a Compaq iPaq , with a CDPD card can support them in retrieving information from centralized information systems, thus enabling them to make notifications for schedule changes, adding new data into the information system and supporting group communication. The focus of this research is the adaptation of content and the seamless access to information. To enable the homecare workers to use the content of existing information systems while on their way to patients, it is necessary to adapt the data access to low bandwidth clients with unreliable wireless connections to the server.
By using a user task model and keeping track of the user's current context (time, location, etc.), it becomes possible to predict the information needs of the user and to achieve context dependent adaptation of both content and functionality. To avoid interrupts in the user's interaction with the main information sources, methods for mobile transactions management using agent-based smart proxies that buffer, delay or pre-fetch information/data are introduced.
As a result of this research, an architecture is proposed for the application named Mobi-Timar. The implementation of the architecture together with analysis and testing shows that it supports the needs of mobile homecare workers by providing information and communication. Experiment analysis has been conducted to compare different pre-fetch policies and to analyze the system performance under diverse circumstances.

Defended: March 29, 2004

Supervisors: Ralph Deters and Julita Vassileva

MSc. Thesis: Agent Replication in Multi-Agent Systems

Alan Fedoruk

Abstract: Despite the considerable effort spent researching and developing multi-agent systems the actual number of deployed systems is still small.
One of the reasons for the significant gap between developed and deployed systems is their brittleness. Multi-agent systems are susceptible to all of the same faults as any distributed system. They lack centralized control components, which makes it difficult to detect and treat failures of individual agents, and the agents making up the system are social, thus risking fault-propagation. These faults can impact the system and lead to
overall system failure. Multi-agent systems must be made more dependable before they will be deployed on a large scale. Using redundancy by replication of individual agents within a multi-agent system is one approach for improving fault-tolerance, and hence improving reliability and availability---two key components of dependability. The introduction of replication raises new challenges to system construction. In this
research the use of transparent agent replicate groups using proxies is examined. The thesis does three things. It defines transparent agent replicate groups, identifies the key challenges with using them, and introduces message proxies and replicate group management to meet those challenges. Second, three architectures for building transparent replicate groups are presented. Finally, implementations of these architectures
together with analysis and testing show that agent replication is a viable technique for improving system dependability.

Defended: 25 November 2002

Supervisor: Ralph Deters


Silvia Breban

ABSTRACT: I present a detailed review on existing coalition formation mechanisms existing in the AI literature and originating in game theory, DAI research, and electronic market environments. I propose a new coalition formation mechanism for the electronic marketplace that extends the existing transaction-oriented coalitions of customers to long-term coalitions consisting of both customer and vendor agents. The mechanism is built upon modeling inter-agent relationships intended to help agents when faced with the decision problem of joining/leaving a coalition or forming a new one. We model relationships between agents based on a subjective aspect of trust. The effect of this on the system is to provide an implicit mechanism for detecting and avoiding malicious agents as well as a community-based trust that is expected to increase the users' confidence in electronic market environments. Microscopic (agent level) description of the proposed coalition formation mechanism is provided.
Experimental analysis has been conducted to compare different agent strategies on forming coalitions (individual vs. social) and to analyze the system behaviour under diverse circumstances. The results show that the coalition formation mechanism is beneficial for both the system (it reaches an equilibrium state) and for the agents (their gains increase exponentially in time).

Defended: 25 February 2002

Supervisor: Julita Vassileva

PDF file with the thesis is available upon request from J. Vassileva

MSc Thesis: Negotiation in Multi-agent Systems: A Decision Theoretic Approach

Chhaya Mudgal

ABSTRACT: The growing interest in autonomous interacting agents and their applications in business, market and personal use has given rise to many issues to be dealt in the area of negotiation. No sufficiently adequate approaches exist currently that are able to deal with uncertainty inherent in open systems. The ability to negotiate effectively in open environments is a key research issue. This thesis proposes a novel approach to automated negotiation for self-interested agents negotiating on behalf of their users. The approach is based on a decision theoretic structuring tool (influence diagram) for decision making and probabilistic influence diagram for modelling the opponent during the negotiation. Decision-making is based on maximization of the expected utility of each successive negotiation action. The evaluation of the proposed approach found that the agent who takes into account the model of the opponent gets a better deal compared to the agent who do not use the model of the opponent.

Defended: April 19, 2000

Supervisor: Julita Vassileva