Leveraging Core Principles to Achieve Goals in Software Engineering

Leveraging Core Principles to Achieve Goals in Software Engineering

Principle-based decision making in Software Development helps teams stay in sync with goals. From team goals to product goals, the application of a common set of core principles can take a team from good to great.

Principle-Based Decision Making in Software Development

Principled Decision Making is manifest in the practice of good MVP creation. A powerful MVP design is focused on achieving a goal and rejects effort being expended in any way that doesn’t drive toward that goal. In knowing what work should be performed and what should be rejected, the team applies a common set of principles. In this way, everyone on the team can help make decisions about what work needs to be done without requiring continual consultation from a project lead.

Share this article on Social Media and let us know how you apply principles to your software development process and we will send you a copy of our 10"x20" Agile Principles Poster!

Agile Manifesto

The Agile Manifesto is a set of twelve foundational principles for modern software development. They can form a solid foundation for how a team operates. When applied, they help keep the team in sync.

For example, how can the team know if a sprint was successful? Generically, this is a philosophical question. Specifically, metrics and goals may be articulated. That said, Agile principles can help form the foundation of the answer. To that end, all staff applying the Agile principles will know if a given sprint was a success. A successful sprint must, at its foundation, have the following attributes:

  • The customer is satisfied.
  • The software works.
  • Business people and developers are in sync on the project.
  • The team is motivated.
  • The team’s pace is maintainable indefinitely.
  • The software displays technical excellence.

If any of these attributes are not attained during a sprint, then it wasn’t successful. We can then talk about why, but the foundation of understanding is based on a culture that embraces core Agile principles.

A Note on Retrospectives

Retrospectives are common-place within many teams. Whether formal or informal, retrospectives provide a dedicated time to understand what is working (and what is not working) is healthy. Too often, notes are taken, but true learning is not achieved. Use retrospectives to understand the relationship between the team’s outcomes and the team’s principles. If principles were applied, do they need to be adjusted? If they were not applied, what can be done to help the team leverage them in the future? Do new principles need to be authored?

Principles at Scale

For some, principle-based decision making comes naturally. Others must work at it but are open to learning and self-improvement. Building principle-based decision making into a team will help team members at all levels perform more effectively. Staying in sync on principles helps a team make consistent decisions. Authoring and refining principles also help encapsulate lessons-learned. New team members can quickly begin to apply them to new situations, and organizational learning can truly be leveraged.

Get a Free Poster!

Share this article on Social Media and let us know how you apply principles to your software development process and we will mail you a copy of our 10"x20" Agile Principles Poster!



John Far​rier
AUTHOR

John Far​rier

Chief Executive Officer

CEO, Hellebore Consulting Group. John has over 20 years of experience in building software for DoD organizations, leading organizational change, and building strong cultures.

Like what you hear?

Join forces with Hellebore today!

Contact Us