It seems to me that software affects so much of our daily lives, almost to the extent portrayed in the movie ‘The Matrix’.
Software project managers today seem to focus solely upon time and cost and all too often ignore the quality aspect of the time, cost, and quality triangle.
I’m presently working on a project where performance is a key requirement and as such I developed an architecture and associated framework, discussed in my masters dissertation, which exhibits significant performance improvements over the standard .net DataSet in terms of serialization.
It also supports asynchronous communication and many other things to improve securability and performance. The Scourge of the Project Manager that I mentioned in the subject line of this posting is that a project manager involved in this project chooses to openly tell developers to ignore the architecture if it would mean the are ‘complete’ sooner, even if that definition of complete includes many bugs that must be fixed at a later date
Software project managers, almost all I’ve ever worked with, seem to suffer from this inability to even recognize the importance of the ‘ilities’ such as maintainability, securability, etc. and many other aspects of software related to quality.
I think this is in part due to the fact that project managers, and other stakeholders not directly working at the code level, find it nearly impossible to visualize quality or the lack thereof.
If you show someone two pieces of home audio equipment, one costing many times more than the next, they can perceive the level of quality in the construction. Software is different, even most stakeholders on a software project (and even some programmers…) cannot.
I’m beginning to wonder if it is possible to maintain sanity as a software architect in a world where the scourge of the project manager seems to permeate every project I work on.
Any thoughts before I continue to blog myself out of a career by upsetting project managers in this industry 🙂