CSP 23-24- Unit 4 Lesson 12 Sample Apps & Guides

I would really love more examples of purpose and functionality. Could anyone (maybe someone who has been a reader before) add a quality example of purpose & functionality for the first 2 bubbles of the lesson?


Also, I would like to see solutions to these two examples. Do they exist?


I would also love to see examples of purpose/function. Even if people could reply with purpose/function definitions for popular apps, it would be really helpful.
Thank you!

Students often have a hard time identifying the difference between purpose and function. Below, I’ve copied the collegeboard answer to the purpose/functionality FAQ:

What is the difference between describing the purpose of the program and describing the functionality? Aren’t the purpose and function the same thing?
The purpose of a program is to solve a problem or to pursue an interest through creative expression. In essence, why the programmer decided to create this program. For example, “the purpose of this program is to encourage others to recycle."
The function of a program is how it behaves during execution and is often described by how a user interacts with it. In essence, what the program does. For example, “the program accomplishes its purpose by allowing users to enter in the type of material a product is made out of and providing information about where this material can be recycled. The user earns points for each piece of recycled material they recycle."

Extrapolating from this, we could say that the purpose of Spotify is to allow users to listen to music. The functionality (aka how it accomplishes this purpose) is providing a system for users to search and listen to music, create playlists, and save their favorite songs. It encourages users to return to the app by including app-specific content like interviews with artists, “made for you” playlists, and other features that the user may not be able to get through other programs.

Looking at the U4L12 specific apps, the purpose is how the apps are helping the user. The purpose of the first app could be to help someone reduce the stress of feeding a family dinner by identifying where they should go out to eat. The functionality includes collecting user input about specific needs and desires and using that to pick the most applicable solution to preset to the user. The second app has a different purpose.

Note that the purpose is up to the developer, and often depends on the user. I could see a student arguing that the second app’s purpose is to help a user or community improve their health by adding an active hobby to their lifestyle. Another student might say it was designed to help an indecisive group of friends make a decision about what to do together. Or one could argue that it is a tool for babysitters to generate ideas about what they should do with the child they are watching.

There isn’t necessarily a “right answer” here. When I talk to my students about purpose I ask them “who is the app for, and how is it supporting/meeting the needs of those people?” When we talk about functionality we think about the inputs, processing, and outputs of the program that allows it to met that need.