DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
What's in store for DevOps in 2023? Hear from the experts in our "DZone 2023 Preview: DevOps Edition" on Fri, Jan 27!
Save your seat
  1. DZone
  2. Culture and Methodologies
  3. Agile
  4. One and Done?

One and Done?

One of the key distinguishing features of Agile from Waterfall is the ability to iterate and keep a project flexible.

David Dame user avatar by
David Dame
·
Mar. 01, 19 · Opinion
Like (2)
Save
Tweet
Share
6.07K Views

Join the DZone community and get the full member experience.

Join For Free

In the last decade, we have realized that we cannot plan everything up front in a linear process to develop software. We are solving complex problems, which requires us to use an empirical process, lean UX practices, and a supporting technology platform that allows us to build, measure, learn and apply the learning in a repeatable fashion. This allows us to move from trying to predict everything about the future towards shared learning from the present.

Although we are getting gains from people using Agile practices to get increments of work done, most enterprise organizations are not taking advantage of developing iteratively. They still put effort to fully polish a feature before releasing to see how customers respond to that feature, primarily because they are funded and managed as a project, instead of a product lifecycle. “If we do not fully build this feature, we may never get the budget again” is the tired excuse I always hear.

Planning processes upfront works when you are trying to minimize mistakes, as fixing them is too costly. When we build tangible products (non-software), it costs money for the material to build, package, and ship them. Even when software was first commercialized, we needed to minimize mistakes because it was a significant cost to create and ship a bunch of floppy disks or CD-ROMs. In the modern era, where our products are not physical and we have the Internet to distribute, software is shipped continuously. We have an opportunity. Having the ability to ship and respond rapidly has helped us evolve from building it all up front to building what is only currently needed, and build, measure, learn as you go. Then go back to evolve a feature release after release.

The digital age has given us the opportunity to build iteratively, shifting from predicting to continuous learning, sensing, and responding. In areas where this is happening, we are seeing new innovations and engaged customers. Despite this success, many organizations (especially large ones) are not taking advantage of this. They are trying to predict and deliver.

In the book Lean UX by Jeff Gothelf and Josh Seiden, they used the phrase, “It’s not iterative if you only do it once.”

Jeff and Josh also espouse:

  • A shift from “Requirements” towards Assumptions

  • A shift from “We Know” towards “We Believe”

  • A shift from “Let’s Build It!” towards “Let’s Test It!”

What are you doing to invest in minimizing the friction for teams to release? Have we invested in DevOps and continuous integration to reduce the cost of releasing that would enable your product to be continuously connected with the teams?

What are you doing to change practices to shift from a project to a product mindset for investing in work? It’s time we align our funding to take advantage of these continuous streams of work.

What are we doing from an incentive perspective to reward a culture where learning is a first class citizen? Do we have the right incentive mix of team delivery, team discovery, and team learning? Can you pilot it in a slice of your organization?

This is the next phase of our endless journey. Scrum.org will be introducing a course to help teams learn techniques to take advantage of explicitly utilizing this sense and respond mindset. Scrum.org worked in collaboration with the Lean UX authors to better help to integrate these to help teams become higher performing.

If we cannot predict the future, the next best thing is to learn and react as the future unfolds.

I would like to leave you with 3 things:

  1. Invest in the tooling and automation to reduce the cost and effort to release. The easier it is to release and stay continuous, the better we can support iterative delivery.
  2. Change your funding model. Move from project funding to product funding. Also, take advantage of iterative delivery by implementing iterative funding. Fund initiatives as you learn and validate.
  3. Balance your incentive and performance measures. Create incentives for learning and discovery.

Every keystroke is precious so I will end here.


Continuous Integration/Deployment agile

Published at DZone with permission of David Dame, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Core Machine Learning Metrics
  • Load Balancing Pattern
  • Hugging Face Text Classification Tutorial Using PyTorch
  • Essential Protocols for Python Developers to Prevent SQL Injection Attacks

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: