Blog Home  Home Add to any service  
Beckshome.com: Thomas Beck's Blog - Sunday, November 12, 2006
Musings about technology and things tangentially related
 
# Sunday, November 12, 2006

I’ve been kicking around some ideas in this area for a while, in hope of bringing them together in some coherent fashion. The image below represents the fruits of my labors. I’m not sure that it’s prefect or that I won’t look back on this as a sophomoric effort several months from now. The visual does, however, touch on several major observations I’ve made recently and allow me to illustrate them in a fairly clear and succinct fashion. Some of the terms are heavily overloaded and thus a bit more discussion of each of these trends is provided below for clarification.

  • Information Monopolies – Several states have internal brokering setups in place. These information brokerages are found most frequently in the areas of law and justice, financial transactions, and health information. I believe these areas represent the first of several information monopolies. These monopolies were driven by federal data exchange efforts in homeland security and bioterrorism and, in the case of financial data exchanges, system consolidations on common ERP platforms. Expect to see more of these natural information monopolies in the near future with efforts such as Real ID, the National Information Exchange Model (NIEM), Medicaid spend management, and the National Provider Identifier (NPI) taking hold. As these monopolies take shape, certain organizations within state government will be the logical choice as keepers of this data. These keepers should be building their systems in a service-oriented fashion to facilitate easy exchange of information amongst all systems requiring access to this data.
  • Increased External Brokering – Data exchanges with external business partners are a critical source of information for many state government systems. Many of these exchanges still function via standard mainframe flat file transfers that occur at predefined intervals. The federal government is working to transform their data exchanges to use service-based XML file transfers. Interestingly enough, the private sector is lagging behind a bit in this area. I recall a recent experience where we were notified that the 3 major credit bureaus had “upgraded” their data exchanges from automated flat file transfers to HTTP POST transfers invoked manually through Web pages (still using the same flat files). I would expect to see an increased push from both the public and private sectors to move towards HTTP SOAP-based Web services over the next several years.
  • Enterprise Service Bus (ESB) – The two most common patterns of Web service automation that I’ve witnessed in state government are service-based point-to-point integration and service façades. The point-to-point services represent a simplistic upgrade of existing point-to-point mainframe file transfers to use more current technologies. The service façades are usually the product of auto-generated Web service interfaces whose structure mimics that of the underlying components’.
Without going as far as to label these uses of services as anti-patterns, they are definitely crude uses of a Web service based infrastructure. Without publication in a registry or consideration of the consequences of how these services might be used outside of their intended scope, the service infrastructure can be considered anemic, at best. ESB promises to right some of these wrongs by acting as a central pipeline to enable access to these and other legacy services. Along with this access comes centrally provided infrastructure and transformation services that shield the service providers from some of the change and configuration management headaches associated with providing these services.
  • Robust Business Process Infrastructure – The current state of business process integration in most legacy enterprise applications is characterized by a complete commingling of business process logic, data processing logic, and other rudimentary services. In most systems, you’d be hard pressed to trace the progression of a business process from end-to-end, let alone measure the effectiveness of the process execution. Yet, business processes are the lingua franca of the business managers and business users. Show business people a UML sequence diagram and it’s likely to elicit blank stares. Show them a process flow, on the other hand, and you will probably receive all sorts of feedback on how to modify the flow to make it more representative or efficient.
It’s really a shame that it has taken the IT industry so long to come up with tools that meet this relatively elemental need of business application development (see article - State of Workflow). It does appear that these tools are finally beginning to materialize in the form of Business Process Execution Language (BPEL) compliant servers and tools. Support for BPEL is fairly widespread among the newest Java IDEs and application server vendors (Sun, Oracle, IBM, BEA, and JBoss). On the Microsoft side, Windows Workflow Foundation (WF) and Visual Studio support in the release of the .NET 3.0 Framework represents a major step forward towards standards-compliant support. BPEL will allow for the orchestration of services and the representation of this orchestration using common process flow diagrams that business analysts and business managers can use to effectively communicate process execution.

There are two other trends that are likely to follow the creation of BPEL-compliant processes. First is the introduction of Business Activity Monitoring (BAM) to measure the ongoing execution of the business processes and provide real time business intelligence. Second is some degree of standardization of business process models and potentially even the rise of business process outsourcing. In state government, this outsourcing is likely limited to the programmatic execution of the process as well as support and maintenance for ongoing process changes. Business processes that are codified in legislation (taxation and welfare eligibility, for example) are good candidates for automation and standardization of process commonalities.
Sunday, November 12, 2006 12:24:35 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   e-Government  | 
# Tuesday, November 07, 2006

I had the extremely good fortune to stumble upon a document on XML.gov that describes the cohesion between the varying areas of state government work that I am involved in. The document, a report on the E-Government Act of 2002, Section 212, was a revelation of previously unknown relationships between many areas of my work. Despite the fact that the document was written for the federal government, it appears to be very applicable to state government as well.



The report highlights enterprise architectural elements as well as pilot implementations underway to support presidential e-government initiatives. I’ve touched on a couple of these examples below.

  • Federal Enterprise Architecture (FEA) – The FEA consists of five reference models (business, performance, service, technical, and data) and a series of policies to help link IT investments with the reference models to help identify commonalities and IT spending priorities across the government’s agencies.

FEA_lg.jpg (36 KB)
The FEA obviously does not apply to state government out-of-the-box. However, the extensible structure of each of the FEA reference models facilitates customization. The Commonwealth of Virginia provides an exceptional example of how this can be implemented in practice.  Virginia has used the FEA as their model and, from the top down, has begun creating the business reference model in a manner consistent with the operation of state government. I have not seen any other work of this quality and breadth made publicly available by other states. I’ve included a local reference to their enterprise business model below. More detailed mappings can be found on Virginia’s enterprise architecture page.

 
VirginiaEnterpriseBusinessModel.pdf (121.5 KB)
  • Grants Management Pilot Project – I’ve been spending a bit of time familiarizing myself with the grants management domain over the past several months and posted on this topic more than once. With the passing of the Federal Funding Accountability and Transparency Act of 2006, focus on this area is likely to get even more intense at the federal and state levels in the next couple of years. Special thanks go out to Dave Cassidy of TCG for pointing me to the right section of Grants.gov with some meaty design and implementation details concerning granting system information exchanges.
  • Case Management Pilot Project – Case management has a place near and dear to my heart. The state government pattlets all deal with case management and it’s an area where I have some experience and even more opinions. It is encouraging to see the federal government aspiring to move towards data unity in this area. I have my doubts however. Case management, with its diversity of data elements and business practices, seems to have antibodies that preclude any form of true standardization. Normalization seems more likely to me here.


The National Information Exchange Model (NIEM) was mentioned as a unifying enabler. I am encouraged to see government pursuing data standardization so rigorously with NIEM. They seem to have made great progress in areas related to homeland security and are now eyeing other areas. I long for the day when NIEM becomes a first class citizen of the integration standards world and garners widespread vendor support like its industry brethren, SWIFT, HL7, and RosettaNet.
Tuesday, November 07, 2006 5:49:07 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   e-Government  | 
# Monday, November 06, 2006

If you completely missed the milestone, NetBeans version 5.5 was released last week. The IDE contains all of the functionality that’s been around in the beta and pre-release versions for months now, including:

  • Support for Java Enterprise Edition 5 (i.e. the Java Persistence, EJB3, and JAX-WS 2.0 specifications
  • Support for Subversion up to version 1.4
  • Developer collaboration features
  • SOA support (XML, BPEL, or Java web services) through the free Enterprise Pack
  • Performance and memory usage monitoring (including remote JVMs) though the free NetBeans profiler

In addition to all of the aforementioned features, which are part of the official 5.5 release, the Visual Web Pack Technology Preview was also released. This long-awaited feature brings to NetBeans a rich JSF-based UI. For those of you that have used Sun’s Studio Creator product, this addition to NetBeans will be both welcome and natural.


VisualWebPack_Lg.png (82.33 KB)

For those of you that have not experienced Studio Creator, the rich UI component IDE will be quite an experience. Standard JSF components are supported as well a number of AJAX-enabled JSF components from Sun’s BluePrint AJAX component modules. The NetBeans team has already created a number of Visual Web Pack specific tutorials. In addition, although I cannot verify it, I am fairly certain that the existing Studio Creator tutorials will work with little or no modification. Finally, if you’ve latched onto Ruby / RoR, check out the CRUD screencast in which NetBeans is used to generate a set of entity beans from a database and then to produce a set of RoR-like scaffolds, all without writing a single line of code.

Monday, November 06, 2006 3:07:11 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   Java - .NET - RoR  | 
# Monday, October 30, 2006
I ran across some very unique work from the state of Missouri in the area of project oversight the other day. Missouri’s well documented approach to project oversight is not only a great state government practice; it is by far the best documented practice in the public or private sector that I could find in this area. The project oversight methodology was nominated for a NASCIO recognition award in 2004 under the State IT Management category.

The five guidance documents on Missouri’s project oversight website represent a comprehensive, end-to-end project oversight methodology. In addition to detailed process flows, artifact definitions and templates, the methodology also includes simple but very useful explanations, such as the table illustrating the differences between project management and project oversight, which I’ve reproduced below.


ProjectOversight.png (7 KB)

In my mind, items such as Missouri’s project oversight approach are the types of knowledge capital that would have been great seeds on which to found the Government Open Code Collaborative (GOCC), which I’ve blogged about in the past. Since the GOCC appears to be all but dead, I don’t know what other alternatives are available for inter-State exchange of government practices, outside of NASCIO. I’ve decided to mirror Missouri’s documents on my site and have included links below. Hopefully, Missouri can find a way to proactively open source these documents, even if no common exchange exists for such materials.

Project Oversight, Part 1 (598 KB)
Project Oversight, Part 2 - Chapter 1 (2086.5 KB)
Project Oversight, Part 2 - Chapter 2 (2019.5 KB)
Project Oversight, Part 2 - Chapter 3a (1820.5 KB)
Project Oversight, Part 2 - Chapter 4 (1042 KB)
Monday, October 30, 2006 10:35:48 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   e-Government | Software Engineering  | 
# Friday, October 27, 2006

Over the last several months, I’ve really been trying to get my arms around SOA and develop a meaningful opinion and knowledge base on this so often used, even more often abused, and ever-more-frequently maligned three letter acronym (TLA). Along the way, I’ve discovered a couple of great resources that have helped shape my thinking and hone my implementation skills on the topic:



Thomas’s books have helped me to understand how my traditional proxy and wrapper-based viewpoints fit into service design and how I might be able to improve the robustness of SOA interfaces built using these patterns. These books also reinforced my positive experiences with contract-driven design and have rekindled my interest in XML schema definitions, which I haven’t used extensively for years.
  • Enterprise Service Orientation Maturity Model (ESOMM) – “Maturity model… uh oh, here comes the heavy handed approach to SOA”, you might be thinking. In my opinion, however, this is the most dense (that is, succinct and knowledge rich) piece of material about SOA that has been published to date and a must read for anyone looking to role out SOA to their enterprise. The ESOMM defines 4 layers, 3 perspectives, and 27 capabilities required to support a SOA (see diagram below). The maturity levels are based upon SEI’s Capability Maturity Model (CMM), but the similarities pretty much end there. As with the core CMM, think of this as a roadmap towards evaluating and improving your organization’s SOA capabilities – not as a report card.
   
esommgif.gif (32.31 KB)   
  • Service-Oriented Analysis and Design (SOAD) – This is a nifty article which seeks to bridge the gaps between the object oriented and business process oriented design and modeling and the requirements of modeling for an SOA. The article does a great job of walking through traditional approaches that most people are familiar with and then adding SOAD-specific elements to the design. The article concludes with a short case study that includes traditional models such as a business process workflow, class diagram, and state diagram and then augmenting this with a service breakdown model and a rather interesting business interaction model (see diagram below) that integrates SOA specific concerns into a more traditional UML sequence diagram.

SOAD_LG.gif (29.3 KB)
  • Java and .NET Specific Implementation Materials – Jeffrey Hasan’s book Expert Service-Oriented Architecture in C# is by far the best text in the .NET realm. Jeffrey starts with a very solid approach of WSDL and XSD contract driven design and then gradually introduces the new WS-* standards, integrating them one-by-one. The original book covers WSE 2.0 with his newest text covering WSE 3.0. SOA Integration Using Java EE 5 Web Services is the best text that I’ve found from a Java vantage point.  I like the fact that this book starts out with REST (Representational State Transfer) type services to show how things look before all of the standards-compliant overhead is added. Good coverage is provided for JAX-WS 2.0, JAXB, and JSR-compliant packaging. The book is not yet available on the open market but the work in progress is available as a “Rough Cut” book through O’Reilly’s Safari.
      
  • BPEL-Specific Materials – BPEL specific implementation details haven’t seemed to make it into any published books yet. The vendors offer a good deal of online materials in this area. To learn it this way though, you’re going to have to commit yourself to a particular implementation. Good materials can be found in the following places:

o     JBoss - JBoss jBPM

  o     Sun - NetBeans Enterprise Pack

o     Oracle - BPEL Process Manager

o       .NET - Windows Workflow Foundation

Friday, October 27, 2006 1:40:06 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   Java - .NET - RoR | Product Reviews | Software Engineering  | 
# Thursday, October 26, 2006

In a previous posting, I reviewed the 37signals book Getting Real and encouraged folks to pick up a copy. The good news is that the full text for this book has recently been released online. You can find the HTML version of the book here. You no longer have any excuse not to read it.

Thursday, October 26, 2006 10:38:16 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   Product Reviews  | 
# Tuesday, October 24, 2006

As I’ve mentioned in previous posts, I’m a pretty dedicated listener of both the Wall Street Journal Audio Edition and the IT Conversations podcast site. This morning, I caught some great audio from both of them.

IT Conversations - The IT Conversations audio came from the Software 2006 conference series. The focus of the podcast in question was a CIO panel at that conference. Toby Redshaw and Con Goedman, IT executives from Motorola and Shell International, respectively, provide some great insights into the user-focused mentality that it takes to succeed as an IT executive in the corporate world. They are both quite candid, with Mr.Redshaw providing some especially interesting insights and sound bytes. I’ve quoted a couple below:

[On dealmaking] “You’ve got to remember, the people that cut the deal aren’t the people that manage the relationship. I don’t care if the [software] salespeople leave with blood coming out of both of their ears. I’m not going to see those guys again.”

[On the widespread use of wikis and blogs at Motorola] “Where the real work gets done is down in the ranks that interact with each other and exchange information and build ideas and come to conclusions and do stuff. Management is just overhead.”

[On introducing wikis and blogs at Motorola] “I purposefully didn’t tell anyone upstairs or laterally that this was going on until we got to a scale where we couldn’t stop it.”

[On vendor dislikes] “The easiest way for you to watch me pull the trap door lever in my office and drop you into a pit of crocodiles is ‘tell me about your problems.’ ‘Hmm… interesting, we have some software that we think will fit your problems.’”

[On vendor likes] “I love honesty. My best vendors pull me aside and say ‘you know that idea you have, it’s stupid. Don’t do it, it’s a bad idea and here’s why.’”

Anyone who thinks that IT executives are out of touch needs to give this podcast a listen. These guys are focused on delivering user value, remaining business centric, and they just get it when it comes to understanding what it takes to encourage the type of collaboration and creativity that it takes to differentiate a company’s product or service offerings.

Wall Street Journal - On the other side of things, and totally unrelated to IT or the normal stock option backdating concerns that the WSJ has been so focused on lately was their cover story on the move towards home-based care in Vermont, entitled “Olden Days: Seniors in Vermont Find They Can Go Home Again.”

The article covers an innovative approach being taken in Vermont to move elderly citizens out of facility-based care and into home-based care with their families. Interesting here it that the families are then allowed to collect for the care they provide to their family members (spouses not included). The plan is approved and funded by the Center for Medicaid and Medicare Services (CMS) under a special waiver to normal Medicaid administration protocol. The waiver’s goal is to reduce or cap Vermont’s annual Medicaid funding / spending increase.

These Medicaid expenditures amount to 20% of some state’s budgets and are matched with funding from the federal level as well, providing a huge incentive for innovative ways to reduce these costs. The WSJ audio focuses not on the money side but on the human element instead; telling the story of several individuals whose lives were dramatically improved through participation in Vermont’s program. The audio also paints the assisted living providers as organizations scared of and resistant to change and willing to resort to scare tactics to retain the facility-based care entitlement legally afforded to Vermont’s citizens.

The reason that I found this audio file particularly interesting, aside from the fact that my parents care for my 93 year old grandmother and that my first state government project was on a Medicaid waiver system, is that the story reminds me of why I stick it our with state government projects – the potential to make a difference in peoples’ lives. Transformation programs such as the ones enabled by the Medicaid waivers not only offer the possibility to save money, they afford people the opportunity to lead normal lives, where that otherwise might not be possible. Far beyond the dollars, the bits, and the bytes, this is what really makes a difference.

The Wall Street Journal article is available in printed form or in MP3 format to Audible.com providers. The official text of the Vermont waiver can be found at http://www.dad.state.vt.us/dail/1115Waiver/VTLTCWaivernoappendices.pdf, while a provider-slanted but informative summary can be found at http://www.ahca.org/brief/ib_vtwaiver.pdf.

Tuesday, October 24, 2006 10:22:56 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   e-Government | General Technology  | 
# Sunday, October 22, 2006

I’ve recently been re-reading Scott Ambler’s excellent work on the Enterprise Unified Process and focusing my attention on the strategic reuse discipline, in particular. Dealing with this on a day-in, day-out basis, I’m trying to apply this particularly to the business domain that I work in, state government. I like the way that Scott went about illustrating the enterprise management disciplines with the traditional RUP workflow maps. Above and beyond this, he borrows from an earlier article of his, A Realistic Look at Object-Oriented Reuse, to create a couple of diagrams that really hit home. I’ve taken the opportunity to adopt these diagrams to enterprise work being done in state government. The adopted diagram can be found below.

Reuse.png (79.92 KB)

The comments to the right of the chart demonstrate that there are three coarsely delineated segments of reuse:

  1. Areas where domain-specific reuse is occurring now. Unfortunately, these areas fall towards the lower end of the benefit spectrum. In this segment, wholesale cross-state system transfers are particularly widespread. In many cases, the cost of the system being transferred is negligible or nonexistent due to federal funding rules. However, it is rare when these systems can be transferred without acquiring the knowledge of the people that created them. In many cases, this is an acceptable trade off because the domain in questions is inhospitable to other solutions and orthogonal to the domain for which they were originally created. Make no mistake, however, this is more a reuse of human resources and knowledge capital than it is of system elements.
  2. Areas where domain-specific reuse is not warranted. In the center of the above chart lie frameworks and artifacts. With industry standard processes such as the RUP, MSF, and a variety of Agile processes, there is little need to create domain-specific processes or artifacts. The same holds true for frameworks, where Sun, Microsoft, and a variety of vendors and open source options are likely to be much more stable and better supported than any inhouse created options. This should not preclude you, however, from customizing these processes and frameworks and, as necessary, extending them to meet your exact needs.
  3. Areas where domain-specific reuse should be occurring. These are the higher-order levels of reuse. This includes domain-specific analysis patterns for state government as well as a variety of architected solutions. These solutions may include COTS products such as the one from Curam Software, solutions targeted as cross-cutting domains such as licensing, and leveraging emerging data exchange standards to encourage the sharing of knowledge and data between business partners and communities of practice.
Sunday, October 22, 2006 10:03:51 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]   e-Government | Software Engineering  | 
Copyright © 2008 Thomas Beck. Some rights reserved.

Creative Commons License