SlideShare a Scribd company logo
1 of 12
CSCI 180 Project Grading
Your project is graded based on four categories: correctness,
assignment requirements,
documentation, and style. Below are the point breakdowns for
each of these areas, detailing the
range of points you will receive for achievement levels within
each of these categories.
Functionality
Note that you cannot receive the minimum functionality points
for a level unless your code fulfills
the requirements for that level. So, for example, if you do not
fulfill the C-level requirements
completely (with minor errors), the highest grade you can
receive is a 39 no matter what other
features you have put into your code.
60-70
50-59
40-49
30-39
0-30
Code compiles and runs without crashing. Fulfills the A-level
requirements. Variant
points based on quality of minor flaws in correctness.
Code compiles and runs without crashing. Fulfills the B-level
requirements. Variant
points based on discussion of issues arising in reaching the next
stage of the project and
in how easy it is to determine the correctness of the code by
running it.
Code compiles and runs without crashing. Fulfills the C-level
requirements. Variant
points based on discussion of issues arising in reaching the next
stage of the project and
in how easy it is to determine the correctness of the code by
running it.
Code compiles and runs without crashing. Fulfills D-level
requirements. Variant points
based on discussion of issues arising in reaching the next stage
of the project and in how
easy it is to determine the correctness of the code by running it.
Code does not compile or code crashes when run. Variant points
awarded based on
quality of analysis of the problem with the code.
Assignment Requirements
5 Handed in on time, code has some documentation, and you
included a journal (as described
in assignment). The journal includes comments about tasks and
issues you encountered and
describes how you tested the project.
3 Assignment is on time, code has some documentation, the
journal is completed, but a bit
sparse but seems like you wrote it as you went.
2 Assignment is on time. The journal may be a bit sparse or it
may be obvious that you wrote
it after the fact.
1 The code might be undocumented, or you may not have turned
in a journal.
0 There was an assignment? Oh yeah, here it is. Oh, a journal --
can I still do that? It is
obvious you need to spend more time reading about deadlines
and what is included when
you hand in your work.
Documentation of Code
During this course, I will frequently award points for
documentation as follows (up to 2 points
for each item):
• documentation at top of file including name of file, your
name, and date
• description of class (top of file)
• documentation on each public method including parameter and
return tags.
• interior documentation for code that may be hard to
understand
• documentation gives the big picture relating the code to the
task, not micro "this line sets
a value"
Naming
Up to 10 points awarded, as follows (up to 2 points for each
item):
• lowercase starting letter on methods and variables
• uppercase starting letter on classes
• names suggest use of variable
• names suggest action of void method
• names suggest result of value- returning methods
You could lose all 10 points for not using names of methods,
classes, and files specified in the
project assignment.
Code Structure / Style
Please note that efficiency is of little concern to me initially,
but gains importance as you learn
more programming. Each of the items is awarded 1 point in the
rubric:
• line lengths reasonable (80 or less)
• methods are not too long
• if possible, blocks of code are not repeated
• whitespace/indenting used to increase readability of code
• local variables used where appropriate (rather than only
fields)
CSCI
180
Spring
2014,
Project
1:
Chatter
Due: Friday, March 14 at 11:59 pm
In this project, you’ll extend the SupportSystem project from
chapter 5 to create Chatter,
a program that converses with the user. This is in the spirit of
ELIZA, described by
Joseph Weizenbaum in 1966. ELIZA was designed to mimic a
psychiatrist conversing
with a patient.
It is important to start early and ask questions often. And
remember that, unlike the
homework, this is individual work at the code level. From the
syllabus: You are
permitted to discuss general concepts with other students but
cannot share code or
algorithmic solutions. Violation of this could result in a 0 on
the project for you and your
collaborator. You are encouraged to ask questions of the
instructor in class or out of class
about the project.
You should complete the code in order from D-level to A-level.
You cannot get credit
for A-level work unless the earlier levels are working. See
projectRubric.pdf for a guide
as to how I will grade projects. You will need to create a log
for this project (see
Deliverables at end).
D-level functionality
Implement a basic program that always just repeats what the
user typed in. So it should
prompt the user for a string and respond with the same string.
Use the TechSupport
system design from chapter 5 but call your project project1. It
is best to start from
TechSupport2 instead of TechSupport-Complete. Your
equivalent to the
SupportSystem class should be called Chatter. All manipulation
of the input string
should take place within the Responder class. Chatter should
function basically the
same as the SupportSystem class with the following exceptions:
• The input loop should end when the user enters a string that is
specified by the
Responder class (so you would get that string by calling a
method called
getEndingString() on the Responder object).
• The printWelcome and printGoodbye methods within Chatter
should
call methods from the Responder class to produce the desired
messages.
C-level functionality – (note that you must have received most
of the D-level points
to be eligible for C-level points)
D-level with the following modifications:
Chatter should prompt the user for an input string and output an
appropriate response
based on a word in the input. Choose a theme or persona for the
conversation. For
example, you might assume that the conversation is about
meals, so some example word
and response pairs might be: [“dinner”, “Tell me more about
what you ate.”], [“like”,
“What is your favorite food?”]. You should include at least 10
pairs.
• You should not need to modify the Chatter class from D-level
functionality.
• Instead, the method in the Responder class which provided the
echo of the input
string should now produce a response string. Use a HashMap
within the
Responder class to store the words and their responses so that
more words can be
added later.
• When searching for a word in the input, make the search case-
insensitive. Thus, a
search for "excuse" would match whether it was “Excuse” or
“excuse”, for
example.
• When searching for a word in the input, ignore commas,
periods, semicolons, and
parentheses. Thus, a search for "excuse" would match whether
it was “excuse,”
“excuse.” or “(excuse)” for example.
• If no matching word is found, the Responder should respond
with a random
default response (see Tech-support-complete for how to do this
but do not use
those responses).
B-level functionality – (note that you must have received most
of the C-level points
to be eligible for B-level points)
C-level plus the following:
• Prompt the user for his/her name and randomly insert that
name into the responses
at the beginning or end of the response (alternating each time)
in approximately
50% of the responses.
• Have the system allow the matching of multiple words in one
input string. If
multiple words are found, the responder should randomly
choose one of the
matching responses.
• Modify the system so that it can handle multi-word phrases.
The modification
should be general enough to allow it to handle any length
phrase. (Hint: loop
through the map keys.)
A-level functionality – (note that you must have received most
of the B-level points
to be eligible for A-level points)
To the B-level functionality, add at least one additional feature.
The feature should be
non-trivial and should indicate some effort. If you have an idea
and are not sure, clear it
with me first. Examples include:
• Modify your system so that patterns are recognized in input
strings and used in
the responses. So, for example, if the input string is “I like
green eggs and ham”,
the Responder would recognize the “I like something” pattern
and say something
like “Is green eggs and ham your favorite meal?” Include at
least 5 patterns.
• Keep track of how many times someone has used each key
word and make an
appropriate comment when count reaches a certain number.
Notes on Style
See the style guide posted on our book site. Approximately 25
percent of your project
grade will be based on coding style, including documentation.
Generally I will divide this
into an assessment of
• documentation -- the comments and specifications for your
code.
• naming -- quality names that make your code more self-
documenting. If any of
the names are specified in the project description, you must use
those names!
• code structure -- the structuring of the code itself: line and
method lengths,
indentation, whitespace, clarity of code, efficiency of code.
(Efficiency is not a
big concern early on.)
Deliverables -- what should you hand in?
• Each time you work, please make a note in a programming
log. The log is
intended to help you and I analyze your behavior over time --
noticing where you
spend time or have problems, and to help me give you advice on
your process as
well. You will not lose points for what may seem to be
questionable practices, but
you will lose points for not providing the log. Your entry each
time should
include date, how long you worked, what you worked on, what
problems you
encountered, how you got around the problem, why you stopped
working. You
don’t need to be too wordy but include enough detail so I can
understand your
process. Also talk about how you have tested your code. Turn
in this
programming log with your code. A Word doc is fine for this.
• Your documented code. Include all .java files from the
project.
Everything should be submitted in Canvas by March 14, 2014 at
11:59 pm unless you are
using one of your late days.

More Related Content

Similar to CSCI 180 Project Grading  Your project is graded based .docx

[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...DevDay.org
 
C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing TechniquesAppili Vamsi Krishna
 
Code Review
Code ReviewCode Review
Code ReviewRavi Raj
 
Frequently asked tcs technical interview questions and answers
Frequently asked tcs technical interview questions and answersFrequently asked tcs technical interview questions and answers
Frequently asked tcs technical interview questions and answersnishajj
 
Csc 440 assignment 2 convex hull out tuesday, feb 9th
Csc 440 assignment 2 convex hull out tuesday, feb 9thCsc 440 assignment 2 convex hull out tuesday, feb 9th
Csc 440 assignment 2 convex hull out tuesday, feb 9thRAJU852744
 
Documenting Code - Patterns and Anti-patterns - NLPW 2016
Documenting Code - Patterns and Anti-patterns - NLPW 2016Documenting Code - Patterns and Anti-patterns - NLPW 2016
Documenting Code - Patterns and Anti-patterns - NLPW 2016Søren Lund
 
6062 comp cwk2 17 18 new template
6062 comp cwk2 17 18 new template6062 comp cwk2 17 18 new template
6062 comp cwk2 17 18 new templateElliot Byrne
 
Coding standards
Coding standardsCoding standards
Coding standardsMimoh Ojha
 
An Introduction To Software Development - Implementation
An Introduction To Software Development - ImplementationAn Introduction To Software Development - Implementation
An Introduction To Software Development - ImplementationBlue Elephant Consulting
 
Google Interview Prep Guide Software Engineer
Google Interview Prep Guide Software EngineerGoogle Interview Prep Guide Software Engineer
Google Interview Prep Guide Software EngineerLewis Lin 🦊
 
Week 6 Creating Bibliographies and Practicing MLA Citation
  Week 6 Creating Bibliographies and Practicing MLA Citation   Week 6 Creating Bibliographies and Practicing MLA Citation
Week 6 Creating Bibliographies and Practicing MLA Citation ajoy21
 
UMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docx
UMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docxUMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docx
UMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docxouldparis
 
Documenting code yapceu2016
Documenting code yapceu2016Documenting code yapceu2016
Documenting code yapceu2016Søren Lund
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
CMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECTCMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECTHamesKellor
 
Software Craftmanship - Cours Polytech
Software Craftmanship - Cours PolytechSoftware Craftmanship - Cours Polytech
Software Craftmanship - Cours Polytechyannick grenzinger
 

Similar to CSCI 180 Project Grading  Your project is graded based .docx (20)

[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
 
Coding
CodingCoding
Coding
 
C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing Techniques
 
01.intro
01.intro01.intro
01.intro
 
Code Review
Code ReviewCode Review
Code Review
 
Frequently asked tcs technical interview questions and answers
Frequently asked tcs technical interview questions and answersFrequently asked tcs technical interview questions and answers
Frequently asked tcs technical interview questions and answers
 
Csc 440 assignment 2 convex hull out tuesday, feb 9th
Csc 440 assignment 2 convex hull out tuesday, feb 9thCsc 440 assignment 2 convex hull out tuesday, feb 9th
Csc 440 assignment 2 convex hull out tuesday, feb 9th
 
Illustrated Code (ASE 2021)
Illustrated Code (ASE 2021)Illustrated Code (ASE 2021)
Illustrated Code (ASE 2021)
 
Documenting Code - Patterns and Anti-patterns - NLPW 2016
Documenting Code - Patterns and Anti-patterns - NLPW 2016Documenting Code - Patterns and Anti-patterns - NLPW 2016
Documenting Code - Patterns and Anti-patterns - NLPW 2016
 
6062 comp cwk2 17 18 new template
6062 comp cwk2 17 18 new template6062 comp cwk2 17 18 new template
6062 comp cwk2 17 18 new template
 
Coding standards
Coding standardsCoding standards
Coding standards
 
An Introduction To Software Development - Implementation
An Introduction To Software Development - ImplementationAn Introduction To Software Development - Implementation
An Introduction To Software Development - Implementation
 
Google Interview Prep Guide Software Engineer
Google Interview Prep Guide Software EngineerGoogle Interview Prep Guide Software Engineer
Google Interview Prep Guide Software Engineer
 
Week 6 Creating Bibliographies and Practicing MLA Citation
  Week 6 Creating Bibliographies and Practicing MLA Citation   Week 6 Creating Bibliographies and Practicing MLA Citation
Week 6 Creating Bibliographies and Practicing MLA Citation
 
UMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docx
UMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docxUMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docx
UMUC - CMIT-454 - Spring 2019 - Course Final Project Paper Gra.docx
 
Documenting code yapceu2016
Documenting code yapceu2016Documenting code yapceu2016
Documenting code yapceu2016
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Code quality
Code quality Code quality
Code quality
 
CMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECTCMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECT
 
Software Craftmanship - Cours Polytech
Software Craftmanship - Cours PolytechSoftware Craftmanship - Cours Polytech
Software Craftmanship - Cours Polytech
 

More from faithxdunce63732

Assignment DetailsScenario You are member of a prisoner revie.docx
Assignment DetailsScenario You are member of a prisoner revie.docxAssignment DetailsScenario You are member of a prisoner revie.docx
Assignment DetailsScenario You are member of a prisoner revie.docxfaithxdunce63732
 
Assignment DetailsScenario You are an investigator for Child .docx
Assignment DetailsScenario You are an investigator for Child .docxAssignment DetailsScenario You are an investigator for Child .docx
Assignment DetailsScenario You are an investigator for Child .docxfaithxdunce63732
 
Assignment DetailsScenario You are a new patrol officer in a .docx
Assignment DetailsScenario You are a new patrol officer in a .docxAssignment DetailsScenario You are a new patrol officer in a .docx
Assignment DetailsScenario You are a new patrol officer in a .docxfaithxdunce63732
 
Assignment DetailsScenario Generally, we have considered sexual.docx
Assignment DetailsScenario Generally, we have considered sexual.docxAssignment DetailsScenario Generally, we have considered sexual.docx
Assignment DetailsScenario Generally, we have considered sexual.docxfaithxdunce63732
 
Assignment DetailsPower’s on, Power’s Off!How convenient is.docx
Assignment DetailsPower’s on, Power’s Off!How convenient is.docxAssignment DetailsPower’s on, Power’s Off!How convenient is.docx
Assignment DetailsPower’s on, Power’s Off!How convenient is.docxfaithxdunce63732
 
Assignment DetailsIn 1908, playwright Israel Zangwill referred to .docx
Assignment DetailsIn 1908, playwright Israel Zangwill referred to .docxAssignment DetailsIn 1908, playwright Israel Zangwill referred to .docx
Assignment DetailsIn 1908, playwright Israel Zangwill referred to .docxfaithxdunce63732
 
Assignment DetailsPart IRespond to the following.docx
Assignment DetailsPart IRespond to the following.docxAssignment DetailsPart IRespond to the following.docx
Assignment DetailsPart IRespond to the following.docxfaithxdunce63732
 
Assignment DetailsPlease discuss the following in your main post.docx
Assignment DetailsPlease discuss the following in your main post.docxAssignment DetailsPlease discuss the following in your main post.docx
Assignment DetailsPlease discuss the following in your main post.docxfaithxdunce63732
 
Assignment DetailsPennsylvania was the leader in sentencing and .docx
Assignment DetailsPennsylvania was the leader in sentencing and .docxAssignment DetailsPennsylvania was the leader in sentencing and .docx
Assignment DetailsPennsylvania was the leader in sentencing and .docxfaithxdunce63732
 
Assignment DetailsPart IRespond to the followingReview .docx
Assignment DetailsPart IRespond to the followingReview .docxAssignment DetailsPart IRespond to the followingReview .docx
Assignment DetailsPart IRespond to the followingReview .docxfaithxdunce63732
 
Assignment DetailsPart IRespond to the following questio.docx
Assignment DetailsPart IRespond to the following questio.docxAssignment DetailsPart IRespond to the following questio.docx
Assignment DetailsPart IRespond to the following questio.docxfaithxdunce63732
 
Assignment DetailsPart IRespond to the following questions.docx
Assignment DetailsPart IRespond to the following questions.docxAssignment DetailsPart IRespond to the following questions.docx
Assignment DetailsPart IRespond to the following questions.docxfaithxdunce63732
 
Assignment DetailsOne thing that unites all humans—despite cultu.docx
Assignment DetailsOne thing that unites all humans—despite cultu.docxAssignment DetailsOne thing that unites all humans—despite cultu.docx
Assignment DetailsOne thing that unites all humans—despite cultu.docxfaithxdunce63732
 
Assignment DetailsMN551Develop cooperative relationships with.docx
Assignment DetailsMN551Develop cooperative relationships with.docxAssignment DetailsMN551Develop cooperative relationships with.docx
Assignment DetailsMN551Develop cooperative relationships with.docxfaithxdunce63732
 
Assignment DetailsInfluence ProcessesYou have been encourag.docx
Assignment DetailsInfluence ProcessesYou have been encourag.docxAssignment DetailsInfluence ProcessesYou have been encourag.docx
Assignment DetailsInfluence ProcessesYou have been encourag.docxfaithxdunce63732
 
Assignment DetailsIn this assignment, you will identify and .docx
Assignment DetailsIn this assignment, you will identify and .docxAssignment DetailsIn this assignment, you will identify and .docx
Assignment DetailsIn this assignment, you will identify and .docxfaithxdunce63732
 
Assignment DetailsFinancial statements are the primary means of .docx
Assignment DetailsFinancial statements are the primary means of .docxAssignment DetailsFinancial statements are the primary means of .docx
Assignment DetailsFinancial statements are the primary means of .docxfaithxdunce63732
 
Assignment DetailsIn this assignment, you will identify a pr.docx
Assignment DetailsIn this assignment, you will identify a pr.docxAssignment DetailsIn this assignment, you will identify a pr.docx
Assignment DetailsIn this assignment, you will identify a pr.docxfaithxdunce63732
 
Assignment DetailsHealth information technology (health IT) .docx
Assignment DetailsHealth information technology (health IT) .docxAssignment DetailsHealth information technology (health IT) .docx
Assignment DetailsHealth information technology (health IT) .docxfaithxdunce63732
 
Assignment DetailsDiscuss the followingWhat were some of .docx
Assignment DetailsDiscuss the followingWhat were some of .docxAssignment DetailsDiscuss the followingWhat were some of .docx
Assignment DetailsDiscuss the followingWhat were some of .docxfaithxdunce63732
 

More from faithxdunce63732 (20)

Assignment DetailsScenario You are member of a prisoner revie.docx
Assignment DetailsScenario You are member of a prisoner revie.docxAssignment DetailsScenario You are member of a prisoner revie.docx
Assignment DetailsScenario You are member of a prisoner revie.docx
 
Assignment DetailsScenario You are an investigator for Child .docx
Assignment DetailsScenario You are an investigator for Child .docxAssignment DetailsScenario You are an investigator for Child .docx
Assignment DetailsScenario You are an investigator for Child .docx
 
Assignment DetailsScenario You are a new patrol officer in a .docx
Assignment DetailsScenario You are a new patrol officer in a .docxAssignment DetailsScenario You are a new patrol officer in a .docx
Assignment DetailsScenario You are a new patrol officer in a .docx
 
Assignment DetailsScenario Generally, we have considered sexual.docx
Assignment DetailsScenario Generally, we have considered sexual.docxAssignment DetailsScenario Generally, we have considered sexual.docx
Assignment DetailsScenario Generally, we have considered sexual.docx
 
Assignment DetailsPower’s on, Power’s Off!How convenient is.docx
Assignment DetailsPower’s on, Power’s Off!How convenient is.docxAssignment DetailsPower’s on, Power’s Off!How convenient is.docx
Assignment DetailsPower’s on, Power’s Off!How convenient is.docx
 
Assignment DetailsIn 1908, playwright Israel Zangwill referred to .docx
Assignment DetailsIn 1908, playwright Israel Zangwill referred to .docxAssignment DetailsIn 1908, playwright Israel Zangwill referred to .docx
Assignment DetailsIn 1908, playwright Israel Zangwill referred to .docx
 
Assignment DetailsPart IRespond to the following.docx
Assignment DetailsPart IRespond to the following.docxAssignment DetailsPart IRespond to the following.docx
Assignment DetailsPart IRespond to the following.docx
 
Assignment DetailsPlease discuss the following in your main post.docx
Assignment DetailsPlease discuss the following in your main post.docxAssignment DetailsPlease discuss the following in your main post.docx
Assignment DetailsPlease discuss the following in your main post.docx
 
Assignment DetailsPennsylvania was the leader in sentencing and .docx
Assignment DetailsPennsylvania was the leader in sentencing and .docxAssignment DetailsPennsylvania was the leader in sentencing and .docx
Assignment DetailsPennsylvania was the leader in sentencing and .docx
 
Assignment DetailsPart IRespond to the followingReview .docx
Assignment DetailsPart IRespond to the followingReview .docxAssignment DetailsPart IRespond to the followingReview .docx
Assignment DetailsPart IRespond to the followingReview .docx
 
Assignment DetailsPart IRespond to the following questio.docx
Assignment DetailsPart IRespond to the following questio.docxAssignment DetailsPart IRespond to the following questio.docx
Assignment DetailsPart IRespond to the following questio.docx
 
Assignment DetailsPart IRespond to the following questions.docx
Assignment DetailsPart IRespond to the following questions.docxAssignment DetailsPart IRespond to the following questions.docx
Assignment DetailsPart IRespond to the following questions.docx
 
Assignment DetailsOne thing that unites all humans—despite cultu.docx
Assignment DetailsOne thing that unites all humans—despite cultu.docxAssignment DetailsOne thing that unites all humans—despite cultu.docx
Assignment DetailsOne thing that unites all humans—despite cultu.docx
 
Assignment DetailsMN551Develop cooperative relationships with.docx
Assignment DetailsMN551Develop cooperative relationships with.docxAssignment DetailsMN551Develop cooperative relationships with.docx
Assignment DetailsMN551Develop cooperative relationships with.docx
 
Assignment DetailsInfluence ProcessesYou have been encourag.docx
Assignment DetailsInfluence ProcessesYou have been encourag.docxAssignment DetailsInfluence ProcessesYou have been encourag.docx
Assignment DetailsInfluence ProcessesYou have been encourag.docx
 
Assignment DetailsIn this assignment, you will identify and .docx
Assignment DetailsIn this assignment, you will identify and .docxAssignment DetailsIn this assignment, you will identify and .docx
Assignment DetailsIn this assignment, you will identify and .docx
 
Assignment DetailsFinancial statements are the primary means of .docx
Assignment DetailsFinancial statements are the primary means of .docxAssignment DetailsFinancial statements are the primary means of .docx
Assignment DetailsFinancial statements are the primary means of .docx
 
Assignment DetailsIn this assignment, you will identify a pr.docx
Assignment DetailsIn this assignment, you will identify a pr.docxAssignment DetailsIn this assignment, you will identify a pr.docx
Assignment DetailsIn this assignment, you will identify a pr.docx
 
Assignment DetailsHealth information technology (health IT) .docx
Assignment DetailsHealth information technology (health IT) .docxAssignment DetailsHealth information technology (health IT) .docx
Assignment DetailsHealth information technology (health IT) .docx
 
Assignment DetailsDiscuss the followingWhat were some of .docx
Assignment DetailsDiscuss the followingWhat were some of .docxAssignment DetailsDiscuss the followingWhat were some of .docx
Assignment DetailsDiscuss the followingWhat were some of .docx
 

Recently uploaded

ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxHistory Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxsocialsciencegdgrohi
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 

Recently uploaded (20)

ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxHistory Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 

CSCI 180 Project Grading  Your project is graded based .docx

  • 1. CSCI 180 Project Grading Your project is graded based on four categories: correctness, assignment requirements, documentation, and style. Below are the point breakdowns for each of these areas, detailing the range of points you will receive for achievement levels within each of these categories. Functionality Note that you cannot receive the minimum functionality points for a level unless your code fulfills the requirements for that level. So, for example, if you do not fulfill the C-level requirements completely (with minor errors), the highest grade you can receive is a 39 no matter what other features you have put into your code. 60-70 50-59
  • 2. 40-49 30-39 0-30 Code compiles and runs without crashing. Fulfills the A-level requirements. Variant points based on quality of minor flaws in correctness.
  • 3. Code compiles and runs without crashing. Fulfills the B-level requirements. Variant points based on discussion of issues arising in reaching the next stage of the project and in how easy it is to determine the correctness of the code by running it. Code compiles and runs without crashing. Fulfills the C-level requirements. Variant points based on discussion of issues arising in reaching the next stage of the project and in how easy it is to determine the correctness of the code by running it. Code compiles and runs without crashing. Fulfills D-level requirements. Variant points based on discussion of issues arising in reaching the next stage of the project and in how easy it is to determine the correctness of the code by running it. Code does not compile or code crashes when run. Variant points awarded based on quality of analysis of the problem with the code. Assignment Requirements 5 Handed in on time, code has some documentation, and you included a journal (as described
  • 4. in assignment). The journal includes comments about tasks and issues you encountered and describes how you tested the project. 3 Assignment is on time, code has some documentation, the journal is completed, but a bit sparse but seems like you wrote it as you went. 2 Assignment is on time. The journal may be a bit sparse or it may be obvious that you wrote it after the fact. 1 The code might be undocumented, or you may not have turned in a journal. 0 There was an assignment? Oh yeah, here it is. Oh, a journal -- can I still do that? It is obvious you need to spend more time reading about deadlines and what is included when you hand in your work. Documentation of Code During this course, I will frequently award points for documentation as follows (up to 2 points for each item):
  • 5. • documentation at top of file including name of file, your name, and date • description of class (top of file) • documentation on each public method including parameter and return tags. • interior documentation for code that may be hard to understand • documentation gives the big picture relating the code to the task, not micro "this line sets a value" Naming Up to 10 points awarded, as follows (up to 2 points for each item): • lowercase starting letter on methods and variables • uppercase starting letter on classes • names suggest use of variable • names suggest action of void method • names suggest result of value- returning methods You could lose all 10 points for not using names of methods, classes, and files specified in the project assignment. Code Structure / Style
  • 6. Please note that efficiency is of little concern to me initially, but gains importance as you learn more programming. Each of the items is awarded 1 point in the rubric: • line lengths reasonable (80 or less) • methods are not too long • if possible, blocks of code are not repeated • whitespace/indenting used to increase readability of code • local variables used where appropriate (rather than only fields) CSCI 180 Spring 2014, Project 1: Chatter Due: Friday, March 14 at 11:59 pm In this project, you’ll extend the SupportSystem project from chapter 5 to create Chatter, a program that converses with the user. This is in the spirit of ELIZA, described by Joseph Weizenbaum in 1966. ELIZA was designed to mimic a psychiatrist conversing
  • 7. with a patient. It is important to start early and ask questions often. And remember that, unlike the homework, this is individual work at the code level. From the syllabus: You are permitted to discuss general concepts with other students but cannot share code or algorithmic solutions. Violation of this could result in a 0 on the project for you and your collaborator. You are encouraged to ask questions of the instructor in class or out of class about the project. You should complete the code in order from D-level to A-level. You cannot get credit for A-level work unless the earlier levels are working. See projectRubric.pdf for a guide as to how I will grade projects. You will need to create a log for this project (see Deliverables at end). D-level functionality Implement a basic program that always just repeats what the user typed in. So it should prompt the user for a string and respond with the same string. Use the TechSupport system design from chapter 5 but call your project project1. It is best to start from TechSupport2 instead of TechSupport-Complete. Your equivalent to the SupportSystem class should be called Chatter. All manipulation of the input string should take place within the Responder class. Chatter should function basically the
  • 8. same as the SupportSystem class with the following exceptions: • The input loop should end when the user enters a string that is specified by the Responder class (so you would get that string by calling a method called getEndingString() on the Responder object). • The printWelcome and printGoodbye methods within Chatter should call methods from the Responder class to produce the desired messages. C-level functionality – (note that you must have received most of the D-level points to be eligible for C-level points) D-level with the following modifications: Chatter should prompt the user for an input string and output an appropriate response based on a word in the input. Choose a theme or persona for the conversation. For example, you might assume that the conversation is about meals, so some example word and response pairs might be: [“dinner”, “Tell me more about what you ate.”], [“like”, “What is your favorite food?”]. You should include at least 10 pairs. • You should not need to modify the Chatter class from D-level functionality. • Instead, the method in the Responder class which provided the
  • 9. echo of the input string should now produce a response string. Use a HashMap within the Responder class to store the words and their responses so that more words can be added later. • When searching for a word in the input, make the search case- insensitive. Thus, a search for "excuse" would match whether it was “Excuse” or “excuse”, for example. • When searching for a word in the input, ignore commas, periods, semicolons, and parentheses. Thus, a search for "excuse" would match whether it was “excuse,” “excuse.” or “(excuse)” for example. • If no matching word is found, the Responder should respond with a random default response (see Tech-support-complete for how to do this but do not use those responses). B-level functionality – (note that you must have received most of the C-level points to be eligible for B-level points) C-level plus the following: • Prompt the user for his/her name and randomly insert that name into the responses at the beginning or end of the response (alternating each time) in approximately
  • 10. 50% of the responses. • Have the system allow the matching of multiple words in one input string. If multiple words are found, the responder should randomly choose one of the matching responses. • Modify the system so that it can handle multi-word phrases. The modification should be general enough to allow it to handle any length phrase. (Hint: loop through the map keys.) A-level functionality – (note that you must have received most of the B-level points to be eligible for A-level points) To the B-level functionality, add at least one additional feature. The feature should be non-trivial and should indicate some effort. If you have an idea and are not sure, clear it with me first. Examples include: • Modify your system so that patterns are recognized in input strings and used in the responses. So, for example, if the input string is “I like green eggs and ham”, the Responder would recognize the “I like something” pattern and say something like “Is green eggs and ham your favorite meal?” Include at least 5 patterns. • Keep track of how many times someone has used each key
  • 11. word and make an appropriate comment when count reaches a certain number. Notes on Style See the style guide posted on our book site. Approximately 25 percent of your project grade will be based on coding style, including documentation. Generally I will divide this into an assessment of • documentation -- the comments and specifications for your code. • naming -- quality names that make your code more self- documenting. If any of the names are specified in the project description, you must use those names! • code structure -- the structuring of the code itself: line and method lengths, indentation, whitespace, clarity of code, efficiency of code. (Efficiency is not a big concern early on.) Deliverables -- what should you hand in? • Each time you work, please make a note in a programming log. The log is intended to help you and I analyze your behavior over time -- noticing where you spend time or have problems, and to help me give you advice on your process as well. You will not lose points for what may seem to be questionable practices, but you will lose points for not providing the log. Your entry each time should
  • 12. include date, how long you worked, what you worked on, what problems you encountered, how you got around the problem, why you stopped working. You don’t need to be too wordy but include enough detail so I can understand your process. Also talk about how you have tested your code. Turn in this programming log with your code. A Word doc is fine for this. • Your documented code. Include all .java files from the project. Everything should be submitted in Canvas by March 14, 2014 at 11:59 pm unless you are using one of your late days.