Presentation is loading. Please wait.

Presentation is loading. Please wait.

Building Distributed Educational Applications using P2P

Similar presentations


Presentation on theme: "Building Distributed Educational Applications using P2P"— Presentation transcript:

1 Building Distributed Educational Applications using P2P
Tomasz Müldner* and Gregory Leighton Jodrey School of Computer Science, Acadia University, Wolfville, NS, Canada * presenting Edmedia, June 23, 2004

2 Contents Distributed computing Peer-to-Peer (P2P) JXTA P2P framework
APEX Edmedia, June 23, 2004

3 Distributed Applications
A distributed system: data and functionality are distributed across multiple machines connected by a network Edmedia, June 23, 2004

4 Examples of Distributed Educational Applications
groupware or computer-supported cooperative work (CSCW) electronic classrooms shared workspaces others Edmedia, June 23, 2004

5 Distributed Applications: Limitations
Problems: firewalls dynamic IP addresses network address translation (NAT) Edmedia, June 23, 2004

6 Goals and Requirements for Distributed Educational Systems
Platform Independence: users of heterogeneous systems must be able to access the application: Corba Web Services and the underlying XML technology Java technology Security: an authentication and a permission system with access control rules: authentication e.g. using digital signatures encryption e.g. using private or public key systems auditing Edmedia, June 23, 2004

7 Goals and Requirements (2)
Customizability: an application can be customized Extensibility: new tools can be added without affecting the operation of existing tools. Edmedia, June 23, 2004

8 Goals and Requirements (3)
Connectivity: work on course documents while disconnected; synchronized upon the next reconnection Identification: Availability of the identities of users who are currently available (independent of her current location) Edmedia, June 23, 2004

9 Goals and Requirements (4)
Categorization: two kinds of user’s roles: - a single user - a group Collaboration: threaded discussions, messaging, collaborative viewing and editing of shared documents Edmedia, June 23, 2004

10 Goals and Requirements (5)
Discovery: users can discover and join course groups: course group contains a set of services specified by the instructor services are dynamically discovered when a user joins a course group Scalability: the addition of new entities or services to the network does not significantly hinder application performance Edmedia, June 23, 2004

11 Goals and Requirements (6)
Reliability: the availability of the application must not depend on the availability of any single application instance; Accessibility: application entities must be able to communicate with one another Edmedia, June 23, 2004

12 P2P Each peer typically acts in both the client and server roles
A peer may initiate requests on services hosted by other peers A peer can service incoming requests on locally-hosted services Edmedia, June 23, 2004

13 Introduction to JXTA A set of protocols to establish an overlay network on top of existing network protocols such as TCP/IP and HTTP. The overlay network transparently connects systems in a reliable and persistent manner The atomic entity in the JXTA network is the peer: a software program that uses the JXTA protocols to interact with other peers. Edmedia, June 23, 2004

14 APEX An extendable architecture: various components can be added to provide the required functionality; e.g.: an instant messaging component other components may be added as required, (e.g. components that support cooperation and collaboration) Edmedia, June 23, 2004

15 Authentication APEX performs authentication of each peer as it joins the network via a lookup on the institution’s registration records Each course section is modelled as a separate JXTA peer group Edmedia, June 23, 2004

16 User Roles Student peers Teaching assistants Instructors
Administrators Edmedia, June 23, 2004

17 Architecture and Functionality
Edmedia, June 23, 2004

18 Example of an Instant Messaging Component IM
Each member of the course peer group runs an instance of IM: maintaining a collection of ongoing conversation sessions involving the local user, associating incoming chat messages with the appropriate conversation session forwarding outgoing chat messages to the appropriate conversation partner displaying an ongoing history of each ongoing conversation session to the end user. Edmedia, June 23, 2004

19 Conclusions We have designed and partially implemented APEX, an educational application, based on JXTA. All implementation requirements have been satisfied. APEX forms a base Edmedia, June 23, 2004

20 Future Extensions Future extensions to APEX :
electronic submission and grading of course assignments The addition of a component for audio/video conferencing A dynamic course syllabus could be provided to specify assignment due dates and scheduling of midterms and final exams. Edmedia, June 23, 2004


Download ppt "Building Distributed Educational Applications using P2P"

Similar presentations


Ads by Google