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.
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.
Show answer
Answer: A. One person writing (driver) while the other reviews (navigator), with roles swapping, is the definition of pair programming.
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