Development of an application using jade agent toolkit, JAVA Programming

Assignment Help:

You need to build an agent system using the JADE Toolkit that allows the lecturer of FIT5031 to broadcast their availability and arrange for consultation with students in a dynamic manner. The idea is to use a combination of software agents and Instant Messaging services (or any other social networking technologies) to facilitate this process. Each FIT5031 student and the lecturer have their own "personal assistant agent". Consider the case, where the lecturer comes in to work at 10 AM and has a meeting with his PhD student scheduled from 10.15 - 11.15 AM. However, on checking her email, she finds that the PhD student has come down with the flu and is unable to make it for the meeting. The lecturer would like to use this time to provide consultation for his FIT5031 students. He instructs his"personal software agent" that he is available for FIT5031 students. While he can use Moodle to send a message/email to all students - this is insufficient as students may not be checking email, they may be online but chatting with their friends, or they may still be at home or have another lecture on at the time. Thus, the task of the agent is to find those students who are online between 10.15 and 11.15 am and let them know that the lecturer is available for consultation. Furthermore, should a particular student wish to use this time and come for consultation, their agent needs to let the lecturer's agent know the approximate time when they will come (e.g. 11 am).

You can assume that there are only a small number of students in the unit (e.g. 5-10) and at any given time 3-4 students may be online.

The two options for finding students who are online are as follows:

OPTION 1: This option would involve the use of the directory services of JADE to broadcast online status. Thus, the students who are online would get their personal agents to send a message to some centralised agent directory for FIT5031 regarding this (and will also let the directory know when they are unavailable/leaving the system). The lecturer's agent would check this directory and send messages about the lecturer's availability for consultation to all those students who are available at that time. The lecturer agent may broadcast this message in 15 minute intervals during this time frame (10.15 am - 11.15 am) or have better solution such as keeping track of which student agents are coming online.

As stated above, a fully functional system using Option 1 will be eligible for a CREDIT grade.

OPTION 2: This option would involve the use of some third party Instant Messaging system for finding students who are online. For instance Google Talk provides an API to access it/write simple clients for it. In this case, the lecturer's agent would access Google Talk and query it for the online status of FIT5031 students and then send messages to those students (either using Google Talk itself or through their agents). Again, if the students wish to avail of the consultation, they need to let their agents know and these can then inform the lecturer's agent about the approximate time when the student's will come. You may use Google Talk or Facebook or Skype or any social networking/instant messaging technology.

We will provide you with a simple client to access Google Talk (that has been written by one of the tutors).

An enhancement (not required, but if you did something like this then you would get additional marks) is to have the lecturer agent access more than one IM/Networking technology. That is, look for students on Google Talk and something else.

Another enhancement (again not required, but will fetch additional marks) is to have the lecturer's agents schedule the students who want to come and meet the lecturer at the available time. Thus, if one student has agreed to come at 11.30 am - then the time-slot of 11.30-11.45 should not be assigned to any other student. One option might be to have a small database for the meeting scheduling.
Can you think of scenarios where the use of software agents is deemed as better than doing the implementation without software agents? These can be additional enhancements that you include in your implementation for bonus points.


Related Discussions:- Development of an application using jade agent toolkit

What is color in awt, What is Color in AWT? Color is a class in the AWT...

What is Color in AWT? Color is a class in the AWT. Individual colors such as red or mauve are examples of this class, java.awt.Color. Be sure to import it if you want to use ot

Difference between inheritance and polymorphism, Question 1: a) What is...

Question 1: a) What is the meaning of an object-oriented programming? b) List eight simple types of data in Java c) Explain how objects and classes are closely related.

Implement a driver program to test out all constructors, Implement a class ...

Implement a class  Book  (Book.java). A book will have three instance variables: a  title  (a String, for example: "Big Java" or "The Hitchhiker's Guide to the Galaxy"), an  author

Want experienced glsl programmer for java project, Want experienced GLSL pr...

Want experienced GLSL programmer for Java project Project Description: I am preparing a small 3d game engine in Java, and I wanted to hire a GLSL programmer to help out with

How can we include images in a web page using html and java, How can we inc...

How can we include images in a web page using HTML and Java script? Image in HTML Image in Javascript Images in JavaScript could be manipulated in several ways using the buil

Why hub is used in networks, Why hub is used in networks? HUB: Hub is n...

Why hub is used in networks? HUB: Hub is networking component that can be used to connect the networks and it could also be used to extend the size of networks. In a simple way

Multidimensional Array and the ArrayList Class, Write a ComputerPart class ...

Write a ComputerPart class and a ComputerKit class and a client class to test them. The ComputerPart class has two variables: a String representing an item, and a double representi

How many kinds of errors can be found during a program, How many kinds of e...

How many kinds of errors can be found during a program development? List them. 1. Syntax errors 2. Semantic errors 3. Run-time errors

Spring MVC Controllers, I want to upload an item object with it''s image is...

I want to upload an item object with it''s image is it possible that i pass a complete object of my Item along with it''s image from my Controller if yes then how may i Do it? an

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd