All the software that CA XOsoft offers is designed according to a small set of key principles. These principles help to ensure that, even when no external standard defines what the product should do and how it should do it, we maintain a high standard for performance and reliability for our customers. Here are the key principles that guide the design and development of our products.
Although automation necessarily follows the next two principles in absolute priority, it is central to the design of all CA XOsoft software. The goal of automation is both to reduce the amount of time and knowledge required of the administrator and to reduce the risk of error arising from manually carrying out a tedious and complex process. The upshot is simply this: if it can be automated, it should be. And the result is that almost everything is. Indeed, this is the motivation for CA XOsoft's focus on application-awareness. It is only by understanding and tailoring to the application being protected that it becomes possible to pre-configure parameters properly and to perform all the steps necessary in the functioning of the software essentially out of the box.
Correctness, consistency and safety are, or ought to be, priorities for any product that touches mission-critical areas of the enterprise. But CA XOsoft products take this principle to a deeper level. For example, just as the order of writes must be properly preserved during replication across all the files and directories of a scenario involving a database, so to must the proper sequence of actions be taken in failing an application over. The care taken to guarantee this in CA XOsoft High Availability (formerly CA XOsoft WANSyncHA) is the reason that a Network World test of a clean failover of an active Exchange server showed CA XOsoft High Availability to be the only solution that did not lose any emails. This was not luck — this was design that incorporated an understanding of the underlying applications to be failed over. The same principle provided the impetus for the development of CA XOsoft's unrivaled rewind technology and its patent-pending automated testing tool, CA XOsoft Assured Recovery.
Server software does not exist in isolation — it is added into an existing environment. In fact, CA XOsoft products are support applications — their function is to improve and extend the capabilities of the existing environment. For this reason, any solution that renders the applications and servers being protected unsupportable by the vendors that cover them is worse than useless — it is actively damaging. For this reason, CA XOsoft has been scrupulous about ensuring that only standard protocols are used and that nothing CA XOsoft products do would cause the system to become unsupported. For this reason too, all of CA XOsoft's products are certified on all supported Microsoft configurations.
Many of the functions carried out by CA XOsoft products could be done using scripts. In fact, that is precisely how some of the functionalities were originally developed. It quickly became clear, however, that scripting is not an appropriate way to deliver complex capabilities like those provided by CA XOsoft High Availability and other CA XOsoft products. We are often performing a very complex series of interdependent actions involving application data, the application itself, a very complex external environment (Active Directory, DNS servers, the local and wide-area networking infrastructure, etc.), and the various components of the CA XOsoft software system. The coordination involved demands that our products be fully integrated systems so that they not contribute to a level of complexity that is already high.
It is important to tailor the product to standard configurations and environments so as to reduce the need for manual configuration or intervention. At the same time, it is vital to recognize that particular implementations may have important differences and so it must be possible to customize the product to fit the actual requirements of the installation. As a result of this need, CA XOsoft products provide tremendous opportunities to customize the behavior of the products through both configuration parameters and the ability to register special-purpose scripts.