Agent PCIS 2500 / 3990
← Agent P homePublic course preview
CIS 3990 · Fall 2026

Software Development with AI Agents

Open course materials for anyone curious about building software with AI coding agents.

Sign in to Agent P
Weekly syllabus

What we're exploring

Public overview

CIS 2500: Software Development with Agentic Coding Tools

Credit hours: 3 hrs/week, two 90-minute lectures, 15 calendar weeks

Prerequisites: CIS 1200 (Intro Programming), CIS 1210 (Data Structures & Algorithms)

Instructors: Zack Ives, Harry Smith

Course Description

Software development is more than coding: it is designing large, complex systems through decomposition into modular, understandable components with clean specifications, interfaces, and tests. AI coding agents can now generate code at unprecedented speed, which shifts the scarce resource from writing code to specifying, reviewing, and verifying it.

This course treats the software engineer as a team manager of agentic workers — someone who sets direction, reviews output, owns the result, and bears professional responsibility. It proceeds in a problem-driven arc: from understanding the new landscape, through building well-designed systems, to validating correctness, to ensuring performance and safety.

Each semester, we will pick a new open-source project to "inherit" -- students will learn to work with legacy and existing code, using Claude Code (and Penn PARCC resources) to understand, extend, formalize, validate, and improve it.

Weekly labs and open-ended projects build toward a final capstone, presented in lieu of a written final exam.

Course Arc

ModuleWeeksTheme
I. Modern Software Development1What changed; the engineer's new role; terminal and git foundations
II. Managing Agentic Coding Tools2–3JS/TS onboarding; how agents work; directing them safely
III. Building Good Software with AI4–5Architecture; code comprehension; developer documentation
IV. Identifying and Validating Needs6–8Specifications, prototyping, ethics; midterm; PR workflow
V. Tooling for Iteration and Validation9–11Advanced git; testing; CI/CD; observability
VI. Performance, Concurrency, Security, Privacy12–15Hardening and optimizing systems; course synthesis

Week-by-Week Summary

WeekThemeKey Technologies / TechniquesLab
1Modern Software Development · How LLMs WorkEngineer-as-manager framing and the three recurring agentic failure modes · LLM training pipeline (pretraining/SFT/RLHF) and the Swiss Cheese model of capabilityTerminal, git, and CI setup; run Spacebar locally and connect a real chat client
2JS/TS Foundations · Agent Failure Modes and WorkflowA five-axis framework for sizing up a new language fast (execution, typing, concurrency, modules, objects) · Common agent failure modes: hallucinated APIs, recursive errors, coherence lossBuild TypeScript reading fluency; trace a chat message end-to-end; predict-then-verify agent-generated practice problems
3Managing Agentic Coding ToolsContext-engineering failure modes: poisoning, distraction, confusion, clash, injection · CLAUDE.md and Architectural Decision Records as living convention documentsAgent-assisted code comprehension: component map, verified protocol trace, CLAUDE.md, capability-boundary exercise
4Architecture · Version Control for Parallel DevelopmentDecomposability and deep modules with small interfaces · Git internals and git worktree for isolated parallel agent workGit history analysis; layer-level architecture diagram; an ADR
5Code Quality, Documentation, and Technical DebtStructured code review: semantic diffs and risk-based sampling · Safe refactoring patterns (Strangler Fig, Branch by Abstraction)Graded: Spacebar Developer Guide — architecture, module guide, getting-started, feature walkthrough, technical debt
6Specifications: From Intent to InstructionInterface contracts as OpenAPI and JSON Schema · RFC 2119 requirement keywords and ADRsWrite a feature spec as RFC 2119 clauses; add a JSON Schema CI validation check
7Prototyping, User Stories, and EthicsParallel prototyping with git worktree to compare two implementations of one spec · Case studies in specification failure (Mars Climate Orbiter, Boeing 737 MAX)Two competing worktree implementations, compared and written up as an ADR
8Midterm · PR Workflow and ConventionsPRs as merge gates — no merge without green CI · Conventional Commits and CODEOWNERS for legible, audit-worthy historyIssue and PR templates applied to a real Gitea repository
9Advanced Git · Testing FoundationsCurating agent history: rebase vs. merge, squashing, git bisect · Unit/integration/end-to-end tests and test doublesFull branch → delegate → review → squash → PR workflow on a real feature
10Test Quality · CI/CD PipelineProperty-based testing (fast-check) in place of hand-picked examples · Mutation testing as a short diagnostic for weak assertionsTest-coverage audit and property-based tests against a permission invariant
11Docker, Reproducibility, and ObservabilityDocker and immutable, versioned deployment artifacts · Structured logging and the SLI/SLO/SLA vocabularyStructured JSON logging, a Dockerfile with CI smoke test, and a dependency audit
12Agentic Harnesses, MCP, and SafetyRole separation (coder vs. reviewer) and dependency-aware task decomposition · Model Context Protocol (MCP) server designA real Coder/Reviewer agent pair on a pull request, with a reviewer-prompt comparison
13Performance and ConcurrencyAmdahl's Law and percentile-based performance SLOs · Concurrency bug shapes in event-driven systems (lost updates, ordering, idempotency, deadlock)Optional performance clinic: instrument and load-test the message-send critical path
14Security and Privacy, Part 1Threat modeling for agentic workflows: assets, principals, and trust boundaries · Prompt injection and indirect prompt injectionNo separate lab this week (Thanksgiving)
15Security and Privacy, Part 2 · Course SynthesisAuth/permission review and supply-chain dependency vetting · Privacy by design across prompts, logs, and transcriptsCapstone track due; final project presentations during finals week

Assessment

ComponentWeight
Project 1: Testing & Verification18%
Project 2: Feature Extension22%
Capstone Track (MCP server or technical-debt remediation)25%
Lab 5: Spacebar Developer Guide (graded)5%
Weekly labs (×10, AI-assisted grading)15%
Final Presentationspass/fail, required for lab credit
Midterm15%

Final presentations (10 minutes: 7-minute structured talk + 3-minute Q&A) replace a written final exam and require demonstrating genuine understanding of the system built, not just of what an agent produced.