C S 204

Download as PDF

Software Engineering Lab 3

Computer ScienceCollege of Computational, Mathematical, & Physical Sciences

Course Description

The third 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 CS 203 and focus on tools and techniques for cloud development and Agile programming.

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

Note

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

Title

Virtual Machines

Learning Outcome

Set up virtual maSet up virtual machines and application containers to run applications for different operating systems on a single host, and know the difference between them. This mastery of varied environments is intellectually enlarging, as it allows students to navigate and understand the diverse architectural truths of modern computing.chines and application containers to run applications for different operating systems on a single host.

Title

Cloud Computing

Learning Outcome

Provision a simple web server on AWS and gain experience with its services. Students will recognize that the ability to scale and deploy resources globally is a powerful tool for service and lifelong learning, enabling them to address the needs of a global community.

Title

Deployment

Learning Outcome

Use a tool to build a simple deployment pipeline. Learning to automate the delivery of software is character building, as it requires the discipline to create reliable, repeatable processes that ensure the integrity of the final product.

Title

Dependency Injection

Learning Outcome

Understand the benefits of dependency injection and gain familiarity with a framework that utilizes it. This practice of decoupling components is intellectually enlarging, teaching students to design systems with a level of flexibility and order that reflects deep logical principles.

Title

Object-relational Mapping

Learning Outcome

Gain experience with an object-relational mapping framework. Successfully bridging the gap between disparate data models is spiritually strengthening, as it fosters the persistence and clarity of thought needed to harmonize complex and seemingly conflicting systems.