Using WorkBoard to Manage Objectives and Key Results for Enterprise Architecture

In an earlier blog, I described how a user can use WorkBoard in Microsoft Teams. In this blog, I am writing about how WorkBoard can be used to define the objectives of enterprise architecture and the associated metrics. TOGAF 9.1 states that enterprise architectures must meet the “strategic, interim, and tactical business objectives and aspirations”. Normally, key elements of the Architecture Vision — such as the enterprise mission, vision, strategy, and goals — are documented as part of a wider business strategy or enterprise planning activity.

There are some tools specifically developed for managing the goals and metrics of enterprise architecture. I’m not performing a comparison with those tools in this blog posting.

What are the Objectives of Enterprise Architecture?

One of the challenges of defining the objectives of enterprise architecture is that they seem to end up being the objectives of IT operations. That is not exactly how it is supposed to be.

TOGAF 9.1 identifies the business strategy, business goals, and business drivers of the organization in Phase A: Architecture Vision. These are assumed to be defined outside of the enterprise architecture activity. I found an article titled Enterprise IT Architecture: Goals, Trends and Perspectives published online on The authors provided prospective strategic IT goals (or objectives):

  • Implementing a new business process management methodology
  • Automating and optimizing primary business processes
  • Supporting new products
  • Adapting IT systems to meet new market requirements
  • Estimating required investments in technology modernization
  • Calculating potential financial and efficiency returns from the strategic IT plan

I have a few other enterprise architecture objectives that I want to see included:

  • Improve social collaboration between employees and with outside partners and customers
  • Improve usability of mobile devices with business and web applications for employees and customers

Note: This is not a comprehensive list of goals or objectives by any means. However, I found the article interesting since it also described using the Zachman framework for analysis of an enterprise IT strategy.

Each of these goals (or objectives) could fit into one or more work streams. At least, I am calling them work streams here because that is how they fit into what WorkBoard provides.

  • Operational productivity: improve efficiency to create a quick return on investment
  • Optimization of business processes: include an analysis of the entire process, not just its separate parts
  • Mass customization: Customer involvement results in greater levels of client and market satisfaction

What are the Metrics (or Key Results) for the Objectives?

The metrics should be sufficiently clear so that the vision phase (in TOGAF 9.1) may scope the business outcomes and resource requirements, and define the outline enterprise business information requirements and associated strategies of the enterprise architecture work to be done. For example, these may include:

  • Business requirements
  • Cultural aspirations
  • Organization intents
  • Strategic intent
  • Forecast financial requirements

I used metrics from the following online articles:

12 critical metrics for IT success from

7 Key Enterprise Architecture Metrics from

Obtaining Enterprise Architecture Metrics – Part 1 from (Sadly, this blog post written by Mike Walker is no longer available.)

WorkBoard and OKRs

WorkBoard uses Key Results in place of metrics. The image on the right comes from the Elevate Business Performance with OKRs document published by Workboard Inc.

You can see the flow from Objective to Insight.

However, you don’t see that OKRs (Objectives – Key Results) can be related by using work streams.

My Sample Objective – Key Results (OKRs)

I created a list of OKRs in the table below. These are examples and you should configure OKRs that match your organization’s strategic objectives.

Objective Key Results Rating (examples) Work Stream
Continuous improvement of online services Online application performance. The average time it takes to render a screen or page. Less than 1 second Operational Productivity
Continuous improvement of online services Online application availability. The percentage of time the application is functioning properly. 100% Operational Productivity
Continuous improvement of online services Production incidents. The number of production problems by severity. Zero Operational Productivity
Reducing costs by leveraging common solutions and rationalizing processes, technology, and data. Architectural Integrity. The percent of applications on preferred technologies, another indication of how difficult applications are to maintain 100% Operational Productivity
Improve enterprise architecture delivery Project satisfaction. The average score from post project surveys completed by business partners. 100% Optimization of business processes
Improve enterprise architecture delivery Project delivery. The percentage of projects delivered on time. 100% Optimization of business processes
Improve enterprise architecture delivery Project cost. The percentage of projects delivered within the cost estimate. 100% Optimization of business processes

I also would like to compare the OKRs that I have with other enterprise architects. I suppose that some of the common tools will come with a more complete sample list.

Entering OKRs into WorkBoard

I entered the OKRs into WorkBoard. The three main objectives are displayed below.

I click on the first objective and it expands to display the key results.

I can also open the objective to see the Key Results, Work streams, and Comments.

I click on and I can see all of the work streams. The new workstreams that I created are displayed.

I click on Operational Productivity and the display changes.

I click on the 2 Objectives tab and the two objectives for the Operational Productivity work stream are displayed.

Microsoft Teams

I want to see what information that I can add from WorkBoard to the Enterprise Architecture tab in the Contoso IT channel.

I add Workboard to the Contoso IT team.

I select the Enterprise Architecture channel and click on Set up for the Tab.

I click on the Boards.

I select Operational Productivity. This is the same work stream that I displayed earlier in Workboard. I click Save to continue.

The Operational Productivity board view is displayed – just like I can see it in Workboard.

I can add tabs to display the other work streams, too.

Next I add the Business Review to a new tab in Microsoft Teams. Now I can see exactly what I saw in Workboard. I may not even have to go to the Workboard site.

Next Steps

I need a more robust and complete list of OKRs for enterprise architecture. At least, a better list to start with. Still, I feel like Workboard can be used to manage this information for enterprise architects.


I have added sample OKRs for enterprise architecture. Then I added tabs in Microsoft Teams for a work stream and a business review. I can continue my enterprise architecture work on Workboard from within Microsoft Teams.

It looks like Workboard can be used for managing enterprise architecture OKRs.

Using Microsoft Teams with Planner

I have used solutions like Microsoft Teams many times in the past. That includes solutions like Lotus Notes Teams, SharePoint Teams, and Jive, to name a few. One concern that I have is using multiple team sites and trying to manage my work across all of them. In particular, I’m concerned about the planning work.

I really like how I can add the Microsoft Planner app to each Microsoft Team. Below is a screenshot of the Product Launch Event planning app in the X1050 Launch Team.


Below I can see some of the details of the Entertainment Plan that is owned by Megan Bowen.


It could complicated for Megan if she was on several Microsoft Teams and each one had a Planner app. How could she manage all of those plans?

Well, she could just use the Planner hub!


Now Megan can see all of her plans at once. She can open them within each Microsoft Teams site. Below, Megan can see all of the plans for the Product Launch Event.


Alternatively, Megan can click on My tasks and see all of her planning tasks at once. Thus, she does not have to open each Microsoft Teams site to review her planning tasks.


Using Planner is a very effective solution for planning across all of the Microsoft Teams sites that you are a member of. So don’t hesitate to get started using Microsoft Teams and Planner together. I recommend creating a single planner in each Microsoft Teams site. Then manage them all from the Planner hub to save yourself valuable time. You should still open the Microsoft Teams site to collaborate with team members.

Leaders Initiate Change

This is a continuation of my blog post titled Change Management Framework. This content also comes from my Master’s thesis. This part of my thesis describes the three waves of change that leaders initiate in the first three years on the job. This section provides the evidence for Nadler and Tushman’s (1993) change management framework.

This section references a survey by Kepner-Tregoe of 182 senior executives. It also presents Gabarro’s three-wave explanation on the changes that new managers make in their first three years on the job. I am leaving out most of the details of Finkelstein and Hambrick’s review of high-discretion organizations.

My thesis is titled: The Relationship Between Leadership and Change Management.

Leaders Initiate Change

In a survey by Kepner-Tregoe of 182 senior executives, nearly nine in ten executives had undertaken more than five major initiatives in five years (Kepner Tregoe, 1994, p.9).  The table below displays the initiatives mentioned most often in the survey results.

Table 3: Initiatives in the Past Five Years (p.12)

Initiative % of Executives
Setting/implementing strategy


Empowerment/employee involvement


Downsizing/cost reduction


Customer service improvement




Productivity improvement


Gabarro proposed a three-wave phenomenon to represent the relationship between changes new managers make in their first three years on the job (Gabarro, 1987, p.15).  The three waves generally peaked at between 3 and 6 months, 15 and 20 months and 27 and 30 months (See Figure 2).  Gabarro also reported that the second wave was typically the largest and the third wave was the smallest.  Managers allow changes to play out after initiation.  Managers also take time to watch and review the impact of the changes.  Thus, the first wave of changes take place while the manager is still learning about the new organization and applying their previous experience to the situation.  During the second wave of changes, the manager has a greater knowledge of the organization and a new understanding of the situation.  The manager also takes into consideration their success and failures from the first wave.  Thus, the second wave is much greater than the first.  In the remaining years, the managers make only minor changes, or fine-tuning, to their organization.  Gabarro noted that the managers started at different times of the fiscal year and that budget and reporting cycles did not seem to influence the three-wave pattern.

Figure 1: Average Number of Organizational Changes per Three-Month Period Following Succession (p.16)


Gabarro based his research on three sets of field studies over three years involving seventeen management successions of general managers and functional managers in organizations in the United States and Europe (p.3).  While the Kepner-Tregor research shows that senior executives implement changes regularly over time, the Gabarro research provides a pattern to the changes.

In a 1996 study of top executives, Finkelstein and Hambrick examined the relationship between executive tenure and organizational strategy (Finkelstein and Hambrick, 1996, p.86). Finkelstein and Hambrick reference Gabarro’s 1987 study noting that almost all of the actions taken by new managers occur in the first two and one-half years in office (p.86). Finkelstein and Hambrick proposed that there are five seasons in a Chief Executive Officer’s (CEO) tenure (p.83). The first three seasons last one to two years each. In the first season, a CEO responds to a mandate. The CEO is committed to a particular paradigm or standard. The CEO has a high degree of task interest, but a low and rapidly increasing knowledge of the task. In the second season, the CEO may or may not be as committed to the same paradigm. The CEO may experiment during this time. The CEO still has a high degree of task interest and a moderate and increasing knowledge of the task. In the third season, the CEO selects an enduring theme. The CEO’s task interest remains moderately high and remains committed to their paradigm. The CEO’s task knowledge is now high and only slightly increasing. In the fourth season (lasting three to five years), the CEO enters a period of convergence. The CEO is now strongly committed to the paradigm with a moderately high degree of task interest. In the final season (all remaining years), the CEO may enter a period of dysfunction. They remain highly committed to their paradigm with a high degree of task knowledge. However, their interest in the task is moderately low and diminishing. The generalizations from this particular study are limited because only CEOs were involved in the sample. Furthermore, it does not distinguish between organizations and industries. However, it provides further evidence that leaders implement strategic changes early in their tenure and later made few changes.

Relationship between Finkelstein and Hambrick studies and the Change Management Framework

The Finkelstein and Hambrick studies (1987, 1990, 1996) are relevant because they show a positive relationship between leaders and strategic change. First, they indicate that leaders tend to initiate change early in their tenure and then taper off. Second, especially the 1987 and 1990 studies indicate that high-discretion organizations, such as those in the computer industry, offer a greater degree of latitude to leaders to implement strategic change. Thus, the computer industry is a good choice for analyzing the relationship between leadership and change management. Combining the Finkelstein and Hambrick studies (1987, 1990, 1996) with the change management framework thus helps to identify two issues:
1. the types of changes that leaders make and
2. where these changes fit into the tenure of a leader

Finkelstein, S. & Hambrick, D.C. “Top-Management Team Tenure and Organizational Outcomes: The Moderating Role of Managerial Discretion”. (September, 1990). Administrative Science Quarterly v35 n3 p484(20).

Finkelstein, S. & Hambrick, D.C. (1996). Strategic leadership: Top executives and their effects on organizations. St.Paul, MN: West Publishing Company.

Gabarro, J. J. (1987). The dynamics of taking charge. Boston, MA: Harvard Business School Press.

Kepner –Tregoe, Inc. (April 1994).  House divided: Views on change from top management and their employees. Princeton, New Jersey.


Change Management Framework

I was reading over parts of my Master’s thesis recently. I decided that I would publish parts of it online. This part of my thesis describes a change management framework that leaders use. This section is important because I used Nadler and Tushman’s (1993) change management framework to describe the types of changes interviewees provided as an example. That is, I interviewed several leaders about changes that they implemented and used the framework to quantify those changes.

The next blog post titled Leaders Initiate Change from my thesis will provide more proof that leaders tend to initiate change early in their tenure and then taper off.

My thesis is titled: The Relationship Between Leadership and Change Management.

Change Management Framework

In a 1993 article, Nadler and Tushman provide a framework to understand organizational change.  The framework is based on their observations of approximately 25 organizations.  Nadler and Tushman argue that:

  • Changes are either anticipated or reactive.
  • Leaders can plan for anticipated changes in advance.
  • However, reactive changes require a response from leaders after they have occurred.
  • Incremental changes focus on tweaking components of the current paradigm.
  • Changes that require a fundamental shift in the organization’s paradigm are strategic changes (p.227).

They also wrote that organizational changes can be categorized into four types: tuning, reorientation, adaptation, and re-creation (p.228).  Figure 1 below shows how the four types of organizational change relate to each other.

Table 2: Types of Organizational Change (p.228)

  Incremental Strategic
Anticipatory Tuning Reorientation
Reactive Adaptation Re-creation

Tuning is an incremental change that anticipates a future change.  Tuning modifies the current paradigm to ensure that the organization remains efficient.  Adaptation is an incremental change that responds to external events.  Leaders make small modifications to the current paradigm in response to events outside of their control.  However, the current paradigm remains in place.  Reorientation is a strategic change made when leaders determine that the current paradigm will no longer be effective in the future.  The changes will not necessarily involve a sharp break from the past.  However, there will be widespread organizational changes.  Re-creation is a strategic change brought about by external events.  A change in the current paradigm occurs in response to the external events.  Leaders bring about a major break from the past and changes in senior leadership.

Using the change management framework defined above, we can qualify the types of changes leaders make.  Early in a leader’s tenure, he or she may attempt to make strategic changes.  The leader determines if the current paradigm is effective in the current environment.  If not, the leader may initiate a reorientation.  If the hiring of the leader is in response to changes in the current environment, the leader may initiate a re-creation.  The implementation of either strategic change takes place over a one to two year period.  The leader uses an additional two to three year to converge the organization into the paradigm.  Thereafter, the leader maintains the new paradigm and makes only incremental changes in the form of tuning or adapting.

Nadler, D.A. & Tushman, M.L. (1993). “Organizational Frame Bending: Principles for Managing Reorientation” In Jick, T.D. Managing Change: Cases and Concepts (pp. 225-241). Boston, MA: The McGraw-Hill Companies, Inc.


Creating a SharePoint Server 2016 Dev/Test Environment in Azure

I recently earned MCSA: Cloud Platform certification. I am now studying for the 70-339: Managing Microsoft SharePoint Server 2016 exam. I studied a lot of the Azure training material on As part of the preparation, I decided to try installing a SharePoint 2016 server environment in Azure.

I followed the steps as documented in a TechNet article published here
The version of the article I followed was modified on 2017-04-11. This would give me an Active Directory server, a SQL Server 2014, and a SharePoint Server 2016. All three are placed in one network group. The SQL Server 2014 is placed in an availability set.

I thought the documentation was clear. I did have to make sure I logged in correctly to the SP VM after restarting it. Don’t login with the SP local account that was created.
After the SharePoint virtual machine restarts, reconnect to it using the CORP\<ADMIN_NAME> account name and password. At one point, I had to reset the password and enable the CORP\sp_farm_db account. I think I missed an earlier step. Thus, I had to come back and do it. I think it was my fault since I had a few family distractions.

I completed the whole effort in two to three hours. In the future, I want to set it up as a more production-like environment. That is, with separate servers for Search and Cache. And more Managed and test accounts. I did this for my SharePoint 2013 environment running on my laptop. And it is still running!

Overall, it was much faster and easier to setup the SP 2016 environment in Azure than it was for me to setup SP 2013 on my laptop. And I am not limited by any capacity restraints: memory, disk space, or CPU.


Looks like my blog site from previous employer is down

I had a blog site up at EMC while I was working for them. I copied all of the content I created there to this personal blog. Now this blog is getting a lot of hits. That is exciting to see!
I also have a blog site at Dell: I am much more active on that blog.

Automatically publish InfoPath form to SharePoint

I have a working solution to create an InfoPath form from a Lotus Notes form. It’s good; but I want to make it great. I also need a feature to automatically publish the InfoPath form. It’s rather tedious to publish a form through the InfoPath client. It would be painful to do that for 100+ forms.

So I searched around for some solutions and found some that were interesting. I started with this posting:

I added code to my migration solution to create a batch file and run it. The content of the batch file appears below.

“C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm.exe” -o deactivateformtemplate -url http://litware/ -filename “C:\Documents and Settings\Administrator\My Documents\InfoPath\SharepointPoC.nsf\Issue\cab\Issue.xsn”
“C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm.exe” -o execadmsvcjobs
“C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm.exe” -o uploadformtemplate -filename “C:\Documents and Settings\Administrator\My Documents\InfoPath\SharepointPoC.nsf\Issue\cab\Issue.xsn”
“C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm.exe” -o execadmsvcjobs
“C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm.exe” -o activateformtemplate -url http://litware/ -filename “C:\Documents and Settings\Administrator\My Documents\InfoPath\SharepointPoC.nsf\Issue\cab\Issue.xsn” 

I can dynamically create the batch file. The batch file has to run on a machine running SharePoint 2007 server. The batch file should remove a previous InfoPath form if it exists. It will post the new InfoPath form to the SharePoint server. The new InfoPath form should then be activated.

Unfortunately, I am getting an error when running some of the stsadm commands:

     The following form template cannot be found: urn:schemas-microsoft-com:office:infopath:Issue:-myXSD-2006-01-01.

So I need to figure out what is wrong here.  I’ll have to spend more time researching and debugging it.

The other interesting item I found is the mentioning of a best practice. On page 951 of “Designing Forms for Microsoft Office InfoPath and Forms Services 2007”, it mentions that administrative-deployed form templates generally exhibit slightly greater performance than equivalent user-deployed  forms. So I’ll take this approach to get a little more performance using Forms Services.

Transforming a Rich Text field from a Lotus Notes form to Infopath

Transforming a simple text field from a Notes form to an InfoPath form is relatively easy. So how do I take a Notes Rich Text field and transform it into a InfoPath Rich Text field? Also, how do I ensure it will work on a web form? This is not so easy and it may not always work if the Notes Rich Text field contains embedded objects or file attachments. But let’s just look at the design for now.

The design of a rich text field in a Lotus Notes form appears as follows:

Rich Text Field Design

Rich Text Field Design




The design details of the same rich text field (with the label) appear in the DXL file as follows:

<run><font size=’12pt’ style=’bold’ name=’Segoe UI’ pitch=’variable’
 truetype=’true’ familyid=’20’/>Detailed description:</run>

<run><font size=’12pt’ name=’Segoe UI’ pitch=’variable’
 truetype=’true’ familyid=’20’/>
<field type=’richtext’ kind=’editable’ name=’Details’/></par>


A Rich Text field in the InfoPath Designer class appears as follows:

Rich Text Field in InfoPath Designer Client

Rich Text Field in InfoPath Designer Client





You can right-click on the field and select Properties to view the settings for the field. The Display tab indicates that “Only full rich text without embedded images is supported in browser-enabled form templates.” So this will be a problem for any rich text fields in Lotus Notes documents that have embedded images.

Rich Text Box Properties

Rich Text Box Properties
















It is not as easy to define the Rich Text field in InfoPath. There are multiple files that must be updated:

view1.xsl: This defines how the field will be displayed in the form

<div align=”left”>
 <font style=”FONT-WEIGHT: bold” size=”3″>Detailed description:</font>
<div align=”left”>
 <font size=”3″></font>
 <span class=”xdRichTextBox” hideFocus=”1″ title=”Details” contentEditable=”true” xd:binding=”my:Details” tabIndex=”0″ xd:xctname=”RichText” xd:CtrlId=”CTRL12″ style=”OVERFLOW-X: visible; WIDTH: 100%; WHITE-SPACE: normal; HEIGHT: 50px”>
  <xsl:copy-of select=”my:Details/node()”/>

myschema.xml: controls the schema reference

<xsd:element name=”myFields”>
   <xsd:element ref=”my:Details” minOccurs=”0″/>
  <xsd:anyAttribute processContents=”lax” namespace=””/>
 <xsd:element name=”Details”>
  <xsd:complexType mixed=”true”>
    <xsd:any minOccurs=”0″ maxOccurs=”unbounded” namespace=”” processContents=”lax”/>

 sampledata.xml: specifies the default values that should be displayed to the user when first loading the InfoPath form

 <my:myFields xmlns:my=”” xmlns:xd=”“>
 <xd:SchemaInfo LocalName=”myFields” NamespaceURI=”“>
   <xd:Namespace LocalName=”myFields” NamespaceURI=”″/>

manifest.xsf: include a reference to the View file and special editing settings

 <xsf:views default=”View 1″>
  <xsf:view name=”View 1″ caption=”View 1″>
    <xsf:xmlToEdit name=”Details_1″ item=”/my:myFields/my:Details”>
     <xsf:editWith type=”rich” autoComplete=”no” component=”xField” proofing=”no”></xsf:editWith>
   <xsf:mainpane transform=”view1.xsl”></xsf:mainpane>

See for more details on the architecture of the InfoPath Template (XSN).

I have not even given attention to adding columns to display the data yet. But you should get the impression that automating the transformation of a field is a bit complex; especially if you want it to display properly in a web form.

Hiding sections in an InfoPath form

 I was trying to figure out how to hide sections like in a Lotus Notes form. So I came up with the following solution. The form design is displayed below:
form design

form design







I have two buttons and a section. The section contains some field labels and fields. Clicking on the Hide button will hide the section from the user. Clicking on the Display button will display the section to the user.

I added an attribute field named “hideContactSection” as a data source. The data type is defined as True/False (boolean). The default value is “0”.

Data source
Data source








The attribute field is defined in the template.xml file as follows:

<my:myFields my:hideContactSection=”0″ xmlns:xsi=”” xmlns:my=”” xmlns:xd=”“>

The Hide button contains a Rule named “Hide Contact Section”. The rule sets the value of the hideContactSection attribute to “1”.

Hide section rule

Hide section rule












The Display button contains a Rule named “Display Contact Section”. The rule sets the value of the hideContactSection attribute to “0”. Both rules are defined in the manifest.xsf file.

The unbound controls section defines that rules exist for each button.

    <xsf:button name=”CTRL_Button_Hide”>
     <xsf:ruleSetAction ruleSet=”ruleSet_1″></xsf:ruleSetAction>
    <xsf:button name=”CTRL_Button_Display”>
     <xsf:ruleSetAction ruleSet=”ruleSet_2″></xsf:ruleSetAction>

The rulesSets section defines the details of each rule.

  <xsf:ruleSet name=”ruleSet_1″>
   <xsf:rule caption=”Hide Contact Section” isEnabled=”yes”>
    <xsf:assignmentAction targetField=”@my:hideContactSection” expression=”&quot;1&quot;”></xsf:assignmentAction>
  <xsf:ruleSet name=”ruleSet_2″>
   <xsf:rule caption=”Display Contact Section” isEnabled=”yes”>
    <xsf:assignmentAction targetField=”@my:hideContactSection” expression=”&quot;0&quot;”></xsf:assignmentAction>

The section has a conditional format defined in the section properties tab. The section is hidden from the user when the hideContactSection attribute has a value of “1”.

Conditional format for section

Conditional format for section









The details of the conditional format is stored in the view1.xsl file. An xsl:if statement tests the value of the hideContactSection attribute to determine if the section should be displayed or not.

 <xsl:template match=”my:ContactSection” mode=”_2″>
  <xsl:if test=”not((../@my:hideContactSection = &quot;1&quot;))”>

I am using buttons in this example because it is easier to understand. I could change how the attribute value is set. Or I could use a different conditional format option. But this seems like a good place to start.

Which Notes fields to migrate?

I have often thought that looking to the design of a Notes form to determine which fields to migrate is somewhat faulty. Those of us who are seasoned Notes developers understand that there are a number of ways to include more fields on a document than are on the form’s design. Here are three situations to consider:

1. Computed subforms on a form may display different fields at different stages of a document’s lifecycle. Thus, there may be ten fields at one stage and five at another stage. None of these fields appear on the main form because these are computed subforms. So why look at the form to migrate these five or ten fields? How do you know which subform to use?

2. The design of some forms may change over time. Fields are added and removed. Thus, the fields on documents may be different based on the age of documents. This is a great Notes feature when used correctly. But which fields should be selected for migration? Fields from a new document? old document? both documents?

3. Some agents or actions will set “hidden” fields on documents. These values are never displayed to users in a form. Thus, they are “hidden”. But the field values may be used for processing the document. Should these fields be included in a migration even though they do not appear in a design?

So basically, I want to both sets of details. I want to see the list of fields and field types on the design of a form and the same for the fields on a document. But which document to choose? Should I only look at the last document created? Probably not, since it will not be a good representation of all documents. Should I randomly select documents? This may possibly be a good choice. This how polls are conducted. We can be reasonably certain that a random selection of documents could represent the entire collection of documents within a certain percentage. I’m comfortable with this approach as I’ve taken a number of statistics courses and used statistics at work and in a thesis. But it has to be well-thought out and explained to business users for them to agree with the approach.

So I’ve solved the problem of the list of fields to use. Congratulations to me! Of course, I have now introduced a new problem. What if use the DXL representation of the Notes form to read the design details? The DXL only gives me the fields listed on the design. I can transform this DXL into the InfoPath form that I need. But what about my solution for getting the correct list of fields from the Notes documents? How do I add all of the fields not included on the design? I can probably build a list of fields and determine if they are on the DXL design. But how do I add them to the InfoPath form? Should I add them during the transformation of afterwards? Should I try to determine if they are on a computed subform(s)?

I have to add the fields to the design or the form will not work correctly later. I tried adding more fields to the XML data file and importing it into a SharePoint list that was using an InfoPath form. The InfoPath form would not open the data record because the list of fields did not match. So I need to resolve this somehow.

The list of fields and field types on the InfoPath form must match the same on the Notes documents. The migrated data must have the same fields and field types as on the Notes documents. The migrated data must also have the same fields and field types as on the InfoPath form. Anything that is missed may result as a failure of the migration effort.

Note: I have not even addressed the issues of managed code yet.   😉