The Object Teams Development Tooling: A high fidelity extension of the JDT

Stephan Herrmann (Technische Universität Berlin, Germany)

Java · Long Talk
Presentation
Thursday, 13:30, 50 minutes | Room 207 | Download in iCal Format

7
·
8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18
·
19

Stephan Herrmann

In this talk the Object Teams Development Tooling (OTDT) is presented which extends the full set of the JDT's functionality for programming in ObjectTeams/Java (OT/J).
OT/J, in turn, extends the Java language with support for role-based and aspect-oriented development.

High fidelity extension. When developing the Eclipse-based IDE for the Java-based programming language OT/J it was a high goal to reproduce the high quality of the JDT for the new language. By a high fidelity extension of the JDT for OT/J we mean an environment where

The Object Teams Development Tooling. I will give a comprehensive walk through the JDT showing how the original functionality is available in the OTDT and how this functionality is extended to also reflect and support the new concepts and features of OT/J. Examples include syntax highlighting, eager and incremental compilation, code navigation, structure viewers, search, code assist, refactoring and debugging, all of which have been extended to reflect the new elements of OT/J like team and role classes, an enhanced inheritance relation for teams, and method bindings inducing new kinds of control flows etc.
See also the OTDT List of Features.

Enabling Technology. The talk will furthermore present the technology that made possible this high fidelity extension. In contrast to other projects that apply an architecture with loose coupling between a custom compiler and Eclipse, the OTDT employs deep integration to consistently leverage the JDT, without being limited by the set of existing API and extension points, which naturally can never accommodate all potential use cases of all possible extensions.
The obvious problem with such deep integration is the significant effort it costs to adapt the JDT in-place and to maintain such a fork. The OTDT preserves maintainability by applying OT/J for its own implementation. Using OT/Equinox as the technical integration, a number of aspect plug-ins host the adaptations we had to apply to existing plug-ins such as the JDT UI. This allows us to concentrate our adaptations in a single location even without editing the original plug-in. Thus, our approach combines the maintainability of a loosely coupled approach with the feature-richness of a deep integration.


@pre     Attendees are not required to have prior knowledge about the language ObjectTeams/Java since relevant concepts and features will be explained as we go.
@post   Attendees should walk out from this talk with a comprehensive impression of how the IDE OTDT seamlessly extends the JDT, which implies a comparably low threshold for adopting OT/J. In particular, developers of tooling for other languages should have an understanding of how the extended component framework OT/Equinox could also facilitate their jobs in building high fidelity IDEs for the growing family of Java-based languages and beyond. Finally, I hope that attendees will get interested in learning more about the advanced programming language OT/J and how it can help them improve and maintain their designs in day-to-day work.

Selected facts about the OTDT.

Stephan Herrmann received his Ph.D. at Technische Universität Berlin in 2002 for his work on applying new techniques for separation of concerns to the development of a multi-view software engineering environment.
Since then his focus is on developing the language ObjectTeams/Java (OT/J) and its tools. He was the leader of the publically funded TOPPrax project (5 institutions) which developed the tooling for OT/J and conducted real-world case studies with OT/J. He has been teaching OT/J in class since 2003 and in tutorials at international conferences (NODe'05 and AOSD'06).
Stephan has organized the 2007-edition of the European Conference on Object-Oriented Programming (ECOOP) and several workshops. He has been a speaker at international conferences like OOPSLA, TOOLS and AOSD.

Floor Plan

Gold sponsors

BEA logo

IBM logo

Wind River logo

Replay Solutions logo

JBoss logo

SOPERA logo

Cloudsmith logo

BIRT Exchange logo

Skyway Software logo

Oracle

BlackBerry logo

AMD logo

Silver sponsors

Sybase

Google

Genuitec

Instantiations

Teamprise

Telelogic

Innoopract

Business Objects

LynuxWorks logo

Hardware sponsor

AMD logo

Media sponsors

Extension Media

Methods and Tools

ACM

Addison-Wesley logo

SD Times logo

Open Systems Publishing

Software Test & Performance logo

SDForum

Be a Sponsor