Panoptics: Automates Software Change Scope and Estimation
With Panoptics you can:
• Calculate Change Effort Quickly and Accurately
• Get Proposals Approved Easier
• Avoid Time and Cost Overruns
• Improve Margins / Budget Efficiency
Crosscode Panoptics introduces an automated solution to the challenge of estimating software change quickly and accurately.
First, Panoptics discovers the applications and databases and maps the dependencies between them at every level of detail, down to method and column. It presents a high-level view showing which systems depend on each other.
To calculate accurately the effort required for a given change, Panoptics needs to baseline the user’s productivity. The user tells Panoptics how many lines of code a member of his team can change in an hour. This metric can be defined for each application language supported by Panoptics. In this screenshot, we see that in one hour, the average team member can change 10 lines of JAVA code, each having on average a nestedness of 2 and a complexity of 3.
Now it’s time to define the scope of change. Panoptics automatically groups systems into technology portfolios according to application language or database type. In addition, the user can easily assign an application or database to one or more business portfolios. Panoptics makes it easy to see at a glance which systems will be impacted by a change. In the screenshot below, the solutions architect has created a portfolio for all the systems that depend on the system that must be changed – in this case, the BackOffice database.
Panoptics automatically decomposes each application or database, showing the structure of all the elements within it. By clicking on the elements that are to be changed, the solutions architect creates a Change Query. A Change Query can include any number of elements from any number of applications and databases. Panoptics’ Change Estimation feature calculates the effort required for any change, no matter how complex. In this case, the business requirement is to extend the User ID column, so the Change Query consists of the element JNDI_User > ID:
With a single click, Panoptics instantly assesses the impact and calculates the effort required. It displays all the applications and methods that will be impacted by a change to the ID column. A change to the User ID column will impact 23 methods in 11 applications. Based on the number of lines per method and their nestedness and complexity, this change will require twelve hours.
Panoptics lets the user export this information so that it is easy to reference both the impact assessment and the change estimation. This information can be used to create a SOW. It also guides Testing and QA once the change is complete.
Panoptics makes it easy for enterprises and the professional services organizations that serve them estimate quickly and accurately the effort required for a software change. Accurate change estimation results in fewer overruns, better planning, and budgeting, improved odds of getting a proposal approved, and happier customers.