Computer Science Data Science - B.S. apping of CSE Courses to Student Outcomes Course CSC 1000 CSC 1100 CSC 1110 CSC 2100 CSC 2800 CSC 3100 CSC 3200 CSC 3220 CSC 3520 CSC 3600 CSC 3610 CEN 3700 CEN 3710 CSC 3850 CSC 4100 CSC 4110 CSC 4130 CSC 4140 CSC 4200 CSC 4220 CSC 4400 CSC 4440 CSC 4530 CSC 4500 CSC 4550 CSC 4600 CSC 4610 CSC 4620 CSC 4660 CSC 4670 Outcomes SOa SOb SOc SOd SOe SOf SOg SOh SOi SOj SOk SOl,,
CSC 4680 CEN 4700 CEN 4710 CSC 4720 CSC 4800 CSC 4900 CSC 4910 ath 1950 ath 1960 ath 2030 ath 2200 ath 2450 ath 2550 ath 3100 ath 4130 ath 4140 Biol 1110 Biol 1120 Chem 1110 Chem 1120 Econ 1010 Econ 1020,, ACC 2000 ACC 2010 GT 3150 KT 3130 FN 3000 FN 3020 Student Outcome A B C D E F G H Description of the Student Outcome Ability to apply knowledge of computing and mathematics appropriate to the discipline Ability to analyze a problem, and identify and define the computing requirements appropriate to its solution Ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs Ability to function effectively on teams to accomplish a common goal Understand professional, ethical, legal, security and social issues and responsibilities Ability to communicate effectively with a range of audiences Ability to analyze the local and global impact of computing on individuals, organizations, and society ecognize the need for and be able to engage in continuing professional development Ability to use current techniques, skills, and tools necessary for computing practice
J K L 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 An ability to apply design and development principles in the construction of software systems of varying complexity An ability to use and apply current information security concepts and practices (for only the nformation Security and Assurance (SA) concentration) ubric: ntroduced einforced racticed astered Computer Science and Engineering (CSE) rogram (Student) Outcomes rogram (Student) Outcomes and rogram (Student) Outcome Competencies To carefully and effectively assess our program, we developed a set of competencies for each outcome. The following is a listing of those competencies by outcome. Listed in parenthesis are the courses where these competencies will be assessed. These competencies may be further delineated to show how the competency will be addressed. Student Outcome A: An ability to apply knowledge of computing and mathematics appropriate to the discipline. Assessment Competencies: 1. Demonstrate knowledge of and use basic data types a. - students will able to create, store, retrieve, and process data in an array.(1110, 4530) 2. Demonstrate knowledge of and use program constructs: selection, switch, if/then, if/then/else,
repetition, loops and do-while (1100). 3. Demonstrate knowledge of and use Object Oriented programming concepts, such as classes, to design programming solutions for problems a. - students will able to create their own classes and methods. (1100, 1110); b. - students will be able to use the concepts of Object Oriented rogramming (1100) 4. Demonstrate knowledge of Object Oriented programming techniques, such as, inheritance and generic classes and templates (1110). 5. Demonstrate knowledge of and use recursion to develop programming solutions for problems a. - critical knowledge and understanding - ability to analyze and solve problems, (FT, 1110) 6. Demonstrate knowledge of and use algorithms, such as those for sorting and searching, and analyze their performance (1110, 4530) a. students will be able to use algorithms to solve problems (FT) Student Outcome B: An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution. Assessment Competencies: 1. Demonstrate knowledge and use of analysis techniques for software problems a. - ability to create a UL Activity Diagram ( 2100) b. - ability to create a UL Class Diagram ( 2100) c. - ability to create a GU Diagram ( 2100, 4530) d. - ability to identify and describe SDLC activities and phases ( 2100) 2. Ability to produce a requirements specification document for a complex software product (3200, 4900, 4530). a. Students will be able to identify and describe the major activities that constitute requirements engineering. b. Students will be able to describe and perform several different tasks related to requirements elicitation. c. Students will work as a team to develop User Stories that identify the requirements of an actual Extreme rogramming project. d. Students will work as a team to develop a Software equirements Specification document for an actual Team Software rocess project. 3. Ability to design an object-oriented solution to a software problem a. - ability to write a test harness for a Class mplementations ( 2100) b. - students will analyze and implement searching algorithms. (3200) c. - students will identify stacks and the operations that occur with stacks (3200) d. - students will identify graphs and the operations that occur with graphs (3200) e. - students will properly utilize recursive algorithms and will be able to develop new recursion routines. (3200 ) f. - students will understand and perform searching and sorting algorithms such as divide
and conquer, and tree searching. (3200 ) 4. Ability to create UL diagrams, including class, object, use case, interaction, and state machines (2100) 5. Ability to identify various testing techniques and strategies and develop test cases for black box testing, white-box testing, and boundary testing a. - students will be able to describe the role of scenarios in requirements specification (2100) b. - students will be able to discuss testing versus inspections for quality assurance. (2100) Student Outcome C: An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired standards. 1. Ability to produce a specification document for a software product (2100, 4900). 2. Ability to design an object-oriented solution to a software problem (2100, 4900). 3. Ability to create UL diagrams, including class, object, use case, interaction, and state machines (2100, 4900). 4. Ability to identify various testing techniques and strategies and develop test cases for black box testing, white-box testing, and boundary testing. (2100, 4900). Student Outcome D: An ability to function effectively on teams to accomplish a common goal. 1. Ability to work as a team to produce a software product (4900) 2. Ability to work as a team to produce systems documentation, make a formal system demonstration, and to produce a post-mortem report of the project a. - student will work as a team to produce test plans and systems documentation (4900) b. - students will work as a team to make a formal system demonstration and produce a peer-rating report for each member of their team. (4900) c. - students will assume an assigned role in an SDLC team responsible for analyzing, designing, implementing, testing, and deploying a significant software product. (4900) d. - students will work as a team to produce a project plan and System equirements Specification (SS) (4900) e. - students will work as a team to produce a System Design Specification (SDS) and source code (4900) Student Outcome E: An understanding of professional ethical, legal, security and social issues and responsibilities.
1. Differentiate between ethical theories (3610) 2. dentify implicit assumptions and biases in arguments (3610) 3. Understand social issues such as the Digital Divide and gender (3610) 4. Understand issues surrounding intellectual property (3610) 5. Become aware of and understand the AC and EEE codes of conduct (3610) 6. Understand security issues in operating systems (2800) Student Outcome F: An ability to communicate effectively with a range of audiences. Oral: 1. The presentation is well organized with a clear purpose and organization (3600). 2. The delivery of the presentation is effective and professional (3600, 3610). Written: 3. The paper is well organized with a stated purpose and clear organization of ideas (3600). 4. The content is detailed and accurate and follows standard English usage (3600, 3610). 5. eferences are correctly used and cited in a standard formating style. (3610, 3600). 6. The paper demonstrates original thought (3600, 3610). Student Outcome G: An ability to analyze the local and global impact of computing on individuals, organizations and society 1. Demonstrates an awareness and understanding of controversial issues relating to computing and society (3610) 2. dentify implicit assumptions and biases in arguments (3610) 3. Understand social issues of the nternet such as the Digital Divide and gender gap (3610) 4. Understand issues surrounding intellectual property (3610). Student Outcome H: ecognition of the need for and an ability to engage in continuing professional development. 1. Uses new languages and technologies (4900) 2. Attends local and regional computer society (EEE, AC) and other professional meetings 3. Uses research from computer journals in papers and presentations (4900). Student Outcome : An ability to use current techniques, skills, and tools necessary for computing practice.
1. Demonstrate knowledge and use of various programming tools and skills like objects, classes, data types, iterations and program debugging and testing including use of SDE a. - critical knowledge and understanding - ability to analyze and solve problems, (FT, 4530) b. - understand relationships and interpret materials (FT, 4530) c. - identify and describe the software development methodologies used (4900) 2. Students will obtain some experience on compiling and executing C, C++, and Java programs (2800) 3. Students will obtain substantial experience working in a command-line Linux/UNX environment (2800) 4. Demonstrate knowledge of and use of debuggers, compilers, schedulers, linkers in various operating systems (2800). 5. Demonstrate knowledge of and use software project design skills like coding, documentation and related skills a. - students will assume an assigned role in an SDLC team responsible for analyzing, designing, implementing, testing, and deploying a significant software product. (4910) b. - students will work as a team to produce a project plan and System equirements Specification (SS) (4910) c. - students will work as a team to produce a System Design Specification (SDS) and source code (4910) d. - student will work as a team to produce test plans and systems documentation (4910) e. - students will work as a team to make a formal system demonstration and produce a peer-rating report for each member of their team. (4910) f. students will identify and describe the good and bad aspects of their experience (4910, 4530) Student Outcome J: 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 1. Ability to design a combinational logic circuit to realize a given function given constraints on gate type, fan-in, and/or delay, etc (3700). 2. Ability to design a sequential logic circuit to realize a given state diagram given constraints on flipflop type, etc (3700) 3. Ability to construct recursive solutions(3200) 4. Ability to compare and evaluate standard computing algorithms, data structures and other computing theory techniques in the design, implementation and performance of a software product (3200, 4900) a. Demonstrate knowledge of common searching and sorting algorithms for large complex problems (3200) b. Demonstrate knowledge of understanding of cost and other benefits of the computing techniques chosen (3200, 4900).
5. Ability to demonstrate knowledge of classical data structures (trees, heaps, linked lists, graphs) and algorithms used to process them (3200) 6. Ability to evaluate CU performance given clock frequency and a mix of several instruction types (4700). a. Students will be able to perform CU erformance evaluations. 7. Ability to evaluate pipeline throughput in machines with and without branch prediction (4700) 8. Ability to determine key instruction set design parameters for a notional computer architecture (4700) 9. Ability to evaluate various network topologies that may be used in parallel computer systems (4700) 10. Students will use the appropriate standard template library for the solution to the problem (3200, 4900) Outcome K: An ability to apply design and development principles in the construction of software systems of varying complexity. 1. Demonstrate knowledge of the SDLC and associated activities (4900). 2. Develop use case diagrams and scenarios that address a given software problem. (4900) 3. Develop object-oriented solutions to a software problem a. students will identify and describe the software development methodologies used (4900) b. - students will assume an assigned role in an SDLC team responsible for analyzing, designing, implementing, testing, and deploying a significant software product. (4910) 4. Develop test cases for a solution to a software problem using traditional testing techniques. a. - students will produce a project plan and System equirements Specification (SS) (4910) b. - students will produce a System Design Specification (SDS) and source code (4910) c. - student will produce a test plans and systems documentation (4910) d. - students will produce a formal system demonstration and produce a peer-rating report for each member of their team. (4910) Student Outcome L: (SA) Graduates of the nformation Security and Assurance program should have the ability to use and apply current information security concepts and best practices. Student 1. Ability to know most basic information security services (3600) 2. Ability to know most basic information security standards (3600) 3. Ability to know most sources of security threats (3600). 4. Ability to manage information and system security (3600) 5. Ability to know the most frequent sources of system security (36000 6. Ability to assess system vulnerabilities (3600)
7. Ability to understand the changing cryptographic systems scene (4600) 8. Ability to know major cyber crimes (3600). 9. Ability to assess, analyze and protect computer systems (3600) 10. Ability to know and be able to work with basic security protocols a. - Students will be able to understand various options of biometrics including fingerprint, face, voice, iris, and DNA. (4600) b. - Students will have the ability to implement encryption algorithm (4600) c. - Students will have the ability to analyze vulnerability of certain ciphers such as short message attach to SA. (4600)