Software Factories in the Real World: How an IBM® WebSphere® Integration Factory Helped an Automotive Retailer Keep Its Customers on the Road
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Software Factories in the Real World: How an IBM® WebSphere® Integration Factory Helped an Automotive Retailer Keep Its Customers on the Road

on

  • 1,420 views

“Getting any software development team to effectively scale to meet the needs of a large integration project is actually harder than it sounds. For a large Automotive Retailer based in Florida, this ...

“Getting any software development team to effectively scale to meet the needs of a large integration project is actually harder than it sounds. For a large Automotive Retailer based in Florida, this is exactly what they needed to do. They needed a large amount of integration to be built between their brand new Point of Sales system and their new SAP back-end. In this session, you will hear about how tools such as Rational Software Architect and WebSphere Message Broker Toolkit were integrated with a Rational Team Concert-based development environment to set up super efficient software factory employing techniques such as Model-Driven Development and Continuous Integration to help this retailer keep their customers’ wheels on the road.”

Statistics

Views

Total Views
1,420
Views on SlideShare
1,409
Embed Views
11

Actions

Likes
0
Downloads
31
Comments
0

1 Embed 11

http://www.scoop.it 11

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Used to implement architecture described in slide 4.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Jazz .. Open source… open platform… people can integrate with.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Show how requirements are identified from UI mockups, transalated to scenarios, scenarios are specified by each of integration and SAP stacks, designs are created for each of integration and SAP stacks, reviews ensure cross-stack integrity.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Show how requirements are identified from UI mockups, transalated to scenarios, scenarios are specified by each of integration and SAP stacks, designs are created for each of integration and SAP stacks, reviews ensure cross-stack integrity.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Show how requirements are identified from UI mockups, transalated to scenarios, scenarios are specified by each of integration and SAP stacks, designs are created for each of integration and SAP stacks, reviews ensure cross-stack integrity.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Show how requirements are identified from UI mockups, transalated to scenarios, scenarios are specified by each of integration and SAP stacks, designs are created for each of integration and SAP stacks, reviews ensure cross-stack integrity.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Show how requirements are identified from UI mockups, transalated to scenarios, scenarios are specified by each of integration and SAP stacks, designs are created for each of integration and SAP stacks, reviews ensure cross-stack integrity.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Show how design work identifies specific services for implementation, these are developed by distributed team, and integrations of the code are delivered to test team.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Mention RSA Design Manager as an alternative to collaborative sessions via LotusLive.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe how high-level design is used to come up with set of components across code and other artifacts. Describe how combination of repo workspaces and streams allow team to work separately and share changes. Describe how streams are created for each environment to allow changes to be promoted. Describe how snapshots are used to track configurations of both design and code.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe how high-level design is used to come up with set of components across code and other artifacts. Describe how combination of repo workspaces and streams allow team to work separately and share changes. Describe how streams are created for each environment to allow changes to be promoted. Describe how snapshots are used to track configurations of both design and code.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe continous integration build and all of its advantages. Describe he features that build conductor provides off the shelf. Describe other builds – and build conductors flexible reuse model.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe continous integration build and all of its advantages. Describe he features that build conductor provides off the shelf. Describe other builds – and build conductors flexible reuse model. Nature of build problems in WMB different – dependencies, etc. Also many deploy time problems caught early – and there were many caused by the way the code had been configured to build. Overriding properties in BAR files. Hugely important because we could be flexible about what environment we deployed into.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe continous integration build and all of its advantages. Describe he features that build conductor provides off the shelf. Describe other builds – and build conductors flexible reuse model.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe continous integration build and all of its advantages. Describe he features that build conductor provides off the shelf. Describe other builds – and build conductors flexible reuse model.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe continous integration build and all of its advantages. Describe he features that build conductor provides off the shelf. Describe other builds – and build conductors flexible reuse model.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37 Describe continous integration build and all of its advantages. Describe he features that build conductor provides off the shelf. Describe other builds – and build conductors flexible reuse model.
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • File Name Here.ppt File Name Here.ppt 02/10/10 03:37
  • Author Note: Optional Rational slide. Graphic is available in English only.
  • Author Note: Mandatory giveaway slide to be included in your presentation prior to the mandatory “Thank you” closing slide.
  • IBM IOD 2011 06/22/12 Prensenter name here.ppt 06/22/12 13:57
  • Author Note: Mandatory Rational closing slide (includes appropriate legal disclaimer). Graphic is available in English only.

Software Factories in the Real World: How an IBM® WebSphere® Integration Factory Helped an Automotive Retailer Keep Its Customers on the Road Presentation Transcript

  • 1. Session 1602Software Factories in the Real World:How an IBM® WebSphere® IntegrationFactory Helped an Automotive RetailerKeep Its Customers on the RoadGreg Hodgkinson,Practice Director, Lifecycle Tools and MethodologyAndré Tost,Senior Technical Staff Member, Software Group
  • 2. The Premier Event for Software and Systems Innovation Session Introduction  Abstract: “Getting any software development team to effectively scale to meet the needs of a large integration project is actually harder than it sounds. For a large Automotive Retailer based in Florida, this is exactly what they needed to do. They needed a large amount of integration to be built between their brand new Point of Sales system and their new SAP back-end. In this session, you will hear about how tools such as Rational Software Architect and WebSphere Message Broker Toolkit were integrated with a Rational Team Concert-based development environment to set up super efficient software factory employing techniques such as Model-Driven Development and Continuous Integration to help this retailer keep their customers’ wheels on the road.” Topics for today:  The project  The challenges faced  The software factory tools  The software factory workflow  Key practices that helped us succeed  The benefits  Final thoughts2 © 2012 IBM Corporation
  • 3. The Premier Event for Software and Systems Innovation Introducing the Project A new automotive retail in-store experience  Replacing green screen terminals in the store with modern user interfaces – Touch screens – Tablets – Customer self-service “kiosks” – In-store WiFi – Completely new private network (MPLS)  Replacing legacy backend application for customer management, order management and inventory management – Transitioning from JDEdwards to SAP  Middleware integration layer – Exposing backend functionality as reusable business services – Fully virtualized, scalable infrastructure – Private cloud on X86/Linux3 © 2012 IBM Corporation
  • 4. The Premier Event for Software and Systems Innovation Introducing the Project (cont.) Service orientation as the architectural foundation  Building an integration layer consisting of service exposure AND provider creation Diagram taken from developerWorks article “The Enterprise Service Bus, re-examined”, see http://www.ibm.com/developerworks/websphere/techjournal/1105_flurry/1105_flurry.html4 © 2012 IBM Corporation
  • 5. The Premier Event for Software and Systems Innovation Introducing the Project Challenges faced  Multi-vendor, global development team – US – China – Egypt – Philippines  Requirements were limited to screenshots – Hundreds of wire frames, very useful for data modeling – No functional business requirements  Three layers (client UI, integration layer, backend/SAP) all designed and developed in parallel – (Semi-)Agile development process required  Brand new infrastructure – New network, new platform, new middleware  Plus, all the usual project constraints  – Tight schedule – Constrained budget5 © 2012 IBM Corporation
  • 6. The Premier Event for Software and Systems Innovation Introducing the Software Factory Tools WebSphere Message Broker 1) Simplified Reducing the complexity of integration authoring integrating your systems Point-to-point is expensive Integration requires specialist knowledge of API technologies Integration plumbing and mapping code wastes developer hours Mixing integration code with application code makes applications brittle Integrations have high availability 2) Dynamic mediation and reliability requirements – complexity 3) Routes and transforms data 4) Supports multiple technologies6 © 2012 IBM Corporation
  • 7. The Premier Event for Software and Systems Innovation Introducing the Software Factory Tools Rational Requirements Composer 1) All-in-one editor – 2) Easy traceability Managing and communicating text as well as link creation and your software requirements diagrams “surfing” Poor requirements is the #1 reason projects fail Traceability is NB, but time consuming Difficult to correlate scope lists with specifications As soon as requirements documents are released they can become out of date 3) Visual focus – Often the author > review > process, use case, 4) Built-in review feedback > rework process is screen mockups workflow inefficient 5) Strong lifecycle links – to plans, to designs, to code, to builds, to tests7 © 2012 IBM Corporation
  • 8. The Premier Event for Software and Systems Innovation Introducing the Software Factory Tools Rational Software Architect for WebSphere Controlling the architectural 1) Supports popular modeling quality of your software standards – UML, BPMN2, SoaML 2) Turn models into Difficult to handle software code with complexity – too much of it transformations Lose sight of good patterns when 3) Automatically you are “down in the code” apply model Refactoring of code is expensive patterns Large mental leap between requirements and code 4) Graphical code How do you make design a “team editors and visualizers game”? 5) Design Manager adds web-based collaboration8 © 2012 IBM Corporation
  • 9. The Premier Event for Software and Systems Innovation Introducing the Software Factory Tools Rational Team Concert 1) Like 5 tools in one – plans, work items, Managing and enabling change SCM, build, project data warehouse Plans can quickly become out of date Progress views limited to point-in- 2) Fully integrated data time snapshots and waste effort across lifecycle How to easily track what work was 3) Excellent support for delivered in a new build? agile as well as How to easily track SCM changes “traditional” project styles against plans? How to correlate all project data in 4) Built-in build support a format that is easy to consume including build engine (and has value) 5) SCM provides support for streams, components, workspaces – flexible, simple, powerful9 © 2012 IBM Corporation
  • 10. The Premier Event for Software and Systems Innovation The Software Factory Workflow Coordinating requirements and designs across technology stacks  Constraint: 3 teams working on 3 separate but related streams.  Driven by UI wireframes  Derived scope list (RRC)  Transferred to plans (RTC)  Requirements specs written for service operations (RRC/RSA)  Designs specs written for service operations (RSA)  Front-end-WSDL generated (RSA)  Implementations and stubs (WMBT)10 © 2012 IBM Corporation
  • 11. The Premier Event for Software and Systems Innovation The Software Factory Workflow Timing is everything!  Ideal: Back-end WSDL available to SOA integration analysts.11 © 2012 IBM Corporation
  • 12. The Premier Event for Software and Systems Innovation The Software Factory Workflow Timing is everything!  Not so good: Back-end WSDL arrives during SOA design.12 © 2012 IBM Corporation
  • 13. The Premier Event for Software and Systems Innovation The Software Factory Workflow Timing is everything!  Getting bad: Back-end WSDL not available for SOA implementation.13 © 2012 IBM Corporation
  • 14. The Premier Event for Software and Systems Innovation The Software Factory Workflow Timing is everything!  The pits: Back-end implementation not available to test against.14 © 2012 IBM Corporation
  • 15. The Premier Event for Software and Systems Innovation The Software Factory Workflow Coordinating distributed development and integrating the results  Workflow tuned to high velocity without sacrificing quality. implementation wsdl SOA SOA analysts designers implementation feedback wsdl RSA Cairo SOA Continuous build/deploy RRC RTC devs RTC service requirements scm implementation scm model wsdl WMB DEV wsdl implementation wsdl On-demand China SOA build/deploy WMB QA devs UI & back-end UI & back-end implementation analysts, designers, wsdl stakeholders stakeholders implementation wsdl feedback US SOA devs15 © 2012 IBM Corporation
  • 16. The Premier Event for Software and Systems Innovation Key Practices for Success Tighter architectural control using RSA  Solution architecture modeled in UML  Service model developed in UML – Initial version derived from use case descriptions – Collaboratively finalized via LotusLive sessions – ~30 services with ~160 operations  WSDL automatically generated from UML – Using out-of-the-box RSA transformation – Some required modification done via XSLT  Both UML and WSDL stored in RTC16 © 2012 IBM Corporation
  • 17. The Premier Event for Software and Systems Innovation Key Practices for Success Keeping the team on track using RTC  Service operation tracking – Separate tracking for each service interface and each service operation gives indication of progress – See later slide for example  Easy assignment of work items to individuals – For net new development and defect fixes – Good way of communicating with offshore teams  Impediments – Communication of (typically blocking) issues across distributed teams – Identified and/or assigned also during daily scrum meeting  Custom “change control” work item allowed tracking of changes to the service model – Linkage to individual work items (model change, implementation change, etc) – Notification to interested users17 © 2012 IBM Corporation
  • 18. The Premier Event for Software and Systems Innovation Key Practices for Success Collaborative configuration management using RTC  Streams for easy management of different configurations – Code configuration for each environment: DEV > QA > PROD – Easy to promote changes through environments  Components allow for groups of artefacts to be managed together – Separate out code components, tests, stubs, models, documents – Component per application component • Loading and unloading • Consolidated history • Easy to snapshot18 © 2012 IBM Corporation
  • 19. The Premier Event for Software and Systems Innovation Key Practices for Success Collaborative configuration management using RTC  Project events provides an excellent way to quickly see latest changes – Easy to see what real (as opposed to planned) current focus of work is – Can click straight into work context for more – Keeps team aware of dependencies  The “Pending changes” view became a core element of governance – Good overview of who changed what and why – Allows enforcement of compliance with established standards - Naming, code structure, etc. – Changes are organised by component – making it easier to focus on the changes that matter to you19 © 2012 IBM Corporation
  • 20. The Premier Event for Software and Systems Innovation Key Practices for Success Hassle-free build and deploy using RTC  RTC’s simple build engine + Prolifics Build Conductor = effortless builds! – ANT build engine simple and easy to use – PBC adds automation scripts for WebSphere apps: WESB, WMB, WPS, Portal – Automated build, override, deploy  Build record publishes a wealth of information – What was built – BARs – What tasks/requirements/fixes included – What change sets included – Full log files as well as activity view20 © 2012 IBM Corporation
  • 21. The Premier Event for Software and Systems Innovation Key Practices for Success Hassle-free build and deploy using RTC  Different builds for different purposes – Continuous integration build that only catches compile errors can look for changes every few minutes – Continuous integration build that deploys to DEV can be run every 2 hours – On-demand build to target QA can be triggered when needed  Accelerated fix delivery – From build record snapshot, can create a new fix workspace within seconds – Suspend and unload existing changes, then code the fix and deliver to fix – As soon as delivered, on-demand build can deploy changes automatically to environment of choice – Fantastically quick turnaround of fixes!21 © 2012 IBM Corporation
  • 22. The Premier Event for Software and Systems Innovation Key Practices for Success Project dashboard using RTC - Overview22 © 2012 IBM Corporation
  • 23. The Premier Event for Software and Systems Innovation Key Practices for Success Project dashboard using RTC – Release Status23 © 2012 IBM Corporation
  • 24. The Premier Event for Software and Systems Innovation Key Practices for Success Project dashboard using RTC – Impediments24 © 2012 IBM Corporation
  • 25. The Premier Event for Software and Systems Innovation Key Practices for Success Project dashboard using RTC – Change Controls25 © 2012 IBM Corporation
  • 26. The Premier Event for Software and Systems Innovation How Did We Benefit? Improving team efficiency  Using RTC client plug-in for Eclipse-based tooling supports online and offline work – Especially helpful when having many travelling developers  Fine grained control over which changes are replicated/downloaded  Using one component per service was a good structure – Good support of having development teams work concurrently on different service implementations  Minimal delays to get changes to testers  Separate build streams for dedicated, continuous builds – More build engines would have been beneficial  Shared build infrastructure meant developers didn’t maintain their own26 © 2012 IBM Corporation
  • 27. The Premier Event for Software and Systems Innovation How Did We Benefit? Improving deliverable quality  Using a UML-based service model – Visual representation used to communicate interface to the development team  Component-based source control made developers think more about how their code was structured  Automated build and deploy caught issues earlier  Handed over a fully automated and structured build and deploy infrastructure along with the source code - to the benefit of the maintenance team27 © 2012 IBM Corporation
  • 28. The Premier Event for Software and Systems Innovation Final Thoughts Session wrap-up  A large project, with a global team of developers and testers, required global collaboration and cooperation  Tying individual development tools into one team environment, RTC, facilitated sharing of artefacts and joint development of solutions – Need good structure of streams and components, based on target runtimes and team organization  Project management features of RTC allow direct integration of planning activities with the developed artifacts  Continuous automated builds important enough to have a full time release engineer  Using Eclipse as the foundation for all tooling makes it easier to integrate different environments and target runtimes  You still need good developers and strong governance!28 © 2012 IBM Corporation
  • 29. The Premier Event for Software and Systems Innovation www.ibm.com/software/rational29 © 2012 IBM Corporation
  • 30. The Premier Event for Software and Systems Innovation Daily iPod Touch giveaway  Complete your session surveys online each day at a conference kiosk or on your Innovate 2012 Portal!  Each day that you complete all of that day’s session surveys, your name will be entered to win the daily IPOD touch!  On Wednesday be sure to complete your full conference evaluation to receive your free conference t-shirt!30 © 2012 IBM Corporation
  • 31. The Premier Event for Software and Systems Innovation Acknowledgements and disclaimers Availability: References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. © Copyright IBM Corporation 2012. All rights reserved. – U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. IBM, the IBM logo, ibm.com, Rational, the Rational logo, Telelogic, the Telelogic logo, Green Hat, the Green Hat logo, and other IBM products and services are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml If you have mentioned trademarks that are not from IBM, please update and add the following lines: [Insert any special third-party trademark names/attributions here] Other company, product, or service names may be trademarks or service marks of others.31 © 2012 IBM Corporation
  • 32. The Premier Event for Software and Systems Innovation www.ibm.com/software/rational© Copyright IBM Corporation 2012. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind,express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall havethe effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBMsoftware. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilitiesreferenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or featureavailability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business MachinesCorporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 32 © 2012 IBM Corporation