Radford University
Department of Information Technology
Student Outcome C

(C) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs;

Level 5
The student:
  1. almost always selects and uses appropriate design methodology.
  2. crafts designs that make good use of encapsulation and information hiding.
  3. almost always selects appropriate programming language paradigm.
  4. crafts designs and implementations that meet all or almost all of desired needs, including reliability and efficiency needs.
  5. produces documentation that is complete and thorough.
  6. identifies almost all strengths and weaknesses of a system, process, component or program.
  7. produces a program organization that is clear and well structured.
  8. decomposes programs in a way that produces high cohesion and low coupling.
  9. independently recognizes and applies design patterns.
  10. writes programs that almost always use best language feature for each design need.
  11. makes effective use of a broad range of features of the programming environment.
  12. demonstrates language mastery.

Level 3
The student:
  1. sometimes selects and uses appropriate design methodology.
  2. crafts designs where encapsulation and information hiding could be improved.
  3. usually selects appropriate programming language paradigm.
  4. crafts designs and implementations that meet much of the desired need.
  5. produces documentation that is mostly complete and thorough.
  6. identifies some but not all strengths and weaknesses of a system, process, component or program.
  7. produces a program organization that is somewhat clear and well structured, but where there is room for improvement.
  8. decomposes programs in a way that produces high cohesion and low coupling in most cases, but there is room for improvement.
  9. can apply design patterns when directed to do so.
  10. writes programs that only sometimes uses best language feature for design need.
  11. makes effective use of many features of a programming environment, but does not use some important features.
  12. demonstrates somewhat incomplete mastery of a language.

Level 1
The student:
  1. demonstrates little knowledge of design methodologies.
  2. crafts designs that make little use of encapsulation and information hiding.
  3. displays little knowledge of programming language paradigm.
  4. crafts designs and implementations that do not reflect desired needs .
  5. produces documentation that is mostly incomplete.
  6. displays little awareness of the strengths and weaknesses of a system, process, component or program.
  7. writes programs that have somewhat obscure organization and are poorly structured.
  8. decomposes programs with little attention to cohesion and coupling.
  9. displays little understanding of design patterns.
  10. appears to be unaware of many language features.
  11. uses only a few features of a programming environment.
  12. struggles to use language.