Total Cost of Ownership (TCO) can be used for investment decisions and financial benefit analysis. When applied to software it covers the initial development costs and subsequent maintenance costs until phase out of a product. TCO can support architectural decisions and management of technical debt.
Steve Blank,talks about the organizational debt which is similar to technical debt. He says that growing companies need to understand how to recognize and refactor the organizational debt.
Computer-checked models can be used to prove that core communications and state management in a software program are 100% logically correct. Such models can also be used to generate 100% correct source code. The usage of formal methods can reduce costs and time to market and help to deliver highly reliable software products.
InfoQ interviewed Hans Aerts, vice president software development and agile coach at TomTom, about why they decided to adopt SAFe and how it was introduced and used to simplify the organizational structure and stop doing projects, why they focus on throughput rather than output, how they modified SAFe for Custom Systems, and what using SAFe has brought TomTom.
At Unruly teams have been applying eXtreme Programming (XP) since being founded in 2006. Teams take a test-first approach to developing code and invest in automated checks that can be run in live environments. InfoQ interviewed Rachel Davies about the importance of a continuous approach to testing, how this has evolved over the years and the business advantage that it delivers to Unruly.
The OnAgile virtual conference is running on May 14, 2015. It will examine the impact and value of technical practices in agile transformations. A wide range of speakers will explore aspects covering microservices, continuous delivery, functional programming, exploratory testing and software craftsmanship. InfoQ spoke to conference chair Declan Whelan about the event.
Doing pair programming when working remote helps to increase interaction between developers and build relationships in teams, it makes knowledge flow and can prevent developers from drifting away. You can experiment with tooling to find a setup that works for you. Empathy and egolessness can emerge organically when doing pairing in a distributed team. Read about experiences with remote pairing.
You can increase the quality of products by constantly increasing the level of automation of the delivery process and working with DevOps teams who constantly deliver small features to get quick customer feedback. A case story from ING Lease explaining the problems they had, experiences from the first steps of their agile and DevOps journey and exploring what they want to achieve in the future.
Technique of "value points" to determine the value delivered by any software project.
Tester should go beyond their testing discipline and go into the organization. By asking questions they can start a movement that increases product quality and helps organizations to become more successful as Mike Sutton explained in his closing keynote at the Agile Testing Day Netherlands 2015 about test beyond quality – beyond software.
At EclipseCon, the automated error reporting and UI freeze detecting tool - built into Eclipse Mars - was demonstrated. Having only been in the package for a short while, it has already helped identify and subsequently fix a number of problems. InfoQ spoke to the people behind the tools to find out more.
The goal of software is to sustainably minimize lead time to positive business impact, everything else is detail, Dan North claimed in a presentation at the QCon London conference describing ways of reasoning about code and how this leads him into an architecture style that may fit microservices.
Measuring software complexity is a popular and common activity among the software development community, judging by the number of tools built over the years and the literature around the subject. Drawing from his blend of engineering and psychology backgrounds, Adam Tornhill proposed to its audience at QCon London to treat their code as a crime scene, with the help of version control tools.
At QCon London 2015, Colin Garlick presented “An Architect’s World View”, which provided a set of values, principles and practices to act as guidance for a software architect. The core values included people, the big picture, teamwork and integrity. Garlick proposed that these values are essentially characteristics that can be prioritised in order to work as a successful software architect.
Jez Humble has stated that current software delivery practices are not optimised to create valuable software, and three issues must be addressed in order to enable innovation. First, the traditional project model is unsuitable. Second, the entire organisational value stream must be addressed. Third, the problems are rooted in process and culture, not organisational structure or tooling.