The School of Electrical Engineering and Computer Science

ABET Program Coverage A

ClassConcept, Principle, or Skill
CptS111

All of the course deliverables serve as measures of this outcome; however, perhaps the most indicative measure is project milestone 5, in which students programmed an interactive ""treasure hunt"" game. In that project, students were required to apply all of the programming constructs and techniques learned in the course.

CptS121

Assignment 2: Design algorithmic solution to different kinds of problems, involving arrays and strings;
Assignment 3: Design algorithmic solutions to problems and determine order of magnitude;
Assignment 4: Apply C operations and operators to a basic equation evaluation problem;
Assignment 5: Introduction to functions in C;
Assignment 6: Build the ctype library;
Assignment 7: File processing and error correction in C;
Assignment 8: Building battleship game and using structs and pointers;
Assignment 9: Build the string library

CptS122

Each topic and each assignment extends the basic understanding of programming and software develop. Students add a significant number of tools and concepts to their repertoire Each exam evaluates parts of skills.
Exam 1. basic memory allocation and simple data structures.
Exam 2 ADTs and simple entity classes, Value ADT's and method overloading.
Exam 3 Container ADTs and inheritance and generic data containers and algorithms..
Exam 4 polymorphism and exception handling.

CptS223

Most students were ultimately able to understand new concepts in object-oriented programming and data structures and use their new knowledge to write programs and answer questions.

CptS224

Assignment 1: Describe and apply basic UNIX commands;
Assignment 2: Explore the UNIX filesystem;
Assignment 3: Create "Connect Four" game using multiple files and apply "make" to the files;
Assignment 4: Applying and understanding shell metacharacters;
Assignment 5: Apply regular expressions and SED;
Assignment 6: Apply AWK;
Assignment 7: Write a Bourne Shell Program that imitates wc;
Assignment 8: Write a Perl script;
Assignment 9: Write QT program.

CptS251
CptS260

This course contributes to students' knowledge of computing. It stresses acquisition of knowledge reinforced through application of the knowledge.

CptS317

CptS 317 is a course on theory of computation with standard topics listed and covered in the course. Weekly home works and the three exams test the students on these topics (Copies of these instruments are provided in the course packet). Students demonstrate the knowledge of this theory and apply it in these evaluation instruments.

CptS322

The development of the SRS including feature descriptions, use cases and models, CRC exercises, DFD and ERD modeling. State Models and Sequence Diagrams.
Focus of the oral presentation.
Sampled on the exams

CptS355

Students perform better on the programming-related tasks than on mathematics-related tasks; for example weakest-precondition reasoning is a struggle for many. This semester's class did somewhat better on this than past classes (Midterm 2, Q4). Recursive thinking is still a challenge for most at the end of the course (but they are much better at it than when they started).

CptS360

Students learned the detailed steps of program development, from source code to executable, and the execution environment, including global/local, static/automatic variables, parameter passing in function calls, tack usage and dynamic memory management, etc. Most students do not understand these issues well before this class. In lab #4 they implemented a command interpreter, similar to the UNIX sh, which executes program images as processes. They learned the various levels of file operations, from hardware level to command scripts. In particular, they learned the difference between system calls and library I/O functions, and how to re-direct I/O by manipulating file descriptors. The class project is to design and implement a complete EXT2 file system that is compatible with the Linux operating system. Most students completed level-2 of the project, which supports read/write operations of files. After the class, they seem to have acquired a thorough understanding of file systems. In addition, they also learned server-client programming using TCP to implement remote file operations. A recurring "math" problem in systems programming is to convert linear counting to block counting, e.g. linear sectors to (C,H,S) form of hard disks, inode number and inode in disk blocks, bit position in a bitmap, etc. At first, most students had difficulty with these. In the end, all of them mastered my "mailman's algorithm" and can do the conversions with ease.

CptS401
CptS402
CptS421

Students are expected to demonstrate a strong understanding of computer science and mathematics as it applies to the problems in their projects. Details depend on the project, but such topics as user interface design, networking, embedded system development, and real-time typically arise.

CptS422

Students overall performed very well on assignments and exams. The following are quantitative measures for each assignment and exam:

HW 1 - average: 95%;
HW 2 - average 96%;
HW 3 - average: 98%;
HW 4 - average: 92%;
HW 5 - average: 98%;
HW 6 - average: 93%;
HW 7 - average: 85%.
Exam 1 - average: 87%;
Exam 2 - average: 85%;
Final Exam - average: 81%.
Term paper - average: 86%.

Note that the average on exams and homeworks were in the B range or higher.

CptS423

All members of teams were able to demonstrate a strong understanding of computer science and mathematics as it applied to the problems in the projects they were working on. Students demonstrated mastery of interface design, networking, embedded system development and were able to apply knowledge and previous experience to new and challenging problems.
The Ugi group developed a new "window" application development environment that let the user design a simple application, like a calculator application, and then build that application for a Windows PC or a Linux machine automatically. They were able to utilize the appropriate computing and graphics tools and concepts to build a very functional environment.
The Boeing wireless network telemetry group developed a complete multihop wireless mess network system to transfer sensor and video data. The system required the application of real time embedded os development, image compression techniques, and adhoc network development.

CptS425
CptS427
CptS430

Students learn numerical methods and their application to real-life problems. They also learn the importance of analyzing or testing for consistency and stability.

CptS434

Course projects require students to apply knowledge of artificial neural networks, statistics, and mathematics, using their programming language of choice, in solving problems.

CptS440

When we cover search techniques in this class, students apply knowledge of computing and mathematics to design search techniques that trade off competing computational goals such as memory usage, computational run time, and quality of results. Run time and memory usage are also analyzed for two-player games and for machine learning algorithms. Students implement a subset of these algorithms for homework assignments and must be able to reason about these issues to solve problems in the class exams.

CptS442
CptS443

A capstone user interface design project with five deliverables (proposal, design document, low fidelity prototype, usability study report, and final presentation) is completed in student teams of two to four.

CptS446

Students are introduced to basic principles of animation and complete several projects that illustrate the use of these principles.

CptS450

This outcome is a requirement for every successful student in the class, which I explicitly mentioned at the beginning of the course. For instance, let us look at the final exam which is comprehensive. Problem 1 tests a student's ability to use mathematics in algorithm's complexity analysis. 12 students (out of 14 total) solved the problem with almost perfect score (8/10). In fact, one of the focuses of the entire course is about applying mathematical skills and computer science knowledge in algorithm design and analysis. So, the student performances in the final exam is a good indication of whether the outcome is satisfactorily achieved. Indeed, on the final exam, 8 students received 70/85 or better. 11 students received 63/85 or better, and the entire class (14 students) received 43/85 or better. In summary, the outcome is achieved (at least) satisfactorily by all the students, and (close to) excellently by most students.

CptS451

Final exam Section D and E (Design) and Section B and C (Build)

CptS452

Students did well in applying knowledge in high-level forms such as finite state machines and context-free grammars. However, some had difficulties converting them into low-level forms. For example, many of parsing tables built by students in midterm questions 6 and 7 are incomplete although they answered correctly to questions asking to build a grammar or a finite state machine. The same tendency is observed in projects. Most of students implemented the front end of the compiler successfully (projects 1, 2, and 3), while failed to complete the back end (projects 4 and 5) which should deal with low-level representations of a program.
questions 6 and 7 in midterm, where students analyze context-free grammars and build parsing tables based on them.

CptS455
CptS456
CptS460

Students learned to implement a complete operating system. Their first task is to write a booter. Seeing that their own program can boot up a real operating system such as Linux, many students felt a great sense of accomplishment. Then they learned multitasking, process control and process scheduling, which are the kernel functions of an operating system. Their biggest jump is to allow a process to switch between user mode and kernel mode. Then they implemented fork and exec, which allow them to understand how does a system execute programs. The pipe mechanism allows them to have a better understanding of process synchronization. Timer and device driver design allow them to use interrupts and critical regions to avoid race conditions and deadlocks. The last assignment is to implement a user interface for the MTX system, which completes the system design.

CptS464
CptS466

The laboratory experiments and homework assignments matching this evaluation criterion were performed well by students with an estimated success rate of 95 %. There was always assistance from the teaching assistants and the instructor to ensure successful completion of the labs and homework assignments as a result many of those who sought help were successful. The examination problems measuring this criterion were adequately answered by the students. The Problems of the first exam on this outcome received an average score of 90 %. Problems 2 and 4 of the second examination have an average score of 80 % while the problems from the final exam received an average of 95 %.

CptS470
CptS481
CptS483

The design documents for projects 1 and 2 were used to assess this outcome. All students met the expectations for this initial offering of the course.

CptS500
CptS511
CptS516
CptS518
CptS522
CptS524
CptS526
CptS527
CptS530
CptS531
CptS532
CptS533
CptS534
CptS538
CptS541
CptS542
CptS544
CptS548
CptS549
CptS550
CptS551
CptS553
CptS555
CptS556
CptS557
CptS559
CptS560
CptS561
CptS562
CptS564
CptS566
CptS570
CptS572
CptS573
CptS580
CptS595
CptS596
CptS600
CptS700
CptS702
CptS800
Contact us: webmaster@eecs.wsu.edu | Telephone: 509 335 6602 Fax: 509 335 3818 | Accessibility | Copyright | Policies
School of Electrical Engineering and Computer Science, PO BOX 642752, Washington State University, Pullman, WA, 99164-2752 USA