KRA/KFS Integration Team

advertisement
KRA/KFS Integration Team
“Guiding Principles”
July 27, 2008
1) When the idea of the KRA/KFS Integration Team surfaced during the May face to face,
the understanding was that the group would attempt to identify integration requirements
in time for their review during the August F2F, and such that they could actually be made
in concert with coding for KFS Phase IIB and/or KRA Phase IA. These changes will only
be made in this time frame if resources are available.
2) The due date for the deliverable of this team is the Face to Face meeting scheduled for
August 20-22.
3) An analysis of the integration requirements will be done from the perspective of data first,
then process. We need to identify the data that really should be in one place (e.g., a
shared table). The deliverable should be a functional spec which defines the data
required by KFS from KRA, and data required by KRA from KFS, and the data that both
systems may have in common. Secondly, we should define the time line so we can see
at what point in the process the data is required by each system. With that information,
the KFS and KRA technical teams can subsequently do a high level technical design and
produce estimates. The integration team should focus on WHAT AND WHEN. The
technical team can focus on the how.
4) As part of analyzing the data integration requirements we will need to make some type of
a “value/effort” call. At this point it will likely be important to have some idea as to the
business process requirements related to “sharing” a piece of data.
For example, there is a STATE table in both KRA and KFS. Once we know how the state
table is used in each system, and how we think it would work in a shared environment,
we would be able to answer the question, “what is the value of sharing the data from this
table in terms of greater usability of the KRA/KFS integrated product?” We might also
know a bit about the effort needed (at a very high level) to 1) share a single table; 2)
develop a service to pass updates to replicated tables, 3) develop another solution. In
this case, I’m going to guess that the STATE table would provide a low to medium value,
with a low effort required. And this last sentence would represent the type of value/effort
analysis that we need to make for every integration point.
A more complex piece of data is the Organizational Unit (KFS), Organizational Hierarchy
(KRA). The business rules and dependencies associated with sharing and updating the
institutional organizational units are likely to be complex, the attributes are also likely to
be different (e.g., the KRA table uses “levels” to express hierarchy, whereas the KFS
table uses “reports to”), and all of this structure would need to be normalized in a shared
table, and in order to have both systems actually share a new table would likely mean
coding adjustments throughout both systems. This would be an example of a high
value/high effort integration point.
However, part of the decision making has to address the institutional implications of using
two different data sets. It is certainly possible that significant internal problems could be
created if different systems used different sets of “organizations”.
5) We will not attempt, at this point, to identify the exact process logic that is required to
integrate the two modules. We will document the business requirements (and this is
necessary to determine the effort required to actually create the integration solution).
6) We need to keep in mind the rationale for the integration analysis: Implementing KRA
and KFS together should provide benefits to the schools choosing to do so. The
integration points we rank with high value should reflect this rationale.
7) In summary, the integration team will document:
1. each possible data integration point
2. the business rules associated with the need to share the data (KRA to KFS, KFS
to KRA)
3. business rules will cover when the data need to be shared (conditions and
triggers),
4. the relative value of the integration requirement (high, medium, low) assessed by
virtue of whether or not it benefits the usability of a KRA/KFS integrated product
and whether it creates institutional problems
5. a relative level of the effort required to automate the integration (high, medium,
low) assessed by virtue of the impact on changes required to the table itself (to
normalize attributes from KRA and KFS), and/or to actually code the automation
Download