Blog

Blog from May, 2013

A couple weeks ago, I attended a webinar by Steve McConnell, CEO of Construx.  Steve is a top author and speaker on software development practices.  

The title of the webinar was "The Business Case for Better Software Practices".  It made a bold assertion: 

Improved Software Practices are Business’s Last Great Frontier
Aka “There’s gold in them thar hills!

As far as I was concerned, Steve was preaching to the choir, I have seen both sides and I know how much process matters.  In my prior role, I helped overhaul the SCM processes for an enterprise IT organization and those improvements increased work capacity and productivity by about 300%.

A couple things about Steve's presentation really resonated with me:

  • The data shows that software development (SD) process improvements result in big productivity improvements  (a lot bigger than one might think).
  • From the Agile Manifesto: Individuals and interactions over processes and tools.  

As evidence of the first point, Steve presented SD process improvement ROI results from many organizations and summarized them in this slide:

Steve's presentation went on to stress how building staff capability is critical to implementing improved software processes.  This fact is known by anyone who has worked with SD teams for a while: the people and how they work together matters – a lot.  Ultimately, process improvements require people to correctly and consistently use new skills in doing their work.  While new tools and technologies facilitate advanced SD processes, the ability of people to use those new tools and technologies is essential.  

Taken together, these two matters are very interesting to me as a software modernization evangelist.  Many of our prospective customers are struggling to make a sound business case for upgrading their software assets.  They struggle because the sponsor views the upgrade as a zero-feature release that does not help the bottom line.  However, now we have a considerable body of data that shows SD process improvements can have a great ROI for the organization.  Furthermore, moving your system and your people to a contemporary platform is a prerequisite for improving your SD processes.  Two specific forces are at work:

  • Developing software using contemporary tools and languages will help you recruit and retain people who are most motivated to build their capabilities.  
    Ask yourself this question:  Can you successfully recruit and retain highly motivated and capable IT professionals if your software is maintained in VB6 or ASP classic?  
     
  • Developing software using contemporary tools and languages positions you to take advantage of best practices.  In the vast majority of cases, these best practices are designed for and around the newer tools and languages:    
    Ask yourself this question: Are the latest SD tools, techniques, books, and articles designed for VB6 and ASP classic or for more contemporary platforms like .NET?

If you agree that people are important, you need to set the stage to attract them to your organization and ultimately that means moving your legacy systems into the present.

So, in summary, if you are struggling to make a compelling business case for a large scale software upgrade project, consider repositioning the upgrade as part of a more comprehensive SD uplift including staff training and process improvements.   The improved productivity can be the "carrot" to go along with this "stick"  business case outlined here.  

I trust a lot of readers out there will read this and say: Really? It's hard enough to make the case for these type of things by themselves; there is no way I can make the case for both at once.  I admit, this is a valid objection, I have been there and I know we both appreciate that making process changes in the development organization is hard and getting funds to pay for changes in the development organization is really hard.  I am not saying it will be easy; but I am saying it will be easier if you can offer increased productivity and quicker delivery as part of the answer to the question "What's in it for me?"  

Thanks go to Steve McConnell and Construx for permission to reproduce material from the webinar.

05/12/2013 public release

gmBasic
[+] 10.05B3
[+] Additional gmSL improvemetns
[+] Various base VB6 translation improvements: collections
[+] Various base ASP translation improvements


Metalang
[Change] lang\VB7Lang.xml
[Change] lang\authortext.gmsl
[Change] lang\GMSLANG.XML
[Change] lang\OPCODES.XML

gmStudio
[+] Include *.gmsl files in User and Lang search reports
[!] Correct filtering on task filter on multiple fields

gmStudioPlugin (beta)
[!] Correct form resize issue