1 / 28

Session 405 Eclipse Workgroup Collaboration

Session 405 Eclipse Workgroup Collaboration. Dennis O’Flynn Corona Project Lead Compuware Corporation. Scott Lewis ECF Project Lead Composent, Inc. Agenda. Market for collaboration tools Workbench interoperability Workgroup interoperability Demo Eclipse collaboration projects

Download Presentation

Session 405 Eclipse Workgroup Collaboration

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Session 405Eclipse Workgroup Collaboration Dennis O’Flynn Corona Project Lead Compuware Corporation Scott Lewis ECF Project Lead Composent, Inc.

  2. Agenda • Market for collaboration tools • Workbench interoperability • Workgroup interoperability • Demo • Eclipse collaboration projects • Corona – Tools Services Framework • ECF – Eclipse Communication Framework • Questions & Answer

  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

  4. ►Requirements ► Build►Test►Deploy►Manage►Support ► Flow of Information Executive Visibility and Control IT Governance • Optimize resources • Measure ROI Executive Dashboards Portfolio Management Project Application Infrastructure Best Practices Management Dashboards Manager • Process maturity • Expertise • Reduced complexity Develop Quality Delivery Integrated Application Life Cycle Solutions Practitioner Best Products Application Service Management Application Development Quality Assurance Testing • Award-winning tools • Life-cycle integration • Across multiple platforms

  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

  6. New 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

  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

  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

  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.

  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) Plug-in Plug-in Plug-in Workbench Frameworks Equinox

  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

  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

  13. Use Case: Team Collaboration Collaboration Server

  14. Demo Workbench ‘A’ Workbench ‘B’ Collaboration Server • 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

  15. Corona Frameworks • Collaboration Framework • Contextual collaboration • Distributed container context • Workgroup communications • Shared common constructs • projects, resources, etc… • Collaboration events • Core Framework • Server-side platform • Consistent Eclipse paradigm • Equinox – OSGi runtime • Common Eclipse frameworks • Familiar programming model • SOA Framework • OSGi bundles • Lifecycle • Services, Events, etc… • Web service enablement • Management via WSDM • Semantic Framework • Collaboration persistence • History, Relationships • Extensibility • RDF / OWL

  16. Corona Server Technologies Non-Eclipse Workstation Eclipse Workstation Non Eclipse clients Web Services Collaboration Events Plug-in SOA Component Plug-in SOA Component Corona Project Collaboration Corona Project Admin Plug-in SOA Component Plug-in SOA Component Corona Server (Corona) SOA Framework Collaboration Framework Semantic Framework Project Framework Frameworks Equinox

  17. New 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

  18. New 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

  19. New ProjectContextContainer(exemplary implementation) • Eclipse Extension Point(s) • ProjectContainerExplorer • ProjectContainerView • ProjectContainerViewPage • ProjectContainerBuilder • OSGi Service(s) • ProjectContainerEventFactory • Creates ProjectEvents for specific ProjectContextContainer Project

  20. New Corona Tuscany Tuscany Corona Apache Muse TPTP 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 See session 605: SOA the SCA Way With Corona Friday, Sept 8, 10:45 AM – 12:15 PM

  21. 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

  22. 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

  23. 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

  24. Requirements Design Build Test Manage Support 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

  25. 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

  26. New 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.

  27. 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

  28. Questions

More Related