If you are reading this paper, you are probably wondering if you should consider Hyades any further. The goal of this document is to provide an overview of the major benefits of using Hyades as your product infrastructure.
Whether you have a seasoned product or you just have a great new idea you wish would be on the market tomorrow, Hyades can help you reach your goal. This is not an all or nothing value proposition: You can integrate with Hyades at your own pace to gain incremental benefits over time. If you want to learn how to integrate your project/application with Hyades, you should also read Adopting the Hyades Platform.
Hyades is an integrated test, trace and monitoring platform, based on Eclipse, that provides standards, tools and tool interoperability across the development process. It can be leveraged by a very broad range of software tools, spanning an area known as Automated Software Quality (functional testing, load testing, unit testing, runtime analysis, static analysis). Other tools available include profiling and tracing, systems performance and availability monitoring, log analysis and correlation, and even performance tuning. Within that space the range of products is pretty wide, varying according to the users, the targeted stage in the lifecycle, the verification techniques, etc. Additionally, each category can be further refined into the targeted technologies such as web applications, HTTP, java, .NET, C++, etc. Hyades enables you to broaden the scope of your solutions by connecting users and tools across the application life-cycle.
Whether you are building a single product or several products, you probably don't have a complete coverage of the entire spectrum of solutions that your customers need in order to get their job done. Building your products using the Hyades infrastructure brings you a wide range of capabilities made available as part of the framework for free. For instance, Hyades offers simple features for HTTP load testing, manual testing, runtime analysis, log analysis, etc. Your customers can directly use these capabilities at no charge, or decide to acquire add-ons provided by other vendors leveraging Hyades. The Hyades infrastructure will allow your features to integrate with other vendors' features providing a completely integrated solution to your customers.
Let's take the example of company A who sells a GUI testing tool that is integrated with Hyades. Company A's customers can leverage the code coverage capability available in Hyades to assess how thorough their testing is. Each test run will be correlated with the code coverage data by virtue of the Hyades platform. As these customers' knowledge matures, they may want to use additional capabilities beyond the code coverage available in Hyades. For instance, they may acquire a solution from company B that detects performance issues, and provides deeper levels of code coverage. As they use this new product, they will still enjoy the same integration without having to learn anything substantial.
Automated Software Quality (ASQ) reach goes far beyond testing and debugging: It is common sense that quality starts with well-defined requirements, and requires good traceability across teams and assets. This ties back to detecting issues as early as possible in the application lifecycle and building quality in, instead of finding defects and fixing them late in the cycle.
For many vendors in the ASQ space, this means integrating their products with requirements management, design, or defect tracking products. Hyades and Eclipse are greatly simplifying this integration: Hyades' assets are based on a common data model - the UML 2.0 Testing Profile standard. Furthermore, this data model is implemented on top of the Eclipse Modeling Framework (EMF) infrastructure, which persists all the data your tools manage into the XMI industry standard (XML Metadata Interchange).
What this means is that any assets produced by tools built on top of Eclipse, or tools leveraging XMI can be easily linked to your assets without requiring daunting efforts. More than fifty companies are already delivering products relying on Eclipse in areas such as configuration management, design, modeling, etc. Additionally, most UML-based products already support XMI.
To make things even easier, Eclipse is broadening the scope of its supported data models, recently adding UML 2.0 to the list. As requirements and defects join this already long list, the traceability might become completely free!
The Hyades infrastructure deals with development, test and production systems in a consistent manner. There are elements of the Hyades infrastructure like code coverage that deal explicitly with source code, but there are elements such as log analysis and correlation, tuning and statistical systems performance data that are more useful in production environments, and work well in the source-code-less environments of a typical systems integration project. Some elements of Hyades operate best if they are applied at various points in the application development lifecycle, for example tests built by developers can be extended and rolled into a formal quality assurance process run by testers, and then after the system has gone into production can be scheduled to execute in a production environment to monitor continued system behavior and availability.
The use of a common infrastructure ensures continuity of assets across the application lifecycle and leads to combinations of functionality being available which previously were unheard of. Such combinations include correlating failures in a functional test with any system or database log events present in the system under test, or directly comparing load tests with a real production load.
A number of vendors have started to build such integrated solutions through acquisition of tools, but the Hyades infrastructure is designed and built to be integrated. In the case of Hyades, the integration hasn't been retrofitted -The Hyades infrastructure consists of data models that are designed to be tool-neutral. Therefore, any tools built on Hyades that share data models will interoperate with each other. It will be a long time before we understand all the possible combinations and value that result from the level of interoperability that occurs.
The Eclipse community is very broad and expanding very quickly. From under ten vendors forming eclipse.org in November 2001 (Borland, IBM, MERANT, QNX Software Systems, Rational Software, Red Hat, SuSE, TogetherSoft and Webgain), Eclipse has evolved to become a not-for-profit organization in Feb 2004, including 50 member companies. Hyades is a sub-project of Eclipse focusing on delivering capabilities for testing, profiling, logging, and monitoring which was initiated in 2002.
With more than 10,000 websites referencing www.eclipse.org, eclipse.org is today more popular than the ASQ market leader itself! Joining the Eclipse community and Hyades means to you more visibility to a wider audience of users, customers and partners. Eclipse actively maintains a list of companies delivering Eclipse-based solutions, creating a forum for these vendors and customers to find complimentary solutions.
To further increase your benefit in joining this ecosystem, several major vendors have created specific marketing programs to become a certified Eclipse partner. Examples of such programs include the Ready for Websphere Studio certification from IBM.
Obviously, the Hyades platform provides many opportunities to speed up your development and focus on the value add you are bringing to your customers. According to the stage of product development that you are in, you will get different benefits.
You are tired of building and maintaining infrastructure software such as installers, test browser, log viewers, context sensitive help, extensibility frameworks, statistical views, live update software, etc. Even though all these components are important, they are not the core value you are bringing to your customers, but represent a significant burden on your development team. Leveraging Hyades will enable you to spend a minimal amount of resources on infrastructure software to re-focus your resources on your core technology, accelerating your ability to deliver new features to your customers.
Additionally, since Hyades is built on Eclipse, a wide range of Eclipse solutions and technologies, can be easily leveraged to improve your users' experience or add interesting capabilities to your product. Examples of such tools include source code editors, debuggers (Java Development Tools, C/C++ Development Tools), graphical frameworks (Graphical Editor Framework), or GUI Widget editor/viewers (Eclipse Visual Editor).
Depending on the stage you are in, you may want to gradually adopt the Hyades infrastructure and progressively "outsource" some of these components. As you gain a deeper knowledge of the platform, you'll start enjoying other benefits such as the integration with other ASQ domains, other product development tools, or other production monitoring and management tools.
You have a great new product idea, but the amount of infrastructure you need to build first is challenging your ability to deliver this solution in a timely manner. You want to make sure that the architecture you build today will meet the needs of your customers as the product matures in the marketplace.
Hyades can help you by providing you a proven architecture and framework you can rely on. Eclipse and Hyades are loaded with capabilities that will enable your product to get faster to market, and be already integrated with a number of other products in the application development or configuration management space.
Eclipse and the Hyades platform are unique in offering an open source, royalty-free environment. You can take the software, bundle it with your value add, and simply sell it to your customers without any licensing concerns!
You want to broaden the platforms your tools are supported on. The Hyades desktop is made available on Windows and Linux, while the agents supporting the execution or data collection are made available on Windows, Linux, z/OS, and a variety of Unix versions. This means that you can easily add support to run and/or collect information on a large number of platforms with a limited cost.
Additionally, since Hyades is not tied to any programming languages, communication protocol, GUI technology, etc., you can leverage the Hyades data models and gradually expand your support to new user interfaces, protocols, scripting languages, etc. without changing your base infrastructure.
In the current economy, you no longer can sell a point product without considering the landscape of solutions in which your customers will be using it. This means that you are building and maintaining specific code to integrate your product with other solutions. As part of this effort, you may have joined one or several partner programs, which give you early access to APIs, inform you when things change, etc.
Just like any partner, you have no control over what gets changed in these interfaces, when these changes occur, etc. This probably forces you to provide service releases to your customers in order to keep current with these products. This obviously represents a burden in terms of development, but also testing! How many combinations of partner products are in use by your customers? Probably too many for you to test all of them.
By using Hyades as your integration strategy, you are solving these issues: - Your products no longer need to integrate with a long list of partners, but only with Hyades, with which your partners also integrate. - By joining the Hyades project, you can influence the changes made in the platform, both in terms of content and schedule, so that you can better align these required changes with your business goals.
Whether you are integrating with partner solutions, or you have partners integrating with your solutions, Hyades greatly simplifies the collaboration between you and your partners by providing clear and well defined mechanisms for extensibility and inter-operability. Everybody is in control!
Hyades is a unique environment to build solutions that improve software quality in the industry. Hyades enables your organization to broaden your solution scope and market reach, while speeding up your development. Hyades members share a common vision of software quality based on open standards and an open platform. Join us!