Skip to Main Content

CS203

Download as PDF

Human-AI Collaborative Software Development

SCIS Sch of Computing & Info Sys

Course (UG/PG)

Undergraduate

Offering Unit/Department

Course Description

This course introduces students to human-AI collaboration in software development through the design and implementation of modern web-based systems. Students explore core software engineering topics including software design issues, agile development processes, and project management. In team‑based projects, students gain hands‑on experience combining human expertise with AI tools for requirements analysis, coding, testing, and deployment.

Course Learning Outcomes

1. Demonstrate an understanding of requirement specification:

a. Explain the concepts of a requirement

b. Describe software requirements with user stories

c. Estimate user stories

2. Demonstrate an understanding of agile methodologies

a. Use an iterative, incremental development approach in the group project

b. Practice pair programming and code review during project time

c. Explain the key differences in concepts such as adaptive vs. predictive, agile vs. waterfall, code vs. documentation

3. Demonstrate an understanding of app development and deployment

a. Develop a HTTP based application

b. Implement code for business logic and HTTP request handling

c. Implement basic interaction with a persistent database

d. Design and implement basic application security

e. Deploy the services into production

4. Demonstrate an understanding of software testing

a. Explain testing fundamentals: unit testing, integration testing, usability testing, etc.

b. Design unit tests and integration tests

c. Implement automatic testing for the group project

d. Understand and practice continuous integration

e. Demonstrate an understanding of secure and defensive programming practices

6. Use a distributed version control system such as git to facilitate group collaboration

Discipline-Specific Competencies

Solution Architecture, Systems Design, Agile Software Development, Applications Development, Infrastructure Deployment

SMU Graduate Learning Outcomes

Disciplinary Knowledge, Interdisciplinary Knowledge, Critical thinking & problem solving, Self-directed learning, Resilience

Grading Basis

GRD - Graded

Course Units

1