Skip to main content

M.S. in Computer Science Assessment

The M.S. program in Computer Science has three Student Learning Outcomes:

  1. Students can frame a real-world problem such that it can be addressed computationally.
  2. Students can evaluate multiple computational approaches to a problem and choose the most effective one. The different approaches may involve different algorithms and/or different software tools.
  3. Students can apply reasoning and technical skills to solve a computational problem with minimal guidance.

In the middle or toward the end of your penultimate semester, prior to submitting​ the advisory committee for your program of study (i.e., the GS-2), you must submit three artifacts from your coursework, one for each of the Student Learning Outcomes. You must also answer several self-reflection questions for each artifact.

A review of the submissions will be based on each artifact’s fit with a Student Learning Outcome and the level of reflection demonstrated in the self-reflection. The acceptability of a submission is not based on the instructor’s previous scoring of the artifact nor on your relative scoring of attainment on the self-assessment. For example, a low level of attainment is acceptable if:

  • the artifact fits the Student Learning Outcome, and
  • your self-reflection demonstrates an understanding of approaches to increase attainment for similar tasks you will face in the future.

Prepare your submissions as either a single pdf file or as one (or more) web pages. Copy your submissions to a unique subdirectory on the School of Computing Linux servers that has been created for you. Your subdirectory will already exist; you do not have to create it. The subdirectory will be located within /group/gac/portfolio and will be identified by a subdirectory named with the Clemson code for your first semester in the program and by a subdirectory named with your userid. The Clemson code for a semester is the two-digit year and then 01 for January entry (i.e., spring), 05 for May entry (i.e., summer), and 08 for August entry (i.e., fall). For example, 1808 is the Clemson code for Fall 2018. Please note that only those three months are allowed. Thus, /group/gac/portfolio/1808/abc is the name of the unique subdirectory created for the student with userid “abc” who entered the MS in Computer Science program in Fall 2018.

If you have difficulty in accessing your subdirectory, please contact the MS Program Coordinator.

After copying your files, use the command “chmod g+r *” to make these files accessible to faculty reviewers. You can check that the files are accessible by using the “ls –l” command. It should show “-rw-r-----” as the permissions for each file in your subdirectory.

​Please note that delays in submitting and obtaining approval of your submission can lead to financial penalties by delaying the approval of your GS2. Please submit your MS portfolio well before the GS2 deadline for the term in which you wish to graduate.

Portfolio Contents

Four components are required in the portfolio submission. Please state the course for which the artifact was prepared. Please note that an MS thesis can also serve as an artifact.

  1. An artifact, typically a written report prepared as a course assignment, that you think best demonstrates your ability to frame a real-world problem such that it can be addressed computationally.
  2. An artifact, typically a written report prepared as a course assignment, that you think best demonstrates your ability to evaluate multiple computational approaches to a problem.
  3. An artifact, typically a program submitted as the solution to a programming assignment, that you think best demonstrates your ability to apply reasoning and technical skills to solve a computational problem with minimal guidance. For this artifact, it is acceptable to submit source code in a separate folder, as long as the folder is referenced in the self-assessment.
  4. A self-assessment reflection about the artifacts. The required elements and format of the self-assessment are given below. A typical reflection across all three artifacts is 2-3 pages in total.

Self-Assessment Reflection on Artifact 1 – Framing a real-world problem such that it can be addressed computationally.

1.1. Identify the course from which the artifact was chosen.

1.2. Identify whether you took the course in-person (i.e., traditional delivery), via synchronous delivery from another campus, or as an on-line course (i.e., asynchronous delivery).

1.3. Describe the problem (3-5 sentences). You can include the assignment as distributed by the instructor as an appendix.

1.4. List the grade you received for this assignment. This should be the numeric grade for the assignment, not the letter grade for the course.

1.5. Identify the two most important concepts or skills involved in the creation of the artifact and classify the level at which the concepts or skills were used.

Choose One of Three Levels Concept or Skill
Mastered Reinforced Introduced
       
       

Concepts will depend on the artifact chosen. Skills you could select include, but are not limited to:

  • Abstract and formal reasoning
  • Creativity
  • Debugging
  • Problem analysis
  • Problem solving
  • Quantitative and/or statistical ability

Regarding the levels:

  • “Mastered” means that you had previous knowledge of the concept or previous experience with the skill and that you applied the concept or skill to the artifact with high levels of independence, expertise, and sophistication.
  • “Reinforced” means that you had previous knowledge or experience and that you strengthened your level of proficiency in applying the concept or skill to the artifact. However, you did not demonstrate consistently high levels of independence, expertise, and sophistication as you worked on the artifact.
  • “Introduced” means that this was a concept or skill that was new to you.

1.6. Self-rank the artifact into one of these levels of attainment:

    Proficient: Clearly frames and addresses the computational problem(s). Demonstrates strong knowledge of the relevant context.
  Competent: Sufficiently frames and addresses the computational problems(s). Demonstrates substantial knowledge of the relevant context.
  Developing: Begins to frame and address the computational problem(s). Demonstrates some knowledge of the relevant context.
  Novice: Demonstrates little or no ability to frame and address the computational problem. Demonstrates little or no knowledge of the relevant context.

1.7. Answer these questions (1-6 sentences each):

  1. Does this artifact represent work that is more advanced than the work you did as part of an undergraduate program? If so, describe the way(s) in which it is more advanced.
  2. What aspect of the artifact do you consider to be the most successful and why?
  3. When you encounter similar tasks in the future, what will you do differently to better frame real-world problems so that they can be addressed computationally?

Self-Assessment Reflection on Artifact 2 – Evaluating multiple computational approaches to a problem.

2.1. Identify the course from which the artifact was chosen.

2.2. Identify whether you took the course in-person (i.e., traditional delivery), via synchronous delivery from another campus, or as an on-line course (i.e., asynchronous delivery).

2.3. Describe the problem and explicitly identify the multiple approaches that you compared (3-5 sentences). You can include the assignment as distributed by the instructor as an appendix. Please note that the failure to explicitly identify at least two distinct approaches that were evaluated is the number one reason that students are asked to revise and resubmit their MS portfolios.

2.4. List the grade you received for this assignment. This should be the numeric grade for the assignment, not the letter grade for the course.

2.5. Identify the two most important concepts or skills involved in the creation of the artifact and classify the level at which the concepts or skills were used.

Choose One of Three Levels Concept or Skill
Mastered Reinforced Introduced
       
       

(Please see the instructions for question 1.2 above.)

2.6. Self-rank the artifact into one of these levels of attainment:

   Proficient: Identifies and analyzes at least three approaches that apply within the specific context in a deep and thorough manner. Demonstrates deep comprehension of the problem and strong knowledge of algorithm analysis and performance tradeoffs. Includes security, privacy, and/or ethical implications in the analysis where relevant.
  Competent: Identifies and analyzes at least two approaches that apply within the specific context in a sufficient manner. Demonstrates comprehension of the problem and substantial knowledge of algorithm analysis and performance tradeoffs. To the extent that they are relevant, recognizes that security, privacy, and/or ethical implications exist, but does not analyze these implications.
  Developing: Identifies and briefly analyzes at least one approach that applies within the specific context. Demonstrates some comprehension of the problem and partial knowledge of algorithm analysis and performance tradeoffs. Does not address security, privacy, and ethical implications where relevant.
  Novice: Identifies approaches that do not apply to the specific context. Demonstrates little or no comprehension of the problem and little to no knowledge of algorithm analysis and performance tradeoffs. Does not address security, privacy, and ethical implications where relevant.

2.7. Answer these questions (1-6 sentences each):

  1. Does this artifact represent work that is more advanced than the work you did as part of an undergraduate program? If so, describe the way(s) in which it is more advanced.
  2. What aspect of the artifact do you consider to be the most successful and why?
  3. When you encounter similar tasks in the future, what will you do differently to better evaluate different computational approaches?

Self-Assessment Reflection on Artifact 3 – Applying reasoning and technical skills to solve a computational problem.

3.1. Identify the course from which the artifact was chosen.

3.2. Identify whether you took the course in-person (i.e., traditional delivery), via synchronous delivery from another campus, or as an on-line course (i.e., asynchronous delivery).

3.3. Describe the problem (3-5 sentences). You can include the assignment as distributed by the instructor as an appendix.

3.4. List the grade you received for this assignment. This should be the numeric grade for the assignment, not the letter grade for the course.

3.5. Classify the amount of guidance you needed to complete the task represented by the artifact:

    Once I understood the task, I completed the task without help. I also developed my own set of three or more test cases to assist in testing and debugging my solution to the task.
  Once I understood the task, I completed the task without help, but I either did not generate my own test cases or generated at most one or two.
  I needed only a small amount of guidance from the instructor and/or an outside source (e.g., web pages like Stack Overflow) to understand the task and to complete the task.
  I needed a significant amount of guidance from the instructor and/or an outside source (e.g., web pages like Stack Overflow) to complete the task.
  I relied almost entirely on the instructor and/or an outside source (e.g., web pages like Stack Overflow) for the solution.

3.6. Self-rank the artifact into one of these levels of attainment:

    Proficient: Develops a solution that is correct and that scales well with increasing input size and/or makes efficient use of hardware resources. Demonstrates substantial knowledge of software design, development, and testing techniques.
  Competent: Develops a solution that is correct. Demonstrates sufficient knowledge of software design, development, and testing techniques.
  Developing: Develops a solution that is partially correct. Demonstrates some knowledge of software design, development, and testing techniques.
  Novice: Develops a solution that is incorrect. Demonstrates little to no knowledge of software design, development, and testing techniques.

3.7. Answer these questions (1-6 sentences each):

  1. Does this artifact represent work that is more advanced than the work you did as part of an undergraduate program? If so, describe the way(s) in which it is more advanced.
  2. What aspect of the artifact do you consider to be the most successful and why?
  3. When you encounter similar tasks in the future, what will you do differently to better solve computational problems?