Collaboration & Innovation (College Board AP® Computer Science Principles): Study Guide

Robert Hampton

Written by: Robert Hampton

Reviewed by: James Woodhouse

Updated on

Computing innovations & collaboration

What is a computing innovation?

  • A computing innovation is a creation that includes a computer or program code as an integral part of its function

  • Computing innovations can take the form of a program, a physical device, or a non-physical concept

Program

Physical device

Non-physical concept

Software that runs on a computer, such as a social media app or a search engine

Hardware that relies on software to function, such as a smartphone or a self-driving car

An idea or approach enabled by computing, such as e-commerce or cloud computing

  • Computing innovations are developed to solve problems, for creative expression, or to explore new ideas

  • A single computing innovation can have effects across many areas of society, including:

    • Communication

    • Healthcare

    • Entertainment

    • Education

Why is collaboration important in AP Computer Science Principles?

  • Collaboration is the process of working with others to develop computing innovations

  • Working in teams allows individuals to combine their unique skills, perspectives, and knowledge

  • Collaboration is considered essential because:

    • It reduces individual bias in the development process

    • It helps identify errors and overlooked requirements earlier

    • It brings together diverse viewpoints, leading to more creative and effective solutions

    • It reflects real-world software development, where teams work together on large projects

  • Effective collaboration can involve both in-person and online teamwork, using shared tools and communication methods

"Image coming soon"

Examiner Tips and Tricks

  • The AP exam may describe a scenario where a team develops an innovation and ask you to identify the benefit of collaboration

  • Focus on how collaboration reduces bias and improves the quality of the innovation, rather than just "getting things done faster"

Diversity & perspective in development

How does diversity improve development?

  • Diversity in a development team refers to including people with different backgrounds, experiences, and expertise

  • Different team members bring different perspectives, which means they may identify problems or solutions that others would miss

  • A development team that lacks diversity may unintentionally create products that only work well for a narrow group of users

  • Consulting with a wide range of end users during development helps ensure the innovation meets the needs of different communities

  • User consultation can involve surveys, interviews, focus groups, or usability testing with people from varied demographics

Multi-perspective design

  • Multi-perspective design is an approach where input is gathered from people with different viewpoints throughout the development process

  • This includes perspectives from:

    • Users of different ages, abilities, and cultural backgrounds

    • Technical and non-technical team members

    • Stakeholders such as clients, educators, or community representatives

  • Gathering feedback from multiple perspectives helps to:

    • Reduce bias in how the innovation works or who it serves

    • Improve accessibility and usability for a wider audience

    • Uncover unintended consequences before the innovation is released

  • Without diverse input, computing innovations risk embedding the assumptions of a small group of developers into products used by millions

"Image coming soon"

Examiner Tips and Tricks

  • Questions on this topic often ask you to explain why diversity matters, not just that it matters

  • A strong answer connects diversity to a specific outcome, for example: "Including users with visual impairments in testing led to the addition of screen reader support, making the app accessible to a wider audience"

  • Remember that bias can be unintentional, developers may not realise their assumptions are limiting the innovation until someone with a different perspective points it out

Worked Example

A development team is creating a new health-tracking app. The team consists of four software engineers who all graduated from the same university program.

During testing, the team finds that the app does not account for users who are visually impaired and cannot read the small text displayed on screen.

Which of the following best explains why this issue was not identified earlier in the development process?

(A) The team did not use an iterative development process

(B) The team lacked diverse perspectives, so accessibility needs were overlooked

(C) The team did not write enough lines of code to handle accessibility

(D) The app was tested on too many devices

[1]

Answer:

(B) The team lacked diverse perspectives, so accessibility needs were overlooked [1 mark]

  • The team members share similar backgrounds and experiences, which means they are less likely to anticipate the needs of users with different abilities

  • Including people with visual impairments or accessibility expertise in the development process would have helped identify this issue during the design or testing phase

Unlock more, it's free!

Join the 100,000+ Students that ❤️ Save My Exams

the (exam) results speak for themselves:

Robert Hampton

Author: Robert Hampton

Expertise: Computer Science Content Creator

Rob has over 16 years' experience teaching Computer Science and ICT at KS3 & GCSE levels. Rob has demonstrated strong leadership as Head of Department since 2012 and previously supported teacher development as a Specialist Leader of Education, empowering departments to excel in Computer Science. Beyond his tech expertise, Robert embraces the virtual world as an avid gamer, conquering digital battlefields when he's not coding.

James Woodhouse

Reviewer: James Woodhouse

Expertise: Computer Science & English Subject Lead

James graduated from the University of Sunderland with a degree in ICT and Computing education. He has over 14 years of experience both teaching and leading in Computer Science, specialising in teaching GCSE and A-level. James has held various leadership roles, including Head of Computer Science and coordinator positions for Key Stage 3 and Key Stage 4. James has a keen interest in networking security and technologies aimed at preventing security breaches.