{"id":391,"date":"2015-04-09T03:19:41","date_gmt":"2015-04-09T09:19:41","guid":{"rendered":"https:\/\/cigniti.com\/blog\/?p=391"},"modified":"2018-10-12T17:20:47","modified_gmt":"2018-10-12T11:50:47","slug":"testing-a-legacy-application-with-zero-documentation","status":"publish","type":"post","link":"https:\/\/www.cigniti.com\/blog\/testing-a-legacy-application-with-zero-documentation\/","title":{"rendered":"Testing a Legacy Application with Zero Documentation"},"content":{"rendered":"
Legacy Applications \u2013 Definition and Significance<\/strong><\/p>\n 70% of corporate business systems today are legacy applications. Recent statistics prove that over 60% of IT budget is spent on maintaining these Legacy systems, showing the rigidity and the fragile nature of these systems.<\/p>\n What is a Legacy system? Any system independent of internet, an old method, technology or application program, a system that has been inherited from earlier versions, or an application built by an organization that is currently inactive may be termed as a Legacy System.<\/p>\n Legacy Application are built over years and hold most of the business logic. In this business model very few employees carry requisite knowledge of the business process. Most of the legacies do not have proper documentation which makes it even more challenging to understand them. These systems are maintained with earlier versions to avoid risk and cost. Companies deny on upgrades as these systems would be stable for quite a long time.<\/p>\n Replacing the legacy systems may not be the solution given the risks and concerns involved. With strong migration methodologies and reengineering techniques, migration may still be possible but it involves time, and maintaining and testing them during these situations is tricky. If there are multiple users involved, the application is fairly stable, and if the business users do not request for large number of system changes, companies continue with using the Legacy Systems.<\/p>\n Testing Legacy with Zero Documentation<\/strong><\/p>\n Many of the Legacy applications may not be well documented because these systems have been delivered based on the specific business needs that may no longer be relevant. This adds to the inefficiency and high maintenance costs of many legacy systems. Even the documentation available is out of date and inadequate, and in some cases source code is the only documentation.<\/p>\n Challenges<\/strong><\/p>\n Testing such applications involves many intricacies whenever they are undergoing enhancements or upgrades. Testing with no documentation only adds complexities such as:<\/p>\n Solution<\/strong><\/p>\n Having a very well designed Regression Suite ensures that all the functionalities in the application are intact during any release. Following are some of the best practices to ensure that the Regression Suite gets maximum coverage:<\/p>\n Dependency Driven Testing Approach<\/strong><\/p>\n Legacy System is a mixture of multiple modules and integration points. A simple change can impact multiple modules or integration systems. Dependency Driven testing ensures that the Regression Suite extracted for each release gets maximum coverage with minimum effort, and helps<\/p>\n Our \u2018Dependency Driven Testing Tool\u2019 aims to cover all areas that would be impacted if one area of the application undergoes change. For example, if an application has X, Y, Z, and W modules, and the Module X undergoes change, deciding what we need to Regress would be a challenge. Also, instead of performing Testing for all the modules, taking decision on what needs to be tested is one of the best solutions. This is the point where the tool would come as a great help. Input for this Tool would be a thoroughly reviewed Matrix highlighting all the modules\/integrations and their inter-dependencies.<\/p>\n Following are the advantages of using the tool*:<\/p>\n *The only way this works most effectively is when the user has a complete understanding of the application and the enhancements for which Regression Suite is built.<\/p>\n","protected":false},"excerpt":{"rendered":" Legacy Applications \u2013 Definition and Significance 70% of corporate business systems today are legacy applications. Recent statistics prove that over 60% of IT budget is spent on maintaining these Legacy systems, showing the rigidity and the fragile nature of these systems. What is a Legacy system? Any system independent of internet, an old method, technology […]<\/p>\n","protected":false},"author":19,"featured_media":13270,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[38],"tags":[142,143],"ppma_author":[3746],"authors":[{"term_id":3746,"user_id":19,"is_guest":0,"slug":"shravaniadusumilli","display_name":"Shravani Adusumilli","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/528eff7856225c1335a713d0166391d3?s=96&d=mm&r=g","user_url":"http:\/\/www.cigniti.com","last_name":"Adusumilli","first_name":"Shravani","job_title":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/posts\/391"}],"collection":[{"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/users\/19"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/comments?post=391"}],"version-history":[{"count":0,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/posts\/391\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/media\/13270"}],"wp:attachment":[{"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/media?parent=391"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/categories?post=391"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/tags?post=391"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.cigniti.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=391"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}\n
\n
\n
\n
\n