C S 202

Download as PDF

Software Engineering Lab 1

Computer ScienceCollege of Computational, Mathematical, & Physical Sciences

Course Description

The first 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. In addition to hands-on lab experiences, this course contains lecture and assigned reading content that will provide an understanding of what a software engineering career is and what roles and responsibilities are available to software engineers.

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 203 and 204.

Note

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

Title

Definition and roles

Learning Outcome

Understand the scope of software engineering and the various roles within a professional career. This overview is intellectually enlarging, as students learn how diverse technical talents contribute to a unified, purposeful mission.

Title

UI Design and Modeling

Learning Outcome

Use modeling tools to create wireframe, screenflow, and UML diagrams (Class, Sequence, Activity). Mastering these visual languages is intellectually enlarging, allowing students to conceptualize and communicate complex truths with clarity.

Title

Code Reviews

Learning Outcome

Understand the utility of code reviews and engage in the evaluation of peer work. This collaborative process is character building, as it requires students to practice both humility in receiving feedback and kindness in offering it.

Title

Documentation and Coding Style

Learning Outcome

Understand the importance of software documentation and use tools to enforce consistent coding styles. Maintaining these standards is a form of stewardship and character building, reflecting a commitment to order, precision, and the needs of future developers.

Title

Source Control

Learning Outcome

Gain experience using source control tools to manage project history. This practice teaches the value of lifelong learning, as students learn to navigate the evolution of a project and preserve work for the benefit of those who follow.

Title

Debugging

Learning Outcome

Develop the ability to debug software from the command line and within an IDE. The persistence required to identify and resolve errors is spiritually strengthening, as students learn that through patience and trial, they can overcome confusion and find correct solutions.