logo.gif - 1.41 K About International Software Automation, Inc. (ISA)


International Software Automation, Inc. (ISA), founded in 1992 and located in Sam Mateo, California, USA, is a world leader in software automation. As its name suggests, ISA develops technologies and markets products for automating software engineering.

In the past few decades, the software engineering industry has contributed greatly to full automation of engineering and manufacturing processes for many other industries. But unfortunately, the baker is still hungry himself -- most processes of software engineering are still being done manually. It is time we the software engineers should realize automation for our own industry!

ISA sells what it uses itself. There is a story behind the automation techniques and tools developed by ISA. Years ago, the founder of ISA established a CAD company to develop and market VLSI placement and routing system for the design of very large and complex VLSI chips. After a prototype has been built, the development team realized that it would be impossible for them to complete the final system on time. Too much time and effort were spent on trying to understand the system developed by separate groups, drawing and modifying design diagrams, finding out whether a function or a code branch has been executed, and measuring the quality of the system.

Sounds familiar? The development team realized that they need a set of good software engineering tools for diagramming, testing, and maintenance. But after an exhaustive search, they found few useful tools.

For example, most of the software diagramming tools available were inefficient semi-automatic graphic editors. Although some tools could generate overview diagrams from source code, the poor layout made the digrams confusing rather than helpful: for example, a caller and its callee were often placed on the same row making it hard to see the calling relationship, connecting line would pass through other function boxes, making them unreadable. The control flow diagrams generated by the tools were also hard to decipher since they were not structured. Furthermore, the team found that there is no difference in the representation of different program logic, no information about the logic location of the source code or the logic execution conditions, etc.. In addition, almost all diagrams generated by those tools were static: there is no linkage between different diagrams or different levels -- from the overview to the control flow diagrams.

The test coverage analysis tools available provided only generic statement test coverage, or very rough branch coverage. It is also hard to determine where exactly are the untested code. The coverage results were hard to see since they were shown in textual format with source list.

Frustrated by what they found, the young CAD company decided to develop its own set of software development tools. Because the tools were designed to aid in the development a huge and complex VLSI layout system capable of handling more than one million components, the requirements for those tools were comprehensive and rigorous. They include

With years of effort, those tools were developed and integrated into a software engineering environment. It automates many tasks, facilitates software design, coding, testing, and quality measurement -- thus greatly raises productivity of software development for the entire company. Reaping the benefits of using the environment, the founder realizes that the environment can be useful for any software programmers and software developers. Of course, the market for those tools could be broader than the market of the VLSI layout system.

Finally, the founder decided to make the software environment available to all developers. Thus ISA came into being. Panorama C/C++ starts a new generation of the software engineering environment with enhancement for the support of Object-Oriented software development, testing, quality assurance, and maintenance.