professional k2 blackpearl - startseite€¦ · professional k2 blackpearl® holly anderson jason...

30
Professional K2 blackpearl ® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel Malherbe Jason Montgomery Colin Murphy Chris O’Connor Anthony Petro Eric Shaffer Mike Talley Wiley Publishing, Inc.

Upload: others

Post on 22-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Professional

K2 blackpearl®

Holly Anderson Jason Apergis

Sergio Del Piccolo Chris Geier

Codi KajiShaun Leisegang

Igor MacoriGabriel Malherbe

Jason MontgomeryColin Murphy

Chris O’ConnorAnthony Petro

Eric ShafferMike Talley

Wiley Publishing, Inc.

ffirs.indd vffirs.indd v 12/18/08 8:32:09 PM12/18/08 8:32:09 PM

Page 2: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

ffirs.indd ivffirs.indd iv 12/18/08 8:32:09 PM12/18/08 8:32:09 PM

Page 3: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Professional K2 blackpearl®

Introduction .............................................................................................. xxix

Part I: Introduction to K2 Blackpearl and Process-Driven Applications

Chapter 1: Introduction to BPM and the K2 Platform .......................................3

Chapter 2: Evolving Workflow and BPM into Process-Driven Applications ........13

Chapter 3: Designing Process-Driven Applications .........................................25

Chapter 4: Process-Driven Applications and K2 blackpearl .............................39

Part II: Architecture and Installation Options for K2 blackpearl

Chapter 5: Planning an Effective Deployment .................................................51

Chapter 6: Planning an Effective Development, Testing, and Staging Environment and Strategy ............................................................89

Part III: K2 blackpearl Process Planning and Design Essentials

Chapter 7: Building and Using SmartObjects ...............................................111

Chapter 8: Effective Process-Driven Application Planning .............................193

Chapter 9: Creating Your First Workflow ......................................................247

Chapter 10: Deploying Your Processes and SmartObjects ............................287

Chapter 11: Working with InfoPath and ASP.NET Forms ................................331

Chapter 12: Working with SharePoint ..........................................................433

Chapter 13: Working with Microsoft Office SharePoint Server ......................461

Chapter 14: The K2 Designers and Collaborative Process Design .................493

(continued)

ffirs.indd iffirs.indd i 12/18/08 8:32:06 PM12/18/08 8:32:06 PM

Page 4: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Part IV: Administration of K2 blackpearlChapter 15: Server and Component Administration ......................................525

Chapter 16: Administering Permissions and Security ...................................567

Chapter 17: Administering and Creating Security Providers ..........................609

Chapter 18: Disaster Recovery Planning ......................................................649

Chapter 19: Logging and System Reporting .................................................669

Chapter 20: Using the K2 Workspace and Reporting ....................................701

Part V: Advanced K2 blackpearl Concepts and Platform ExtensionsChapter 21: The K2 Event Bus ....................................................................747

Chapter 22: Advanced Topics in K2 blackpearl ............................................775

Chapter 23: Introduction to k2 connect .......................................................805

Appendix A: K2 blackpearl Tips and Tricks ..................................................823

Index ........................................................................................................ 871

ffirs.indd iiffirs.indd ii 12/18/08 8:32:09 PM12/18/08 8:32:09 PM

Page 5: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Professional

K2 blackpearl®

ffirs.indd iiiffirs.indd iii 12/18/08 8:32:09 PM12/18/08 8:32:09 PM

Page 6: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

ffirs.indd ivffirs.indd iv 12/18/08 8:32:09 PM12/18/08 8:32:09 PM

Page 7: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Professional

K2 blackpearl®

Holly Anderson Jason Apergis

Sergio Del Piccolo Chris Geier

Codi KajiShaun Leisegang

Igor MacoriGabriel Malherbe

Jason MontgomeryColin Murphy

Chris O’ConnorAnthony Petro

Eric ShafferMike Talley

Wiley Publishing, Inc.

ffirs.indd vffirs.indd v 12/18/08 8:32:09 PM12/18/08 8:32:09 PM

Page 8: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Professional K2 blackpearl®Published byWiley Publishing, Inc.10475 Crosspoint BoulevardIndianapolis, IN 46256www.wiley.com

Copyright © 2009 by Wiley Publishing, Inc., Indianapolis, IndianaPortions Copyright © 2009 SourceCode Technology Holdings, Inc. Patents pending. All rights reserved.

Published simultaneously in Canada

ISBN: 978-0-470-29305-8

Manufactured in the United States of America

10 9 8 7 6 5 4 3 2 1

Library of Congress Cataloging-in-Publication Data.

Professional K2 Blackpearl / Holly Anderson ... [et al.]. p. cm. Includes bibliographical references and index. ISBN 978-0-470-29305-8 (alk. paper) 1. K2 Blackpearl. 2. Application software—Development—Computer programs. 3. Business— Computer programs. I. Anderson, Holly, 1975- QA76.76.D47P7647 2009 005.365—dc22

2008048458

No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permissions.

Limit of Liability/Disclaimer of Warranty: The publisher and the author make no representations or warranties with respect to the accuracy or completeness of the contents of this work and specifically disclaim all warranties, including without limitation warranties of fitness for a particular purpose. No warranty may be created or extended by sales or promotional materials. The advice and strategies contained herein may not be suitable for every situation. This work is sold with the understanding that the publisher is not engaged in rendering legal, accounting, or other professional services. If professional assistance is required, the services of a competent professional person should be sought. Neither the publisher nor the author shall be liable for damages arising herefrom. The fact that an organization or Web site is referred to in this work as a citation and/or a potential source of further information does not mean that the author or the publisher endorses the information the organization or Web site may provide or recommendations it may make. Further, readers should be aware that Internet Web sites listed in this work may have changed or disappeared between when this work was written and when it is read.

For general information on our other products and services please contact our Customer Care Department within the United States at (877) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.

Trademarks: Wiley, the Wiley logo, Wrox, the Wrox logo, Wrox Programmer to Programmer, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. SourceCode, K2, K2 blackpearl, K2 blackpoint, K2 connect, K2.net, the K2 logotype and the four squares logo are trademarks and/or registered trademarks of SourceCode Technology Holdings, Inc. in the United States and other countries. All other trademarks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book.

Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books.

ffirs.indd viffirs.indd vi 12/18/08 8:32:10 PM12/18/08 8:32:10 PM

Page 9: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

About the Authors Holly Anderson is the product marketing manager for K2. Holly began working with K2 software in 2004 as a technical consultant building complex workflow applications for clients and joined K2 as a technical specialist in 2006. With her technical and marketing background, Holly is able to provide a unique perspective on K2 products for both business and technical audiences. You can reach her at [email protected].

Jason Apergis is a software consultant who has lived in the Washington, DC, area his entire life. Jason currently works for a Microsoft Gold Partner named RDA Corporation as a technical project manager and has worked for various other consulting firms like BearingPoint and AMS. One of Jason’s solutions, which integrated K2, BizTalk, SharePoint, and InfoPath, was nominated as a finalist for a Microsoft solution of the year award in 2006. Jason completed both his undergraduate and graduate degrees in Information Technology from Virginia Tech. Jason plays ice hockey on a weekly basis and is both an avid fan of the Washington Capitals and a Virginia Tech Football fan. Jason dedicates this book to his wife, Catherine, and both his children, Ethan and Caroline.

Sergio Del Piccolo is an experienced business process consultant and a partner at Avantage Partners in Vancouver, Canada. He has led business process integration engagements of all sizes and brings over 10 years of hands-on experience as a technical and business solutions architect. Sergio has acted as a trusted advisor for multiple clients, providing guidance and leadership on successful process-driven and integration solutions. As a well respected consultant within the community, Sergio has achieved a number of accreditations that have further established his expertise, including being a K2 Insider and a Microsoft Virtual Technical Specialist for BizTalk Server. He is an expert on the Microsoft Connected System and K2 platforms. Sergio leads the Partner Integrated Workflow program, focusing on getting organizations to streamline their business processes and helping them gain a competitive edge in today’s global market. You can reach him at [email protected], and you can take a look at his blogs at http://delpiccolo.com and http://avantagepartners.com/team-profiles/sergio-del-piccolo.

Chris Geier evangelizes K2, helps build and nourish the broader K2 community, and coordinates global readiness efforts internally. He’s worked in the technology industry for 14 years — for several companies, including Microsoft — and has focused primarily on infrastructure and security. Chris lives in the suburbs of Chicago with his ever-so-patient wife, Sara, and their three children: Leah-Rose, Carter, and Ella Claire. Chris is a history buff, ashamed to admit he loves reality television, and loves the soon to be world champion Chicago Cubs.

Codi Kaji is a technical writer for K2, where her main responsibility is translating the features and functionality of the K2 platform into things business people can understand, in other words, translating geek to human. With a background of consulting and training on various Microsoft based technologies, she enjoys the challenge of installing and testing the latest products and writing information that helps people get the most out of their K2 experience. Codi and her husband have three cats and enjoy fishing. When she’s not testing the latest build, writing words, or landing a trout, Codi enjoys the soothing craft of knitting. Watch out for the pointy sticks.

Shaun Leisegang is the presales manager for K2 and is responsible for technical presales across Europe. Shaun is responsible for product evangelism, solution design, and specifications as well as for solution consulting. Shaun has vast experience within the Microsoft ecosystem; designing and building .NET-based enterprise and system architectures that include workflow or business process automation as well as consulting and working with the full Microsoft stack of technologies. Shaun is a true stage

ffirs.indd viiffirs.indd vii 12/18/08 8:32:10 PM12/18/08 8:32:10 PM

Page 10: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

viii

performer of the IT world: immensely capable, adaptable, confident, an excellent communicator, who is equally comfortable in front of large crowds and intimate groups. Shaun has a passion for both people and technology, which allows him to convey dynamic new products in an infectious way, while at the same time knowing the IT business as a whole in order to speak authoritatively across multiple products and platforms. He began his career as a software developer, moved on to lead a team of application developers, and now runs a presales team where he has found a perfect mix between two of his passions: people and technology.

Igor Macori lives in Bologna, Italy, with his three girls (his partner and his two cats). He is cofounder and Training and Consulting Manager for GreenTeam (www.greenteam.it), an Italian Microsoft Gold Certified Partner founded in 1991. He has managed various IW Solutions projects (SharePoint, LCS/OCS, Project Server, WWF, and others) and completed various solutions implemented for enterprise companies and public sector organizations. He is a regular trainer and speaker for Italian Microsoft courses and events dedicated to partners and customers and has achieved various technical certifications since 1996 (MCP, MCSA, MCSE, MCTS SharePoint, MCAS, MCT, and MOS Master Instructor). In 2008, he received the Microsoft MVP (Most Valuable Professional) Award for Microsoft SharePoint Server — Architecture. He is the owner of one of most visited Italian SharePoint and Collaboration Internet Blogs (www.macori.it). He is co-organizer of the Italian SharePoint Technical Conference (www.sharepointconference.it). He has written 14 books about the Microsoft Office System and Microsoft Windows Vista, and since 2007 has been a K2 Insider.

Gabriel Malherbe is a .NET solutions architect in the Thames Valley, UK. He currently works with the amazing team of K2 professionals at Dynamyx, where they service some multinational clients across Europe in the manufacturing and financial sector. He built his process management experience by codesigning system integration components that are used by airports worldwide. Broadening his horizons, he and his wife, Sharm, moved to the UK where Gabriel has delivered K2 training and seminars since 2004. He is one of the founding members of the K2 Insiders program. He can be contacted at [email protected], and you can follow his K2 dedicated blog at http://nakedprogrammer.blogspot.com.

Jason Montgomery is a principal of Active Technologies Group, Inc. (ATGi — www.atgi.com), an international technology consulting firm based in Columbus, Ohio, working with clients ranging from Fortune 500 companies to government agencies, including the U.S. Department of Defense. His skills cover a broad range of technologies with specializations in information security, Microsoft technologies, Microsoft .NET, and K2 Workflow solutions, as well as Linux and FreeBSD system administration. Currently, Jason serves on the Global Information Assurance Certification (GIAC) Advisory Board as well as on the Global Information Assurance Professional (GSSP) Steering Committee for the .NET Security Certifications for SANS Institute. He additionally holds the CISSP Certification and the GIAC .NET Security (GNET) and GIAC Security Essentials (GSEC) Certifications.

Colin Murphy is a principal architect with RDA Corporation, is a Microsoft Gold Certified Partner, and has been working in the industry for about 12 years. Colin’s areas of specialization are Microsoft Office SharePoint 2007, Smart Clients, and Workflow. Colin has been working with K2.net 2003 since early 2006 on projects for a variety of clients.

Chris O’Connor began programming on a Commodore 64 as an avid 12 year old, entering listings from computer magazines. He has spent the last 15 years or so developing Web sites, Windows applications, and other solutions using Visual Basic, C#, SQL Server, and other products within the Microsoft arena. He is currently employed as a SharePoint solution architect and has implemented many SharePoint Content Management and Document Management Solutions, as well as K2.net 2003 and K2 blackpearl.

About the Authors

ffirs.indd viiiffirs.indd viii 12/18/08 8:32:11 PM12/18/08 8:32:11 PM

Page 11: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

ix

He is also a Microsoft Certified Professional and Microsoft Certified Application Developer, and K2 Insider. With so many new products and technologies from Microsoft, it’s hard to keep up; Chris follows with great interest to the happenings of Microsoft and the Web 2.0 community, especially with regard to SharePoint, Silverlight, and “Software+Services.” He updates a blog of SharePoint related articles, other technical bits and pieces, and fun and family at www.grumpywookie.com. To keep up with the K2 community, Chris hosts a K2-related blog, located at www.devk2.net. He is a keen photographer, with his favorite subjects being his wife and two young sons. Spending weekends with family is his favorite pastime, with house renovations, gardening, kids’ activities, and such. He can be contacted at [email protected].

Anthony Petro resides in Silverthorne, Colorado, and is the Technical Product Manager for K2. He started his professional career in the consulting world 14 years ago and has always remained focused on Microsoft technologies and solutions. He joined Microsoft in 2001 and spent the next 5 years heavily immersed in SharePoint Joint Development Programs bridging the gap between the product development teams in Redmond and the enterprise customers around the world. He was a strong contributor to the SharePoint community in its infancy and focused on teaching the masses about the complexities of search and enterprise scale issues and about using products such as K2 to fill the enterprise workflow gaps of SharePoint. He joined K2 in 2006 to help bring K2 blackpearl to market through early adopter programs that spanned the alpha and beta cycles through to RTM. Anthony remains actively involved in early adopter programs for K2 blackpoint and K2 connect, and in planning the future releases of all product lines.

Eric Schaffer has been working with K2 since early 2005 when he helped formalize the K2 North America technical support team. He now spends his time working on new ways to showcase the power of the K2 platform as a presales technical specialist with K2. Eric holds a bachelor’s degree in Computer Science from Washington State University. Prior to joining the K2 family Eric contracted with Microsoft in both the Xbox certification testing department and developer technical support department. Eric lives in Seattle with his wife, Dara, and daughter, Kayla.

Mike Talley joined K2 as a technical writer in February 2007, working on whitepapers, training content, wizard text, and a variety of other things in his time with K2. Prior to K2 he spent 8 years at Microsoft, where at various points he was a programming writer, beta lead, and support professional. While at Microsoft he worked with product teams on supportability issues and wrote about InfoPath, InfoPath Forms Services, SharePoint, and Excel. He currently resides in Highlands Ranch, Colorado, with his wife and two sons. You can reach him at [email protected].

About the Authors

ffirs.indd ixffirs.indd ix 12/18/08 8:32:11 PM12/18/08 8:32:11 PM

Page 12: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

ffirs.indd xffirs.indd x 12/18/08 8:32:11 PM12/18/08 8:32:11 PM

Page 13: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Acquisitions EditorKatie Mohr

Senior Development EditorKevin Kent

Development EditorJeff Riley

Production EditorKathleen Wisor

Copy EditorJeri Freedman, Foxxe Editorial Services

Editorial ManagerMary Beth Wakefield

Production ManagerTim Tate

Vice President and Executive Group PublisherRichard Swadley

Vice President and Executive PublisherBarry Pruett

Associate PublisherJim Minatel

Project Coordinator, CoverLynsey Stanford

ProofreaderNancy Carrasco

IndexerJack Lewis

Credits

ffirs.indd xiffirs.indd xi 12/18/08 8:32:12 PM12/18/08 8:32:12 PM

Page 14: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

ffirs.indd xiiffirs.indd xii 12/18/08 8:32:12 PM12/18/08 8:32:12 PM

Page 15: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Acknowledgments

K2 and the book’s authors wish to thank everyone who made this publication possible. K2 would like to extend a special thanks to each author who worked so hard on this, and also thanks to the authors’ families for giving them the time to work on this. We also need to send out a special thanks to the following people, without whom this book would not be possible:

Adriaan Van Wyk

Hennie Laubscher

Dennis Parker

Josh Swihart

Katie Mohr

Kevin Kent

Hubert Cheng

Pieter Janson

Johan Van Heerden

Lardus Brooks

Ben Fourie

Koos Du Preez

Wynand du Toit

Jaco Lubbe

Jan Joubert

Michael Erasmus

Leon Geldenhuys

Schalk de Jager

Bob Maggio

Joseph Dunagan

David Loomis

Murray Foxcroft

ffirs.indd xiiiffirs.indd xiii 12/18/08 8:32:12 PM12/18/08 8:32:12 PM

Page 16: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

ffirs.indd xivffirs.indd xiv 12/18/08 8:32:12 PM12/18/08 8:32:12 PM

Page 17: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

Introduction xxix

Part I: Introduction to K2 blackpearl and Process-Driven Applications

Chapter 1: Introduction to BPM and the K2 Platform 3

Defining Business Applications and Workflow 4A Very Brief History of Business Application Development 4Clarifying the Definition of Workflow 5

K2 and the K2 Platform 6K2 blackpearl: Three Key Features 6Anatomy of the K2 Platform 7

Process-Driven Applications, Today and Tomorrow 9Summary 10Notes 11

Chapter 2: Evolving Workflow and BPM into Process-Driven Applications 13

What Is BPM? 13A New Type of Application 17

Designed and Delivered by IT 18Business Collaboration with IT 18Business Designed, IT Delivered 19Business Empowered by IT 19

Approaching Process-Driven Application Design 20Evolving Workflow: Two Scenarios 20

Scenario 1: SOX Compliance 21Scenario 2: Design Review Process and LOB Integration 22

Summary 23Notes 23

Chapter 3: Designing Process-Driven Applications 25

The Typical Enterprise 26Getting into a Process 27

ftoc.indd xvftoc.indd xv 12/18/08 8:34:33 PM12/18/08 8:34:33 PM

Page 18: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xvi

Project Management Fundamentals 29Methodology and Approaches 30Linear vs. Nonlinear Processes 31Project Roles 32Time Management and Estimation 33Set Expectations 34

Defining the Business Requirements 35Process Questions 35People Questions 35Entities Questions 36Evaluating Potential Processes 36User Benefits and Process Considerations 37

Summary 38

Chapter 4: Process-Driven Applications and K2 blackpearl 39

A Closer Look at Key Benefits of the K2 Platform 39Wizards and Templates 40SmartObject and SmartObject Services 40Collaborative Designers 40SharePoint and Office Integration 41The Event Bus 41Reporting 41Extending the Platform and the API 42The API 42

Measuring Success and Achieving a High ROI 42Identifying Key Performance Indicators (KPIs) 42Calculating Your Return on Investment (ROI) 43The Intangible Benefits 45

Orienting the Business to Process Improvement 46Summary 48Notes 48

Part II: Architecture and Installation Options for K2 blackpearl

Chapter 5: Planning an Effective Deployment 51

K2 Architecture 52Client Components 52Server Components 53Architecture of the K2 Platform 55Databases: The Heart of K2 58

ftoc.indd xviftoc.indd xvi 12/18/08 8:34:33 PM12/18/08 8:34:33 PM

Page 19: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xvii

Building Your Deployment Plan 60Choosing a K2 Architectural Template 64

Small-Scale Architecture 64Medium-Scale Architectures 67Large-Scale Architectures 69

Integrating K2 into Your Existing Environment 72Active Directory Integration 74DNS 75Authorization and Authentication 76What Is Kerberos? 76The Requirements for Kerberos 79Planning Kerberos and K2 81Setting SPNs for Kerberos 83Kerberos Checklists 85

Summary 88

Chapter 6: Planning an Effective Development, Testing, and Staging Environment and Strategy 89

Methodologies and the Impact on Environments 90Formulating a Strategy 91Common Environment Configurations 91

Development Environment 93K2 blackpearl Deployment Versioning 96Testing Environment 97Staging and Production Environments 103

Debugging and Monitoring Strategies 104Error Reporting from the Workspace 104Error Reporting from Inside the Process 106Running the Server in Console Mode 107Debugging K2 blackpearl Components 107

Summary 108

Part III: K2 blackpearl Process Planning and Design Essentials

Chapter 7: Building and Using SmartObjects 111

SmartObjects Background 112SmartObject Architecture 112

The Advantages of SmartObject Architecture 114SmartObject Services 116

ftoc.indd xviiftoc.indd xvii 12/18/08 8:34:33 PM12/18/08 8:34:33 PM

Page 20: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xviii

Designing a SmartObject 117Creating SmartObjects 118Creating Associations 123Using SmartBox 128Creating Active Directory SmartObjects 131Composite SmartObjects and Associations 144Taking Advantage of SmartObject Agility 146Modifying and Deleting SmartObjects 146

Using a SmartObject in a Process 146Using a SmartObject Event 148Implementing a SmartObject Line Rule 151Configuring E-Mail and Destination Rule 156

Process-Generated SmartObjects 161Workflow SmartObjects 162Reporting SmartObjects 163Process SmartObject Associations 165SmartObject Process References 169

Advanced SmartObjects 172SmartObjects Are Not Cached 172Creating a SmartObject Instance 173Inserting with the .NET Data Provider for K2 SmartObjects 175Getting a SmartObject Instance(s) 178Getting a SmartObject Instance(s) with a Filter 179Getting SmartObjects with the .NET Data Provider 181Using SmartObjects with Required Method Parameters 182Using SmartObject Required Method Parameters with .NET Data Provider 183Writing a SmartObject Service 185

Summary 191

Chapter 8: Effective Process-Driven Application Planning 193

How to Start 194Selecting the Process 194Drawing It Out 195Taking the Next Steps 200

Process Design Principles 200Paths 200The “Who” 202The “What” 206The “How” 226The “When” 239

ftoc.indd xviiiftoc.indd xviii 12/18/08 8:34:33 PM12/18/08 8:34:33 PM

Page 21: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xix

Advanced Process Design 243Using the Spider Workflow Approach 243Building a Spider Workflow 243Watching the Spider in Action (an Example) 244Extending the Design 245

Summary 245

Chapter 9: Creating Your First Workflow 247

Getting Started with the K2 Designer for Visual Studio 248Introducing the Visual Studio IDE 249

K2 Studio Designer Toolbar 250K2 Object Browser 251K2 Toolbox Items 256K2 Design Canvas 257

Implementing the Workflow 257Workflow Overview 258Adding Roles 259Testing with Roles 261Adding Data Fields 261Adding Activities 262Adding Events 266Connecting Activities Using Line Rules 273Building and Deploying 275Setting Process Rights 276

Stepping through the Process 279Initiating the Workflow 279Completing a Workflow Task 279

Documenting the Process 283Summary 285

Chapter 10: Deploying Your Processes and SmartObjects 287

Simple Process Deployment 288Quick Deployment 288Deployment Dependencies 293Verifying Deployment 293Changing the Process Definition on the Server 295SmartObject and Process Projects 296Changing the Name of a Process or SmartObject 296Deployment Errors 296

ftoc.indd xixftoc.indd xix 12/18/08 8:34:34 PM12/18/08 8:34:34 PM

Page 22: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xx

The Environment Library 297Architecture of the Environment Library 298Creating Templates, Fields, and Environments 299Using Environments 303String Tables 309Planning Environments and String Tables 311

MSBuild Package 312Generating a Deployment Package 312Deploying a Package 313MSBuild File 314

Deploying SmartObject Services 317Deploying SmartObjects 323Deployment through Code 325

Summary 329

Chapter 11: Working with InfoPath and ASP.NET Forms 331

Client Event Forms within K2 332InfoPath 333ASP.NET 334Other Forms Technologies 334Which Should You Choose? 336Criteria Scorecard 342

Using InfoPath Forms 344Background 345Creating an InfoPath Process 346Working with InfoPath Data 375Advanced InfoPath XML Considerations 377Modifying the Process 379Archiving an InfoPath Form 381InfoPath and SmartObject Integration 385Good Design Considerations 393InfoPath Process Deployment 395InfoPath Integration Conclusion 398

Using ASP.NET Forms 398Initiating a Workflow from Code 399Customizing a Web Page Created via Forms Generation Client Event 404Displaying a Custom Web Page for a Workflow Task Form 407Completing an Activity from Code 412K2 Server Management from Code 414Viewing Activities for a Process Definition 418Worklist for Current User 426Additional Examples 431

Summary 432

ftoc.indd xxftoc.indd xx 12/18/08 8:34:34 PM12/18/08 8:34:34 PM

Page 23: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxi

Chapter 12: Working with SharePoint 433

An Overview of SharePoint 434Sites and Site Collections 434Content Types and Site Columns 435Lists and Libraries 436Solutions and Features 436What Are the Differences between WSS and MOSS? 437How K2 Integration Works 440

Using the K2 Features for SharePoint 442About the Approval Process 442Building the Process 443Starting Workflows Manually 449Starting a New Workflow 450Beyond the K2 Web Designer for SharePoint 451

Using the K2 Worklist Web Part 452Deploying the K2 Worklist Web Part 452Inserting the K2 Worklist Web Part on a Page 453

Using the K2 SmartObjects Feature 455Illustrating Some Example Scenarios 456

Site Creation and Maintenance 457Sending Records to the Records Center 457Automatic Process-Based Web Publishing 457InfoPath Client or Browser-Based Form to Start and Action Workflows 457Business Data Maintenance in SharePoint 457

Operational Benefits of SharePoint Integration 458Process Versioning 458Process Management 458Improved Workflow History Reporting 458Better Usability and Management of Tasks 458Integration of LOB Data 459

Summary 459Notes 459

Chapter 13: Working with Microsoft Office SharePoint Server 461

Using the K2 SharePoint Wizards 462Process Wizards 462Event Wizards 465

Using K2 SharePoint Integration for Enterprise Scenarios 474Using Web Content Management 475Using Search Results 477Working with the Records Center 480Using SmartObject Data with the Business Data Catalog (BDC) 483

ftoc.indd xxiftoc.indd xxi 12/18/08 8:34:34 PM12/18/08 8:34:34 PM

Page 24: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxii

Working with InfoPath Forms 490Summary 490Notes 491

Chapter 14: The K2 Designers and Collaborative Process Design 493

The Right Tool for the Right Person 493Know Your Role 495Sharing a Process with Other Designers 496

Designer Choices 499K2 Designer for Visio 499K2 Web Designer for SharePoint 504K2 Designer for Visual Studio 513Future Design Tools 516

Working Collaboratively 518Example Scenario 518Identify Roles and the Plan 519Manage to the Project Plan 519Source Code Control 519Communicate, Communicate, Communicate 521

Summary 521

Part IV: Administration of K2 blackpearl

Chapter 15: Server and Component Administration 525

Server Architecture 525Workspace Management Console 528General Workflow Server Settings 528License Management 530Environment Library and String Table Management 532Role Management 536Working Hours Management 538Process Instance Management 540Process Version Management 541Process Error Management 543Worklist Administration 547SmartObject Service Management 548Archiving 549Workspace Web Application Management 550

ftoc.indd xxiiftoc.indd xxii 12/18/08 8:34:34 PM12/18/08 8:34:34 PM

Page 25: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxiii

Runtime Services Management 552Workspace Application Pool 553Workspace Logging 553Report Administration 553Report Data Source Administration 556K2 SharePoint Component Administration 558

General K2 SharePoint Settings 559K2 SharePoint Feature Management 559K2 BDC Application Management 562K2 Tasklist Web Part Management 563

The Configuration Manager 564Summary 565

Chapter 16: Administering Permissions and Security 567

What Is Security? 568Integrity 568Confidentiality 569Availability 570Which Tenet of Security Is Most Important? 571The Three “A”s 571A Very Brief Introduction to Risk Analysis 572The Security Policy and Regulatory and Legal Compliance 573

Deploying a Secure K2 blackpearl Installation 575Organize, Plan, Test, and Document 576Securing the Environment 577The Discovery Service 591Securing K2 blackpearl Communications 591

The K2 blackpearl Security Landscape 592K2 Security Framework 592K2 Workspace Permissions 593K2 Management Console 595Environment Library Templates Security 599SmartObject Security 600SmartBox Security 601EventBus Security 603Programmers and Process Designers 603

Secure Development Practices 604Troubleshooting Security Issues 605

File and Registry Auditing 605Log Files 606

ftoc.indd xxiiiftoc.indd xxiii 12/18/08 8:34:35 PM12/18/08 8:34:35 PM

Page 26: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxiv

K2 blackpearl Console Mode 606Temporarily Add the Service Account to the Administrators Group 607Advanced Tools 607

Summary 607Notes 608

Chapter 17: Administering and Creating Security Providers 609

The Active Directory Security Provider 610ADUM Settings 610Configuring Support for Multiple Domains 612

The SQL Security Provider 614The Security Provider API 614

The Security Provider Object Model 615A Pluggable Architecture 616IHostableType 618It’s All About Context 619IHostableSecurityProvider 621IAuthenticationProvider 622IAuthenticationProvider Initialization 622Authenticating Users 623IRoleProvider 624Remotely Invoking the Security Provider 637

Single Sign-On (SSO) 639Building a Custom Security Provider 640

Where to Start 640Code Organization 640Installing the Custom Security Provider 642

K2 connect 647Summary 647

Chapter 18: Disaster Recovery Planning 649

What Is a Disaster Recovery Plan (DRP)? 650Setting the Baseline 650Pre-Planning /Mitigation Planning 651Continuity Planning 651Recovery Planning 652Testing 652

Disaster Recovery and K2 blackpearl 652Backup/Restoration of the Windows Server Machines 653Database Disaster Recovery Options 653

ftoc.indd xxivftoc.indd xxiv 12/18/08 8:34:35 PM12/18/08 8:34:35 PM

Page 27: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxv

Backup/Restoration of the K2 blackpearl Databases 654K2 Web Components 663K2 blackpearl Server(s) 664K2 for Reporting Services 666K2 for SharePoint 666Additional Components 667

High-Availability Planning 667Summary 668

Chapter 19: Logging and System Reporting 669

K2 blackpearl Logging 670Installation Log File 670Logging Framework 672Logging Framework Configuration File 673Enabling K2 blackpearl Logging 684Running the K2 blackpearl Server in Console Mode 685Logging to the K2 blackpearl Server Log File 687Viewing the K2 blackpearl Server Log File in Microsoft Excel 688Logging to the Windows Event Log 689Using the Archive Extension to Log to SQL Server 690Using the MSMQ Extension 690Extending the Logging Framework 690Custom Logging 690Kerberos Logging 691

K2 blackpearl System Reporting 693Performance Monitor Interfaces 693Opening the Performance Monitor 694Using the Performance Monitor 695

Summary 700

Chapter 20: Using the K2 Workspace and Reporting 701

K2 Workspace Overview 702Working with the Worklist 704Finding a Worklist Item 711Viewing Managed Users’ Worklists 714

K2 Reporting 715Saved and Published Reports 715Standard Reports 716Using Reports 717Creating New Reports 721

ftoc.indd xxvftoc.indd xxv 12/18/08 8:34:35 PM12/18/08 8:34:35 PM

Page 28: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxvi

Working with Reporting Services 731K2 Event Notifications 738

Notification Events 738Custom Events 741

Summary 742

Part V: Advanced K2 blackpearl Concepts and Platform Extensions

Chapter 21: The K2 Event Bus 747

Key Features of the Event Bus 748Open and Extensible Architecture 748Separating Events from Actions 748Pluggable Event Systems 748Built-In Event Handlers 748Pluggable Message Queuing 749Independent Policy Management 749Conditional Policies 749Action Policies 750Subscription Model 750

Architecture of the K2 Event Bus 750Event Bus Data Flow 751Event Bus Server 752Event Recorder 753Event Bus Engine 754

Exposing Process Information through SmartObjects 755The Event Bus Scheduler 759Event Bus Configuration Settings 761

SourceCode.EventBus.Server.Config 762SourceCode.EventBus.Mapping.dll.config 763SourceCode.EventBus.ClientRecorder.dll.config 763SourceCode.EventBus.EventAdmin.dll.config 763

Troubleshooting the Event Bus 764Walkthrough: Event Bus SMTP Sample 764Summary 773Notes 773

ftoc.indd xxviftoc.indd xxvi 12/18/08 8:34:35 PM12/18/08 8:34:35 PM

Page 29: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

Contents

xxvii

Chapter 22: Advanced Topics in K2 blackpearl 775

Destination Rules 777SmartObjects in Destinations 777Using XML Nodes in Destinations 779Implications of Activity Plans and Destination Rule Options 781

Actions and Outcomes 782More Than Auto-Generated Outcomes 783Rights on Actions 786

Advanced InfoPath 788Multiple InfoPath Forms 788Split and Merge 792

Troubleshooting 793Logging 793Visual Studio Debugging 796Error Repair 798

Summary 802

Chapter 23: Introduction to K2 connect 805

K2 connect Architecture 806K2 connect and SAP 806K2 connect and K2 blackpearl 806K2 connect and K2 SmartObjects 807

Using the K2 Service Object Designer 808K2 Service Object Designer 809K2 Service Object Design Canvas 810

Creating a Service Object with K2 connect for SAP 811Configuring the Service Object Project 811Configuring the GetList Service 812Deploying the Service Object 817

Creating a K2 SmartObject Based on a K2 connect Service Object 818Summary 822

Appendix A: K2 blackpearl Tips and Tricks 823

Index 871

ftoc.indd xxviiftoc.indd xxvii 12/18/08 8:34:35 PM12/18/08 8:34:35 PM

Page 30: Professional K2 blackpearl - Startseite€¦ · Professional K2 blackpearl® Holly Anderson Jason Apergis Sergio Del Piccolo Chris Geier Codi Kaji Shaun Leisegang Igor Macori Gabriel

flast.indd xxviiiflast.indd xxviii 12/18/08 2:07:27 PM12/18/08 2:07:27 PM