LM

AP Computer Science Principles - Big Idea 4

AP Computer Science Principles: Big Idea 4 - Computer Systems and Networks (11-15% AP Exam Weighting)

Developing Understanding

  • The Internet is a network used daily for information, socialization, and schoolwork.
  • Students will learn how computer systems and networks (primarily the Internet) function.
  • Topics include information transmission, system safeguards, and the impact of dividing tasks across multiple computing devices to enhance processing speed.
  • This big idea connects to Big Idea 5: Impact of Computing.

Computational Thinking Practices

  • 1.D: Evaluate solution options.
  • 5.A: Explain how computing systems work.
  • Large and complex programs can have impractical runtimes. To minimize runtime, individual processes can be run on multiple processors simultaneously.
  • Programmers must evaluate running processes sequentially versus in parallel to optimize solution time.
  • Real-world examples: Dividing household chores or passing back classroom papers can illustrate distributed processes.
  • Additional connections and routers can create more stable Internet access, providing redundant routing options to ensure reliability.
  • Evaluating existing infrastructure helps determine where to add connections and routers.
  • Kinesthetic learning techniques can simulate connections and routers to make the abstract idea more concrete.

Preparing for the AP Exam

  • Students will analyze scenarios of information transfer via the Internet and interconnected computer diagrams.
  • Questions will assess understanding of how information passes through networks and how redundancy makes systems fault-tolerant.
  • Encourage students to use the Marking the Text strategy to annotate diagrams for accurate visualization and matching with explanations.

Essential Questions

  • CSN-1:
    • Why are long text messages sometimes delivered out of order?
    • How can you still access the Internet during a service outage in another part of town?
  • CSN-2:
    • What are the benefits of dividing tasks among group members?
    • Is there a point where adding another group member would not make completing the task faster? Why?

Big Idea at a Glance

Learning ObjectiveTopicSkillsUnit/Module
CSN-1.A, CSN-1.B, CSN-1.C, CSN-1.D4.1 The Internet5.A Explain how computing systems work.
CSN-1.E4.2 Fault Tolerance1.D Evaluate solution options.
5.A Explain how computing systems work.
CSN-2.A, CSN-2.B4.3 Parallel and Distributed Computing1.D Evaluate solution options.

Sample Instructional Activities

  • These activities are optional and aim to provide ways to incorporate instructional approaches.

Activity 1

  • Topic: 4.1
  • Type: Journaling
  • Students read about the Internet and packet switching in Blown to Bits. Prompts include:
    • How is the Internet like the US Post Office?
    • Explain the difference between circuit switching and packet switching.
  • Students draw how an email travels from one place to another based on their reading.

Activity 2

  • Topic: 4.3
  • Type: Predict and compare
  • Introduce parallel and distributed computing by presenting processes and distributed models.
  • Students compare the models and predict efficiency.
  • Show students how to determine the efficiency of each model to verify their predictions.

Topic 4.1: The Internet

Enduring Understanding

  • CSN-1: Computer systems and networks facilitate the transfer of data.

Learning Objective CSN-1.A

  • Explain how computing devices work together in a network.
  • Skill: 5.A (Explain how computing systems work)
Essential Knowledge
  • CSN-1.A.1: A computing device is a physical artifact that can run a program (e.g., computers, tablets, servers, routers, smart sensors).
  • CSN-1.A.2: A computing system is a group of computing devices and programs working together for a common purpose.
  • CSN-1.A.3: A computer network is a group of interconnected computing devices capable of sending or receiving data.
  • CSN-1.A.4: A computer network is a type of computing system.
  • CSN-1.A.5: A path between two computing devices (sender and receiver) is a sequence of directly connected devices from sender to receiver.
  • CSN-1.A.6: Routing is the process of finding a path from sender to receiver.

Learning Objective CSN-1.A (continued)

  • CSN-1.A.7: The bandwidth of a computer network is the maximum amount of data that can be sent in a fixed amount of time.
  • CSN-1.A.8: Bandwidth is usually measured in bits per second.

Learning Objective CSN-1.B

  • Explain how the Internet works.
  • Skill: 5.A
Essential Knowledge
  • CSN-1.B.1: The Internet is a computer network of interconnected networks using standardized, open (nonproprietary) communication protocols.
  • CSN-1.B.2: Access to the Internet depends on connecting a computing device to an Internet-connected device.
  • CSN-1.B.3: A protocol is an agreed-upon set of rules that specify the behavior of a system.
  • CSN-1.B.4: Internet protocols are open, allowing easy connection of additional computing devices.
  • CSN-1.B.5: Routing on the Internet is usually dynamic and not specified in advance.
  • CSN-1.B.6: Scalability is the capacity of a system to change in size and scale to meet new demands.
  • CSN-1.B.7: The Internet was designed to be scalable.

Learning Objective CSN-1.C

  • Explain how data are sent through the Internet via packets.
  • Skill: 5.A
Essential Knowledge
  • CSN-1.C.1: Information is passed through the Internet as a data stream, which contains chunks of data encapsulated in packets.
  • CSN-1.C.2: Packets contain a chunk of data and metadata for routing and data reassembly.
  • CSN-1.C.3: Packets may arrive in order, out of order, or not at all.
  • CSN-1.C.4: IP, TCP, and UDP are common protocols used on the Internet.

Learning Objective CSN-1.D

  • Describe the differences between the Internet and the World Wide Web.
  • Skill: 5.A
Essential Knowledge
  • CSN-1.D.1: The World Wide Web is a system of linked pages, programs, and files.
  • CSN-1.D.2: HTTP is a protocol used by the World Wide Web.
  • CSN-1.D.3: The World Wide Web uses the Internet.

Topic 4.2: Fault Tolerance

Enduring Understanding

  • CSN-1: Computer systems and networks facilitate the transfer of data.

Learning Objective CSN-1.E

  • For fault-tolerant systems, like the Internet:
    • Describe the benefits of fault tolerance. (Skill: 1.D)
    • Explain how a given system is fault-tolerant. (Skill: 5.A)
    • Identify vulnerabilities to failure in a system. (Skill: 1.D)
Essential Knowledge
  • CSN-1.E.1: The Internet has been engineered to be fault-tolerant with abstractions for routing and transmitting data.
  • CSN-1.E.2: Redundancy is the inclusion of extra components to mitigate failure if other components fail.
  • CSN-1.E.3: Network redundancy is achieved by having more than one path between any two connected devices.
  • CSN-1.E.4: If a device or connection fails, subsequent data will be sent via a different route, if possible.
  • CSN-1.E.5: A fault-tolerant system can support failures and still function, which is important because complex systems fail unexpectedly.
  • CSN-1.E.6: Redundancy requires additional resources but provides the benefit of fault tolerance.
  • CSN-1.E.7: Redundancy of routing options increases reliability and helps the Internet scale.

Topic 4.3: Parallel and Distributed Computing

Enduring Understanding

  • CSN-2: Parallel and distributed computing leverage multiple computers to more quickly solve complex problems or process large datasets.

Learning Objective CSN-2.A

  • For sequential, parallel, and distributed computing:
    • Compare problem solutions. (Skill: 1.D)
    • Determine the efficiency of solutions. (Skill: 1.D)
Essential Knowledge
  • CSN-2.A.1: Sequential computing is a computational model where operations are performed in order, one at a time.
  • CSN-2.A.2: Parallel computing is a computational model where the program is broken into multiple smaller sequential operations, some performed simultaneously.
  • CSN-2.A.3: Distributed computing is a computational model using multiple devices to run a program.
  • CSN-2.A.4: Comparing efficiency is done by comparing the time it takes to perform the same task.
  • CSN-2.A.5: A sequential solution takes as long as the sum of all its steps.
  • CSN-2.A.6: A parallel computing solution takes as long as its sequential tasks plus the longest of its parallel tasks.
  • CSN-2.A.7: The “speedup” of a parallel solution is measured in the time sequentially divided by the time in parallel: Speedup = \frac{Time{sequential}}{Time{parallel}}.

Learning Objective CSN-2.B

  • Describe benefits and challenges of parallel and distributed computing. (Skill: 1.D)
Essential Knowledge
  • CSN-2.B.1: Parallel computing consists of a parallel portion and a sequential portion.
  • CSN-2.B.2: Solutions using parallel computing can scale more effectively than sequential solutions.
  • CSN-2.B.3: Distributed computing allows solving problems that are too large for a single computer due to processing time or storage needs.
  • CSN-2.B.4: Distributed computing allows much larger problems to be solved quicker than with a single computer.
  • CSN-2.B.5: When increasing parallel computing, efficiency is limited by the sequential portion. Adding parallel portions will eventually no longer meaningfully increase efficiency.