asp:feature
LANGUAGES: C# | VB
.NET
TECHNOLOGIES: SQL Server | SharePoint Portal
Server | ADO.NET
Case Study: The Annie E. Casey Foundation
ASP.NET saves time and money for this philanthropic
organization - and that means faster grants for those who need them.
By Ron Schwarz
In an economy that daily challenges even the stoutest of
hearts, it's crucial that established philanthropic organizations squeeze every
last bit of value out of their increasingly precious funding resources.
The Annie E. Casey Foundation (AECF) - established in 1948
by Jim Casey, founder of United Parcel Service - has a primary mission of
fostering public policies, human-service reforms, and community supports that
meet the needs of vulnerable children and families more effectively.
Working out of its Baltimore, Md., headquarters with a
staff of under 200 employees, AECF - the 14th-largest private foundation in the
nation, with an endowment of more than $2.6 billion - balances an endless
supply of needs with a finite supply of assistance. It distributes more than
$250 million per year to organizations that work with disadvantaged children or
assist in the changes needed to support children.
The foundation's grant-making process generally is started
by program staff, and it involves people in the social services field: juvenile
justice experts, education experts, those who address teen pregnancy and health
care issues, and "the whole gamut of areas we get involved in: financial
planning, government services, and so forth," according to Henry Dennig, AECF's
director of Technology and Information Management.
About 120 staff members work on the program side of the
foundation, working with other organizations and making grant requests for
them. Those "other organizations" can be very large, including household names
such as United Way, Boy Scouts of America, and Girl Scouts of the USA. They
also assist individual city and town communities and faith-based organizations,
and they are involved with policy-making bodies such the New York City Child
Welfare Advisory Panel.
AECF's technology situation is typical of many companies:
Its applications work - even work well - but simply can't scale and evolve
successfully with the organization's needs. Every organization in this position
eventually must face the need either to conform (and restrict) its work
practices to its existing software, or make the leap to a different application
set.
Casey's first decision was simple. The foundation had
worked with Ajilon Consulting two years ago to deliver the application AECF now
has in place named Request Initiation Forms (RIF). AECF was pleased enough with
the results to work with the company again.
RIF - a front end to its legacy grant-making system - gave
Casey a taste of what was possible. It used Outlook Forms and Exchange Server
in an effort to extend and improve the legacy system's design and inflexible
functionality. The goal was a system that modeled the foundation's actual
workflow more closely.
Dennig describes the rationale for going with the original
RIF project: "In an effort to achieve better data integrity and consistency, we
chose about 18 months ago to create a front end to collect the data up front
before it goes into the legacy software. That's where we got involved with
Ajilon Consulting and the RIF project. RIF runs Outlook in public folders,
allowing our staff to put in requests and grant activity, which is then
reviewed by the grant management team."
Inside Outlook
Unfortunately, Dennig discovered that the Outlook Forms
were not sufficiently robust or functionally capable. "Public folders and
public forms didn't allow the users to do some of the necessary workflow and
didn't allow data validation or data flow that was hoped for," Dennig says. But
"by doing it in .NET, they were able to start from a clean sheet of paper and
redesign it from top to bottom."
For nearly two years, RIF has done what it was designed to
do. But AECF has outgrown the system. "In light of the intranet that we've set
up and the SharePoint server and Knowledge Management we're planning to set up,
we wanted a grant-making application that was more capable than RIF," he says.
"And, quite honestly, storing all that information in the public folder message
store probably wasn't the best data container. We liked the idea of storing it
in a SQL back end."
Dennig points out that in addition to the Outlook Forms
stability and productivity issues, "there were many functionality requests that
we simply couldn't program that way." The shortcomings of the Outlook Forms
context created an increasing pace of revision requests. So AECF sat down with
Ajilon and reviewed what they had and what they wanted to do. After a series of
meetings with users and the grant management team, they came up with an
approach to create the new system using the .NET Framework.
Major software projects develop on several concurrent
levels. At the top level, customer needs and desires - often frustratingly
intertwined - command a nontrivial amount of developer attention. In Casey's
case, the main objective was clear and obvious: The foundation needed to reduce
the amount of time needed to deliver grant funds to the recipients. At the
lowest core level, developers wrestle with technical issues and often with
conveying technical considerations to users who are by nature fixated on more
ephemeral matters such as fonts, layout, colors, and other screen appearance
elements.
In fairness to the users, interface "trivia" does matter.
Bad interfaces hamper good programs, which leads to lessened productivity. "User
groups can get bogged down with minutia," says Jim Lane, a senior .NET
solutions developer at Ajilon and lead architect for the AECF project. "For us,
however, it was important to maintain a rich and productive user interface and
application."
Developers sometimes lose focus on the fact that the user
interface is the first and sometimes only portion of any application users see.
In the real world, developers must balance the demands for a robust interface
with the needs of a well architected solution - fail on either end of the scale
and an application can be destined for collapse.
Balancing Act
Combining Microsoft's ASP.NET and Infragistics'
NetAdvantage Suite created a synergy that gave Lane the ability to balance both
ends of that scale successfully (see Figure 1). ASP.NET's elegant underpinnings
provided the horsepower that made the application work, and the Infragistics
tools made it possible to satisfy the users' interface demands - without taking
development time away from critical tasks.
Figure 1. Ajilon used NetAdvantage Suite's Tree control to create an
elegant navigation hierarchy. Users appreciate the classic interface's familiar
look and feel.
On behalf of AECF, Ajilon evaluated all the main options
on the market before concluding that ASP.NET was best suited to the
foundation's needs. Ajilon chose .NET because it was the most scalable platform
and projected to be the lowest cost to develop and maintain. As a full-service
solutions provider, Ajilon has extensive knowledge and experience with all the
major platforms, including Java. This was important because in addition to the
core grant-making functionality, a legacy system also included a custom-built
Java-based portal system that handled announcements, communications, messaging,
and so forth.
Early in the project's analysis phase, the developers
recognized that the client's needs required a Web interface. One of the
recognized advantages to the original RIF project was, however, its traditional
Rich Client/Server interface. Lane knew he needed to implement a similar front
end for the new eRIF package, but he didn't want the nightmare of coding a
Windows-style interface in HTML. The Infragistics package's kit of interface
elements - the grid, tab, and other screen controls - let him deliver the slick
interface users demanded while focusing his efforts on the project's "under the
hood" aspects.
A project of this scope was projected to require eight to
12 months of work by a team of three to four developers if delivered as a
traditional ASP solution. Using ASP.NET and the NetAdvantage Suite, Lane
delivered the solution in five months working by himself.
Part of the development time savings was attributed to
ASP.NET's ability to use an XML/SOAP Web service to interface to the legacy
Java-based portal system. The Infragistics tools also accounted for major
development efficiency. The XML Web service enabled near real-time messaging
between the new application and the legacy portal, which combined with COM+
Component Services ensured message integrity and delivery. In addition, Lane
implemented a completely object-oriented architecture throughout the
application, anticipating it would ease future maintenance efforts.
The development process began with a series of meetings
with users to analyze the existing workflow and methodology and map out an
implementation plan. Lane worked closely with Brad McCabe, technology
evangelist for Infragistics, to maximize the NetAdvantage Suite's capabilities.
The suite's ability to expose and inherit functionality - unlike typical "black
box" toolkits - provided the sort of transparency that translated into
significant development efficiencies. Lane was able to extend the Infragistics
controls to suit AECF's unique needs.
There was more at stake than mere user convenience. The
foundation is subject to compliance with IRS regulations and is obligated to
ensure the money they grant is benefiting the intended end goals. Therefore,
the system needed to deliver a variety of reports, some of which are
text-intensive and - previously - labor-intensive. But the overriding concern
was delivering the final product: the check. Checks must be delivered to the
intended recipient in a timely manner. Dennig describes AECF's goal as
"reducing the grant approval time and making the dispensing of funds as quick
and painless for our grantees as possible."
The eRIF package also needs to work with the existing
legacy grant-making system. In addition to the legacy system's contractual
issues, Lane struggled with data-porting tasks because of the database's
proprietary nature and its lack of any facility to enable external interfaces.
Although the database was stored in SQL Server 2000, it was impractical to
access it directly.
Future-Proofed Foundation
Future growth is a significant consideration. Lane says
AECF "wants to be able to make some of the information available to their
grantees so that they can track the progress of their requests, track the
progress of their grants, and other information."
Lane decided on a standard ASP.NET architecture on top of
the .NET Framework, with a SQL Server 2000 back end (see Figure 2). All I/O is
handled by stored procedures. The system uses three servers: one for the main
Web application, a second for Microsoft's SharePoint Portal Server, and the third
handling the XML Web Service and COM+ Component Services.
Figure 2.The eRIF project is a compendium of .NET C# code, third-party
controls, legacy Java applications, and COM+ components. The Infragistics
NetAdvantage Suite's controls made it possible to deliver the product in rapid
time with a high level of user satisfaction.
The workflow begins with program officers, who generate
new grant requests. From there, it is routed to senior managers who make a
preliminary determination on whether or not to authorize a grant. This is an
iterative process. The next step is to route the approved requests to the
Grants Management and Finance departments to process the grant. After final
approval, various documents and reports are generated for the president for
signature and routing to the grantees.
In addition to the essential functionality, Lane was able
to implement a series of productivity features, including spell and grammar
check and usage of Microsoft Web Storage technology for document management
within the Web application (he used COM+ to access Microsoft Office components
on the server side). He also was able to enhance the UI cosmetics via the
Microsoft DirectX and WEFT technologies.
Lane says he "worked from the back end forward," starting
with the middle-tier business rule layers, moving on to the front-end visual
components, and finally tying it all together. He enjoyed the ability to embed
the Infragistics ASP.NET Navigator component for dropdown menus in ASP.NET User
controls (see Figure 3). This worked nicely with the .NET Framework's "out of
the box" back-end "plumbing" capabilities. Lane says under traditional ASP
development constraints, he would have needed one full-time person to handle
mundane programming tasks such as JavaScript menus, which are now layered in
and transparent. He says if he does "need to get into plumbing," he can,
without difficulty.
Figure 3. Ajilon leveraged ASP.NET to deliver a Windows Rich Client
interface in a Web application. He implemented features such as pull-down menus
without the grunt work necessary in a traditional ASP project.
Once "under the hood," Lane experienced major benefits
from being able to use the Infragistics NetAdvantage Suite's controls to
integrate directly with ADO.NET. Because it could consume and bind to ADO.NET
datasets, he was able to employ a highly customized UI and code in a manner
that will ease future maintenance tasks. He praises ADO.NET's ability to expose
datasets' internal structures, eliminating the need for custom-built data objects.
Beat the Wrap
Lane also wrapped the legacy Java portal so users could
access messaging and message broadcasting without changing the underlying
message system. The eRIF will also interface with the Grant Tracker Online -
the finance application that will verify budget balances as the process
proceeds. A typical scenario he describes under the new system involves grant
traffic handling: A manager in the field who needs approval for a grant process
wants to hit the portal and see a message saying, "Mr. Jones, we need approval
for preliminary funding for a grant for ABC ..." The new eRIF system sends a
signal to the Java portal using Web Services, which is possible because the
portal can "talk XML." "We were able to work to smooth communication with the
new software," Lane says.
Still, because of Java's scaling issues, he was concerned
with the probability of the new application waiting on the legacy messaging
code. He used MSMQ and COM+ to work with the Web service to talk to the Java
portal, synchronizing operations with the message queue.
There are two tentative plans for Phase Two. First, Ajilon
will beef up eRIF's reporting functionality. Lane wants to let end users and
administrative groups see where their money is going and get away from the current
data-driven administrative interface. He plans on designing the necessary
administration screens to address the needs so nontechnical staffers can manage
common administrative tasks.
Microsoft has taken note of AECF's use of ASP.NET in
migrating its system. "XML Web services are breaking down barriers for
enterprises and charitable organizations alike," says John Montgomery,
Microsoft's director of the Developer Platform and Evangelism Division. "We're
extremely gratified to see that AECF has chosen .NET for building new, highly
integrated applications that enable the organization to focus on serving the
needs of children."
With eRIF, AECF projects a 25 percent reduction in
turnaround time from grant proposal to funds disbursal. By using ASP.NET, Ajilon
reduced the development cost by approximately a 5-to-1 ratio. End-user
satisfaction improves because the new UI and workflow provide a tight match to
the way they perform their work, as well as a reduced complexity by eliminating
multiple interfaces during each grant application's data-gathering phase. ".NET
can help stretch IT budgets and help make the cut from current systems ASAP,"
Lane says. In the case of AECF, this means more money -sooner - into the hands
of those who need it.
Ron Schwarz is a programmer who left New York City for
the wilds of rural Michigan, where he writes the occasional article and
program. He welcomes your comments at http://www.clubvb.com.
Tell us what you think! Please send any comments about
this article to mailto:feedback@aspnetPRO.com.
Please include the article title and author.