Friday, June 5, Lean Software Development: The situation was eerily familiar. A year earlier a chip had cracked off of my tooth as I ate a pizza in Lima, the first stop of a ten week trip to South America.
AgileModeling Adopting and then tailoring a software process to meet your team's needs is an important and difficult decision, one that is critical to your project's success.
There is a vast wealth of material written about these methodologies, but how can you tell whether a methodology will work for you? In particular, how do you determine whether an agile development methodology works within your environment? If you spend anytime online reading process-oriented resources, such as the XP mailing list hosted by Yahoo!
However, I feel that these people are barking up the wrong tree for several reasons: Agile software development methodologies are new.
Scrum and DSDM are among the oldest agile methods, being defined in the mids. The Agile Alliance was loosely formed in the Spring of Agile Modeling AM was first defined in the Autumn of and was published in March of as a book.
The good news is that people are in fact researching the various agile methods, and that more and more evidence is being published at various Agile and academic conferences worldwide. I suspect that we'll soon be at the point where there is more evidence in favor of Agile than what we ever saw with traditional approaches.
Of course, this isn't hard to accomplish seeing as many of the fundamental assumptions behind traditional development were never questioned, let alone examined.
Some research results do exist. For example the effectiveness of pair programming has been examined a fair bit, and the issues surrounding iterative and incremental approaches are reasonably well known. The bottom line is that metrics concerning agile software development methods are slowly being gathered, and wiht a little online searching you can easily find the latest results.
Alsowe're starting to see more and more survey results being published. If you don't give people the answers they'll fill in the blanks themselves, and often get it wrong. I believe that the expectations of people requiring proof aren't realistic.
Geoffrey Moore, in the book Crossing the Chasm describes five types of profiles of technology adopters: Innovators who pursue new concepts aggressively; early adopters who pursue new concepts very early in their lifecycle; the early majority wait and see before buying into a new concept; the late majority who are concerned about their ability to handle a new concept should they adopt it; and laggards who simply don't want anything to do with new approaches.
Figure 1 depicts Moore's chasm with respect to agility. Crossing the Agile Chasm. People who fit the innovator or early adopter profile are comfortable with reading a web page or book describing agile techniques, they'll think about the described concept for a bit and then tailor it for their environment.
This is the spot in the lifecycle that most agile techniques are currently at, and it is these types of organizations that are readily adopting these new techniques. The early majority will wait for sufficient anecdotal evidence to exist before making the jump to agile software development, and we're starting to see adoption by some of these organizations now.
When I first wrote this article in we were very likely on the left-hand side of the chasm. In February I wrote that I believed that we're on the right-hand side, in other words we've crossed the chasm. Unfortunately there are no hard and fast rules to determine if we've crossed or not, only hindsight several years from now will do it.
My guess is that we've definitely crossed over.
Unfortunately, the question "where is the proof" is typically asked by organizations that fit the late majority or even laggard profiles, as Figure 1 indicates. Because agile techniques clearly aren't at that stage in their lifecycle yet I believe that this question simply isn't a fair one at this time.
Note that there's nothing wrong if your organization fits into either one of these profiles, many organizations are very successful following these business models, the important thing is that you recognize this and act accordingly. In the book Software Assessments, Benchmarks, and Best Practices Caper Jones of Software Productivity Research presents a wealth of information gathered over decades pertaining to software development techniques and technologies.
My point is that current "best" and worst practices have been examined in detail, but newly proposed techniques such as refactoring and co-location with your customers have not been well studied. To compound this problem the vast majority of agile methodologists are practitioners who are actively working on software projects and whom presumably have little time to invest in theoretical study of their techniques.
In other words, it may be a long while until we see studies comparable to those of Capers Jones performed regarding agile techniques. It may not be clear what actually needs to be proved regarding agile software development.
If agility is important, then one of the characteristics we should be measuring is that agility. Traditional measures of success emphasize conformance to predictions plans. Agility emphasizes responsiveness to change. So there is a conflict because managers and executives say that they want flexibility, but then they still measure success based on conformance to plans.
Wider adoption of Agile approaches will be deterred if we try to "prove" Agile approaches are better using "only" traditional measures of success.
We believe that metrics such as cost variance, schedule variance, requirements variance, and task variance are virtually meaningless unless of course you're being paid to track these things, ca-ching!Solution Architect particularly interested in designing software by applying Domain Driven Design (DDD), Service Oriented Architecture (SOA), CQRS/ES, Microservices, NoSQL Databases, Entity Relationship Modelling, Scalable applications and Agile Methodology.
Books at Amazon.
The arteensevilla.com Books homepage helps you explore Earth's Biggest Bookstore without ever leaving the comfort of your couch. Here you'll find current best sellers in books, new releases in books, deals in books, Kindle eBooks, Audible audiobooks, and so much more. The Five-Stage Model of Group Development - Analysis In this reflection report, I will explain our group’s situations by adopting the five-stage model of group development, then using other theories or researches to analyze the situations.
Google Groups allows you to create and participate in online forums and email-based groups with a rich experience for community conversations.
The New Methodology. In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landscape.
This book, Disciplined Agile Delivery: A Practitioner's Guide to Agile Software Delivery in the Enterprise describes the Disciplined Agile Delivery (DAD) process decision framework.
The DAD framework is a people-first, learning-oriented hybrid agile approach to IT solution delivery.