The Pros and Cons of Pair Programming

Pair programming = a software development practice in which two programmers collaborate on a single workstation at the same time. This collaboration can be done either in person or remotely, in which case you’ll need software for screen sharing and real-time editing.

The Pros of Pair Programming

  1. Fewer mistakes and bugs
  2. Greater resiliency
  3. Increased code quality
  4. Faster training
  5. Improved team morale

The Cons of Pair Programming

  1. Higher costs
  2. Sustainability

Conclusion = Pair programming isn’t new; it’s been around the software development industry for decades. As a practice, pair programming originates from the extreme programming (XP) methodology, which prioritizes high software quality and frequent tests and releases.
For some organizations, pair programming simply isn’t the right fit for their situation. However, a growing number of companies are finding that pair programming has a variety of benefits, including saved development time, higher-quality code, and better training and onboarding. As a result, everyone on the team is working together to build the most successful, best version of the product possible.

Author = Sam McDavid (Medium)

https://www.verypossible.com/blog/pros-and-cons-of-pair-programming

Is Extreme Programming No Longer Relevant?

Extreme programming is no longer relevant. According to the latest annual State of Agile™ survey, less than 1% of the nearly 4,000 respondents stated that they were practicing Extreme Programming, while 94% said they were practicing agile.

Article discusses XP and the importance of keeping its values/principles relevant. Note that Scrum was the leading methodology then (2015), and growing.

Author = Steve Ropa (CollabNet VersionOne)

https://resources.collab.net/blogs/is-extreme-programming-no-longer-relevant

What Are the Pros and Cons of Extreme Programming (XP)?

XP = Extreme programming = an agile methodology, considered one of the most effective in software development. It operates with a test-first development scheme. It has short-term planning, while being highly adaptive to changes of requirements, and consists of highly productive teams that produce quality software rapidly and effectively.

In extreme programming, the involvement of the customer is higher than in any other agile methodology. They are an active member of the team throughout the project life cycle.

The Extreme Programming Team
The customer
The tracker
The programmer
The tester
The coach

Principles of Extreme Programming
XP follows the agile principles. However, it has five key values: simplicity, communication, courage, respect, and feedback.

Pros of Extreme Programming
Fast
Visible
Reduces costs
Teamwork

Cons of Extreme Programming
Code overcomes design
Location
Lack of documentation
Stress

Consider Extreme Programming for Your Team

Author = Elina Panayotova (Dreamix Ltd)

https://simpleprogrammer.com/pros-cons-extreme-programming-xp/

How to Write a Good User Story: with Examples & Templates

What is a User Story? User Story is a small (actually, the smallest) piece of work that represents some value to an end user and can be delivered during a sprint.
As a [type of user], I want [an action] so that [a benefit/a value]

Great User Stories always fit the INVEST set of criteria by Bill Wake:

Independent – they can be developed in any sequence and changes to one User Story don’t affect the others.
Negotiable – it’s up for the team to decide how to implement them; there is no rigidly fixed workflow.
Valuable – each User Story delivers a detached unit of value to end users.
Estimable – it’s quite easy to guess how much time the development of a User Story will take.
Small – it should go through the whole cycle (designing, coding, testing) during one sprint.
Testable – there should be clear acceptance criteria to check whether a User Story is implemented appropriately.
Don’t forget to add an acceptance criteria = a set of conditions that are used to confirm when a Story is completed.

Is there something else? An Epic is a high-level body of work that bands together with a group of related Stories.

Article also covers:
What Are the Benefits of Creating User Stories?
How to Write User Stories: Our Workflow
Who is responsible for creating a User Story?
When are User Stories created?
What are the steps to write great Agile User Stories?
Step 1: Think of the “Who”
Step 2: Think of the “What”
Step 3: Think of the “Why”
Step 4: Discuss a Story
Conclusion

Author = Andrew Bondarenko (Stormotion)

https://stormotion.io/blog/how-to-write-a-good-user-story-with-examples-templates/

INVEST in Good Stories, and SMART Tasks

XP teams have to manage stories and tasks. The INVEST and SMART acronyms can remind teams of the good characteristics of each.

What are characteristics of a good story? The acronym “INVEST” can remind you that good stories are:
I – Independent
N – Negotiable
V – Valuable
E – Estimable
S – Small
T – Testable

There is an acronym for creating effective goals: “SMART
S – Specific
M – Measurable
A – Achievable
R – Relevant
T – Time-boxed

Author = Bill Wake (XP123)

https://xp123.com/articles/invest-in-good-stories-and-smart-tasks/

Summary of User Stories: The Three “C”s and INVEST

A User Story has three primary components, each of which begin with the letter ‘C’:
Card
As a [user role] of the product,
I can [action]
So that [benefit].

Conversation
The collaborative conversation facilitated by the Product Owner which involves all stakeholders and the team.
Confirmation
The Product Owner must confirm that the story is complete before it can be considered “done”. The team and the Product Owner check the “doneness” of each story in light of the Team’s current definition of “done”

The test for determining whether or not a story is well understood and ready for the team to begin working on it is the INVEST acronym:

I – Independent
N – Negotiable
V – Valuable
E – Estimable
S – Small
T – Testable

Article concludes with tips on Splitting User Stories & Personas.

Author = Travis Birch (Berteig)

https://www.berteig.com/how-to-apply-agile/summary-of-user-stories-the-three-cs-and-invest/