To give you a concrete idea of the kind of projects
John Hosking and myself supervise, you can find short descriptions and
sometimes related publication information of student and other research
projects here.
I’m slowly getting around to updating it into a full research projects
database… (VERY slowly)
Many of our projects are now done with the Pounamu
& Marama meta-tools as the base technology – see here
for a paper on Pounamu. One on Marama – the Eclipse plug-in version of
Pounamu – is coming…
You could also check out my publications
for more details/ideas of stuff I'm interested in and actively researching.
Best of all, you could talk to
some of my current post-graduate students (see emails off the projects here),
both to get an idea of the fun stuff we do but also whether I’m the kind
of supervisor you want… (or not) J
Most of these projects could be scoped to be post-grad
project, Masters or PhD.
Performance Engineering Tools
Extend the MaramaMTE performance test-bed generator
e.g. to support web site history capture and replay; improve the stochastic
models for client load generation; integrate with Eclipse profiling tools;
build an alternative version using Visual Studio DSL tools; … Papers
related to this work to give you a feel for the domain are here and here.
Code Generation Tools
Extend the MaramaVMLPlus data mapping tool to support
abstract source view to concrete target view. Would involve modifying Eclipse
text editor for e.g. Java code to allow specifying mapping from XML Schema
source data items to Java items e.g. class/method names, etc. Maybe could also
do in Visual Studio DSL tools too… An paper on related work here.
Thin-client Editing/Visualisation Tools
A range of projects are possible here – idea is
to extend/use MaramaThin to support wider range of web browser editing. Could
also look at mobile phone/PDA diagramming; use of 3D for visualuisation e.g.
VRML, X3D, Wilma… Could apply to program visualisation or more general
data visualisation problems.
I’m very keen for someone to do a project
looking at using e.g.OpenLaszlo and compile to Flash for real swish thin-client
diagramming UIs, using our MaramaThin API as back end.
A couple of papers related to this work can be found here and here. A PhD might look at new architectures/tools
to develop such thin-client applications. Projects/Masters might focus on one
kind of visualisation or application domain.
Framework Visualisation Tools
Develop prototype tools to support the visualisation
of frameworks, possibly including support for framework reuse. Idea is to
develop domain-specific visual languages that will greatly assist developers in
understanding and reusing complex framework code via appropriate visual
metaphors and compositional techniques. Could be done via Marama/Pouamu or
possibly via Visual Studio DSL tools.
AO-UML Prototype using Visual Studio DSL Tools
Implement a version of our AO-UML design tool using VS
2005’s Domain Specific Language SDK add-on. A paper on related work can
be found here.
XML Schema-based Graphical Editing Tool
Implement prototype tool that allows XML file to be
graphically presented and edited based on its XML Schema definition. Idea is to
allow any XML Schema specification to form basis of graphical editor. Might do
this as Eclipse plug-in or as thin-client (JSP or ASP) editor for web browser.
I’m keen to try and use OpenLaszlo as the client (compiled to Flash) and
back-end of XML Schema-configured DOM (in JSP or ASP). A related paper to this
work can be found here.
Sketching-based Tools
Two possibilities – extend the MaramaSketch tool
which provides Eclipse plug-in for sketching designs and converting the
sketches into computer-stored/drawn form. Related work can be found here.
Another project related to this is to look at support
for thin-client sketching i.e. for use in web browser or on PDA/mobile. A
related work can be found here.
IDE for ROADMaker
Work with people at Swinburne university to develop
IDE – probably Eclipse based –for their co-ordination framework
ROAD. Could do as Marama/Pounamu-based tool, or could look at extending the IBM
Enterprise Architect. A related paper of the kind of tool can be found here.
IDE for Spring IoC and AOP
Develop a prototype Eclipse plug-in to support
visualising and configuring IBM Spring framework inversion of control and AOP
relationships. Idea would be to graphically model using UML(ish) diagrams and
generate Spring configuration files.
Tool for Theme/UML
With researchers from Trinity College Dublin, develop
tool to specify extended UML designs with the Theme/UML methodology. Use either
Marama or VS 2005 DSL tools to do this. Could look to generate code from the
designs or configurations e.g. for Spring AOP or AspectJ…
Aspects for Database/Web Application Security
Apply aspect-oriented techniques to developing web
and/or database applications specifically focusing on supporting various levels
of security, auditing etc. Could use the Spring framework and its AOP support;
AspectJ; other technologies.
Using Spring AOP to add Micropayment to Web
Applications
Use the IBM Spring architecture and its AOP support to
add micro-payment support to a web application. Could also use Spring AOP for
various other things; for performance engineering; testing; audit trail
support.
Micropayment-based Web Service Security Protocol
Add micropayment to client/server web services to
implement a lightweight security protocol. As above, might look to use AOP
techniques to do this. Could be done using C# or with Java web services.
Various other possibilities:
·
Supporting traceability in design tools e.g. Marama/Eclipse
·
Supporting proactive design evaluation by plug-ins to design tools e.g.
Marama/Eclipse
·
Supporting conflict management in design tools