Software‎ > ‎Prometheus/PDT‎ > ‎

Student Projects

  • JACK Editor in Eclipse 
JACK is an agent-oriented programming language extended from JAVA. Similar to all the other programming languages, a well-functioned JACK editor is almost essential. The default eclipse Java editor provides Java syntax highlighting, syntax checking and indentation for example. This project is about introducing at the very least syntax highlighting for JACK programs and if possible syntax checking. The editor is to be an eclipse plug-in.

  • AUML Text Generator 
AUML (Agent-UML) is a way of specifying interaction protocols between Agents in a Multi Agent System. In PDT, a modified version of AUML is used to described protocols but the interface is text based and prone to typos. Although the syntax of AUML text notation is relatively intuitive, a GUI generator could be more convenient and could potentially avoid typos by providing users with lists of entities to choose from for example. Users should be able to interactively create and modify both AUML text and sequence diagram with this GUI generator.

  • Drag and drop from agent overview to capability overview and second part is to do reverse 
In PDT (Prometheus Design Tool), a capability within an agent allows grouping of coherent events/plans/data as a single unit. Often though, capabilities are created after the agent is designed and when it is apparent that certain units can be grouped. However, currently in PDT when a capability is created the entities cannot be copied from the agent diagram and placed in the capability diagram, instead the entities need to be added to the capability and removed from the agent overview. It is much more convenient to implement a drag and drop feature to group entities into a capability. 

  • User operation history 
Users may like to share their design when developing a Multi agent system with PDT. An operation history could help team members to track modification made by former designers. This history could be as simple as a log report, or as complicated as a sequence of user actions which could be replayed or rolled back. 

  • GUI Testing 
Manual testing is time consuming and inefficient for software with GUI. Here we need an automatic testing framework for our PDT software. The testing framework should be flexible and extensible enough so that it could be used during the whole PDT development life cycle. There is some existing work that could be built upon. 

  • Scrap book 
This is another PDT extension where users can create and preview design on a scratch book and use this design snippet later in the real project. Similar to the other PDT graphical editors, the diagrams on scrap book can be saved into a file and reopened in future. Moreover, it is helpful to build an interface to transfer contents from scrap book into real design.

  • Independent agent design 
On some occasions, it could more flexible to design agents independently and import these agents into system. This gives rise to questions of consistency between the agents created independent of the system and the system when it is imported. A pre-checking process might be taken before performing import operation. If there is no conflict detected, the how to seamlessly integrate these agents into the main system is the second problem.