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

The Latest Agile Topics

article thumbnail
Agile - What’s a Manager to Do?
Agile - What’s a Manager to Do? As a manager, when I first started learning about Agile development, I was confused by the fuzzy way that Agile teams and projects are managed (or manage themselves), and frustrated and disappointed by the negative attitude towards managers and management in general. Attempts to reconcile project management and Agile haven't answered these concerns. The PMI-ACP does a good job of making sure that you understand Agile principles and methods (mostly Scrum and XP with some Kanban and Lean), but is surprisingly vague about what an Agile project manager is or does. Even a book like the Software Project Manager’s Bridge to Agility, intended to help bridge PMI's project management practices and Agile, fails to come up with a meaningful job for managers or project managers in an Agile world. In Scrum (which is what most people mean when they say Agile today), there is no place for project managers at all: responsibilities for management are spread across the Product Owner, the Scrum Master and the development team. We have found that the role of the project manager is counterproductive in complex, creative work. The project manager’s thinking, as represented by the project plan, constrains the creativity and intelligence of everyone else on the project to that of the plan, rather than engaging everyone’s intelligence to best solve the problems. In Scrum, we have removed the project manager. The Product Owner, or customer, provides just-in-time planning by telling the development team what is needed, as often as every month. The development team manages itself, turning as much of what the product owner wants into usable product as possible. The result is high productivity, creativity, and engaged customers. We have replaced the project manager with the Scrum Master, who manages the process and helps the project and organization transition to agile practices. Ken Schwaber, Agility and PMI, 2011 Project Managers have the choice of becoming a Scrum Master (if they can accept a servant leader role and learn to be an effective Agile coach – and if the team will accept them) or a Product Owner (if they have deep enough domain knowledge and other skills), or find another job somewhere else. Project Manager as Product Owner The Product Owner is command-and-control position responsible for the “what” part of a development project. It's a big job. The Product Owner owns the definition of what needs to be built, decides what gets done and in what order, approves changes to scope and makes scope / schedule / cost trade-offs, and decides when work is done. The Product Owner manages and represents the business stakeholders, and makes sure that business needs are met. The Product Owner replaces the project manager as the person most responsible for the success of the project (“the one throat to choke”). But they don’t control the team’s work, the technical details of who does the work or how. That’s decided by the team. Some project managers may have the domain knowledge and business experience, the analytical skills and the connections in the customer organization to meet the requirements of this role. But it’s also likely to be played by an absentee business manager or sponsor, backed up by a customer proxy, a business analyst or someone else on the team without real responsibility or authority in the organization, creating potentially serious project risks and management problems. Some organizations have tried to solve this by sharing the role across two people: a project manager and a business analyst, working together to handle all of the Product Owner’s responsibilities. Project Manager as Scrum Master It seems like the most natural path for a project manager is to become the team’s Scrum Master, although there is a lot of disagreement over whether a project manager can be effective – and accepted – as a Scrum Master, whether they will accept the changes in responsibilities and authority, and be willing to change how they work with the team and the rest of the organization. The Scrum Master is a “process owner” and coach, not a project manager. They help the team – and the Product Owner – understand how to work in an Agile process framework, what their roles and responsibilities are, set up and guide the meetings and reviews, and coach team members through change and conflict. The Scrum Master works a servant leader, a (nice) process cop, a secretary and a gofer. Somebody who supports the team and the Product Owner, “carries food and water” for them, tries to protect them from the world outside of the project and helps them solve problems. But the Scrum Master has no direct authority over the project or the team and does not make decisions for them, because Agile teams are supposed to be self-directing, self-organizing and self-managing. Of course that’s not how things start off. Any group of people must work their way through Tuckman’s 4 stages of team development: Forming-Storming-Norming-Performing. It’s only when they reach the last stage that a group can effectively manage themselves. In the mean time, somebody (the Scrum Master / Coach) has to help the team make decisions that they aren’t ready to make on their own. It can take a long time for a team to reach this point, for people to learn to trust each other – and the organization – enough. And it may not last long, before something outside of the team’s control sets them back: a key person leaving or joining the team, a change in leadership, a shock to the project like a major change in direction or cuts to the budget. Then they need to be led back to a high performing state again. Coaching the team and helping them out can be a full-time job in the beginning. After the team has got together and learned the process? Not so much. Which is why the Scrum Master is sometimes played part-time by a developer or sometimes even rotated between people on the development team. But even when the team is performing at a high level, there’s more to managing an Agile project than setting up meetings, buying pizza and trying to stay out of the way. I've come to understand that Agile doesn't make a manager’s job go away. If anything, it expands it. Managing Upfront First, there’s all of the work that has to be done upfront at the start of a project – before Iteration Zero. Identifying stakeholders. Securing the charter. Negotiating the project budget and contract terms. Understanding and navigating the organization’s bureaucracy. Figuring out governance and compliance requirements and constraints, what the PMO needs. Working with HR, line managers and functional managers to put the team together, finding and hiring good people, getting space for them to work in and the tools that they need to work with. Lining up partners and suppliers and contractors. Contracting and licensing and other legal stuff. >/p> The Product Owner might do some of this work - but they can't do it all. Managing Up and Out Then there’s the work that needs to be managed outside of the team. Agile development is insular, insulated and inward-looking. The team is protected from the world outside so they can focus on building features together. But the world outside is too important to ignore. Every development project involves more than designing and building software – often much more than the work of development itself. Every project, even a small project, has dependencies and hand-offs that need to be coordinated with other teams in other places, with other projects, with specialists outside of the team, with customers and partners and suppliers. There is forward planning that needs to be done, setting and tracking drop-dead dates, defining and maintaining interfaces and integration points and landing zones. Agile teams move and respond to change quickly. These changes can have impacts outside of the team, on the customer, other teams and other projects, other parts of the organization, suppliers and partners. You can try using a Scrum of Scrums to coordinate with other Agile teams up to a point, but somebody still has to keep track of dependencies and changes and delays and orchestrate the hand-offs. Depending on the contracting model and your compliance or governance environment, formal change control may not go away either, at least not for material changes. Even if the Product Owner and the team are happy, somebody still has to take care of the paperwork to stay onside of regulatory traceability requirements and to stay within contract terms. There are a lot of people who need to know what’s going on in a project outside of the development team – especially in big projects in big organizations. Communicating outwards, to people outside of the team and outside of the company. Communicating upwards to management and sponsors, keeping them informed and keeping them onside. Task boards and burn downs and big visible charts on the wall might work fine for the team, but upper management and the PMO and other stakeholders need a lot more, they need to understand development status in the overall context of the project or program or business change initiative. And there’s cost management and procurement. Forecasting and tracking and managing costs, especially costs outside of development labor costs. Contracts and licensing need to be taken care of. Stuff needs to be bought. Bills need to be paid. Managing Risks Scrum done right (with XP engineering practices carefully sewed in) can be effective in containing many common software development risks: scope, schedule, requirements specification, technical risks. But there are other risks that still need to be managed, risks that come from outside of the team: program risks, political risks, partner risks and other logistical risks, integration risks, data quality risks, operational risks, security risks, financial risks, legal risks, strategic risks. Scrum purposefully has many gaps, holes, and bare spots where you are required to use best practices – such as risk management. Ken Schwaber While the team and the Product Owner and Scrum Master are focused on prioritizing and delivering features and resolving technical issues, somebody has to look further out for risks, bring them up to the team, and manage the risks that aren't under the team’s control. Managing the End Game And just like at the start of a project, when the project nears the end game, somebody needs to take care of final approvals and contractual acceptance, coordinate integration with other systems and with customers and partners, data setup and cleansing and conversion, documentation and training. Setting up the operations infrastructure, the facilities and hardware and connectivity, the people and processes and tools needed to run the system. Setting up a support capability. Packaging and deployment, roll out planning and roll back planning, the hand-off to the customer or to ops, community building and marketing and whatever else is required for a successful launch. Never mind helping make whatever changes are required to business workflows and business processes that may be required with the new system. Project Management doesn't go away in Agile There are lots of management problems that need to be taken care of in any project. Agile spreads some management responsibilities around and down to the team, but doesn’t make management problems go away. Projects can’t scale, teams can’t succeed, unless somebody – a project manager or the PMO or someone else with the authority and skills required – takes care of them.
October 4, 2022
by Jim Bird
· 8,794 Views · 2 Likes
article thumbnail
The Three - Wait: Four - Elements of Empiricism
1+3 Pillars: Trust + Transparency, Inspection, Adaptation.
September 19, 2022
by Stefan Wolpers CORE
· 3,428 Views · 1 Like
article thumbnail
New StackPod Episode: Implementing an SRE Practice
We invited Hyke’s Yousef Sedky. Yousef shares his insights about his journey while building an infrastructure from scratch and implementing SRE practice.
September 19, 2022
by Annerieke Kortier
· 3,326 Views · 1 Like
article thumbnail
The Right Size for a High-Performing Agile Development Team
Agile team size: Learn the recommended size of an agile team, factors that affect the team size, roles, and qualities you should look for in an agile team.
September 19, 2022
by Nisarg Mehta
· 3,343 Views · 1 Like
article thumbnail
How To Prepare Your Agile QA Team for Test Automation
Whether it’s extra efficiency or the project's sheer size, manual testing can’t always be your only option. But how do you prepare the QA team for test automation?
September 15, 2022
by Tania Zhydkova
· 5,350 Views · 2 Likes
article thumbnail
Utilizing Google Cloud to Enable the Future of Intelligent Software Testing
Here are five of the most significant ways Google has helped our team deliver and scale an enterprise-grade test automation solution in the cloud.
September 14, 2022
by Joe Lust
· 4,629 Views · 1 Like
article thumbnail
Lean Roadmapping and OKRs
At the 42nd Hands-on-Agile meetup, Janna Bastow delved into lean roadmapping and OKRs. Watch the video now!
September 14, 2022
by Stefan Wolpers CORE
· 5,009 Views · 2 Likes
article thumbnail
Project Quality Management: A Getting Started Guide for Agile Teams
Project quality management is all about maintaining project quality without affecting productivity. Here's what experts recommend doing to get started.
September 13, 2022
by Fred Wilson
· 3,518 Views · 2 Likes
article thumbnail
Agile Is Not a Method, Let Alone "The" Method
We apply the Agile method as if a recipe for any project, but the product should determine the best method. Draw a fun analogy with different acting methods.
September 13, 2022
by Jasper Sprengers CORE
· 6,180 Views · 6 Likes
article thumbnail
The Product Backlog
14 First Principles to Help Your Scrum Team Succeed
September 12, 2022
by Stefan Wolpers CORE
· 3,436 Views · 3 Likes
article thumbnail
Non-Functional Requirements: Quality
Developing and implementing an effective definition of code quality involves focusing on clean code structure, implementation, and maintenance.
September 12, 2022
by Elmar Dott CORE
· 18,942 Views · 3 Likes
article thumbnail
Retrospective First Principles
A Routine Exercise or Mission-critical for a Team’s Success?
September 6, 2022
by Stefan Wolpers CORE
· 4,243 Views · 3 Likes
article thumbnail
Complete Automation Testing — Is It Feasible?
This article explains a complete automated testing strategy, if it is feasible, and does automated QA guarantees quality.
September 6, 2022
by Navya Manoj
· 5,859 Views · 2 Likes
article thumbnail
Reverse Pull-Requests
How we used GitHub PRs in a trunk-based, continuous deployment development team.
September 6, 2022
by Lukasz Gryzbon
· 4,156 Views · 3 Likes
article thumbnail
Unlocking Four Requirements for Enterprise-Grade Kubernetes
These critical items will span four key topic areas – source code, CI/CD integration, Kubernetes cluster lifecycle management, and workload administration.
August 31, 2022
by Kyle Hunter
· 3,662 Views · 2 Likes
article thumbnail
Product Backlog Refinement
14 First Principles to Help Your Team Succeed
August 29, 2022
by Stefan Wolpers CORE
· 4,950 Views · 4 Likes
article thumbnail
A Comprehensive Agile Testing Methodology for Effective Software Development
The agile testing methodology approach in software testing aims to enhance the flexibility and efficiency of the software development process.
August 29, 2022
by Amandeep Kadd
· 4,558 Views · 2 Likes
article thumbnail
Definition of Done Theses
10 Simple Principles of a Critical Scrum Success Factor
August 27, 2022
by Stefan Wolpers CORE
· 6,755 Views · 5 Likes
article thumbnail
Is Visual Comparison Testing the Future?
Learn why visual comparison testing has witnessed a massive acceleration and adoption in the recent past making it a worthy choice in the future.
August 27, 2022
by Vivek Mannotra
· 5,777 Views · 1 Like
article thumbnail
What Is Iterative and Incremental Development
Every project has its place, optimal balance, and development process, which can be either iterative or incremental.
August 22, 2022
by Anna Smith
· 4,700 Views · 4 Likes
  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • ...
  • Next

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: