You are previewing Microsoft Visio 2010 Business Process Diagramming and Validation.
O'Reilly logo
Microsoft Visio 2010 Business Process Diagramming and Validation

Book Description

Create custom Validation Rules for structured diagrams and increase the accuracy of your business information with Visio 2010 Premium Edition

  • Optimize your business information visualization by mastering out-of-the-box, structured diagram functionality with features like the Basic and Cross-Functional Flowcharts

  • Create and analyze custom Validation Rules for structured diagrams using Visio Premium

  • Get to grips with validation logic for Business Process Diagramming with Visio 2010, by using the provided Rules Tools add-in

  • Discover the power of the ShapeSheet and learn how to write ShapeSheet formulae for use in Validation tests, following real and practical business examples and instructions

  • Packed with screenshots to demonstrate immediately usable Visio practices for achieving your business visualization goals

  • In Detail

    Microsoft Visio is a diagramming program using vector graphics, which ultimately allows business professionals to explore and communicate complex information more effectively. Through various visual representations, Visio enables complicated data to be presented in a clear, communicative, and data-connected way. Therefore, productivity is increased by utilizing the wide variety of diagrams that can convey information at a glance, as data can be understood and acted upon quickly. This book enables business developers to unleash the full potential of Diagram Validation that Visio 2010 Premium Edition has to offer.

    This focused tutorial will enable you to get to grips with Diagram Validation in Visio 2010 Premium Edition to the fullest extent, enabling powerful automatic diagram verification based on custom logic and assuring correct and compliant diagrams. You will learn how to create and publish Rules, and use the ShapeSheet to write formulae. There is a special focus on extending and enhancing the capabilities of Visio 2010 diagram validation, and on features that are not found in the out-of-the-box product, like installing and using a new Rules Tools add-in, complete with source code, reviewing the new diagramming rules in flowchart and BPMN templates, and creating your own enhanced Data Flow Model Diagram template, complete with Validation Rules.

    The book begins by covering the basic functions of Visio 2010, and then dives deep into showing you how to formulate your own Validation Rules and understand the Visio Object Model. ShapeSheet functions are explored in detail, as are creating Validation Rule Sets and Rules, and visualizing issues, with practical demonstrations along the way. Other content includes building a Rules Tools add-in using C#, creating test and filter expressions, and publishing Validation Rules for others to use. Finally, the book considers the creation and implementation of a new RuleSet for Data Flow Model Diagrams with a worked example.

    By following the practical and immediately deployable examples found in the book, you will successfully learn both how to use the features of Microsoft Visio 2010, and how to extend the functionality provided in the box.

    A comprehensive and highly practical Visio 2010 tutorial using Premium Edition, including example code and demonstrations for creating Validation Rules, writing ShapeSheet formulae, and much more

    Table of Contents

    1. Microsoft Visio 2010 Business Process Diagramming and Validation
      1. Microsoft Visio 2010 Business Process Diagramming and Validation
      2. Credits
      3. Foreword
      4. About the Author
      5. About the Reviewers
      6. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Errata
          2. Piracy
          3. Questions
      7. 1. Overview of Process Management in Microsoft Visio 2010
        1. What is new in Visio 2010 for Process Management?
        2. Visio Process Management capabilities
        3. The foundations of structured diagrams
        4. Enhanced process flow templates
          1. The Flowchart templates
        5. New process flow templates
          1. BPMN Diagram template
          2. SharePoint Workflow Designer template
        6. Validation of process diagrams
        7. Visio Process Repository
        8. Visio services
        9. What are the Visio 2010 editions?
        10. Planning your own solutions
        11. Summary
      8. 2. Understanding the Microsoft Visio Object Model
        1. The Visio Type libraries
        2. But all I need is the object model
        3. Types of Visio document
        4. Which programming language should you use with Visio?
        5. The Drawing Explorer window
        6. The Visio object model
          1. The Application object
            1. The ActiveDocument and ActivePage objects
            2. The Addons collection
            3. The COMAddIns collection
            4. The CurrentEdition property
            5. The DataFeaturesEnabled property
            6. The Documents collection
            7. The TypelibMinorVersion and Version properties
          2. The Document object
            1. The Advanced Properties object
            2. The DataRecordsets collection
            3. The DocumentSheet object
            4. The ID and Index properties
            5. The FullName and Name properties
            6. The Masters collection
            7. The Pages collection
            8. The ReadOnly property
            9. The Type property
            10. The Validation object
          3. The Master object
            1. The BaseID property
            2. The Hidden property
            3. The ID, Index, and IndexInStencil properties
            4. The Name and NameU properties
            5. The PageSheet object
            6. The Type property
          4. The Page object
            1. The Connects collection
            2. The ID and Index properties
            3. The Layers collection
            4. The PageSheet object
            5. The Reviewer property
            6. The Shapes collection
            7. The Type property
          5. The Shape object
            1. The Characters and Text properties
            2. The Connects and FromConnects collections
            3. The Hyperlinks collection
            4. The ID, Index, NameID, Name, and NameU properties
            5. The IsCallout and IsDataGraphicCallout properties
            6. The LayerCount property
            7. The Master, MasterShape, and RootShape objects
            8. The OneD property
            9. The Parent object
            10. The Type property
          6. The Section object
          7. The Row object
          8. The Cell object
            1. The Column property
            2. The Error property
            3. The Formula and FormulaU properties
            4. The Name and LocalName properties
            5. The Result properties
            6. The Units property
            7. Iterating through cells
        7. Connectivity API
          1. The Shape.ConnectedShapes method
          2. The Shape.GluedShapes method
          3. The Shape.MemberOfContainers property
          4. The Shape.CalloutsAssociated property
          5. Listing the steps in a process flow
        8. Summary
      9. 3. Understanding the ShapeSheetâ„¢
        1. Where is the ShapeSheet?
          1. What are sections, rows, and cells?
          2. Reading a cell's properties
        2. Can I print out the ShapeSheet settings?
        3. What is a function?
        4. What are the important sections for rules validation?
          1. The User-defined Cells section
            1. What category is a Shape?
            2. What structure type is a Shape?
            3. Is the shape inside a container?
            4. How many shapes are inside a Container shape?
            5. Where is the shape in the List?
            6. How many shapes are in a List shape?
            7. Are there any Callouts attached to a shape?
            8. Which shape is a Callout connected to?
          2. The Shape Data section
            1. The String type
            2. The Fixed List type
            3. The Number type
            4. The Boolean type
            5. The Variable List type
            6. The Date type
            7. The Duration type
            8. The Currency type
          3. The Hyperlinks section
          4. Layer Membership
        5. Summary
      10. 4. Understanding the Validation API
        1. Overview of the Validation objects
          1. The Validate method
          2. Can custom rules code be validated?
        2. The ValidationRuleSets collection
          1. How do I add or update a rule set?
        3. The ValidationRules collection
          1. How do I add or update a rule?
          2. How do I know my rule works?
        4. ValidationIssues
          1. Which issue is selected in the Issues window?
          2. How do I toggle the Issues window visibility?
          3. Which issues are caused by a particular shape?
          4. How do I clear issues in code?
          5. How do I validate in code?
          6. How do I retrieve an existing issue in code?
          7. How do I add an issue in code?
        5. Summary
      11. 5. Developing a Validation API Interface
        1. The architecture of the tool
        2. ThisAddin class
          1. Listening for application events
          2. Checking for Visio Premium edition
        3. Creating the ViewModel
          1. Creating the BaseViewModel class
          2. Viewing the documents collection
          3. Viewing the ValidationRuleSets collection
          4. Viewing the ValidationRules collection
          5. Viewing the ValidationIssues collection
        4. Modifying the Visio Fluent UI
        5. Creating the Rules Explorer window
          1. Self-describing tree views
            1. Informative tooltips
          2. Linked detail panels
            1. Editing rule set properties
            2. Editing rule properties
            3. Handling special key strokes
          3. The Explorer actions
            1. The Add button
            2. The Add Issue button
            3. The Paste button
            4. The Copy button
            5. The Delete button
        6. Displaying the rule for a selected issue
        7. Displaying the issues for the current selection
        8. Summary
      12. 6. Reviewing Validation Rules and Issues
        1. Extensions to our ribbon
        2. Annotating Visio diagrams with issues
          1. Saving the current user settings
          2. Displaying the issue markup page
            1. Add in the issue comments
          3. Hiding the issue markup page
        3. Exporting rule sets to XML
          1. Getting the XDocument object
            1. Getting the VERuleSet XElement
            2. Getting the VEIssue XElement
        4. Importing rule sets from XML
        5. Creating rule set reports
          1. Getting the XSL stylesheet
        6. Summary
      13. 7. Creating Validation Rules
        1. Overview of the document validation process
        2. Validation functions
        3. Useful ShapeSheet functions
        4. Filter and Test Expressions
          1. Checking the type of shape
          2. Checking the category of shape
          3. Checking the layer of a shape
          4. Checking if the page contains relevant shapes
          5. Checking for specific cell values
          6. Checking that connectors are connected
          7. Checking that shapes have correct connections
          8. Checking if shapes are outside containers
        5. Custom validation rules in code
        6. Summary
      14. 8. Publishing Validation Rules and Diagrams
        1. Overview of the Visio categories and templates
        2. Creating a custom template
          1. Adding embellishments
          2. Adding the template description
          3. The simplest method to provide a template
            1. Editing the file paths for templates
          4. Creating a template preview image
            1. Enhancing the quality of the preview image
          5. The best method for publishing templates
            1. Creating a setup project
            2. Amending the installation package
            3. Running the installation
        3. Summary
      15. 9. A Worked Example for Data Flow Model Diagrams
        1. What are Data Flow Diagrams?
        2. Examining the standard template
          1. Enhancing the masters
          2. Editing the Data Flow master
            1. Preparing for AutoConnect
            2. Editing the Data Store master
              1. Adding the Data Store Shape Data
              2. Enhancing the Data Store graphics
              3. Displaying the Data Store ID value
              4. Improving the Data Store group shape
            3. Editing the Interface master
            4. Editing the Process master
              1. Adding the Process Shape Data
              2. Enhancing the Process graphics
              3. Displaying the ID value
              4. Displaying the Category value
              5. Improving the group shape
            5. Setting the sub-process master
          3. Enhancing the page
        3. Writing the rule set
          1. All processes must have at least one data flow in and one data flow out
          2. All processes should modify the incoming data, producing new forms of outgoing data
          3. Each data store must be involved with at least one data flow
          4. Each external entity must be involved with at least one data flow
          5. A data flow must be attached to at least one process
          6. Data flows cannot go directly from one external entity to another external entity: such flows need to go through at least one process
          7. Do not allow a single page of a DFD to get too complex
          8. Each component should be labeled
          9. Each data flow should be labeled describing the data that flows through it
          10. Each component and subcomponent should be numbered
          11. A data flow must be connected between two components
          12. A flow must not cycle back to itself
        4. Completing the template
          1. Creating the installer
          2. Testing the installation
        5. Summary