The Arizona Supreme Court creates the ultimate outsource and insource simultaneously.
The Supreme Court has "outsourced" its software development to Visible's automated code generator, which allows it to keep all its development in house and preserve the jobs of its programmers.
The state of Arizona has done some pretty clever things with information technology. The first "good government" initiative that I was aware of was the IBM web portal known as Service Arizona ( www.servicearizona.com ) - the online site for ordering car registrations and drivers' licenses that put an end to the long lines at the Motor Vehicle Division.
Now, the Arizona Supreme Court is doing something less visible (you will see later why this is a good pun) to the outside world, but just as innovative: it is rewriting many of its application "objects" in the Microsoft .NET architecture, using a software code generator called Visible Developer from a company named Visible Systems.
"Objects" are the pieces and parts that make up applications. Many objects can be written once and re-used by different applications. For example, in the Court systems, things like calendaring and scheduling are major issues; not only does the Court have to deal with actual court dates, but it also has to keep track of citations issued throughout the State, and keep track of both adults and juveniles who are on probation and must report periodically to see a probation officer. And all the Court systems have to talk to each other. There are fifteen Superior Courts, 85 Municipal and 76 Limited Jurisdiction courts in Arizona . Some courts have their own programming staff, while others have to outsource their software development. Without consistency they end up doing the same development tasks over and over, which is a poor use of time and resources. But if they create a series of "objects" and put them in a "library," any Court that needs them can get access to them.
The Court has had all its information in databases for a long time. In the software world, we call this a "legacy" system. Most legacy systems were developed piecemeal, with whatever programming language was in vogue at the time. In the Supreme Court's case, much of that programming was in Cobol. To make things more complex, some systems are written in obscure languages that were never mainstream.
So every time the Court wanted to update or enhance its systems, it would have to write something in Cobol, and perhaps write the same thing in Powerbuilder and then again in Panther, because these languages don't talk to each other easily, and the same user interface (GUI) can't be used by both. So the Court's programmers might have to write a tracking application for the juvenile probation system, and then write the same thing all over again in a different language for the adult probation system, even though parts of the two applications are doing essentially the same thing.
Recently, a technology commission within the Court has adopted Microsoft's .NET as the standard for new enterprise systems. With this platform, one could thoretically write one "object" and use it in several different places: for example, wherever anyone wanted a scheduling solution or a calendaring solution. In many cases, existing systems will be migrated from legacy platforms to .NET.
So how do you go about rewriting all this code for a different platform? Well, if you are smart about it, you use a "code generator". The Court chose Visible Developer, a tool that actually generates not only the basic business rules, but also 85-90% of the code itself - in a format that can be available statewide to any Court that wants to use it.
So the software developers who are proficient in Cobol and those who are proficient in Panther do not become obsolete. They can use Visible Developer to rewrite their code even if they are not proficient in .NET itself. Developer trains them in .NET, which is another potential saving for the Court system. This is using software to write software, and creating economies as a result.
You realize that what's happening here is the ultimate outsource and the ultimate insource simultaneously: The Supreme Court has "outsourced" its software development to Visible's automated code generator, which allows it to keep all its development in house and preserve the jobs of its programmers. There's some kind of incredible irony here.