CS 6983: Topics in Computer Science: Forward-Deployed Engineering for AI Solutions

Note

This course should be an elective for MS in CS, AI or DS and will also be co-roomed to accommodate students from the MS in Information Systems, MPS in Analytics and MPS in Applied AI. We may consider extending to appropriate students form the MS in Bioinformatics and MS in Project Management as well.

Course Info

Course Description

Explores modern software engineering by introducing the agile, iterative lifecycle for AI systems. This is the practice of the forward-deployed engineer (FDE), who takes an AI system from requirements through production while embedded with a client team. Students apply standard business case and software engineering practices: company strategy, financial analysis, requirements elicitation, architectural design, version control, automated testing, CI/CD, production monitoring to problems specific to AI systems. Students ideate, elicit and evaluate an AI project business case, design the solution, pick an architecture (retrieval-augmented generation, agentic workflows, fine-tuned models, classical ML), build the data pipeline it depends on, write tests and evals for a probabilistic system, and operate it in production. Requirements and architecture decisions will have to account for real constraints: data governance, cost, performance and security, stakeholder needs, domain-specific requirements. Students work in teams on a semester-long engagement with a partner organization, taking one AI system through the full lifecycle to a deployed, monitored application, and are encouraged to build on experiential projects and software repositories from other courses.

Prerequisites: There are no formal prerequisites, but students must be comfortable reading and writing Python, running code locally, using git/GitHub, working from the command line, and accessing data with SQL and web APIs (e.g., DS 5110 or CS 5610). No prior machine learning theory is required.

Relationship to Existing Courses

AI Policy

AI tools (Claude, Copilot, etc.) are expected for code generation, debugging, documentation, business/strategy research, and client communication drafts. The AI policy is:

This means two things in practice. First, you have to verify the work is actually correct before you submit it. Testing and evals are how you do that verification. No AI-generated content, code or model output counts as production-ready until it passes the same tests, evals, and reviews as any other business or software engineering practice. Second, you have to understand and be able to explain every line and every claim you submit. That means you must be able to walk through your own pull request or client deliverable in a review.

Course Learning Outcomes (CLOs)

At the end of this course, the student will be able to:

Core topics will be covered in depth with assignments; optional topics introduce students to possibilities for their team engagements.

The partner engagement as course infrastructure

The course runs on one semester-long team engagement with a partner organization. Each team carries a single use case through every phase of the lifecycle -- business case, requirements, solution design, a tested and deployed MVP, and a sustain-and-iterate plan -- rather than treating each phase as a standalone assignment. Teams pair students with technical and business strengths. To take part, students need working familiarity with:

Resources

No required textbook. Materials are drawn from hands-on labs, case studies, business literature, and AI delivery lifecycle documentation developed for the course. Pressman, Software Engineering: A Practitioner’s Approach (shared reference with CS 5500) is recommended background for SDLC, design patterns, and testing fundamentals.

Assessment

Assessment is based on the team’s phase deliverables from the partner engagement (business case, requirements, solution design record, tested/deployed MVP, sustain-and-iterate plan), individual exercises, and a final presentation to the partner.

Schedule