The Stacks
BIG IDEA 1: CREATIVE DEVELOPMENT · TOPIC 1.1

1.1 Collaboration

Programs get built by people working together. The CED cares about why collaboration helps and what makes it work.

What you need to know

  • Collaboration brings together people with different perspectives, skills, and experiences, which produces programs that are more innovative, more accurate, and less biased than solo work.
  • It helps at every stage: planning, designing, coding, testing, and reviewing. Collaboration is not only for splitting up work.
  • Pair programming is the CED's named example: two people share one workstation. The driver writes code; the navigator reviews each line and thinks ahead. Roles switch regularly.
  • Effective collaboration requires communication, consensus building, conflict resolution, and negotiation — the exam treats these as real skills, not soft filler.
  • Feedback from users, teachers, and peers is part of collaboration. Incorporating it makes the final product better match what people actually need.
  • Online tools (shared repositories, version control, messaging) let people collaborate without being in the same room.

Worked example

A team of three is building a study-timer app. One student likes minimal interfaces, one has strong design skills, one has used timers that annoyed them with too many alerts. Because they combine perspectives, the final design has a clean interface with a single, adjustable alert — something none of them would have built alone. That "different perspectives → better product" logic is what an exam question about collaboration is fishing for.

Exam tip: When a question asks why collaboration helped, the correct option almost always mentions diverse perspectives, reduced bias, or catching errors earlier. Options claiming collaboration makes programs run faster or use less memory are distractors — collaboration is about the people process, not program performance.

Going deeper

The nuance, edge cases, and connections that turn a 3 into a 5.

  • The CED gives a specific list of what collaboration reduces: it reduces bias, reduces errors (more eyes on the code), and makes programs more usable by more people (more perspectives on who the users are). When an exam option lists one of these three, that's the signal it's correct.
  • Collaboration works because of complementary skills: one person may be strong at algorithm design, another at interface design, another at testing. The exam frames this as "different perspectives and skills" — the phrase to look for.
  • Communication isn't only talking: shared documents, code comments, commit messages, and issue trackers are all collaboration tools. A question describing a team using a shared repository with change tracking is describing collaboration infrastructure.
  • Consensus building means the team agrees on decisions rather than one person dictating; conflict resolution means disagreements get worked through, not ignored. Both are named in the CED as things effective collaborators do.
  • The Create Task is individual even though collaboration during development is allowed — you must be able to say exactly what you personally wrote. Collaborating on ideas is fine; submitting someone else's algorithm as your own is not.

Mistakes that cost points

  • Picking an option about performance. "Collaboration makes the program run faster / use less memory" is always wrong. Collaboration affects the development process and the quality of the design, not the program's execution.
  • Confusing pair programming with splitting work. In pair programming both people work on the same code at the same time. If two people each write half the program separately, that's dividing labor, not pair programming.
  • Assuming collaboration means more people = always better. The CED's claim is about diverse perspectives, not headcount. A team of ten identical thinkers doesn't get the benefit.

Practice questions

Written in the style of the real exam. Try each one before revealing the answer.

Q1 Two students are working on a program together. One student types code while the other watches, reviews each line, and suggests improvements. After twenty minutes they switch roles. Which of the following best describes this practice?
  1. A Pair programming
  2. B Iterative development
  3. C Code documentation
  4. D Procedural abstraction
Show answer

Answer: A. One person writing (driver) while the other reviews (navigator), with roles swapping, is the definition of pair programming.

Q2 Which of the following is a benefit of developing a program with a diverse team rather than alone?
  1. A The program will always run more efficiently.
  2. B The team is less likely to build in unintentional bias, because members bring different perspectives.
  3. C The program will require less testing.
  4. D Documentation becomes unnecessary.
Show answer

Answer: B. The CED explicitly ties diverse collaboration to reduced bias and better design. Efficiency, testing needs, and documentation are unaffected.

Key vocabulary

Pair programming
two programmers share one workstation; one writes (driver) while the other reviews (navigator), switching regularly
Collaboration
working together throughout development to combine perspectives and skills