Development time is a vital component of any software development project, even before it starts. It relies partly on development tools and partly on developer productivity, and heavily influences cost, upgrade and maintenance estimations.
When businesses choose a software framework they begin a long-term relationship for the duration of their application’s lifecycle. Given the strategic consequences of this decision, businesses must carefully consider how frameworks enhance developer productivity, business functionality,
application flexibility, product performance, the long-term viability of that framework, and the inherent security in each framework’s design and technology. The ideal framework demonstrates strength in each category by minimizing product time-to-market, reducing maintenance costs, supporting product variety, and facilitating a superior customer experience.
The “Discovering The Best Cross-Platform Framework Through Benchmarking” whitepaper evaluates two frameworks supporting multi-platform desktop application development: Delphi and Electron.
This is the first in a series of blog posts looking more closely at each of the 26 individual metrics used in the study, and how Delphi and Electron each fared on these metrics.
Benchmark Category: Developer Productivity
Developer productivity is the measure of effort and code required for developers to complete typical development tasks. Productivity directly impacts product time-to-market and long-term labor costs so tools that increase developer productivity have substantial impacts on business timelines and bottom lines. Productivity can be realized in two distinct ways – reduced coding requirements due to native libraries, and IDE tools like code-completion and visual design.
IDEs with greater library breadth generally result in fewer lines of code per application and produce a clean, lean codebase that minimizes opportunities for bugs or maintenance problems later in the product life cycle.
Benchmark Metric 1/26: Development Time
Development Time Metric: Total hours spent writing the fully functional application from scratch. This measurement assesses the value a framework’s productivity tools add to an average developer with no prior task knowledge. Comprehensive documentation, plentiful native libraries, code completion, and other IDE tools will allow the developer to design and build the benchmark application more efficiently than would be the case in a “standard” text editor.
Delphi Score: 3 (out of 5)
One expert Delphi developer completed the Unicode Reader in 23.3 hours using the RAD Studio IDE. Application modification with internal tests took 8.33 hours for a total development time of 31.63 hours. Five other Delphi developers gave estimates for the original application ranging from 24 to 50 hours, averaging 38.8 hours.
Electron Score: 5 (out of 5)
One expert Electron developer completed the Unicode Reader in 20 hours using Angular for the RSS reader GUI and node-postgres, a collection of node.js modules, for the database interactions.
However, application modification with internal tests took an additional 47.8 hours – 28.6 hours to code the tests and 19.2 hours to troubleshoot issues on three platforms until acceptance criteria were met – for a total of 67.8 hours. Three other Electron estimates for the Unicode Reader ranged from 80 to 120 hours with a mean of 100 hours.