Radford University
Department of Information Technology
Student Outcome J-CS

(J-CS)An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices;

Level 5
The student:
  1. independently identifies and uses mathematics to model systems and analyze their time and space complexity.
  2. Chooses languages, algorithms, and data structures that provide the time and space performance needed for a given task.
  3. identifies and uses library functions that provide needed performance.
  4. is very knowledgeable of consequences of choices of language, algorithms, and data structures.
  5. designs systems that meet all requirements.
  6. chooses a language that is appropriate for the domain, and that has a good balance of flexibility, efficiency, and reliability.

Level 3
The student:
  1. with guidance can identify and use mathematics to model systems and analyze their time and space complexity .
  2. can choose languages, algorithms, and data structures that needed for a given task but displays little knowledge of their time and space performance.
  3. can identify and use library functions to solve a task, but has little understanding of performance tradeoffs.
  4. is somewhat knowledgeable of consequences of choices of language, algorithms, and data structures.
  5. designs systems that meet some but not all requirements.
  6. can characterize and identify the flexibility, efficiency, and reliability of a language, but many not select the correct language for an application.

Level 1
The student:
  1. demonstrates little understanding of how to identify and use mathematics to model systems and analyze their time and space complexity.
  2. demonstrates little awareness of how to choose languages, algorithms, and data structures that needed for a given task.
  3. demonstrates little awareness of how to identify and use library functions to solve a task.
  4. demonstrates little understanding of consequences of choices of language, algorithms, and data structures.
  5. designs systems that meet few requirements.
  6. demonstrates little knowledge of the flexibility, efficiency, and reliability of various languages.