session 405 eclipse workgroup collaboration
Post on 04-Jan-2016
24 Views
Preview:
DESCRIPTION
TRANSCRIPT
EclipseWorld 2006
Sep 6-8, 2006
Session 405
Eclipse Workgroup Collaboration
Scott LewisECF Project Lead
Composent, Inc.
Dennis O’FlynnCorona Project Lead
Compuware Corporation
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
2
Agenda
• Market for collaboration tools• Workbench interoperability• Workgroup interoperability• Demo• Eclipse collaboration projects
– Corona – Tools Services Framework– ECF – Eclipse Communication Framework
• Questions & Answer
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
3
IT Business Challenges
• Deliver and maintain increasingly complex IT solutions– Multi-tier (distributed applications)– Multi-language (Java, XML, HTML, SQL, C#, etc.)– Multi-platform (hybrid applications as a result of application integration
and legacy modernization)• Increasingly complex IT organizations (project teams)
– Involvement of business stakeholders– Multi-sourcing – combining in-house development with outsourcing and
off-shoring in a single project– Team members in different geographic locations, in different time zones– Team member using different tools across the application life cycle
• The business wants IT to deliver more, faster and cheaper
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
4
Flow of Information
ExecutiveExecutive
ManagerManager
PractitionerPractitioner
ITGovernance
Executive Dashboards
Management Dashboards
Project Application Infrastructure
Develop Quality Delivery
Application Development
Quality Assurance Testing
Application Service Management
Integrated Application Life Cycle Solutions
Visibility and Control• Optimize resources• Measure ROI
Best Practices• Process maturity• Expertise• Reduced complexity
Best Products• Award-winning tools• Life-cycle integration• Across multiple platforms
Portfolio Management
► Requirements ► Build ► Test ► Deploy ► Manage ► Support ►
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
5
CommunicationA key component of collaboration
• Communication at many different levels– Amongst developers that work on
the same application– Amongst practitioners across the
life cycle, business analysts, architects, developers, testers, project managers and operations
– Amongst practitioners and managers
• Communication about many different subjects– Content – technology, business
domain– Project – timelines, tasks,
resources– Process – sequences,
dependencies– Organization – responsibilities
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
6
Workgroup Collaboration
• A Workgroup is a group of people working together on a common set of tasks
• Workgroup Collaboration is the use of technologies that enable the workgroup’s members to work as if they were co-located– Improve communications– Common context– Sharing of information– Event notification
New
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
7
Workgroup Collaboration Real or Hype?
• Microsoft– Team Foundation Server –
Backend server for collaborationof information and rules
– Visual Studio Team System – Utilizes information to create a tightly integrated tool environment
• IBM– Jazz, collaboration across the
development environment• Other Companies
– Developing their own proprietary solutions for integration and collaboration
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
8
What the market needsAn open collaboration solution
• Current solutions fall short– Meetings, conference calls/video, groupware, wiki’s, slashdot’s,
etc.– IBM and Microsoft will build specific solutions to enhance their
platforms – which tool do you use when your organization uses Microsoft on the front-end and J2EE on the back-end?
• Needed: Open Workgroup Collaboration– In context of a project, a workbench, a team, etc.– Only relevant information– Open solution owned, created and enhanced by the community– Flexible, customizable, extensible– Interoperability– Integration
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
9
Eclipse Foundation Collaboration Projects
• ECF (data collaboration)– Framework for building Integrated, Interoperable
communications applications• Corona (tool collaboration)
– Framework for building contextual collaboration solutions, include server-side deployment
• ALF (process collaboration)– ALF Events, Provider Services, and ALF Service
Flows • Mylar (task collaboration)
– Task focused UI for Eclipse that integrates task repositories such as Bugzilla, Trac, and JIRA.
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
10
Workbench Interoperability
• The Eclipse Workbench is a Rich Client Platform
• Foundation for application plug-ins
• Common constructs such as Project
• Shared resources such as folders and files
• Resource change events• OSGi runtime (Equinox)
Equinox
Frameworks
Workbench
Plug-in Plug-in Plug-in
`
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
11
OSGi Runtime: Equinox
• OSGi – Specification for services platform– Bundle Life Cycle
• Installed, Resolved (Starting, Active, Stopping), Uninstalled
– Services• Service Registration (org.osgi.framework.ServiceRegistration )
• Service Tracker (org.osgi.util.tracker.ServiceTracker )
• Event Service (org.eclipse.equinox.event)
• HTTP Service (org.eclipse.equinox.http)
– Events• Bundle, Framework, Log, etc…
• Implemented by Equinox• All Eclipse plug-ins are actually OSGi bundles
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
12
Workgroup Interoperability
• A Workgroup is comprised of multiple Workbenches sharing the same context
• Corona– Provide Eclipse server-side plug-in
deployment– Framework for collaboration context (i.e.
Project)– Distributed collaboration event model.
ECF provides peer-to-peer communication framework
• ECF– APIs for peer-to-peer communications– Adapters and Extension Points for
presence, data, discovery, etc…– Set of common collaboration tools
Collaboration Server
``
``
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
13
Use Case: Team Collaboration
Collaboration Server
``
`
`
`
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
14
Demo
` `
Collaboration Server
Workbench ‘A’ Workbench ‘B’
•Workbench ‘A’ and ‘B’ belong to the same Workgroup, sharing the same Project context
•Workbench ‘A’ updates Project artifacts. Resource change events are published to Workgroup
•Workbench ‘B’ receives events and Chats with ‘A’ to discuss recent changes
•Workbench ‘A’ commits changes, ‘B’ receives events and synchronizes with CVS
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
15
Corona Frameworks
Core Framework•Server-side platform•Consistent Eclipse paradigm
•Equinox – OSGi runtime•Common Eclipse frameworks
•Familiar programming model
Collaboration Framework•Contextual collaboration•Distributed container context•Workgroup communications•Shared common constructs
•projects, resources, etc…•Collaboration events
SOA Framework•OSGi bundles
•Lifecycle•Services, Events, etc…
•Web service enablement•Management via WSDM
Semantic Framework•Collaboration persistence
•History, Relationships•Extensibility•RDF / OWL
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
16
Corona Server Technologies
`
Equinox
Frameworks
Corona
Plug-inSOA
Component
SOAFramework
CollaborationFramework
SemanticFramework
ProjectFramework
Plug-inSOA
Component
CoronaProject
Collaboration
CoronaProjectAdmin
Plug-inSOA
Component
Plug-inSOA
Component
clie
nts
Ser
ver
(Cor
ona)
Collaboration Events
Non Eclipse
Web Services
Eclipse Workstation
Non-Eclipse Workstation
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
17
Context Containers
• Containers are used to store stuff• Reference Repositories
– Items and information that provide context for collaborating on a theme
• May be related and can be composited to create a larger contexts
• Extensible to assume specific context
– i.e. ProjectContextContainers assume TeamMembers repository are part of the context
New
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
18
Corona Extensibility
• Eclipse Extension Point(s)– RepositoryAdapter
• Adapt existing repositories to the ContextContainer– RepositoryAdapterFactory
• Creates RepositoryAdapters from extension points
• OSGi Service(s)– ContainerEventAdmin
• Validates container events• Forwards events to OSGi event admin service
– ContainerEventRouter• Routes container events to remote containers
– ContextContainerManager• Manages all context containers for the local environment• Proxy to access remote ContextContainerManagers
New
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
19
ProjectContextContainer(exemplary implementation)
• Eclipse Extension Point(s)– ProjectContainerExplorer– ProjectContainerView– ProjectContainerViewPage– ProjectContainerBuilder
• OSGi Service(s)– ProjectContainerEventFactory
• Creates ProjectEvents for specific ProjectContextContainer
New
Project
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
21
Corona: Server-Side Eclipse• Corona requires server-side
components to support distributed collaboration– Provides a non-UI Eclipse environment
for the deployment of Eclipse plug-ins and OSGi bundles
– Remote manageability via WSDM• Apache Muse
– Improved component deployment via SCA
• Apache Tuscany
CoronaTuscany
ApacheMuse
TPTP
TuscanyCorona
See session 605: SOA the SCA Way With Corona
Friday, Sept 8, 10:45 AM – 12:15 PM
New
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
22
ECF Project Goals
• Support Development of distributed applications– Easier/Quicker– Extensible, Reliable, Open
• Interoperability– Support multi-protocol clients– No protocol lock-in: Choose your service provider
and client• Integration
– Cleanly separate applications from protocol details– Enable communication components: ECF Extension
APIs
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
23
ECF Extension APIs
• Presence– IM and Chat
• Datashare– Channels for asynch data delivery
• Discovery– LAN and WAN-based service discovery
• File Sharing– Protocols for sending/retrieving files
• Shared Object – Dynamic replication of object state
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
24
ECF Extension APIs (cont.)
• Call API– VOIP call signalling and media transport
• Publish/Subscribe– Group distribution and synchronization of data
structures
• Bulletin Board– RSS/Atom
• Others (i.e. yours)...all open source/community designed/developed
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
27
ALM Tool Collaboration
• Corona provides a collaboration framework that enables a context for collaboration• ALM tools can collaborate with one another based upon a shared context• Collaboration events can be shared with tools residing in multiple ALM stages• ECF provides communication APIs to enable peer-to-peer tool integration• Tools, such as chat and shared editors, are provided by ECF that can enhance the
collaboration experience• The result is a richer context of integration for tools participating in ALM
`
Requirements
`
Design
`
Build
`
Test
`
Manage
`
Support
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
28
Commercial Business Opportunities?
• Customizable and flexible (control your our destiny)
• Eclipse RCP provides workbench interoperability• Eclipse collaboration projects (Corona, ECF,
etc.) provides workgroup interoperability– Your product becomes part of a solution for business
analysts, architects, developers, testers, project managers, operations
– Workgroup and Enterprise• Eclipse provides open framework that allow your
applications to participate in a larger solution
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
29
Next Steps
• Corona– Milestone 0.4.0 (remote accessibility)
• ECF– Release 1.0 is getting closer (v0.9.0)
• Corona / ECF– Align concepts of collaboration container
• Community involvement– Open source only works when the community is
involved.
New
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
30
Resources
• Corona– Dennis O’Flynn, Project Lead
• dennis.oflynn@compuware.com– www.eclipse.org/corona
• ECF– Scott Lewis, Project Lead
• slewis@composent.com – www.eclipse.org/ecf
• EclipseWorld– Session 605: SOA the SCA Way with Corona
• Friday, Sept 8, 10:45 AM – 12:15 PM– Session 805: Developing Collaborative Tools
• Friday, Sept 8, 3:45 PM – 5:15 PM
Eclipse Workgroup Collaboration | © 2006 by Scott Lewis, Dennis O’Flynn; made available under the EPL v1.0
31
Questions
top related