Virtual Pet Simulator: Design & Code Interactive Game
Created byCorey Duncan
2 views0 downloads

Virtual Pet Simulator: Design & Code Interactive Game

Grade 9Computer Science15 days
5.0 (1 rating)
In this project, 9th-grade students engage in designing and developing a virtual pet simulator as a hands-on learning experience in computer science. The project focuses on teaching programming constructs, including data types, control structures, and modularity, while emphasizing the importance of the design process, abstraction techniques, and algorithm formulation. Students are guided through interactive activities to create user-friendly interfaces and integrate rich media to enhance the gaming experience, while also learning to adhere to good programming practices and conduct thorough testing to ensure successful program execution.
Virtual Pet SimulatorProgramming ConstructsAbstractionUser Interface DesignAlgorithm FormulationRich Media IntegrationGood Programming Practices
Want to create your own PBL Recipe?Use our AI-powered tools to design engaging project-based learning experiences for your students.
📝

Inquiry Framework

Question Framework

Driving Question

The overarching question that guides the entire project.How can we design and develop a virtual pet simulator that not only functions effectively through the use of programming constructs and abstractions but also provides an engaging user experience with rich media and an intuitive interface?

Essential Questions

Supporting questions that break down major concepts.
  • What is the design process, and how can it be applied in developing a virtual pet simulator?
  • How do programming constructs like data types, variables, control structures, and modularity contribute to creating a functional virtual pet game?
  • What role do abstractions play in simplifying the development of complex systems such as a virtual pet simulator?
  • How does using abstraction help manage the complexity in programming and development of a virtual pet game?
  • What are the strategies for formulating algorithms to effectively solve problems involved in developing a virtual pet simulator?
  • How can a virtual pet simulator be tested to ensure it behaves as expected and interacts well with users?
  • What makes an effective user interface in the context of a virtual pet simulator?
  • How can rich media enhance the user experience in a virtual pet game?
  • What constitutes good programming practice and how can it be applied in developing a virtual pet game, particularly in terms of using conventional standards and effective commenting?

Standards & Learning Goals

Learning Goals

By the end of this project, students will be able to:
  • Students will understand and apply the design process to develop a virtual pet simulator.
  • Students will demonstrate proficiency in using programming constructs such as data types, variables, control structures, and modularity.
  • Students will explain and implement abstractions to hide complex implementation details and manage program complexity.
  • Students will formulate algorithms to address problems encountered in the development of the virtual pet simulator.
  • Students will develop a user-friendly interface and incorporate rich media into their virtual pet simulator.
  • Students will test and verify the correct behavior of their virtual pet simulator.
  • Students will apply good programming practices, including the use of conventional standards and effective commenting in their code.

Computer Science

ICS-2.1
Primary
Use the design process to iteratively develop a computing artifact.Reason: The project requires students to design and develop a virtual pet simulator, which involves utilizing the design process interactively.
ICS-2.2
Primary
Demonstrate competencies of programming constructs, including: use of data types and variables, control structures (sequencing, looping, branching), and modularity (such as a function).Reason: Students will employ programming constructs to develop a functional virtual pet simulator, focusing on data types, variables, and modularity.
ICS-2.3
Primary
Understand how abstractions hide implementation details when used in everyday objects.Reason: Understanding and implementing abstractions is essential to managing the complexity of a virtual pet simulator.
ICS-2.4
Primary
Use abstraction to manage program complexity (such as a function to create recallable code).Reason: Using abstraction will help students manage the complexity of their code in developing the virtual pet game.
ICS-2.5
Primary
Formulate algorithms using programming structures to decompose a complex problem.Reason: Formulating algorithms is core to solving challenges in developing the virtual pet simulator.
ICS-2.6
Primary
Assess a program by testing to verify correct behavior.Reason: Testing the virtual pet simulator is crucial to ensure it behaves correctly and meets user expectations.
ICS-2.7
Primary
Construct a computing artifact that has a user interface.Reason: Developing a user interface is an integral part of the virtual pet simulator project.
ICS-2.8
Primary
Produce an artifact that includes rich media.Reason: Including rich media is essential for creating an engaging user experience in the virtual pet game.
ICS-2.9
Primary
Illustrate knowledge of good programming practice including the use of conventional standards and comment.Reason: Students will need to apply good programming practices and document their code effectively while developing the simulator.

Entry Events

Events that will be used to introduce the project to students

Interactive Virtual Pet Adoption Fair

Initiate with a virtual 'pet adoption fair' where students use scratch programming or a simple game engine to create basic virtual pets to 'adopt.' Each student's pet can have unique traits, encouraging exploration of algorithms and modularity while establishing the basics of a user interface and rich media for their project.
📚

Portfolio Activities

Portfolio Activities

These activities progressively build towards your learning goals, with each submission contributing to the student's final portfolio.
Activity 1

Virtual Pet Design Sprint

In this activity, students will apply the design process to brainstorm, plan, and sketch their virtual pet simulator concepts. By following a structured design sprint, they will outline the key features, user interface elements, and the overall user experience for their pet game.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce the design process and its importance in project development. Discuss stages such as brainstorming, planning, prototyping, and evaluating.
2. Students brainstorm different features and qualities for their virtual pet simulator, considering user experience and interface design.
3. Sketch a rough design of the virtual pet simulator, highlighting major features and navigation elements.
4. Share designs with peers for feedback and refine them based on suggestions.

Final Product

What students will submit as the final product of the activityDetailed design sketches and plans for each student's virtual pet simulator concept.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.1 Use the design process to iteratively develop a computing artifact.
Activity 2

Coding Constructs Workshop

Students dive into programming constructs to set the foundation for their virtual pet game. This workshop will cover the fundamental programming components necessary to start coding, including data types, variables, control structures, and basic functions.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce key programming constructs, explaining data types, variables, control structures, and the importance of modularity.
2. Conduct hands-on exercises where students write example code snippets to practice each concept.
3. Challenge students to combine these constructs to solve simple problems, building confidence and familiarity.

Final Product

What students will submit as the final product of the activityA portfolio of code snippets demonstrating understanding of programming constructs.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.2 Demonstrate competencies of programming constructs, including: use of data types and variables, control structures (sequencing, looping, branching), and modularity.
Activity 3

Abstracting the Pet

By focusing on abstraction, students will learn how to manage the complexity of their code for the virtual pet simulator. They will practice creating functions and modules to simplify their code and enhance clarity and reusability.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce the concept of abstraction and its role in programming to simplify complex systems.
2. Demonstrate how functions can hide complex details and make code more manageable and modular.
3. Assign students to create a few functions that can be called within their virtual pet simulator code to manage specific features.

Final Product

What students will submit as the final product of the activityA set of modular functions integrated into the virtual pet simulator code.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.3 Understand how abstractions hide implementation details when used in everyday objects. ICS-2.4 Use abstraction to manage program complexity.
Activity 4

Algorithm Architects

Students will focus on formulating algorithms to tackle problems involved in developing a virtual pet simulator. They will design algorithms to guide their pet's behavior, interactions, and user interface responses.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Discuss the principles of algorithm development, emphasizing the decomposition of complex problems into manageable steps.
2. Group students to brainstorm and outline algorithms needed for the virtual pet's behaviors, such as feeding, playing, and resting.
3. Translate algorithm outlines into pseudocode that can be easily implemented into programming language.

Final Product

What students will submit as the final product of the activityPseudocode for various algorithms governing virtual pet behaviors.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.5 Formulate algorithms using programming structures to decompose a complex problem.
Activity 5

Testing Trial Run

In this activity, students will test their virtual pet simulator to ensure it performs correctly and meets user needs. They will learn to develop test cases, identify bugs, and refine their code based on testing results.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce testing techniques and how to create effective test cases for software assessment.
2. Students will write test cases for their virtual pet simulator, focusing on interaction and functionality.
3. Conduct testing sessions, document findings, and collaborate on debugging solutions.

Final Product

What students will submit as the final product of the activityA testing report that includes test cases, results, and identified fixes for the virtual pet simulator.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.6 Assess a program by testing to verify correct behavior.
Activity 6

UI/UX Innovators

Students concentrate on developing an engaging user interface for their virtual pet simulator while incorporating rich media elements. This includes designing visually appealing graphics and intuitive navigation to enhance user experience.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Discuss key principles of effective UI/UX design, focusing on user engagement and accessibility.
2. Students sketch interface designs and plan rich media elements to incorporate into their game.
3. Iteratively develop the interface, integrating graphics and media, and refine based on peer feedback.

Final Product

What students will submit as the final product of the activityA polished user interface and media-rich environment for the virtual pet simulator.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.7 Construct a computing artifact that has a user interface. ICS-2.8 Produce an artifact that includes rich media.
Activity 7

Code Curators

Emphasizing good programming practices, students will learn to apply conventional coding standards and effective commenting within their virtual pet simulator project.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce conventional coding standards and discuss the role of commenting for maintaining clear code documentation.
2. Review and iterate on existing code to improve readability and adherence to standards.
3. Peer review sessions to critique and enhance coding practices, focusing on the clarity and functionality.

Final Product

What students will submit as the final product of the activityAn enhanced codebase for the virtual pet simulator that aligns with conventional standards and includes thorough documentation.

Alignment

How this activity aligns with the learning objectives & standardsICS-2.9 Illustrate knowledge of good programming practice including the use of conventional standards and comment.
🏆

Rubric & Reflection

Portfolio Rubric

Grading criteria for assessing the overall project portfolio

Virtual Pet Simulator Development Rubric

Category 1

Design Process and Planning

Evaluates the students' ability to apply the design process in planning and developing the virtual pet simulator.
Criterion 1

Application of Design Process

Measures how effectively students use the design process in their project planning and development.

Exemplary
4 Points

Consistently applies the design process, demonstrating creativity in the development of a comprehensive virtual pet simulator plan with detailed sketches and innovative user experience design elements.

Proficient
3 Points

Effectively applies the design process, producing clear and functional design sketches with a well-thought-out user experience.

Developing
2 Points

Applies the design process with some guidance, producing basic design sketches that address user experience and interface needs.

Beginning
1 Points

Struggles to apply the design process, producing sketches that lack detail or consideration for user experience.

Category 2

Programming Constructs

Assesses the students' competencies in using programming constructs to develop their virtual pet simulator.
Criterion 1

Understanding of Programming Constructs

Evaluates students' grasp of data types, variables, control structures, and modularization in their coding portfolio.

Exemplary
4 Points

Demonstrates an advanced understanding, using a wide range of programming constructs expertly to solve complex problems.

Proficient
3 Points

Shows a thorough understanding of programming constructs, using them effectively in the code.

Developing
2 Points

Shows basic understanding, using programming constructs inconsistently, needing some guidance.

Beginning
1 Points

Shows limited understanding of programming constructs, requiring significant guidance to apply them.

Category 3

Abstraction Techniques

Assesses the use of abstraction to manage complexity in the virtual pet simulator code.
Criterion 1

Implementation of Abstraction

Evaluates how students implement abstraction techniques, such as functions and modules, in simplifying their code.

Exemplary
4 Points

Expertly implements abstraction, using functions and modules that significantly enhance code readability and reusability.

Proficient
3 Points

Effectively uses abstraction techniques to enhance code structure and reduce complexity.

Developing
2 Points

Uses abstraction techniques with some effectiveness, but with room for improvement in code organization.

Beginning
1 Points

Struggles to implement abstraction, resulting in complex and hard-to-manage code.

Category 4

Algorithm Development

Evaluates students' ability to develop algorithms for their virtual pet simulator.
Criterion 1

Formulation and Implementation of Algorithms

Measures the ability to formulate and implement algorithms effectively in the simulator code.

Exemplary
4 Points

Formulates and implements complex algorithms expertly, addressing all required behaviors and interactions with innovation.

Proficient
3 Points

Develops effective algorithms that address the main behaviors and interactions proficiently.

Developing
2 Points

Develops basic algorithms, but they require refinement to address all necessary functions.

Beginning
1 Points

Struggles to formulate basic algorithms, missing key elements in the simulator's operations.

Category 5

Testing and Evaluation

Assesses students' ability to systematically test and evaluate their virtual pet simulator.
Criterion 1

Development and Execution of Test Cases

Evaluates the thoroughness and effectiveness of test cases created and executed by students.

Exemplary
4 Points

Develops comprehensive test cases, effectively identifying and resolving all errors and user experience issues with confidence.

Proficient
3 Points

Creates and executes effective test cases, identifying most errors and resolving them proficiently.

Developing
2 Points

Develops basic test cases that address some but not all issues, with guidance needed for resolution.

Beginning
1 Points

Struggles to develop test cases, missing many key issues and requiring assistance to resolve them.

Category 6

User Interface and Experience

Evaluates the development of a user-friendly interface and incorporation of rich media in the simulator.
Criterion 1

Design and Integration of User Interface and Media

Measures how effectively the user interface and media elements enhance the simulator's user experience.

Exemplary
4 Points

Designs and integrates a highly engaging and intuitive user interface with rich media elements that significantly enhance user experience.

Proficient
3 Points

Develops an effective user interface and includes appropriate media enhancements, contributing positively to user experience.

Developing
2 Points

Creates a basic user interface with minimal media integration, with several areas for improvement in engagement and intuitiveness.

Beginning
1 Points

Struggles to develop a coherent user interface or fails to incorporate effective media, significantly impacting user engagement.

Category 7

Good Programming Practices

Assesses students' application of conventional coding standards and commenting practices.
Criterion 1

Adherence to Programming Standards and Commenting

Evaluates students' ability to create clear, well-documented code that follows industry standards.

Exemplary
4 Points

Produces code that excellently adheres to standards, with thorough and insightful comments that enhance understanding.

Proficient
3 Points

Consistently adheres to coding standards and provides clear comments, facilitating code understanding.

Developing
2 Points

Adheres to basic coding standards but with inconsistent commenting, making some sections hard to follow.

Beginning
1 Points

Shows limited regard for coding standards and comments are minimal or unclear, limiting code readability.

Reflection Prompts

End-of-project reflection questions to get students to think about their learning
Question 1

Reflect on how you applied the design process in developing your virtual pet simulator. What stages did you find most challenging or rewarding, and why?

Text
Required
Question 2

How did the use of programming constructs (data types, variables, control structures, and modularity) influence the functionality of your virtual pet game?

Text
Required
Question 3

In your experience developing the virtual pet simulator, how did abstraction help in managing code complexity?

Text
Required
Question 4

Rate your understanding of how to formulate algorithms and apply them to solve problems in developing the virtual pet simulator.

Scale
Required
Question 5

Describe the testing process you implemented for your virtual pet simulator. How did this process contribute to the final product quality?

Text
Required
Question 6

How effectively do you think you integrated user interface design and rich media to create an engaging user experience in your virtual pet simulator?

Multiple choice
Required
Options
Very effectively
Effectively
Somewhat effectively
Not effectively
Question 7

Reflect on your application of good programming practices (conventional standards, commenting) during this project. How did they affect the maintainability and readability of your code?

Text
Required