Project designation: Sun Risk Analysis System is part of Sun Preventive Services (SPS) and Sun Customer Networked Services (CNS)
Brief explanation of the goals of the project:
Sun Preventive Services enables Sun customers to significantly improve system uptime and availability, and reduce incident volume and cost. As a capability within Sun Preventive Services, the Sun Risk Analysis System (SRAS), is a Java technology-based solution, that enables Sun to deliver enhanced risk analysis services to its customers. These services include hardware, software and patch-level assessment as well as the examination of a variety of other critical systems data in order to identify and remediate potential IT issues before they can affect downtime.
f. Brief description of how the system helps users
II. Organizational Objectives
Short and long term benefits
a. What short- and long-term benefits did the organization achieve from the project? Did the solution meet the projected goals for saving time and money? How were benefits measured? Was the system mission critical to the organization?
b. Describe the business purpose of the new system.
Committed to the success of its customers worldwide, Sun selected Fair Isaac’s 100 percent Java technology-based rules management system as a key component in its state-of-the-art risk management services for its customers.
Historically when known systems problems arose; Sun would issue static documents like Sun Alerts, Field Information Notices (FINs) and Field Change Orders (FCOs) to its customers. These alerts and the symptoms of these alerts were associated with specific issues. Sun realized that a new architecture would be more powerful if they could associate classes of knowledge and symptoms together rather than by specific issues. This would give Sun the background information to begin to group and analyze symptoms together and provide a framework for a more proactive and predictive prescription to a potential problem.
c. Describe the features of the new system.
Sun Preventive Services provides customers with risk analysis and mitigation solutions that can help them cut costs and improve availability of key IT systems. The new solution built with a business rules management system significantly enhances Sun’s ability to effectively diagnose problems, and identify and recommend resolutions in a timely and effective manner. The ability to use the built in rule templates for inputting new alerts has helped structure the problems and symptoms. Previously, a human interaction with the system resulted in similar issues being described, categorized and resolved in different manners. In addition to accelerating similar issue resolution, utilizing the rule flow utilities of the new system allows those to be copied over and then customized as needed, rather than hard-coded from scratch.
d. Were users of the system involved in the project during the planning and development phases? If so, how?
Representatives of the user community were heavily involved in the planning and development phases to produce an accurate set of business, and technical requirements. The Sun Sigma community was also involved in measuring the metrics and success of the developed application.
e. What were the greatest challenges in completing this project? How were they overcome?
With any new technology project, there is the need to manage the change. At Sun, there was a need for a cultural mind-shift in how the team approached programming. With such a strong history, legacy and pride in programming at Sun, the team needed to shift from its usual “see the coding” state to “how can we get the dynamic business logic” into the code. It was a two step challenge – the first being the culture shift of programmers giving up the control and visibility into the rules coding. The second shift was how to harness and capture the business knowledge of the various stakeholders and translate that into system logic that can be readily used in the Risk Analysis System.
f. Were the goals changed as the project progressed? If so, what were the changes and why were they made?
The scope of the project was slightly changed to move certain requirements into phased releases to accommodate the aggressive timeline and resource constraints.
III. Category
Please indicate the Innovator Award category as listed below. (Categories reflect the editorial organization of Application Development Trends.Many projects can reasonably be fit into multiple categories. Try to fit your project into the category that best reflects the tools and technologies used. Don’t worry about whether you picked the right category; we will review all submissions carefully and will make changes where Sun thinks that it fits within aspects of all sections.
Middleware/Application Integration
Emphasizes the use of middleware, integration and messaging technologies within an application architecture. Relevant tools can include transaction managers, object request brokers, RPC-based schemes, XML-based technologies, object transaction monitors, Web services, application integration tools, message-oriented middleware (MOM) alternatives, and publish and subscribe systems. Also emphasizes the use of middleware to link multiple packaged and/or packaged and internally developed applications, and multivendor DBMS systems to allow seamless integration between dissimilar systems.
The SRAS solution stores XML results in a Native XML Database (NXD). The XML can be transformed into various report types based on user preference. SRAS is has direct user facing interfaces via the web and in a Command Line Interface, but also provides a java-based web services API for other Sun Serivces offerings/applications to submit requests, query status, and retrieve analysis results.
Component-Based Development
Emphasizes the use of component-based development schemes, object-oriented databases or object-oriented techniques, as well as the use of fine-grained and large-grained components (such as COM, Web services, Enterprise JavaBeans, Common Object Request Broker Architectures (CORBA), packaged or Web-based components, class libraries and/or application templates. Also emphasizes the integration of components from multiple sources.
Application Engineering Emphasizes the use of software engineering tools and practices. Includes the use of Extreme Programming (XP) concepts, the Unified Modeling Language (UML), Computer-Aided Software Engineering (CASE), object-oriented analysis and design tools, automated testing tools, methodologies, project management, process management, configuration management tools and/or productivity measurement tools in an innovative corporate development project.
SRAS could also be listed as an Application Engineering project.
E-business Application Development
Emphasizes efforts to develop a corporate application architecture that incorporates legacy systems, client/server systems and the Internet. The judges will evaluate how the finished application affects business processes, as well as the tools and technologies employed. This category also emphasizes the use of multi-tier development tools for development of enterprise-wide applications that can include Web-based and wireless clients. Examples include RAD tools, data modelers, visual 4GLs, Java tools, Internet tools, wireless development tools and development frameworks.
Open-Source Development
Emphasizes the use of open-source technologies and tools by corporate development teams building internal, proprietary applications or for extending the capabilities of existing systems. Projects that combine traditional development methods with open-source offerings as well as projects relying solely on open-source technologies are relevant to this category.
SRAS isn't a pure Open Source project, but does employ some open source technologies.
Data Warehousing
Emphasizes the design and development processes and tools used in enterprise data warehousing projects, including: data mining tools, online transaction processing systems, data extraction and transformation tools, database management systems, universal data management systems, query and reporting tools.
IV. THE PROJECT
Methodology/Process
Emphasizes efforts to develop a corporate application architecture that incorporates legacy systems, client/server systems and the Internet. The judges will evaluate how the finished application affects business processes, as well as the tools and technologies employed. This category also emphasizes the use of multi-tier development tools for development of enterprise-wide applications that can include Web-based and wireless clients. Examples include RAD tools, data modelers, visual 4GLs, Java tools, Internet tools, wireless development tools and development frameworks.
a. Describe how productivity tools or techniques were used in the project. - N/A
b. Were testing tools used during development? If so, when were they used? Was the testing cost-effective?
We use Ant as part of our code testing. Final application testing involves scripting large numbers of jobs at times.
c. Was a formal or informal software development life-cycle methodology employed? If yes, please describe it.
We used a combination of Sun Sigma and the Sun Product Life Cycle (PLC) during the software development phases. The PLC is is Sun's core business process for managing the total product life cycle from product concept development and business planning to product retirement.
d. What formal or informal project management methodologies and/or tools were used to manage the project? If used, please describe how.
The project had a very detailed project plan with weekly core team meetings, daily dev team meetings and weekly stakeholder meetings to ensure alignment. Six Sigma was introduced early in the process to develop VOC, and CTQ's. A great deal of time was spent gathering input from over 30 CTOs at Sun initially, a rigorous RFP process was done, as well as months of planning to ensure that requirements were captured from the business and the technical teams at Sun.
e. Were software quality metrics used? If so, what were they, and did using them significantly help the project?
V. Technology
Emphasizes the design and development processes and tools used in enterprise data warehousing projects, including: data mining tools, online transaction processing systems, data extraction and transformation tools, database management systems, universal data management systems, query and reporting tools.
a. What were the major technical challenges that had to be overcome to complete the project successfully? How did the team respond to those challenges?
Learning the different technologies that make up the SRAS solution to be able to deploy an initial production release within six months.
b. What software tools, including databases, operating systems and all development tools, were selected for
the project? Why were they selected over competing tools? What process was used to select development tools and software platforms?
By 2004, the Java rules systems had evolved and matured quite rapidly since the in-house system was created in 1999. Sun decided to evaluate the decision of “make versus buy”. The evaluation approach involved engaging the key stakeholders and establish the requirements of the new system.
The criteria for the new product included the following:
- 100% Java
- Rules Processing Capabilities
- Versatility
- Rule Management
- Integration
- Ease of Use for Developers and Business Users
- Systemic Qualities
- Specific IT Requirements
- Future Value
- Costs of the product
The evaluation team consisted of, one Distinguished Engineer, Two Principal Engineers and Two Sr. Staff Engineers that combined had many years in theoretical and practical rules systems experience.
The team translated the requirements into weighted evaluations criteria that would be part its initial research and market survey to identify applicable products. The initial list of solutions included 27 commercial, 6 non-commercial (open source, freeware, etc.) that was then narrowed down into a short list of 10 commercial products and the in-house development team to respond to an RFP. From that, a short list of 4 commercial and the in-house development team engaged in a product/ use case demonstration.
Internally, there were a few concerns over the costs of building and maintaining all of the components beyond the core rules engine. Sun had already experience first-hand the necessary upkeep and maintenance on the in-house system in place.
After the comprehensive review of the leading business rules technology vendors, Sun selected Fair Isaac Blaze Advisor. Already certified to work with the Sun environment, Fair Isaac thoroughly demonstrated its enterprise approach to rules management, which includes scalability, consistency, reuse and overall vision of how rules work within large mission-critical enterprise applications, would provide a robust solution for Sun’s risk analysis needs. Specific features that influenced Sun’s decision to select Blaze Advisor include its enterprise rules repository, enhanced rules metadata properties and its powerful querying capability.
c. Describe the overall system architecture. Were elements of the technical infrastructure put in place to support the new system? Please describe.
The pictures above detail both the Blaze Advisor business rules management system environment and how that has been utilized in the Sun Risk Analysis System architecture.
Sun’s use of Blaze Advisor within its diagnostic system illustrates the power of rules in a complex customer-facing application. Blaze Advisor provides Sun with an enterprise-class Java-based solution that has been designed and customized to improve its interaction with its customers on a daily basis. This also provides a flexible framework to interact with customers for alerts across the various channels of communication.
d. What characteristics of the tools and technologies used were most important in achieving the business purposes of the system?
From a development and deployment perspective, the revitalized system time to implementation has been outstanding. The original system built used 10 Sun programmers over 2.5 years to get the first system running. The new system built with Blaze Advisor took 7 programmers, 2 Knowledge Engineers, and 2 Blaze Advisor consultants 5 months to get the entire system running into production.
The technical results and the management of the system have also surpassed expectations. First, the core rules engine of Blaze Advisor has been faster and more efficient that the team expected. Second, the rule creation and maintenance has been simplified and streamlined. Senior level Knowledge Engineers are able to maintain complex rules packages using the built-in IDE of Blaze Advisor. As expected, the non-developers have been able to utilize the templated Rule Maintenance Applications that has allowed them to make changes to the system faster, and has freed up the Senior level Knowledge Engineers to focus more on the complex issues. Last, the ease of integration of the system has been outstanding as a standalone system, as part of an Application Server and potentially in Grid environments.
Project Team
a. What was the size of the development team?
The new system built with Blaze Advisor took 7 programmers, 2 Knowledge Engineers, and 2 Blaze Advisor consultants 5 months to get the entire system running into production.
b. Describe the software development experience of the team members.
As part of the Sun Sigma business control measures, the SRAS developers we given two surveys: one on ease of integration and one on ease of extensibility. The developers gave the SRAS high ratings on both surveys.
c. What was the composition and skill level of the team? Did development teams require training to work with the technology?
The skill set of the developers on the project ranged from senior to junior. Training on the system was provided in two week segments for the developers prior to the development work beginning.
d. Please list team members and their titles.
e. How many person-months/days did the project take, and over what calendar time frame? Was a formal schedule created at the start of the project? Did the project stay on schedule?
The new system built with Blaze Advisor took 7 programmers, 2 Knowledge Engineers and 2 Blaze Advisor consultants 5 months to get the entire system running into production.
f. Did management and the user community consider the project a success?
Yes, the new business rules management system gives Sun the ability to scale and broaden its rules-based systems in ways that they did not have the time or resources to consider before. Changing the rules in the Sun Risk Analysis System built with Blaze Advisor is on the magnitude of 10-20 times better than changing the previously hard-coded rules.
g. If you had to do the project over again, would you do anything differently? If yes, please explain why.
Rules management is every bit as important as the rules engine. If Sun were to do the entire project over, the emphasis would be on rules management. The framework for the ability to expand the business rules engine-based applications will take Sun from performing analytics of rules that are around problem/risk analysis to looking more at some traditionally true “business rules.” These include areas such as Policies, Entitlements and Constraints to allow Sun to perform some services that they previously did not have the ability or time to do. Ultimately Sun is expecting a much broader use within the Customer Networked Services and across other Sun Microsystems organizations or business rules management systems.