C S 203

Download as PDF

Software Engineering Lab 2

Computer ScienceCollege of Computational, Mathematical, & Physical Sciences

Course Description

The second of three experiential learning labs that will provide students with hands-on experience with various tools, technologies, and techniques that software engineers use in practice. The lab experiences in this course build on those learned in CS 202 and focus on tools and techniques for source code testing, automated source code analysis, and source code build and dependency management.

When Taught

Fall and Winter

Min

1

Fixed/Max

1

Fixed

0

Fixed

2

Other Prerequisites

With instructor consent, may be taken concurrently with C S 202 and 204.

Note

C S 202, 203, and 204 are designed to be taken in sequence.

Title

Testing

Learning Outcome

Understand the basic concepts and approaches used by software engineers to test software, and use testing frameworks to write automated unit tests and assess coverage. This commitment to verification is character building, as it requires students to prioritize technical integrity and honesty over convenience.

Title

Analysis

Learning Outcome

Use static analysis, code profiling, and performance tools to identify and correct potential problems and bottlenecks. This rigorous evaluation is intellectually enlarging, teaching students to look deeply into the efficiency and health of their systems.

Title

Refinement and Excellence

Learning Outcome

Apply testing and analysis results to iteratively improve software quality. This process of constant refinement is spiritually strengthening, as students learn the value of persistence and the satisfaction found in striving for professional excellence.