Skip to content

Application Analysis Tools

Constantin Dumitrescu edited this page Dec 6, 2020 · 1 revision

Objective: Define a standardized report and tools to generate visualization, debug information, etc

Motivation: Engine projects have unique development and maintenance challenges which are not addressed by currently available tools

Description: Every developer that has used the Engine so far has requested a way to access meta-information about their applications. Without this information, they spend substantial time digging through the codebase, empirically determining cause and effect, involving other colleagues, and so on. Developers are prone to making bad decisions, waste time debugging and eventually get frustrated in complex Engine applications.

Speed/cost/quality benefits:

  • Implement new features faster
  • Decrease the time needed from other colleagues to do pair-programming or explain how some part of the application works (make developers more independent)
  • Informed decisions lead to improved quality codebase, less repetition, better architecture, and faster overall turnaround
  • Debugging is faster/more precise which lowers maintenance cost

Developer experience:

  • Improves confidence in own capabilities to solve problems or not break existing functionality
  • Empowers knowledge acquisition

Discussion:

As complexity grows in Engine apps it becomes significantly harder to maintain and collaborate