Overview
This course connects software requirements analysis, system architecture design, domain-specific modeling, model transformation, automatic code generation, and formal verification, with large language models and multi-agent systems introduced as intelligent engineering support.
Learning Objectives
- Understand object-oriented software engineering, model-driven development, data-driven methods, formal methods, large language models, and multi-agent systems.
- Complete requirements understanding, requirements representation, system modeling, architecture design, detailed design, and design optimization for complex systems.
- Carry out data-driven analysis, model construction and evolution, automated generation, model verification, and result evaluation.
- Read and critically analyze frontier research in requirements analysis, model-driven engineering, intelligent software engineering, and formal verification.
- Develop awareness of quality ethics, data security, intellectual property, academic integrity, and teamwork in safety-critical software development.
Theory Course Content
Theory teaching builds the conceptual frame for course projects and laboratories, with attention to method selection, artifact quality, engineering evidence, and reflective design decisions.
24 hours
Offline theory sessions
In-class seminars connect requirements, architecture, modeling, generation, and verification through research cases and project critiques. Students learn how a software problem is reframed as a specification problem, a modeling problem, a generation problem, and finally an evidence-backed engineering argument.
Topics
- Specification-driven development and traceability from requirements to implementation
- LLM-assisted requirements understanding, promptable design reasoning, and agent workflow design
- Domain-specific modeling, meta-modeling, model transformation, and model-code consistency
- Formal specification, property definition, counterexample interpretation, and verification evidence
- Project proposal, midterm critique, final presentation, and research-paper discussion
Class Activities
- Analyze representative cases from specification-driven, model-driven, LLM-assisted, and formal-methods research.
- Critique student project proposals by checking problem boundary, modeling assumptions, quality goals, and verification plan.
- Connect each theory theme to the linked laboratory so that concepts are immediately converted into artifacts.
Learning Outcomes
- Explain why requirements, models, generated artifacts, and verification results must be treated as one traceable engineering chain.
- Compare AI-assisted engineering outputs with human review criteria and formal evidence.
- Build a project argument that links theoretical method choice to measurable software quality.
8 hours
Online theory sessions
Online theory units provide concise conceptual preparation before each laboratory. The emphasis is on vocabulary, method boundaries, representative workflows, and the criteria students should use when evaluating their own engineering results.
Topics
- Requirements specification structure, ambiguity, completeness, and consistency
- LLM prompt design, context construction, tool use, and human-in-the-loop review
- Model abstraction levels, model transformations, code generation, and evolution
- Formal notation, property templates, state exploration, and verification-result reading
Class Activities
- Complete short pre-class videos and quizzes before the corresponding laboratory.
- Use guided worksheets to identify theory concepts inside the course project.
- Prepare artifact checklists for specification, model, AI-generated output, and verification evidence.
Learning Outcomes
- Enter each laboratory with a clear conceptual checklist.
- Use theory terms precisely in reports and presentations.
- Identify whether a project problem is best handled by specification refinement, model transformation, AI assistance, or formal verification.
Experiment Course Content
Laboratory teaching turns the theory modules into concrete engineering artifacts, including models, code, tests, deployment evidence, verification records, and project reports.
Online
Lab 1: Specification-driven development
4 hours
Build mappings among requirements specifications, design specifications, and implementation tasks for the target system.
Tasks
- Conduct specification-driven prototype implementation, test-case generation, or result validation.
- Connect requirements, design decisions, implementation tasks, and validation evidence.
Deliverables
- Specification documents
- Development artifacts
- Comprehensive laboratory report
Online
Lab 2: Large language model and agent development
4 hours
Use LLM prompts, context organization, agent task decomposition, and tool use to support the course project problem.
Tasks
- Design prompts and organize context for the target system.
- Build or simulate agent workflows and compare AI-generated results with human review standards.
Deliverables
- Execution records
- Core code
- Generated outputs
- Human review notes
- Laboratory reflection
Online
Lab 3: Model-driven development
4 hours
Transform requirements into domain, structural, or behavioral models and use model-driven techniques to support implementation.
Tasks
- Construct models for the target system.
- Conduct model consistency checking, model evolution, and generative implementation.
Deliverables
- Model artifacts
- Generated results
- Analysis report
Online
Lab 4: Formal analysis and verification
4 hours
Select key requirements or design constraints and produce traceable verification evidence.
Tasks
- Complete formal representation, property definition, and consistency analysis.
- Interpret counterexamples or verification results and propose improvements.
Deliverables
- Formal specification artifacts
- Verification results
- Traceability evidence
- Improvement suggestions
Assessment
| Item | Weight | Focus |
|---|---|---|
| Regular performance | 20% | Online videos, quizzes, classroom participation, and in-class exercises. |
| Laboratory performance | 40% | Quality of model, code, specification, report, verification, and AI-assisted process evidence. |
| Presentation/report | 40% | Project outcomes, technical route, experiment results, reflections, and communication quality. |
References and Source
- Fundamentals of software engineering, object-oriented programming, data structures, modeling languages, and intelligent tool use are recommended prerequisites.
- RM2PT and related modeling tools are recommended for students who need introductory modeling practice.
Source syllabus: Software Requirements Analysis and System Design - 2027 Course Plan.pdf