Teaching

BUAA Course (SPOC)

Software Requirements Analysis and System Design

Graduate blended course on intelligent model-driven development

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.

Intelligent model-driven developmentRequirements analysis and architecture designModel transformation and code generationFormal verificationLLM and agent development

Learning Objectives

  1. Understand object-oriented software engineering, model-driven development, data-driven methods, formal methods, large language models, and multi-agent systems.
  2. Complete requirements understanding, requirements representation, system modeling, architecture design, detailed design, and design optimization for complex systems.
  3. Carry out data-driven analysis, model construction and evolution, automated generation, model verification, and result evaluation.
  4. Read and critically analyze frontier research in requirements analysis, model-driven engineering, intelligent software engineering, and formal verification.
  5. 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

ItemWeightFocus
Regular performance20%Online videos, quizzes, classroom participation, and in-class exercises.
Laboratory performance40%Quality of model, code, specification, report, verification, and AI-assisted process evidence.
Presentation/report40%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