jbpm5 developer guide

364 783 0
jbpm5  developer  guide

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

www.it-ebooks.info jBPM5 Developer Guide A Java developer's guide to the JBoss Business Process Management framework Mauricio Salatino Esteban Aliverti BIRMINGHAM - MUMBAI www.it-ebooks.info jBPM5 Developer Guide Copyright © 2012 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: December 2012 Production Reference: 1101212 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-84951-644-0 www.packtpub.com Cover Image by Asher Wishkerman (wishkerman@hotmail.com) www.it-ebooks.info Credits Authors Mauricio Salatino Esteban Aliverti Reviewers Mariano Nicolas De Maio Maciej Swiderski Demian Calcaprina Acquisition Editor Joanna Finchen Lead Technical Editor Susmita Panda Technical Editors Charmaine Pereira Pooja Pande Copy Editors Aditya Nair Brandt D'Mello Alda Paiva Project Coordinator Michelle Quadros Proofreader Stephen Silk Indexer Monica Ajmera Graphics Aditi Gajjar Production Coordinator Shantanu Zagade Cover Work Shantanu Zagade www.it-ebooks.info www.it-ebooks.info Foreword Business Process Management (BPM), in general, is not something you learn overnight. I personally consider it more like learning a new language, where you rst have to spend some time getting familiar with the basics and gradually extend your vocabulary. Learning or staying up-to-date with some of the latest technology changes has never been easy. It might not always be easy to nd a good overview, detailed information on the web, or examples that explain the concepts in detail. A book like this denitely helps a lot by starting with the basics and gradually diving more into the details. The jBPM project—while it might have started as a simple, open source workow engine—has grown signicantly over the last few years. jBPM uses a lot of the same approaches and provides solutions similar to the way other BPM vendors are applying the BPM methodology. With the arrival of the BPMN 2.0 specication, which is being supported by many different vendors nowadays, there is even a (business user friendly) language for dening business processes that is shared across vendors. So, there is a huge amount of generic BPM knowledge for you to learn. But jBPM also has its own key characteristics (for example, how it integrates business processes with business rules and complex event processing in a unique way), and only on learning these will you be able to access the full power of the project. I have known Mauricio and Esteban for quite a few years now, as they have been working in the jBPM and Drools community for a long time already. I met them a few times over the years, and recently had the privilege of being able to hire Mauricio as part of the core team. He's very enthusiastic, and combines this with a deep technical knowledge of all the internal details, which makes him one of the best evangelists in our project. For that reason, he received two JBoss Recognition Awards for his work on new features and bug xing for the jBPM project in 2011. Esteban received a similar one in 2012 for his work on new features. www.it-ebooks.info Mauricio and Esteban have done a great job in this book in starting from the basics; by rst introducing BPM as a discipline, exploring the details on how to then start modeling your rst few processes while learning the language, and then going deeper into specic features and tools that are built around that. Some of the chapters go into a lot of detail on specic components (for example, human task management), so there is a lot of information for those who are looking for some of these details as well. Without a doubt, the authors have deep technical knowledge of all the internal technical details of the project. I believe they have made a great mix of rst explaining some of the concepts in an abstract way and then jumping into details with real code and by using realistic examples. The emergency service example and many others had already made Mauricio famous in the jBPM community, before he joined the project full-time. So I hope this book will help you in getting a better understanding of the concepts behind the jBPM project, although this might require a second read of some of the chapters, as is stated in the rst chapter. But I believe it will also provide you with some of the answers when you're deep into the coding already and are looking for that example on exactly how to do that one thing you've been ghting with for several hours. Kris Verlaenen jBPM Project Lead JBoss, by Red Hat www.it-ebooks.info About the Authors Mauricio Salano (a.k.a. Salaboy) has been an active part of the Java and open source software community for more than eight years. He got heavily involved in the JBoss jBPM and Drools projects as a community contributor ve years ago. After publishing his rst book about jBPM for Packt Publishing, he was recognized as a valuable member of both projects at the JBoss Community Awards 2011. During the last three years, Mauricio has being teaching and consulting on jBPM and Drools in America and Europe. In 2010, he co-founded Plugtree ( www.plugtree.com), which is a company that provides consultancy and training around the world. Since then, he has participated in international conferences such as Java One, Rules Fest, Jazoon, JBoss In Bossa, and RuleML, as the main speaker. He is now a Drools and jBPM Senior Software Developer at Red Hat / JBoss, fully dedicated to moving these projects forward. Mauricio is now based in London. In his free time, he passionately promotes the open source projects he is using, and he is very active in the community forums on these projects. He also runs his personal blog ( http://salaboy.com) about jBPM, Drools, and articial intelligence. I would like to thank Esteban for joining me in writing this book; he is an invaluable friend and a skilled professional. I also want to thank a friend, Diego Naya from OSDE, for his constant support of the Drools and jBPM community. Last but not least, I would like to thank all my blog followers and the Drools and jBPM community members, who are always pushing the boundaries to make these projects better. www.it-ebooks.info Esteban Aliver is an independent IT Consultant and Software Developer with more than eight years of experience in the eld. He is a fervent open source promoter and developer with meaningful contributions to JBoss Drools and jBPM5 frameworks. After he got his Software Engineer degree in Argentina, he started working at local IT companies fullling different roles ranging from Web Developer to Software Architect. In 2009, while working for Plugtree, he was introduced to the JBoss Drools and jBPM5 projects. Over the next three years, he became one of the lead consultants inside Plugtree, providing services to its most important clients all around the world. A former Professor of Java and object-oriented programming at Universidad de Mendoza, Argentina, he decided to continue with his passion for education outside the academic eld by co-authoring the jBPM5 Community Training and Drools 5 Community Training online courses. The urge to share his knowledge and experience led him to participate as a speaker and co-speaker at several international conferences, such as Java One Brazil, RuleML, October Rule Fest, and various Drools and jBPM summits. In JUDCon 2012, Esteban was recognized as a JBoss Community Leader during the JBoss Community Recognition Awards, as a way to acknowledge his contributions to Drools framework. Currently located in Germany, he works as an independent Drools/jBPM Consultant and Developer. During his free time, he enjoys contributing to Drools and jBPM projects and in helping other people to embrace these technologies. In addition, Esteban has a personal blog ( http://ilesteban.wordpress.com), which he uses to publish his work and discoveries on his journey through the open source world. My contributions to this book would not have been possible without all the "mentors" I have had in my life: professors, colleagues, friends, and family. Their support, knowledge, and experience have made this book possible in one way or another. I would also like to especially thank Diego Naya, an open source visionary who taught me that companies are not just about money. The most important acknowledgment is to Mauricio for giving me the opportunity to help him during the amazing adventure that was the writing process of this book. www.it-ebooks.info About the Reviewers Mariano Nicolas De Maio is a Software Engineer who graduated from Argentinian Enterprise University (UADE, from its initials in Spanish). He has over eight years of experience in Java and open source frameworks. He has been working with Drools and jBPM for the past three years, and has collaborated with the Drools and jBPM projects by adding extensions to the Human Task API's jBPM implementation and an initial implementation of the jBPM Form Builder (it can currently be found at https://github.com/droolsjbpm/jbpm-form-builder). He is happily married and taking care of a beautiful baby daughter. He is currently working at Plugtree ( http://www.plugtree.com) as a Solutions Architect for all jBPM- and Drools-related projects. I would like to thank Mauricio and Packt Publishing for their condence in me to review this book, as well as my wife and baby girl for putting up with me during the overtime I took to do it. Maciej Swiderski is a jBPM Core Developer and enthusiast of open source software, especially in the Business Process Management domain. He has over eight years of experience in software development, and over ve in the BPM area. He has helped many companies ease their way into adopting BPM technologies. You can nd the latest information on his blog at http://mswiderski.blogspot.com, and you can get in touch with him on the ofcial jBPM IRC channel #jbpm at irc.freenode.net. www.it-ebooks.info [...]... technical overview [ ii ] www.it-ebooks.info 81 Table of Contents Chapter 4: Knowing Your Toolbox Setting up our environment Downloading the jBPM5 installer Running the jBPM5 installer Installed tools' description JBoss Application Server Drools Guvnor jBPM5 process server jBPM5 GWT console Web process designer Eclipse IDE – evaluation sample project jBPM GWT console – evaluation sample process jBPM GWT console... process instance One session per process category Multiple sessions' coordination Summary [ vi ] www.it-ebooks.info 309 313 314 316 316 324 326 329 Preface The jBPM5 Developer Guide book was written with the main goal of providing a comprehensive guide to understanding the main principles used by the jBPM project to build smarter applications using the power of business processes This book covers important... 229 Chapter 9: Smart Processes Using Rules 257 Why we need persistence mechanisms Persisting long-running processes Persistence in jBPM5 But how does it work internally? Why we need a transaction mechanism Simple jBPM5 persistence and transactions configuration Advanced jBPM5 persistence and transactions configuration How much robustness do we need? Frequently asked questions Summary Good old integration... "simple-to-very-complex" approach will be used in the examples to reach real-life solutions with real-life complexity The source code of these examples can be found in github: https://github.com/Salaboy /jBPM5- Developer- Guide/ archive/1.0.Final.zip Not all of the lines of code will be explained here The examples are created to show the common pitfalls that you often find during the first adoptions of the tool;... for Java developers and architects who want to start developing applications using jBPM jBPM 5 is a very flexible framework; but with this flexibility comes architectural and design decisions that we need to make when we start using it This book offers a complete reference to all of the components distributed with jBPM 5.4.0.Final community version, and it can be used as reference material to guide a... jBPM 5.4.0.Final community version, and it can be used as reference material to guide a team of developers in building efficient solutions using business processes, business rules, and complex event processing After reading this book, you will have a good understanding of jBPM 5 architecture and components jBPM5 is a Red Hat lead open source community project and is fully supported through JBoss BRMS... will improve the way you design and architect solutions Nowadays, Business Process Management (BPM) is becoming something that every developer needs to understand BPM is not only about coding or application development, but also about improving how a company works We, as developers, need to understand this in order to start using BPM-oriented tools and frameworks The main goal of BPM is to provide visibility... great applications using jBPM5 Important definitions and concepts are highlighted throughout this book, which makes it easier to find solutions to new problems when they arise As soon as you start adopting these important concepts, you will notice a change in the way you find solutions, model situations, and build applications At this point, it is of great significance for developers to start teaching... terms with concrete references to jBPM5 Standard specifications – introduction, analysis, and explanations Based on industry experience and the collaboration of different groups of companies, standard specifications are created to define a common baseline to be shared and applied in new developments This book introduces two of the main standard specifications behind jBPM5: the BPMN 2.0 specification... know what those situations are and how to deal with them [9] www.it-ebooks.info Why Do We Need Business Process Management? jBPM5 – technical details and common practices Third, but no less important, this book will cover a complete list of the most important technical topics inside jBPM5, which will be discussed and demonstrated in practice A "simple-to-very-complex" approach will be used in the examples . www.it-ebooks.info jBPM5 Developer Guide A Java developer& apos;s guide to the JBoss Business Process Management framework Mauricio Salatino Esteban Aliverti BIRMINGHAM - MUMBAI www.it-ebooks.info jBPM5 Developer. 94 Downloading the jBPM5 installer 94 Running the jBPM5 installer 96 Installed tools' description 97 JBoss Application Server 97 Drools Guvnor 98 jBPM5 process server 99 jBPM5 GWT console. and Software Developer with more than eight years of experience in the eld. He is a fervent open source promoter and developer with meaningful contributions to JBoss Drools and jBPM5 frameworks.

Ngày đăng: 05/05/2014, 14:29

Mục lục

  • Chapter 1: Why Do We Need Business Process Management?

    • Theoretical background

      • Standard specifications – introduction, analysis, and explanations

      • jBPM5 – technical details and common practices

      • BPM conceptual background

        • Business processes

        • Sequence of business activities

        • Activities are performed by business users and business applications

          • Humans and systems/applications behave differently

          • Humans and systems/applications can be classified differently

          • Achieving a business goal

          • The Business Process Management (BPM) discipline

            • BPM stage 1 – discovering your business processes

            • BPM stage 2 – formalizing your new processes

            • BPM stage 3 – implementing your technical assets

              • Business entity model

              • Coordinating and orchestrating activities

              • Applying BPM in the real world

                • BPMS checklist

                • Chapter 2 : BPM Systems Structure

                  • Key components in a BPMS

                    • BPMS core

                      • The semantic module

                      • Process engine execution mechanisms

                      • Facts about the two approaches

                      • Human Task Component

                        • Human tasks – life cycle

                        • Process engine components summary

                        • Components inside jBPM5

                          • Knowledge-centric APIs

                            • Knowledge Builder

                            • BPM systems surrounding topics

                              • Service-oriented architecture

                              • WS-BPEL and service orchestration

Tài liệu cùng người dùng

Tài liệu liên quan