# Intelligent Model-Driven Development **Repository Path**: citrux/intelligent-model-driven-development ## Basic Information - **Project Name**: Intelligent Model-Driven Development - **Description**: 软件需求大作业 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-21 - **Last Updated**: 2025-06-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 在线商店需求建模系统 ## 实验目标 本实验的目标是通过多代理工作流(MultiAgent Workflow)来生成在线商店的需求模型。利用 OpenAI GPT 模型和自定义代理(Agent)进行需求分析、用例生成、模型构建和评审,以自动化生成并优化在线商店的需求模型和用例模型。 ## 输入的 Prompt 输入的 Prompt 旨在引导模型分析业务需求并生成需求模型。以下是用来分析和生成在线商店需求模型的核心 Prompt: ### 1. 需求分析(Requirement Analysis) { "role": "user", "content": "我们需要开发一个在线商店系统,支持以下功能:\n\n1. 顾客可以浏览商品分类和详情\n2. 顾客可以将商品添加到购物车\n3. 顾客可以管理购物车中的商品(修改数量、删除)\n4. 顾客可以结算订单并选择支付方式\n5. 顾客可以注册账号、登录和管理个人信息\n6. 顾客可以查看订单历史和订单详情\n7. 管理员可以登录系统\n8. 管理员可以管理商品(添加、编辑、删除)\n9. 管理员可以管理订单(查看、处理)\n10. 管理员可以管理用户(查看、封禁)\n\n系统需要具备良好的用户界面和安全性,支持常见的支付方式,并且能够处理高并发访问。" } ### 2. 用例生成(Use Case Generation) { "role": "user", "content": "根据提供的需求列表,生成完整的用例模型,包括用例名称、参与者、前置条件、主流程和扩展点。" } ### 3. JSON 模型构建(JSON Model Construction) { "role": "user", "content": "根据提供的需求和用例信息,生成符合规范的JSON格式的需求模型和用例模型。" } ## 输出格式定义 生成的输出将遵循以下 JSON 格式: ### 1. 需求模型(Requirements Model) 输出的需求模型是一个包含需求名称、描述和优先级的列表。示例如下: { "name": "Online Store", "description": "电子商务平台需求模型", "requirements": [ { "name": "浏览商品", "description": "顾客可以浏览商品分类和详情", "priority": "high" }, { "name": "添加到购物车", "description": "顾客可以将商品添加到购物车", "priority": "high" }, ... ] } ### 2. 用例模型(Use Case Model) 用例模型将包括参与者、前置条件、主流程和扩展点。示例如下: { "usecases": [ { "name": "浏览商品", "actors": ["顾客"], "preconditions": ["用户已登录"], "postconditions": ["用户浏览了商品详情"], "main_flow": ["用户选择商品", "查看商品详情"], "extensions": ["用户查看商品评论", "用户收藏商品"] }, { "name": "结算订单", "actors": ["顾客"], "preconditions": ["购物车不为空"], "postconditions": ["顾客成功下单"], "main_flow": ["顾客选择支付方式", "确认订单", "支付"], "extensions": ["顾客使用优惠券"] } ] } ### 3. 用例图(Use Case Diagram) 用例图将以图表形式展示系统中的各个参与者和它们之间的关系。例如,顾客和管理员与不同用例之间的关联。 { "usecase_diagram": { "actors": ["顾客", "管理员", "系统"], "relationships": [ {"source": "顾客", "target": "浏览商品", "type": "关联"}, {"source": "顾客", "target": "添加购物车", "type": "关联"}, {"source": "管理员", "target": "管理商品", "type": "关联"}, {"source": "管理员", "target": "管理订单", "type": "关联"} ] } } ## MultiAgent Workflow 简要说明 本系统基于多个代理(Agent)协同工作来生成完整的需求模型。工作流包括以下几个阶段: 1. 需求分析(Requirement Analysis):使用 requirement_analyzer 代理分析业务目标并提取需求。 2. 用例生成(Use Case Generation):根据需求列表,usecase_generator 代理生成用例模型,涵盖系统的各个功能模块。 3. JSON 模型构建(JSON Model Construction):json_model_builder 代理将需求和用例模型转换为标准的 JSON 格式。 4. 模型评审(Model Review):通过 model_reviewer 代理对生成的 JSON 模型进行质量评审,并提供改进建议。如果模型未通过评审,系统会根据反馈进行迭代优化,直到通过评审为止。 ### 工作流的关键部分: 1. 代理(Agent):每个代理负责不同的任务,如需求分析、用例生成、JSON 模型构建和评审。 2. 工具(Tools):代理通过调用不同的工具来实现特定功能。例如,generate_json_model 用于将需求和用例转换为 JSON 格式。 生成的需求模型说明 生成的需求模型和用例模型展示了在线商店系统的关键功能和流程。以下是简要说明: 1. 需求模型:描述了系统需要支持的各种功能,如浏览商品、添加到购物车、结算订单等。每个需求包括名称、描述和优先级。 2. 用例模型:列出了系统的主要用例,并为每个用例定义了参与者、前置条件、后置条件、主流程和扩展点。 3. 用例图:展示了参与者与用例之间的关系,帮助可视化系统功能及其交互。 ### 总结 本项目通过 MultiAgent Workflow 模型,成功实现了在线商店需求模型的自动化生成。通过多个代理的协同工作,我们能够从业务目标出发,逐步生成需求、用例和完整的模型,并通过评审和反馈不断优化模型。最终,我们获得了符合要求的需求模型和用例模型,作为系统开发的基础。 ## 截图 ![创建卡片](pic/sdk.png)