وبلاگ بلیان

Process-Driven Applications with BPMN

معرفی کتاب «Process-Driven Applications with BPMN» نوشتهٔ Volker Stiehl (auth.)، منتشرشده توسط نشر Springer International Publishing : Imprint : Springer در سال 2014. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «Process-Driven Applications with BPMN» در دستهٔ بدون دسته‌بندی قرار دارد.

How can we optimize differentiating business processes and exploit their full potential? Here Volker Stiehl provides answers, utilizing the various options that the BPMN (Business Process Model and Notation) standard offers for planning, implementing, and monitoring processes. The book presents an approach for implementing an architecture for applications that strives to find a balance between development and maintenance costs, sustainability, scalability, and fault tolerance; that meets flexibility requirements without becoming inordinately complex itself; and that keeps the end application as abstract as possible from the system landscape in which it operates. Based on the semantic enhancements found in version 2.0 of the BPMN standard, which have made it possible to execute process models, his approach exploits BPMN to create and run complete application architectures. In this context, BPMN is not just used to model the business processes of the application, as the “B” in BPMN might suggest; but also to model and execute the integration processes between the systems. Throughout the book, the software package SAP Process Orchestration is used to illustrate the implementation of the proposed architecture, yet all recommendations are intentionally kept generic so that they can be implemented on any other comparable platform as well. Software architects, IT managers, software developers and project managers, as well as students of information and business technology will find the book a valuable resource. The proposed application architecture offers them a detailed blueprint, the principles of which they can use to plan and implement process-driven distributed applications. Introduction -- Definition of Process-Driven Applications -- Architecture of Process-Driven Applications -- Implementing the Basic Architecture of Process-Driven Applications -- Advanced Concepts for Architecture Support in Process-Driven Applications -- Conclusion and Outlook. by Volker Stiehl. Foreword 6 Preface 10 Acknowledgments 14 Contents 16 1: Introduction 19 1.1 Enterprise Application Software in the Age of Globalization 19 1.2 Book Structure 24 1.3 SOA and Process-Driven Applications 25 1.3.1 Commonalities 26 1.3.2 Differences 27 1.3.3 Process-Driven Application, Process-Driven Architecture 30 2: Definition of Process-Driven Applications 31 2.1 A Brief History: From xApps to Process-Driven Applications 32 2.2 Process-Driven Applications in Comparison with Alternative Application Categories 35 2.2.1 Requirements for Enterprise Application Software in Distributed Environments 36 2.3 Definition and Properties of Process-Driven Applications 37 2.4 The Role of BPMN (Business Process Model and Notation) for Process-Driven Applications: Basics 41 2.4.1 BPMN Core Elements 44 2.4.1.1 Semantics of Process Models 45 2.4.1.2 Events 46 2.4.1.3 Gateways 47 2.4.1.4 Activities 47 2.4.2 Explanation of the Process Using a Simplified Order Process 48 2.5 Example Processes for Process-Driven Applications 51 2.5.1 Master Data Processing 51 2.5.2 Troubleshooting in Project Management 53 2.5.3 Resource Planning for Shift Workers 55 2.5.4 Damage Reports in the Public Sector 57 3: Architecture of Process-Driven Applications 60 3.1 Methodical Approach: Top-Down 61 3.2 Specification of Process-Driven Applications 65 3.2.1 General Information About the Process-Driven Application 66 3.2.2 Process Information 67 3.2.2.1 General Process Information 68 3.2.2.2 Involved Process Roles 69 3.2.2.3 Visualization of the Process Flow 69 3.2.2.4 Detailed Information About the Process Steps 72 3.2.2.5 Description of the Data Flow Within the Process (Process Context) 72 3.2.3 Exception Handling 73 3.2.4 Business Objects 74 3.2.5 User Interfaces 76 3.2.6 Services 77 3.2.7 Importance of the Canonical Data Model 80 3.2.8 Cooperation Between Business and IT Experts 83 3.3 Introduction to the Basic Architecture of Process-Driven Applications 84 3.3.1 Evolution of a Business Model into an Executable Process 84 3.3.2 Advantages and Disadvantages of a Process-Driven Architecture 91 3.3.3 Separation of Business Processes and Technical Processes 93 3.3.4 Loose Coupling 95 3.3.4.1 Physical Connection 95 3.3.4.2 Communication Style 96 3.3.4.3 Data Model/Type System 97 3.3.4.4 Binding 97 3.3.4.5 Platform Specifics 98 3.3.4.6 Interaction Pattern 98 3.3.4.7 Transaction Security 99 3.3.4.8 Control of Business Logic 99 3.3.4.9 Versioning 100 3.3.5 Task Distribution and Interaction Between the Process-Driven Application and the Service Contract Implementation Layer 101 3.3.5.1 Process-Driven Application (Business Composition): Focus on User-Centric Processes 101 3.3.5.2 Service Contract Implementation Layer (Technical Composition): Focus on Integration-Centric Processes 106 3.3.5.3 Interaction Between the Process-Driven Application and the Service Contract Implementation Layer 110 3.3.5.4 Including an ESB in the Service Contract Implementation Layer 117 3.4 Service Repositories and Process-Driven Applications 123 4: Implementing the Basic Architecture of Process-Driven Applications 127 4.1 Significance of BPMN for the Implementation of the Service Contract Implementation Layer 127 4.1.1 Events 128 4.1.2 Parallel Processing 129 4.1.3 Exception Handling 133 4.1.3.1 Time Monitoring 134 4.1.4 Collaborations and Message Exchange 139 4.1.5 Transactions and Compensation 140 4.2 Example Implementation of the Basic Architecture of a Process-Driven Application as Proof of Concept 143 4.2.1 SAP Process Orchestration 144 4.2.2 Implementation Scenario: Simplified Order Process 146 4.2.3 Basic Development Steps 149 4.2.3.1 Business Process and Technical Process 149 4.2.3.2 Data and Data Types 152 4.2.3.3 Services 153 4.2.3.4 Persistence 156 4.2.3.5 User Interfaces 158 4.2.3.6 Supplementary Implementation Details 162 4.2.3.7 Overview in Composite Designer 172 4.2.4 Runtime Behavior of the Example Scenario 174 4.2.5 Role of Model-Driven Development 185 4.3 BPMN Implementations of Different Vendors 185 4.4 Version Management 187 5: Advanced Concepts for Architecture Support in Process-Driven Applications 189 5.1 Locking Behavior of the Connected Systems 189 5.2 Idempotence 192 5.3 Events 193 5.4 Error Handling 196 5.5 Wizard UIs vs. UIs in Process Steps 198 5.6 Patterns 202 5.6.1 Composition Patterns 203 5.6.2 Integration-Centric Patterns 212 5.6.2.1 Aggregator Pattern 213 5.6.2.2 Resequencer Pattern 222 5.6.3 Enhancement Proposal for BPMN for Dedicated Modeling of Integration Processes 226 5.6.3.1 Pattern Symbols as BPMN Language Extensions for Meaningful Representation of Integration Processes 227 5.6.3.2 Aggregator Pattern 229 5.6.3.3 Content Enricher Pattern 232 5.6.3.4 Content Filter Pattern 233 5.6.3.5 Message Translator Pattern 234 5.6.3.6 Content-Based Router Pattern 235 5.6.3.7 Message Filter Pattern 236 5.6.3.8 Recipient List Pattern 236 5.6.3.9 Resequencer Pattern 237 5.6.3.10 Splitter Pattern 240 5.6.3.11 Composed Message Processor Pattern 241 5.6.3.12 Scatter-Gather Pattern 243 5.6.3.13 Extensions for Messages 244 5.6.3.14 Using the Extended BPMN in Specific Scenarios 245 5.6.3.15 Comments on the Extended BPMN 249 5.7 More Flexibility by Combining Rules with Analytical Applications 250 5.7.1 Using Business Rules to Increase Flexibility 252 5.7.2 Using Business Rules in Technical Processes 264 5.7.3 Increasing Automation by Combining Business Rules and Analytical Applications 270 5.8 Process-Driven Applications and Unpredictable Process Flows 272 6: Conclusion and Outlook 291 6.1 Outlook 292 6.1.1 Increasing Flexibility Using Modification-Free Extensions 292 6.1.2 What About Cloud and On-Demand Computing , Software as a Service, Mobile Applications, and Main Memory Databases? 295 6.1.2.1 Software as a Service, On-Demand and Cloud Computing 295 6.1.2.2 Mobile Applications 296 6.1.2.3 Main Memory Databases 297 6.1.3 Does REST Have Implications for Process-Driven Applications? 298 Epilogue 301 Appendix A BPMN Notation 302 Appendix A.1 Core Elements of BPMN 302 Appendix A.2 Events 305 Appendix A.3 Gateways 306 Appendix A.4 Task Types 309 Appendix B Excursus on Service Management: A Comparative Study of Approaches 311 Appendix B.1 Three-Schema Architecture 311 Appendix B.2 Semantic Web Technologies 313 Appendix B.3 Self-Organization and Collective Intelligence 315 Appendix C List of Abbreviations 316 Appendix D GlossaryAll glossary terms marked with (*) are reproduced with the kind permission of Nicolai Josuttis (Josuttis 20... 319 References 334 Index 338 In this book, Stiehl shows how the BPMN (Business Process Model and Notation) standard can be used for planning, implementing, and monitoring processes. An approach for implementing an architecture for applications that strives to find a balance between development and maintenance costs, sustainability, scalability, and fault tolerance; that meets flexibility requirements without becoming inordinately complex itself; and that keeps the end application as abstract as possible from the system landscape in which it operates is explained. Throughout the book, the software package SAP Process Orchestration is used to illustrate the implementation of the proposed architecture, yet all recommendations are intentionally kept generic so that they can be implemented on any other comparable platform as well. -- Edited summary from book Front Matter....Pages i-xvii Introduction....Pages 1-12 Definition of Process-Driven Applications Process-driven applications Definition ....Pages 13-41 Architecture Process-driven applications Architecture of Process-Driven Applications....Pages 43-109 Implementing Process-driven applications Implementation the Basic Architecture of Process-Driven Applications....Pages 111-172 Advanced Concepts for Architecture Support Process-driven applications Architecture in Process-Driven Applications....Pages 173-274 Conclusion and Outlook....Pages 275-284 Back Matter....Pages 285-334
دانلود کتاب Process-Driven Applications with BPMN