Date Posted: April 26, 1999
Update: June 19, 2009
Version 1.7 supports import from lcov, code export of decision trees, undo of exclude, html export for more reports, improvements to substring holes report, and improved performance of several features.
What is FoCuS?
FoCuS is a tool that implements the functional coverage methodology and improves testing of applications by providing detailed coverage information on the areas in which testing is lacking. Functional coverage refers to testing the performance and functionality of an e-business application and making sure that the design of the test is complete and covers every aspect of what the application is meant to do.
FoCuS also provides extensive views for code coverage. It can read code coverage data generated by ConTest for Java or IBM Binary Prober (both alphaWorks® technologies) or by other tools if appropriately customized.
How does it work?
FoCuS allows for user definition of the coverage models and then it creates those models. It collects the data, creates regressions, and shows reports. FoCuS desegregates the coverage model definition from the tool. Coverage models can be defined to fit the design in the best way while FoCuS retains all the benefits of a coverage tool, such as data collection and processing, creation of coverage reports, and generation of regression-suites with high coverage.
Most of the coverage tools in the market share the same functions, such as data gathering and coverage reports, but they all have different models that they implement for different situations, making them difficult and costly to write. FoCuS, a single, general-purpose tool, is independent of specific applications, yet it provides all the functionality of existing tools.
The documentation contains a tutorial, a white paper, and a 120-slide presentation that explains what functional coverage is, how it compares to code coverage, and what it can do.
About the technology author(s)
Rachel Tzoref-Brill holds a B.Sc. and M.Sc in computer science from the Technion, Israel Institute of Technology. Since 2001, she has worked at the IBM Haifa Research Laboratory, where she participates in the development of tools and algorithms for formal verification and multi-threaded programs testing and debugging. She has published several conference papers on these topics. Since 2008 she has been the main developer of FoCuS.
Yoram Adler holds a B.Sc. in computer science from the Technion, Israel Institute of Technology. Since 1996, he has worked at the IBM Haifa Research Laboratory, where he participates in the development of real time applications, device drivers, software lifecycle tools, areas of networking, multi-media, program understanding and coverage analysis.
Eitan Farchi, Ph.D. has been with the IBM Haifa Research Laboratory since 1992. He has led projects for improving operating system performance and is now the manger and architect of the Software Testing Analysis and Reviews group, which specializes in the testing of concurrent and distributed programs. A new review methodology developed recently by
Dr. Farchi has been deployed in IBM labs around the world. The new methodology requires no to little preparation and overcomes time constraint issues while maintaining the effectiveness of traditional reviews. Some of the unique features of FoCus support this methodology. Dr. Farchi is a frequent speaker at software testing conferences and is the author of a tutorial on the testing of distributed components. He has written more than 40 technical papers and holds 8 patents.
Olga Mishin holds a B.Sc. in computer science from the MIIT, Moscow State University of Railway Engineering. She participates in the development of software testing tools, and is member of the development team of FoCuS.
Yarden Nir-Buchbinder holds an M.A. in philosophy from the University of Haifa and a B.Sc. in computer science from the Technion, Israel Institute of Technology. Since 2000 he has worked at the IBM Haifa Research Laboratory, where he participates in the development of software lifecycle tools, especially in the areas of concurrency and coverage. He is the main developer of ConTest - a concurrency testing tool . He has published several conference papers on these topics.
Dr. Shmuel Ur is a research scientist in IBM research lab in Haifa, Israel. He works in the field of software testing and concentrates on coverage and testing of multi-threaded programs. Shmuel is the technical lead of the area of Coverage in IBM and is also an IBM Master Inventor. Shmuel teaches software testing in the Technion and Haifa University.
Shmuel received his PhD. in Algorithms Optimization and Combinatorics in 1994 in Carnegie Mellon University. Shmuel received his Bs.C. and Ms.C. from the Technion, Israel Institute of Technology. Shmuel has published in the fields of hardware testing, artificial intelligence, algorithms, software testing and testing of multi-threaded programs. He is also the chair of PADTAD, a workshop on testing multi-threaded applications.
In the area of coverage, Shmuel worked and published on functional coverage, minimizing regression suite size, coverage directed generation, visual code coverage techniques and coverability. He has written more than 50 technical papers and holds 15 patents.
