9.2. Honeywell

We've all heard the saying, “This isn't rocket science.” Well, in Honeywell's case, it is. From spacecraft components to landing systems to nylon ropes for hot air balloons, Honeywell's products and technology touches everything that flies. Honeywell builds fuel control systems, wheels, and brakes in Indiana, cabin pressure systems California, engines in Arizona, and navigational equipment on the East Coast. While creating those high-precision components, the company faced a difficult obstacle: how to implement new technology while ensuring zero errors.

9.2.1. Computing Environment

Honeywell has been using computers since at least the early 1970s. “If you look at somebody that's been building applications for 30+ years, you're going to find a collage of zillions of programs with logic scattered all about, data scattered in many files, and the same bits of data repeated many times. It got to the point where if you had to make a change to business rules, you had a pretty massive analysis and test effort,” says Dave Kulakowski, development and technology manager, Honeywell.

About six to seven years ago, a group of two or three engineers tried to come up with a better way to build applications. At that time, Honeywell started exploring object technologies. The idea was to pull the logic out of those “zillions” of programs and build business components for those items. The main goal was to create a computing environment in which they could create an object and reuse it over and over again.

The team first started building objects with IBM SmallTalk. They later switched to the Java language because it was easier for application developers to learn, there was an abundance of schools teaching the language, and industry was embracing the technology.

Why Java Technologies?

“We chose Java technologies because, first they use an object-based approach that could fulfill our vision of reusable business components. Second, there is an abundance of resources in hardware, software, and people educated in the technology. Third, we really liked the idea of the JVM in which you could run an application anywhere, without having to deploy application software on the client machine. Those were the reasons we were moving to the Java language three or four years ago,” says Kulakowski.

“We've actually backed off a bit on one of the above reasons, which is to place applets out on the desktops. Now we've moved to a servlet middle-tier arrangement with Java technology and very thin implementations of the Java platform on the desktops,” says Kulakowski.

9.2.2. Computing Infrastructure

Worldwide, Honeywell has two data centers, one in France and the other in Tempe, Arizona. In the U.S., most sites use the mainframe data center in Tempe.

There is a collage of OS/390 boxes running approximately $24 billion worth of the company. “We have OS/390 mainframes, AS400 systems, UNIX servers, Windows NT servers, and all kinds of desktop hardware. We have a vast array of operating systems, database technologies, computer languages, and supporting system software. We've got a little bit of everything. That can happen when a large company like Honeywell has been doing computing since the late sixties or early seventies,” says Kulakowski.

9.2.3. Company Vision

The key to writing a successful application is being able to keep up with the business. Businesses are so dynamic today, requiring modifications and enhancements to their computer-based business systems. e-Business has added to this load, and requires modifications and enhancements at an even quicker pace. “With our old development model we couldn't keep up with the pace,” Kulakowski notes. “We were looking for something that could meet the business demand. We believe the component/object development model could.”

Honeywell envisioned building an application infrastructure that not only met their current business needs, but could be easily modified and adapted to meet future requirements (see Figure 9.1).

Figure 9.1. Honeywell's Enterprise Business Components and Their Use


“The whole idea is that if components are built that represent things within a business, one would be able to plug-and-play those components into any kind of application built in the future. You may have to change the user interface, maybe look at the business processes, and then wire those things together into the application,” notes Kulakowski.

9.2.4. J2EE Technology Projects at Honeywell

In beginning to work with J2EE technologies, Honeywell identified three projects that would benefit: the Non-Conformance Corrective Action System (NCAS), the Shop Floor Application, and the Matrix to MACPAC interface.

NCAS

Honeywell embarked on its mission to build a component-based infrastructure by building the Non-Conformance Corrective Action System (NCAS), a three-tier Internet application used to track defects and corrective actions on the shop floor of its manufacturing plant in Rocky Mount, North Carolina.

To build NCAS, the core Honeywell development team of about six people leveraged technologies that included VisualAge for Java, MQSeries, DB2, MVS, and Windows. The three-tier architecture features a user-friendly interface made up of reusable objects created with VisualAge for Java, running on thin-client workstations via the Internet. The business-logic tier produced through VisualAge for Java runs on a Windows NT server. The third tier, the enterprise tier, is composed of legacy wrapper programs that enable developers to leverage business rules within legacy core-business applications. To tie in the whole system, MQSeries acts as the link between business layer and the enterprise server.

The team's goal for NCAS was to develop a better user interface. Previously, users had to go through several screens and reenter the same data in different places to do their jobs. The team cut the process down to two or three screens, called editors. When users fire up one of the editors, they can run up as many as 20 CICS transactions.

“The problem we ran into with the NCAS system is that the users expected the response times to remain the same as the old system,” says Kulakowski. “How do you take 27 CICS transactions that are running and make them run in 3 to 5 seconds?”

Honeywell reduced response times dramatically by having MQSeries run the processes in parallel. The team broke down the 27 transactions into groups of three or four, based on how they work, and launched them at the same time. It appears on the mainframe as if five to six users are running three or four transactions at the same time. The team built its application and satisfied its response time requirement, using only a few screens (Figure 9.2).

Figure 9.2. Honeywell's NCAS Multitier Architecture


“With the parallel processing capability we gain through MQSeries, we've improved response times sevenfold. We can now create all kinds of applications that weren't possible in the past due to unwieldy response times,” notes David Kulakowski.

“I would say that we didn't get very many business components out of NCAS. What we got most out of NCAS was a basis for building multi-tier applications and knowledge of middleware and Java technology,” Kulakowski continues.

Shop-Floor Application

Honeywell's second project, the shop-floor application, is designed to streamline the processes of making engineering changes available on the shop floor. The effort was the development team's answer to a slow design process. In the past, it took a few hours to compile new specifications on paper and make them available for production. With the new Web-based application, the process happens near real time, electronically.

Based on the NCAS architecture, the shop-floor application was built with VisualAge for Java and designed to run on WebSphere Application Server. The solution uses servlets running on the application server to put shop paper on the factory floor. “That project gave us a good sense of what WebSphere was all about,” says Kulakowski.

“By using a Web-based application model, we have reduced our software deployment costs by 98 percent,” Kulakowski continues. “We can distribute software and updates centrally, from a developer workstation, rather than distribute software to each desktop as we had to do in the past. This approach gives us the added advantage of improved version control, as well. We know everyone is using the same release.”

Matrix to MACPAC

Taking VisualAge for Java's J2EE technology capabilities to the next level, the development team used EJBs to build an interface to join two of their core business applications: Matrix, an off-the-shelf commercial application that engineers use to design and build new products, and MACPAC, Honeywell Aircraft Landing System's MRP system (see Figure 9.3).

Figure 9.3. Honeywell's Architechture for Connecting Matrix and MACPAC Applications


The team's first application leveraging EJB technology, the interface is designed to allow engineering data to flow more quickly to manufacturing. The EJB technology is based on the Java programming language, so components can be deployed on any platform and operating system that supports the Enterprise JavaBean standard, and on any operating system.

Enterprise JavaBean servers reduce the complexity of developing middleware by providing automatic support for middleware services, such as transactions, security, database connectivity, and more.

“We achieved significant productivity gains by using the built-in functionality provided in the EJBs,” says Kulakowski. “Our goal is to be able to turn around working code in a couple of weeks, not months. Once we amass 20 or 30 core business objects, we expect to see an explosion of new applications coming quickly into production. The sparks are already starting to fly.”

The team used Enterprise JavaBean security capabilities, as well as some of the locking logic features available with EJBs. “We are depending on the security components that come with WebSphere and Enterprise JavaBeans. Authentication and authorization of who can use what with the business object can all be defined within WebSphere,” Kulakowski notes. “The security is a great piece because it is something we really don't want to build into the application code. We did that in the past and learned our lesson—security administration can be a real nightmare when security code is embedded in the application software,” he says.

In the past, Honeywell would use old procedural concepts when working on this type of project. The result would be an interface built for these two applications alone. With EJBs, the team is now building objects and applications that can be reused over and over. “We're using proven technologies, like VisualAge for Java and WebSphere, that all work smoothly together. As a result, our development processes are faster and more flexible,” says Kulakowski.

With these Java projects, Honeywell is doing much more than simply building a new application. “We're building a collection of core-business objects that can be deployed rapidly to build new applications. This speed to market is particularly important for our evolution into e-business. It will ultimately redefine the entire role of our development team. We see ourselves becoming far more proactive in showing how technology can transform our business,” continues Kulakowski. “Our direction is to take EJBs running under WebSphere Application Server and build new links to our business data. We want to be able to download information easily to wherever it's needed—whether it's a workstation on the shop floor or a palmtop in the hand of a sales representative. Our users will have information at their fingertips, wherever they go,” he says.

9.2.5. Lessons Learned

The NCAS project was Honeywell's first attempt at writing an application using the Java platform. The team states that it may have been too big a project for its first such undertaking. The team members tackled a project with no experience with MQSeries on NT or with Web-based applications, and with little experience working with the Java language.

“If you look at this technology, it's frightening and probably scares off many people. The good news is that development time improves dramatically. If you look at our first few applications, such as the NCAS system, the development time was not that good. As we began to build other systems, our development time improved dramatically. What took 10 months could be done in three months. In some cases, we provided solutions in weeks instead of months. A lot has to do with the fact that we were reusing parts of components from prior development efforts, and our people became more knowledgeable about the component approach and technologies,” says Kulakowski.

“You see the difference when you build something quickly and you see the enthusiasm grow. Then you know you're on the right track and you're almost to the point of achieving what you set out to do,” he says.

“If people want to build Java applications or business components, they don't just buy a tool and go do it. You can't do that and expect everything to work. You have to take steps and a natural evolution within the IT department to understand how to use those technologies. If you decide to use contractors or outsource the effort, you still need to be involved in the architecture so that it fits within your business,” Kulakowski continues. “You won't build the most grandiose thing with the product in the first six months or year. You have to create a plan, figure out what your vision is, and then tackle it in workable pieces.”

The development team's biggest obstacle was probably the fact that this was its first time through. The project took about 10 months from beginning to end. “Some of that effort was thrown away or lost when we went down the wrong paths with the technology,” says Kulakowski.

Honeywell turned to IBM because “IBM is always there and will probably always be there. With core technologies, this is the type of vendor you want. This is important because it takes significant effort to establish the technology within the organization. I want a vendor and a product that is going to be around,” he concludes.

9.2.6. Results

Honeywell's vision both before and after embracing Java technology remains the same: to build plug-and-play components so that applications can be built quickly and cheaply. The company has met this goal and the business is there to confirm it.

The development team has been receiving positive feedback from customers and employees alike since embarking on their Java technology–based projects. “Feedback had been pretty negative before we built our Java applications. People weren't happy with us because we couldn't deliver applications fast enough,” said Kulakowski.

Winning the 1999 Intelligent Enterprise Magazine RealWare Award for “Best Enterprise Application Integration Implementation” and runner-up of the 1999 AD Trends Magazine Innovator Award for “Best Object-Oriented/Component-Based Development,” confirms that Honeywell is on the right track.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset