Upload
salaboy-salaboy
View
6.634
Download
0
Embed Size (px)
DESCRIPTION
For more information visit:http://salaboy.wordpress.com
Citation preview
jBPM5 Community Training Sponsored by Plugtree
Module 2.5: BPM For Developers
jBPM5 Community Trainingversion: 1.0-SNAPSHOT
Release Date: 01/28/2011Under The Creative Common License
Module 2.5: BPM For Developers
jBPM5 Community Training Course by Mauricio "Salaboy" Salatino is licensed under a Creative Commons Attribution
3.0 Unported License.Based on a work at salaboy.wordpress.
com.Permissions beyond the scope of this
license may be available at http://salaboy.wordpress.com/.
Agenda
What is Business Process Management?Business Process != WorkflowMain StagesBPM Systems
Companies EcosystemsHow does BPM affect my job?
What does Process mean for us?
Process:
Set of ordered actions that tends to transform an input to a desired output
What does Business mean for us?
Business
Relative to a domain, company or a scoped scenario, where certain rules and actions needs
to be applied to achieve a goal.
What does Business Goal mean for us?
Business Goal
Objective to be satisfied inside the business scope that gives to the company a profit/benefit in
some way.
Business Process
Business Process
Sequence of actions performed by humans and systems to achieve a business goal.
Business Process Example
Business Process Management
Business Process ManagementObviously when we have multiple Business Processes we need to manage them!
HistoryMain Stages
Business Process Management History
Business Process Management HistoryWas born more than 30 years agoFocused on improve how companies workWorkflows, person to person interactions come firstA business related approach come later with high level conceptsThe BPM discipline was created to provide a framework where business processes can be discovered and improved over the years
Business Process Management Stages
Business Process Management StagesStage #1: Discover (Quality)Stage #2: Formalize (Quality)Stage #3: Implement (Technical) -> Devs!!!Stage #4: Runtime (Technical) -> Devs!!!
Stage #5: Monitor (Decision Making)Stage #6: Improve (Quality)
BPM Cycle
BPM Iterative cycle
BPM Systems
BPM SystemsYou can do the whole process with a pen and paperOr you can use a Business Process Management System
It gives you a set of tools to implement each stageDevelopers needs to understand the key features of a Process EngineDevelopers needs to understand the tooling that the BPMS provides them
BPM Systems == Systems Integration?
BPM Systems == System Integration?BPM Systems helps us unifying the way that companies do the workBPM Systems facilitate the integration and interaction between systems and human actorsBPM Systems helps and encourage the reutilization of componentsBPM Systems facilitate the changes that needs to be done over the business processes to optimize how the company is workingLet's see some company ecosystems to understand how a BPM System can help
Companies Ecosystems
Companies EcosystemsWe will see some scenarios that we can find and how people feels about themCommon issues and good things about themHow BPM fits in these ecosystems and what changes helps people to feel better
Companies Ecosystems (Devs)
Ecosystem #1:
Companies Ecosystems
Ecosystem #1: Common Situation for developers
Developer Perspective
Developer Mental StagesStage #0: Great I'm in a new Project! Stage #1: DepressionStage #2: Where is all the documentation?Stage #3: no docs? -> create a documentation projectStage #4: SOA + ESBs?, let's try with that Stage #5: Let's do it all over again (don't reuse nothing)
Companies Ecosystems (Devs)
Ecosystem #2: SOA + ESB Style
Developer Perspective
SOA + ESB Style for DevelopersEncourage reutilizationStandardize and hide communications between different applicationsIf the services are well documented, decoupled and well focused everything is easyYou need to know how to expose legacy apps if they don't have an exposed interfaceThe ESB will deal with different protocols of communication
Developer Perspective (Common Issues)
Common IssuesDevelopers says that they like re-utilization We all prefer new or known technologiesWe all prefer using and researching new stuffWe don't like to review or modify old code 99.999999% of the times companies have legacy systemsDEAL WITH IT!
Companies Ecosystems (End Users)
End Users Perspective of the Ecosystem
Companies Ecosystems (End Users)
New Application
End User Perspective
End User Mental StagesStage #1: NegationStage #2: The new system doesn't do the jobStage #3: Why should I do the same task in different systems? Why should I have two different users? Really, but I need to put my password twice?Stage #4: Ok I will try it, but it will take me more time to understand it
New/Trainee End User Perspective
New/Trainee End User Mental StagesStage #1: OMG! I will do my best to understand how to work hereStage #2: I don't really understand what to do next for a particular situationStage #3: I still don't understand what I'm doing and Why I'm doing thisStage #4: I need a new Job
New/Trainee End User Perspective
End Users Life CycleWe end up with a group of expert end users that knows how to solve business situations with the current systemsThey are afraid of new systemsNew End Users can't do their tasks because they need to learn too much thingsTraining new end users takes too much time
How BPM fits for Everyone
How BPM fits for everyoneBusiness processes represent
The steps required to do a specific workGreat for End Users, New End Users and Managers
How to coordinate systems (Systems Integration) and human interactions
Great for developers and re-utilizationEnd Users will end up with an Unified User InterfaceDevelopers will have an unified way of doing new developments/adding functionality
How BPM fits for Everyone
How BPM fits for End Users
How BPM fits for End UsersTask Lists Oriented User InterfacesIt's easy to know what tasks have each role inside the companyJust one way of doing things, unified, in the same placeThe task lists guide you through your tasks
How BPM fits for End Users (Task List)
How BPM fits for End Users (Task List)
How BPM fits for End Users (Task Form)
How BPM fits for End Users (Task Form)
How BPM fits for Developers
How BPM fits for DeveloperEasy to maintainDecoupled from the application codeEncourage re-utilization of the communication mechanisms and connectorsChanges in the business processes don't affect the application neither the UI
How BPM fits for Developers
How BPM fits for Developer
How BPM fits for Developers
How BPM fits for DevelopesDevelopers will be in charge of
Create connectors for different applications (or use the ESB and configure each new system)Define the technical aspects for each task type interface Configure the environment to run the business processesMaintain the business process definition technical assets
Conclusions
ConclusionsBPM is a discipline that can improve how a company is working dramatically BPM Systems are tools that everyone in the software industry must knowBPM Systems can be used for integration but offers more than that.
Related Links
You can find more information, examples, tutorials and more in:
Salaboy Blog http://salaboy.wordpress.com
Esteban Bloghttp://ilesteban.wordpress.com
Plug Tree Bloghttp://www.plugtree.com
Questions?
Enjoy!
Contact us atwww.plugtree.com