Software development projects are often labor-intensive and expensive. Although many software projects fail, even nominally successful projects may come in late and over budget. A software project delivery methodology can improve the chances of success. Project development methodologies usually fall under a variation of one of two categories: waterfall or agile.
The waterfall approach emphasizes extensive planning and documentation, with a sign off required before the next project phase can start. Its strengths: the customer knows what to expect from the project, and the methodology is easy to understand for the project team. A major weakness is the purported strength of documentation, which is the source of project knowledge. The problem is that the documentation cannot respond to inevitable changes in real time, which can lead to a number of concerns, including communication issues among all project stakeholders.
The agile approach emphasizes time-boxed iterative delivery. Strengths include fast turnaround (as there is no extensive documentation) and fast response to changing requirements. The lack of exhaustive documentation results in a project knowledge weakness that, among other things, can increase maintenance costs for the software after it goes into live production.
The book introduces a new model for managing project knowledge, which could correct the major project knowledge management issues that the author feels are inherent to both the waterfall and agile methodologies. The proposed project knowledge model (PKM) provides a structured approach that is flexible enough to be maintained in real time. PKM can be used to help existing methodologies use knowledge better. This means that organizations would not have to replace their familiar existing project delivery methodology if they chose not to. However, the author also introduces knowledge-driven development (KDD), a new software project delivery methodology that incorporates PKM for those organizations that are willing to consider a switch.
The book divides into four logical units. The first three chapters compose the first unit and cover the basics of project delivery. The first chapter includes a case study with waterfall, agile, and KDD. The next two chapters cover topics such as pain points and the importance of contextual project knowledge in project delivery.
The second unit, chapters 4 through 8, defines PKM--the major proposition of the book--in some detail. It also explains KDD in some detail.
Chapters 9 through 14, which form the third logical unit, provide in-depth analyses of the various frameworks, standards, and methodologies that relate to project delivery. The author makes two major assertions to strengthen his case in support of KDD and PKM. The first is that KDD is compliant with existing standard and frameworks. The second is that the digitization process that PKM uses for project knowledge can assist existing project delivery methodologies.
Unit four, chapters 15 through 17, extends KDD from just an information technology (IT)-based concept into a generic knowledge management framework (GKMF). This is a bold new concept that may assist in how individuals develop skills.
This is the first book to introduce the concept of KDD. As such, there is no track record of successful implementations. Therefore, we have to rely upon the logical arguments put forth by the author and then apply our own due diligence in the form of rational thinking and experience.
Readers who have a long history in software development may very well find that his basic assertions ring true, even if they have a quibble or two. Students without a broad base of historical experience might very well be anxious to test out the concepts in real projects to test their validity. Those organizations that feel the need to improve their project delivery strategy might also find it worthwhile to try out the key ideas in a real-world project. Overall, the concepts in the book need to be put to the test.
More reviews about this item: Goodreads