Guidelines and Rubric
Overview
In this computer science course, you will have the opportunity to explore
introductory types of coding and the computational thinking that
computer scientists engage in when they design solutions to social and
business problems. As you work through the requirements and
constraints of certain problems, you will choose the data structures,
algorithms, and program organizations you need to achieve optimal,
accurate results. In addition, you will explore some of the most important
topics in contemporary computer science. Thinking about who you are
and who you want to be in relation to those topics will ultimately help
you build a professional computer science identity. These are the
fundamental building blocks you will take with you as you progress into
more advanced and complex computer science courses.
There are two parts to the final project in this course. In the first part, you
will choose three activities you have completed during the course and
gather them into a collection of problem-solving activities. One activity
will demonstrate input/output problem solving using flowcharts, another
will demonstrate the creation of control structures, and the last will be an
activity of your own choosing something that you found particularly
interesting or challenging. In the second part of their final project, you will write a professional
reflection on who you are and who you want to be in the computer
science field. By positioning yourself in relation to key topics in
contemporary computer science, you will begin a professional journey
into this dynamic discipline.
The project is divided into three milestones, which will be submitted at
various points throughout the course to scaffold learning and ensure
quality final submissions. These milestones will be submitted in Modules
Three and Five. The final product will be submitted in Module Seven.
In this assignment, you will demonstrate your mastery of the following
course outcomes:
• Develop a fundamental computer scientist identity through
reflecting on the role of computer science and scientists in
modern society
●
●
●
Explain how data structures and algorithms inform the way
computer scientists think about data and its organization
Apply basic programming best practices to essential computer
science tasks
Develop basic problem solving skills in a programming context
using industry standard tools
Final Project Part I Prompt
In the first part of your final project, you will collect three different
activities that represent three different problems that you grappled with
during this course. The first activity should represent input/output
problem solving using flowcharts, the second activity should be related
to the creation of control structures, and the third activity should be a
problem of your choice that you found particularly interesting or challenging. Using the feedback provided by your instructor and your
peers, you will address any issues and make them as perfect as you can.
You will annotate your code and submit the text files using Python best
practices.
Specifically, the following critical elements must be addressed:
1. Submit your input/output activity that uses a flowchart or
pseudocode. Note that this is where you submit our flowchart or
pseudocode.
A. Describe the programming best practices you used in
accurately completing this task by annotating your code:
Include where best practices were implemented and why
you used them.
B. Explain the problem-solving approaches you employed
while completing this task. Include this information in your
code annotations, and be sure to address the tool(s) you
used to complete this task.
C. Explain in your code annotations why the algorithm and
data structure you ultimately chose to accurately
complete this task provided the most efficient solution to
this problem.
II. Submit your control structures activity.
A. Describe the programming best practices you used in
accurately completing this task by annotating your code:
Include where best practices were implemented and why
you used them.
B. Explain the problem-solving approaches you employed
while completing this task. Include this information in your
code annotations, and be sure to address the tool(s) you
used to complete this task. C. Explain in your code annotations why the algorithm and
data structure you ultimately chose to accurately
complete this task provided the most efficient solution to
this problem.
III. Submit an activity of your choice that you found particularly
interesting or challenging.
A. Describe the programming best practices you used in
accurately completing this task by annotating your code:
Include where best practices were implemented and why
you used them.
B. Explain the problem-solving approaches you employed
while completing this task. Include this information in your
code annotations, and be sure to address the tool(s) you
used to complete this task.
C. Explain in your code annotations why the algorithm and
data structure you ultimately chose to accurately
complete this task provided the most efficient solution to
this problem.
Milestones
Milestone One: Collection of Problem-Solving Activities
In Module Three, you will submit pseudocode or a flowchart for a basic
input/output program. This milestone will be graded with the
Milestone One Rubric.
Milestone Two: Control Structures and Chosen Topic Significance
In Module Five, you will submit a control structure activity a description
of the significance of your chosen topic in contemporary computer
science. This milestone will be graded with the Milestone Two
Rubric. Final Submission: Collection of Problem-Solving Activities (Part I) and
Professional Reflection (Part II)
In Module Seven, you will submit your final project. It should be a
complete, polished artifact containing all of the critical elements of the
final product. It should reflect the incorporation of feedback gained
throughout the course. This submission will be graded with the Final
Project Rubric.