Prevention is better than cure. This old maxim holds much truth in it. So then, why still most software testing focuses on bug detection than bug prevention?
Dr. Magdy Hanna, CTO & Chief Architect at Rommana Software, believes the quality of a software release is only as good as the quality of the testing performed on the software before it is released. Good tests expose the software to real-life scenarios that can possibly happen when the system is working in the field. But test professionals in most companies and agencies treat test design as an ad hoc activity – referring to the task as ‘test case creation.’
“To help these organizations make their test process more effective, we developed our ‘Scenario-Based Development and Testing’ approach. The process, which is fully implemented in Rommana ALM, guides test teams to create positive and negative scenarios that will be used to create their test cases. Most importantly, the process helps test teams transform testing, normally a defect detection activity, into a defect prevention activity,” says Dr. Hanna.
In this approach, scenarios are created before the development teams start developing the system. These scenarios guide the development process so that the system can be built to handle most of the scenarios before it gets to testing. Testing then becomes more of a confirmation process to simply confirm that the system works as expected.
Dr. Hanna shares, “Some of our customers stated that the scenario process, as supported by Rommana ALM, actually helped them reduce the number of defects found by the test team by more than 70%. This defect prevention saves companies thousands of dollars spent on testing the system, finding defects, fixing those defects, and re-testing those fixes.”
Using this proactive testing methodology, Rommana Software has positioned itself as a leading provider of Application Lifecycle Management solutions with its fully integrated Rommana ALM solution. The software was architected to allow project teams to use agile methodologies while maintaining disciplined software engineering practices in project management, requirement management, test management, change management, and defect management.
Dr. Magdy Hanna shares valuable facts about Rommana Software, highlighting his professional tenure in the company.
With a Spark to Augment
Dr. Hanna reminisces– “As I was teaching my methodologies and approaches to graduate students and other software professionals, they always asked what commercial tools that are out there can help them follow these approaches. Unfortunately, my answer was always none that I know of.”
Then Dr. Hanna started to develop a prototype of his own, a tool that supported some of his methodologies and approaches. He called the prototype ReqTestPro as it included Requirement Management, Test Management, and Project Management methodologies.
Then Dr. Hanna started to develop a prototype of his own, a tool that supported some of his methodologies and approaches. He called the prototype ReqTestPro as it included Requirement Management, Test Management, and Project Management methodologies.
He gave a version of the prototype to class participants on a CD to try the methodologies in their own projects at their companies.
Receiving useful feedback over the years, Dr. Hanna continued to improve the prototype. When he launched the International Institute for Software Testing in 1999, he continued to use the methodologies and tools in some of the courses he taught for the institute.
“In 2009, I realized that the market was in need of a commercial software tool to support these methodologies, so I launched the development of Rommana ALM. The early versions of the software were used by the United States Army and a number of large government contractors such as ITT, Raytheon, and Lockheed Martin. The software continued to evolve based on feedback we received.”
By 2013, Rommana ALM was selected to be included in an independent market review by a research firm called RQX Global. The study compared 33 different commercial tools that were available at the time. Rommana ALM received the highest score of 7.1 and was awarded:
- The Best ALM Tool
- The Best Requirement Management Tool
- The Best Cloud Solution
The software provided the best ALM Cloud solution at a time where users could use it in the cloud without having to install anything on their systems. Additionally, Rommana ALM was awarded the Gold Requirement Management Tool award by RQX Global.
One very critical aspect of supporting software testing that Dr. Hanna developed in Rommana ALM is the backward and forward traceability of test designs and test cases to other project entities. Most software testing tools in the market allow project teams to maintain test cases without tracing them to project entities such as requirements, user stories, design components, and bug reports.
The reason is that most of these tools are standalone tools that may support one or two of the software product lifecycles. However, because it is a fully integrated software, Rommana ALM users can trace test designs to any project entity. This traceability is not only required as a good software engineering practice, but it is also mandated by the FDA and other quality standards for regulated industries.
Enabling Perpetual Betterments
Dr. Hanna thinks that companies put too much emphasis on testing as a defect detection process. As a result, project teams spend too much of their time in the test-fix-retest cycle, even though it is known that testing does not find all the defects.
“We know that customers do not forgive when major parts of the system do not work or at least do not work as expected. That is why I always advise test teams to transform their test process into a defect prevention process,” he continues, “The most effective way to prevent defects is through methods such as Scenario-Based Development and Testing, Impact Analysis-Based Regression Testing, and careful reviews of requirements.”
Another effective but rarely used method to prevent defects is Root-Cause Analysis. When a customer experiences a defect, the development immediately rushes to fix the problem and sends the fix to the test team to re-test it. However, rarely does a project team takes the time to analyze the root cause of these defects. If they did, they would be able to find where in the process those defects were created. “Fixing the process will prevent those types of defects from happening in the future,” comments Dr. Hanna.
Commencing an Odyssey of Excellence
Dr. Hanna spoke about various challenges that Rommana Software has faced in wider audience adoption. The biggest one is that decision-makers in most larger companies wish to go only with ‘big name’ providers.
He shares, “We had the opportunity to show our product to many technical managers in large companies who indicated that our product was exactly what their projects needed, but then the purchase was never approved by upper management although the price was much less than what other large provider charge. So, although we succeeded in providing products and services to some defense organizations and large government contractors, competition with big name providers remains a challenge for us.”
Another oversight, according to Dr. Hanna, has been focusing on perfecting the product at the cost of allocating more money to sales and marketing of the product.
“Responding to customer requests for product enhancements is a priority for us, and we pride ourselves on our fast response to those requests. Since my early years in software, I have always adopted the ‘Customer Delight’ principle to create loyal customers. However, a superior product would not sell itself without an effective sales and marketing strategy.”
Exhibiting Sheer Excellence
“Although Rommana ALM is a complete, fully integrated set of tools and methodologies that cover every aspect of a software product lifecycle, we realize that project teams using software tools from other vendors may wish to use complimentary features of Rommana ALM from within whatever tool they are currently using,” says Dr. Hanna. That is why Rommana Software started partnering with some large tool vendors by integrating Rommana ALM with their offerings. The company just completed the implementation of a Rommana ALM Jira App that runs from within Jira. Using the Rommana ALM Jira app, Jira users can benefit from Rommana ALM’s complimentary features, such as Scenario-Based Exploratory Testing, Scenario-Based Formal Testing, Requirement Management, and Use Case Management.
Recently, the company also started integrating Rommana ALM with Microsoft’s ADO (Azure for DevOps). Integrating with ADO will allow ADO users to perform the same Rommana ALM complimentary features.
Good Organizational Practices
Dr. Hanna, in the end, left us with some good practices that organizations should follow for budding entrepreneurs that aspire to venture into the software industry:
- Make sure you keep up with the ever-changing technology.
- Hire only the best talents.
- Don’t cut corners.
- Don’t underestimate competition – make sure you know what differentiates your product or service from theirs.
- Build a quality product initially because testing will not find all quality problems.
To know more about Rommana Software, please visit the website www.rommanasoftware.com