Transcript

Heiko Braun <hbraun@redhat.com>Mar 2010

Agenda

• What is it?

• What can it be used for?

• Why should I care?

• Building blocks

• Project status

What is it?

Workspaces and tools

• Workspace is a collection of tools

• Tools represent anything you like

• Build in GWT

• Workspaces is UI framework ...

• ... but also a development environment

• API, Sandbox, Repository

4

UI Framework

• Foundation to which to deploy your tools

• Provides loading, initialization and access to tools

• Consists of common, shared API and services

• Authentication, Logging, Exception Handling, etc

5

Development environment

• Not just another GWT library

• Provides complete sandbox:- GWT SDK installation- Build environment

• Ways to distribute and integrate tool implementations:- Versioning- Repository

• Aims at:- Low barrier entry point- Collaboration

6

What can it be used for?

Use cases

• Building rich client applications

• Management functionality beyond operational level

• Few constraints on tool implementation

• High expectations on:- User experience- Interactivity

8

i.e Drools Guvnor

> http://www.jboss.org/drools/drools-guvnor.html9

i.e Riftsaw Console

> http://http://www.jboss.org/riftsaw 10

Why should I care?

Considerations

• Tool composition at various stages- sandbox, project, product

• Different feature set, maturity and target audience

• Tool interplay important part of the strategy

12

Composition and interplay

• i.e. Guvnor and BPM Console

• Distinct tools on a project level

• Composition at product level

• Or simply re-use of tools in other projects

• Picketbox Identity Management tools

13

Building blocks

Workspace sandbox

• Low barrier entry point

• Java knowledge, IDE, API Docs

• Environment to build, test and distribute your tools

• Maven archetype

• Auto GWT setup

• Includes necessary libraries

15

Sandbox example(1) mvn archetype:generate [...]

(2) Define value for groupId: : org.picketbox.console Define value for artifactId: : IdentityManagement Define value for version: 1.0-SNAPSHOT Define value for package: org.picketbox.console

(3) cd IdentityManagement mvn gwt:run

(4) Point your browser to http://localhost:xyz

(5) Open IDE and start hacking

16

Workspace API

• Reduction of boilerplate

• Use to wire tools within a workspace

• Split between - user (building tools)- framework (extending workspace)

17

User API Sample

18

Federation of tools

• Leverage central repository

• Maven in this case

• Mix and match:

• Project vs. Product

• JBoss vs. 3rd Party

• Foster re-use and extendability

• Divide and conquer

19

Status and roadmap

Status

• Released 1.0 in March 2010

• Baseline for tool development

• Ready to get your hands on

• Already used in- Riftsaw, jBPM and Drools Flow

• 8 weeks release cycle

> http://jboss.org/errai

21

Roadmap

• Focus on SOA-P requirements, i.e.

• Guvnor/ BRMS migration

• Picketbox management tools

• Apache JUUDI console

22

Q&A

top related