Skip to main content
Apply

Arts and Sciences

Department of Computer Science

Rubrics for Student Outcome Assessment


Outcome 1:

Analyze a complex computing problem and apply principles of computing and other relevant disciplines to identify solutions.

Levels of Performance
IndicatorsUnsatisfactoryDevelopingSatisfactoryExemplary
Abstraction of complex problems into formal models allowing for algorithmic solutionsStudent is unable to model a complex problem formallyStudent's attempts to model complex problems are inadequateStudent models complex problems sufficiently so that algorithmic solutions can be developed with effortStudent develops clean, elegant models of complex problems which easily translate into algorithmic solutions
Knowledge of adequate algorithmic strategies for solution development and implementationStudent is unable to select appropriate algorithmic strategiesStudent is occasionally able to select appropriate algorithmic strategiesStudent is often able to select appropriate algorithmic strategiesStudent's algorithmic strategy selection is always appropriate and effective
Mapping formal specifications of problems into algorithmic solutionsStudent exhibits little understanding of formal specificationsStudent struggles at mapping formal specifications into algorithmsStudent is usually able to map formal specifications into appropriate algorithmsStudent is always able to map formal specifications into well-chosen algorithms

Rubric: one per student

Assessment method: direct

Assessment instruments: Select problems in exams, homework problems, programming assignments, and quizzes


Outcome 2:

Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.

Levels of Performance
IndicatorsUnsatisfactoryDevelopingSatisfactoryExemplary
Designs a programmable solution for a problemDoes not submit designSubmitted design is flawed and will not workSubmits workable designSubmits easily followed design using appropriate models and design methods
Implements an executable solutionSolution does not compile or runProgram compiles but does not run correctlyProgram compiles and runs successfullySolution is well- tested and appropriately documented
Validates the implementation relative to requirementsDoes not attempt validationSome requirements are validated, but a few requirement are not metMeets all requirementsA rigorous implementation analysis is provided in relation to requirements, which are analyzed in detail

Rubric: one per student

Assessment method: direct

Assessment instruments: Programming assignments and programming projects

Example project: build a small kernel. This could be a group project, with components as individual projects.


Outcome 3:

Communicate effectively in a variety of professional contexts.

Levels of Performance
IndicatorsUnsatisfactoryDevelopingSatisfactoryExemplary
Demonstrates effective written communication skills in the context of discussion topicsShows little ability to write about discussion topicsShows some ability to write about of discussion topicsShows ability to write about discussion topicsDemonstrates mastery of ability to write about discussion topics
Effectively presents concepts in oral presentationContent needs work both in research and organization, lacks effective visual aids, or is poorly timedContent is understandable but could benefit from better research and organization, visual aids are ineffective, or is poorly timedContent and research are appropriate and organized, visuals are adequate, and presentation timing was reasonableContent is well-researched and organized, with effective visuals and well-planned presentation timing

Rubric: one per student

Assessment method: direct

Assessment instruments: discussion forum participation, oral presentations and term paper


Outcome 4:

Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.

Levels of Performance
IndicatorsUnsatisfactoryDevelopingSatisfactoryExemplary
Demonstrates knowledge of ethical, legal and social implications of computingDemonstratespoor understanding of security, needs help to recognize basic elements of ethicsDemonstrates limited understanding of security, shows ability to recognize basic elements of ethicsDemonstrates good understanding of security, recognizes some elements of ethicsDemonstrates good understanding of security, recognizes basic elements of ethics
Demonstrates understanding of the impact of computing practices in society at largeLittle understanding of the impact of computing practices in societySome understanding of the impact of computing practicesUnderstands the impact of computing practicesExcellent ability to understand best computing practices in society
Demonstrates awareness of the significance of privacy and security in data managementNeeds helpDemonstrates some abilityDemonstrates good abilityDemonstrates excellent ability to recognize significance of privacy and security in data management

Rubric: one per student

Assessment method: direct

Assessment instruments: Exams, homework’s, term paper


Outcome 5:

Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.

Levels of Performance
IndicatorsUnsatisfactoryDevelopingSatisfactoryExemplary
Attendance and participation in team meetingsDoes not attend or is late consistentlyDoes not attend all meetings, or attends meetings but meets few responsibilitiesAttends all meetings, participates in all team activities and meets all responsibilitiesAttends all meetings, contributes to discussions, and provides valuable initiative to team activities.
Contributes to overall group work productFails to contribute meaningfully to group work productContribution to group work product is occasionally helpfulIndividual work consistently supports group effortIndividual work plays a critical role in group work product
Demonstrates leadership and teamwork skillsDoes not communicate wellSometimes participates in supporting group efforts and activitiesOften takes initiative to support group efforts and activitiesAlways takes initiative, supports group efforts and encourages group members

Rubric: one per student

Assessment method: direct

Assessment instruments: team projects


Outcome 6:

Apply computer science theory and software development fundamentals to produce computing-based solutions.

Levels of Performance
IndicatorsUnsatisfactoryDevelopingSatisfactoryExemplary
Working knowledge of programming languages and software development fundamentalsStudent's command of even a single programming language is unevenStudent can function within a single programming language, but often fails to develop maintainable, abstract codeStudent is able to function in several programming paradigms, and usually develops maintainable, abstract codeStudent selects appropriate programming languages and paradigms for the task at hand, and always produces maintainable, abstract code
Knowledge of fundamental data structures and algorithmsStudent does not understand fundamental data structures and algorithmsStudent struggles at translating fundamental data structures and algorithms into appropriate codeStudent usually produces workable implementations of fundamental data structures and algorithmsStudent implements elegant implementations of fundamental data structures and algorithms
Knowledge of asymptotic notions and notations, and best- , expected- and worst-case analysis of algorithmsStudent is not able to employ asymptotic analysisStudent understands the uses of asymptotic analysis, but rarely performs it correctlyStudent usually performs asymptotic analysis appropriately and correctlyStudent always performs asymptotic analysis appropriately and correctly

Rubric: one per student

Assessment method: direct

Assessment instruments: Select exam questions, homework, programming assignments, and quizzes