Capers Jones on Software Quality and Productivity - Episode 150

Azure DevOps Podcast

Episode | Podcast

Date: Mon, 19 Jul 2021 08:00:00 +0000

<p><span style="font-weight: 400;">This week, Jeffrey is joined by Capers Jones! Capers is a software engineer and prolific researcher and publisher. He's written over 17 books on software engineering, software metrics, and software best practices — covering quality, productivity, and many other topics. He is a founder of Namcook Analytics, which is an international software consulting company where he currently serves as the Chief Scientist. Mr. Jones has spoken at numerous conferences and also advises international governments in software engineering. Capers started his career as a software engineer in the Office of the Surgeon General for the United States but found his passion for research and advisement at IBM where he developed methods of large project cost estimation as well as methods for productivity and quality measurement. </span></p> <p> </p> <p><span style="font-weight: 400;">Today, Capers continues to publish, speak and advise while he bridges the learnings and data of over 20,000 software projects to modern tools, languages, and software challenges. His latest book,</span> <em><span style="font-weight: 400;">Software Development Patterns and Antipatterns</span></em><span style="font-weight: 400;">, is coming out in August 2021. You can pre-order it now on Amazon!</span></p> <p> </p> <p><span style="font-weight: 400;">In this conversation, Capers shares about his career in software engineering and researching; his upcoming book,</span> <em><span style="font-weight: 400;">Software Development Patterns and Antipatterns</span></em><span style="font-weight: 400;">; trends he has noticed in recent data and his research; and big shifts that developers should be aware of in the industry. Capers also gives his thoughts on defect prevention techniques, design review, decomposition, formal inspection, static analysis, reusability, and more. This episode is jampacked with information on software quality and productivity — so don’t miss out!</span></p> <p> </p> <p><strong>Topics of Discussion:</strong></p> <p><span style="font-weight: 400;">[:14] About</span> <em><span style="font-weight: 400;">The Azure DevOps Podcast</span></em><span style="font-weight: 400;">, Clear Measure, the new podcast</span> <em><span style="font-weight: 400;">Architect Tips</span></em><span style="font-weight: 400;">, and Jeffrey’s offer to speak at virtual user groups.</span></p> <p><span style="font-weight: 400;">[1:22] About today’s episode with Capers Jones.</span></p> <p><span style="font-weight: 400;">[2:45] Jeffrey welcomes Capers to the podcast!</span></p> <p><span style="font-weight: 400;">[3:19] What led Capers into this field of software engineering and research as well as some of his major career highlights.</span></p> <p><span style="font-weight: 400;">[7:07] Capers recommends how to read through his body of work.</span></p> <p><span style="font-weight: 400;">[8:32] About Capers’ upcoming book,</span> <em><span style="font-weight: 400;">Software Development Patterns and Antipatterns.</span></em></p> <p><span style="font-weight: 400;">[9:26] Key practices that Caper recommends</span> <em><span style="font-weight: 400;">every</span></em> <span style="font-weight: 400;">team should be engaging in.</span></p> <p><span style="font-weight: 400;">[12:25] Has Capers found a difference in the trend of bugs for people who have decomposed software systems into multiple, smaller parts vs. keeping them all as a part of one codebase? (AKA the microservices movement)</span></p> <p><span style="font-weight: 400;">[13:32] Capers talks defect prevention techniques.</span></p> <p><span style="font-weight: 400;">[15:12] Defect detection or prevention/removal techniques for enterprise developers, or those running business applications, should employ.</span></p> <p><span style="font-weight: 400;">[16:16] What is a design review and how can you conduct one?</span></p> <p><span style="font-weight: 400;">[17:27] Ways that Capers has seen to implement a formal inspection that work well.</span></p> <p><span style="font-weight: 400;">[19:05] Capers’ thought process on static analysis today and what the data is showing.</span></p> <p><span style="font-weight: 400;">[19:48] Capers shares what has changed in software engineering recently due to new data and research.</span></p> <p><span style="font-weight: 400;">[23:04] Capers speaks about the importance of including users in the conversation as systems are being developed.</span></p> <p><span style="font-weight: 400;">[24:25] Capers talks about‘ reuseability’ when it comes to producing ½ million-1 million+ lines of code.</span></p> <p><span style="font-weight: 400;">[25:16] A word from</span> <em><span style="font-weight: 400;">Azure DevOps Podcast’</span></em><span style="font-weight: 400;">s sponsor: Clear Measure.</span></p> <p><span style="font-weight: 400;">[25:48] Capers gives practical advice based on research for mid-sized companies with 5-10 developers.</span></p> <p><span style="font-weight: 400;">[27:53] Capers’ thoughts on function points (and any objective measures for software size) in the modern world.</span></p> <p><span style="font-weight: 400;">[28:42] What can development managers do to measure how big the software system is going to be, if their team is high-performing, etc.?</span></p> <p><span style="font-weight: 400;">[30:05] What tool does Caper recommend to use?</span></p> <p><span style="font-weight: 400;">[31:17] Caper gives a rundown of which tools you should be considering.</span></p> <p><span style="font-weight: 400;">[33:51] How much new data has been gathered in the last several years compared to the past?</span></p> <p><span style="font-weight: 400;">[34:15] What can a team do to submit their past projects to be included in the research?</span></p> <p><span style="font-weight: 400;">[35:16] How and why you should apply function points today.</span></p> <p><span style="font-weight: 400;">[41:08] Half of the developers in the industry today have less than 7 years of experience which means the number of programmers has doubled since 2014! Capers shares his thoughts on this.</span></p> <p><span style="font-weight: 400;">[43:50] Capers and Jeffrey discuss other data and statistics regarding the industry.</span></p> <p><span style="font-weight: 400;">[45:15] Capers shares some parting words on how and why you should pick up his newest book,</span> <em><span style="font-weight: 400;">Software Development Patterns and Antipatterns.</span></em></p> <p><span style="font-weight: 400;">[46:03] Jeffrey thanks Capers for joining the podcast.</span></p> <p> </p> <p><strong>Mentioned in this Episode:</strong></p> <p><a href="http://architecttips.clearmeasure.com/"><em><span style="font-weight: 400;"> Architect Tips</span></em></a> <span style="font-weight: 400;">— New video podcast!</span></p> <p><a href="https://azure.microsoft.com/en-ca/services/devops/?&amp;OCID=AID736756_SEM_7eul5uID"> <span style="font-weight: 400;">Azure DevOps</span></a></p> <p><a href="https://www.clear-measure.com/"><span style="font-weight: 400;">Clear Measure</span></a> <span style="font-weight: 400;">(Sponsor)</span></p> <p><a href="https://www.amazon.com/NET-DevOps-Azure-Developers-Architecture/dp/1484253426"> <em><span style="font-weight: 400;">.NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way,</span></em> <span style="font-weight: 400;">by Jeffrey Palermo</span></a> <span style="font-weight: 400;">— Available on Amazon!</span></p> <p><a href="http://www.lulu.com/shop/jeffrey-palermo/net-devops-for-azure-ebook-edition/ebook/product-24094762.html"> <span style="font-weight: 400;">bit.ly/dotnetdevopsebook</span></a> <span style="font-weight: 400;">— Click here to download the</span> <em><span style="font-weight: 400;">.NET DevOps for Azure</span></em> <span style="font-weight: 400;">ebook!</span></p> <p><a href="https://www.youtube.com/channel/UC-ROXy08zc-qTA0-3GAQDLw"><span style="font-weight: 400;"> Jeffrey Palermo’s Youtube</span></a></p> <p><a href="https://twitter.com/jeffreypalermo?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor"> <span style="font-weight: 400;">Jeffrey Palermo’s Twitter</span></a> <span style="font-weight: 400;">—</span> <span style="font-weight: 400;">Follow to stay informed about future events!</span></p> <p><a href="http://www.namcook.com/"><span style="font-weight: 400;">Namcook Analytics</span></a></p> <p><span style="font-weight: 400;">Caper Jones’ Email:</span> <a href="mailto:Capers.Jones@gmail.com"><span style="font-weight: 400;">Capers.Jones@gmail.com</span></a><span style="font-weight: 400;"> </span></p> <p><a href="https://www.amazon.com/Software-Development-Patterns-Antipatterns-Capers-dp-1032029129/dp/1032029129"> <em><span style="font-weight: 400;">Software Development Patterns and Antipatterns</span></em><span style="font-weight: 400;">, by Capers Jones</span></a></p> <p><a href="http://namcook.com/about-us.html"><span style="font-weight: 400;">Software Risk Master (SRM) Tool from Namcook</span></a></p> <p><a href="https://www.ifpug.org/Metric%20Views/MetricViewsAugust2016.pdf"><span style="font-weight: 400;"> “Variations in Software Development by Function Point Size,” by Capers Jones |</span> <em><span style="font-weight: 400;">IFPUG</span></em></a></p> <p><a href="https://www.amazon.com/Applied-Software-Measurement-Analysis-Productivity/dp/0071502440"> <em><span style="font-weight: 400;">Applied Software Measurement: Global Analysis of Productivity and Quality,</span></em> <span style="font-weight: 400;">by Capers Jones</span></a></p> <p><a href="https://www.sei.cmu.edu/"><span style="font-weight: 400;">Software Engineering Institute</span></a></p> <p> </p> <p><strong>Want to Learn More?</strong></p> <p><span style="font-weight: 400;">Visit</span> <a href="http://azuredevopspodcast.clear-measure.com/"><span style="font-weight: 400;">AzureDevOps.Show</span></a> <span style="font-weight: 400;">for show notes and additional episodes.</span></p>