Cockpit: Decision Support Tool for Factory Operations and Supply Chain Management (continued)


Previous Next     Page 7 of 14

PRESENTATION LAYER

Application Goals

From an application requirements perspective, the Cockpit's presentation layer has two main goals: to present an intuitive user interface that allows managers to view key indicators across the VF and to inform management of events related to internal business or supply chain situations.

The Indicator Reporting module addresses the goal of presenting an intuitive UI that supports and easily maintains a catalog of important, personalized data views, as well as performs ad hoc analysis in support of high-level decision making. The Scanning and Notification module addresses the second goal, informing the manager of events related to either internal business situations or supply chain related events. These two elements, appearing as two separate applications, work in unison and share content to provide the total solution.

Ease of Use

Although the goal was to design a very simple UI, we wanted to ensure that the design did not limit the usefulness of the tool as users gained expertise. For users willing to learn, we needed to provide additional capability. To accomplish this goal, Microsoft Office Web Components* (MSOWC) were selected as the foundation for the UI. These components are compatible with the underlying data tier and have the majority of the functionality provided by other OLAP tools. Additionally, the look-and-feel of the components is familiar to Microsoft Office* users and is part of the Intel standard application suite. Nevertheless, these components are difficult for the novice user to operate. While no knowledge of the tool is needed to start using it, full functionality is available by selecting Expert Mode. To this end, we built a simple-to-use auxiliary set of controls for viewing and analyzing OLAP data, consisting of two list boxes and two tree view controls.

Figure 12: Left panel displays auxiliary set of controls for viewing and analyzing OLAP data

Using these controls, users select subject area, choose measures to view, and then slice and dice data according to dimensions of interest. Additionally, we developed an automated time dimension matching the Intel calendar. Continuing to manage all OLAP interaction through MSOWC, these auxiliary navigation controls succeed in hiding details and expert style navigation from the user.

Metadata-Driven UI

Having elected to provide custom navigation controls, it was important to design the framework so that the number of OLAP cubes accessible by the application could be easily increased. To achieve this goal, we adopted a metadata-driven method of handling navigation information. When cubes are processed on the database server, several XML files are created to include metadata about each cube that is required for the UI to populate navigation controls.

To include a new cube in the application, it needs only to be designed according to Cockpit guidelines and hosted on the local server. A few simple modifications to an XML file will cause the UI to present the cube and all of its information to the user through the same user friendly interface.

Scalability and LAN/WAN Performance

Though the Cockpit interface was well received and provided quality performance for those with high-speed connections to the server, there were significant performance problems for those across long WAN links. This is due to our adopted rich client model. If users in Asia tried to access the Cockpit's cubes hosted on a server in California, response times for certain operations increased by several orders of magnitude. Moving all processing to the server-side would have taken away the very interactive experience provided by the rich client model.

Figure 13: Metadata-driven method for navigation with XML files created during processing on database server and distributed cubes for performance

Instead, we chose to replicate the OLAP cubes on an array of OLAP servers at each remote site. Since the presentation layer was primarily data-driven, we were able to add an entry into the XML cube description files to specify servers that had cube copies. Now, when a user connects, the UI can connect to the closest database server. This has significantly reduced response times at remote sites without requiring major changes to the presentation layer.

Multiple Form Factors

One of the original goals of the Cockpit application, to provide a rich and interactive user experience while analyzing OLAP data, led to the decision to host MSOWC in the browser and handle the majority of report generation on the client.

However, as the application's user base increases and the data scope widens, it will become necessary to support various client form factors in the near future. These clients may include Internet Explorer 5.0* hosting all ActiveX controls locally, a pure HTML browser with no ActiveX control capability, or even a Windows CE* or Palm OS* device.

All of these form factors should be able to benefit from Cockpit content while providing users with an appropriate level of interactivity. To support these multiple form factors, Cockpit components are capable of providing most of the reporting content in static image format consumable by almost any client.




Previous Next     Page 7 of 14