Freenet project ralf_sigmund_opitz_activiti_days_2012

  • 424 views
Uploaded on

agile, test Driven Process Solution development

agile, test Driven Process Solution development

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
424
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
9
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Please do not SUPER SIZE ME enterprise integration using the Camunda Fox Plattform Ralf Sigmund OPITZ CONSULTING Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 1
  • 2. Project Goal: Orchestrate Several BackendSystems in long running processes • Customer Frontend • Customer Database • Credit Rating Services • Product Systems • Email, Dating, Portal.. • Billing SAP • Callcenter • Mail-Gateway Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 2
  • 3. Architecture Goal:Reduce Costs compared to former individual solution Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 3
  • 4. Project Constraint:fixed Going Live DateFreenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 4
  • 5. freenet Mindset agile MethodologyDevelopment Java EE Team Skills JBoss, Open Source MySQL Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 5
  • 6. What does agile mean anyway?• Shared knowledge / Transparency• Everyone can contribute to their full potential• Everyone can take Responsibility and Commit to GoalsSo we need:=> Transparent Requirements=> Transparent Project Status Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 6
  • 7. BPMN 2.0 is agile ;-) BPEL is notFreenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 7
  • 8. Everyone needs Access to the Technical Model. What’s Your Dream Tool? Business Developer User (Nerd) Integrates with Ease of use Code Context, Comments, XML Editing Glossary Graphical Model is code Fox Designer History /Diff Versioning SCMSignavio Repository included Git/Subversion Git Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 8
  • 9. Transparency to the Business User not only at Design Time Monitori TransparModel Engine ng ency Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 9
  • 10. There is more than one type of Process Solution• Executing & Monitoring Processes• Controlling Processes• Human Workflow freenet Transparency • User tasks • Organisational roles • Task Escalation Control • Substitution rules Human Workflow • Minimize human workflow! Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 10
  • 11. Choosing The Platform DeveloperFunctionality Transparency Testabilty friendliness Business Automated Process Engine compatible BPMN Open Source Module Tests 2.0 modelling Process Runtime Monitoring and SCM based Environment Controlling Application Standard Toolchain Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 11
  • 12. Activiti Out of the Individual BoxFreenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 12
  • 13. Suites (IBM, Oracle,..) Out of the Individual BoxFreenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 13
  • 14. camunda fox Out of the Individual Box Monitoring / Control Workflow Logic Application Powerful Runtime User Task Uis Environment Integration / APIs Adapter Process Engine ProcessFreenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 14
  • 15. JBOSS AS7 as Runtime Environment• From self Contained to everything is provided – JPA 2.0, JAX-RS, Guava, Apache Commons, CDI,.. might be good enough• Open Source (really!)• Useful Architecture to start from• Fox adds Activiti in a sensible way Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 15
  • 16. Function Collaboration ilities Process Design Testability engine Runtime Monitoring ModifiabilityEnvironment /Controlling Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 16
  • 17. So hopefully I convinced You…that the fox additions to Activiti make it evenmore suitable for agile ProjectsGenerate Business value earlierMaximize Transparency Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 17
  • 18. What about transparent project progress?DONE = it’s tested Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 18
  • 19. Testing with Arquillian, Jenkins, Mockito… end2End / • Test Department Integration Test Process Logic • Ohne Services (Module Test) • Ohne Subprozesse • Integration Services externer Services (Module Test) • Schnittstellen Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 19
  • 20. Test Strategy• Focus on single item to test• Maximize Coverage of Item Under Test• Start with Happy Path Test Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 20
  • 21. Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 21
  • 22. Shrinkwarp does bpmn20Goal: Replace Sub process with Mock ProcessShrinkwarp defines the Deployment Unit: Replace Sub process Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 22
  • 23. Mocking with DelegatesSimple Mock ProcessEL Injected Mock Delegate Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 23
  • 24. Preparing the Test with Mockito Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 24
  • 25. Assert the actual process flow with Mockito Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 25
  • 26. Java CDI Magic – compare this with BPEL, XPATH, XQUERY @Inject private BusinessProcess businessProcess; Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 26
  • 27. Contextual Business Process Managemet Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 27
  • 28. What about transparent project progress?DONE = it’s testedAnswer:We can use all state of the Art stuff wealready know. Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 29
  • 29. Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 30
  • 30. Common MindsetFreenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 31
  • 31. Thank You! OPITZ CONSULTING Hamburg GmbH Dr. Ralf Sigmund – Solution Architect Butendeichsweg 2https://github.com/sistar/camunda-fox-demo-app 21129 Hamburg Telefon: +49 40 741122-1344Twitter @sistar – tweet if you would like the full testing example Mobil: +49 173 5100570 ralf.sigmund@opitz-consulting.comKudos to @codescape for the sample code Freenet Customer Case Study @ Activiti Day Berlin 2012 © OPITZ CONSULTING GmbH 2012 Seite 33