Files
hypersql/software_process_model.md
T
gary 03a347ea31 Initial HyperSql project
Add the JavaFX SQLite management application with project analysis documents and ignore local build/runtime files.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-10 13:05:19 +08:00

5.9 KiB

HyperSql 软件开发过程模型

1. 软件开发过程模型选择

本项目 HyperSql 采用 增量迭代模型 进行开发。

增量迭代模型是指将软件系统划分为多个相对独立的功能增量,每个增量都经过需求分析、设计、编码、测试和反馈优化等过程,最终逐步形成完整的软件系统。

HyperSql 是一个基于 Java 24、JavaFX 和 Maven 的轻量级 SQLite 图形化管理工具。项目开发过程中,先完成数据库连接、表结构浏览、表数据查看和 SQL 执行等核心功能,再逐步增加数据库文件管理、表管理、分页显示等增强功能,最后根据时间继续扩展数据编辑、备份恢复和 AI 辅助 SQL 生成。

2. 选择增量迭代模型的原因

HyperSql 选择增量迭代模型,主要有以下原因:

  1. 功能模块清晰

    • HyperSql 可以划分为数据库文件管理、数据库连接、表/视图浏览、表结构查看、表数据分页查看、SQL 执行、表管理、数据编辑、备份恢复和 AI SQL 生成等模块。
  2. 适合 GUI 软件开发

    • JavaFX 图形界面需要不断调整布局和交互方式。采用迭代开发,可以在每个阶段完成可运行版本,并根据测试结果优化用户体验。
  3. 降低开发风险

    • 先完成基础功能,再开发复杂功能,可以避免一开始实现过多内容导致项目失控。
  4. 便于阶段性展示

    • 每个迭代版本都能形成可运行的软件,方便课程汇报、阶段检查和最终演示。
  5. 适合课程项目周期

    • 在有限时间内优先保证核心功能可用,再根据进度实现扩展功能。

3. HyperSql 当前迭代版本与进展

迭代版本 主要目标 主要功能 当前状态
V0.1 项目准备与原型设计 明确需求、完成过程模型/可行性分析/需求分析、搭建 Maven + JavaFX 项目结构 已完成
V1.0 基础数据库管理 打开本地 SQLite 数据库、建立连接、显示数据库文件路径、关闭数据库连接 已完成
V1.1 数据库结构浏览 显示表/视图列表,查看字段名、类型、主键、默认值等信息 已完成
V1.2 表数据查看与 SQL 执行 查看表数据,输入并执行 SQL,显示查询结果或更新结果 已完成
V1.3 分页显示优化 表数据按每页 100 行分页显示;SQL 查询结果区按每页 100 行分页显示 已完成
V1.4 数据库文件管理增强 新建 SQLite 数据库文件、删除当前数据库文件 已完成
V1.5 表管理功能 通过简洁 UI 创建表;删除选中普通表;删除前进行确认 已完成
V1.6 交互与缺陷修复 修复表/视图选择时数据与结构不同步问题;刷新表列表时保留当前选中表 已完成
V1.7 数据行增删改查 在图形界面中新增、修改、删除表数据 待实现
V1.8 备份与恢复 数据库文件备份、从备份恢复数据库 待实现
V1.9 AI 辅助 SQL 生成 根据表结构和用户自然语言需求调用 AI API 生成 SQL 待实现
V2.0 测试与优化 完善异常处理、界面优化、系统测试和最终演示准备 持续进行

4. 单次迭代流程

每一个功能迭代都按照以下流程进行:

需求细化
   ↓
界面与功能设计
   ↓
编码实现
   ↓
功能测试
   ↓
问题修复
   ↓
版本集成
   ↓
小组评审与反馈

具体说明

  1. 需求细化

    • 明确本次迭代要完成的功能和边界。例如创建表功能要求有简洁易用的 UI,而不是只让用户手写 SQL。
  2. 界面与功能设计

    • 设计 JavaFX 界面布局和功能交互流程。例如主界面采用左侧表/视图列表、右侧表数据/表结构/SQL 执行区域的布局。
  3. 编码实现

    • 使用 Java 24、JavaFX、SQLite JDBC 和 Maven 完成功能开发。
  4. 功能测试

    • 测试数据库连接、表结构读取、分页显示、SQL 执行、创建数据库、删除数据库、创建表和删除表等功能是否正确。
  5. 问题修复

    • 根据测试结果修复异常、界面错误和逻辑问题。例如修复刷新表列表后错误切换到第一张表的问题。
  6. 版本集成

    • 将本次迭代功能整合到主程序中,保证新功能不会影响已有功能。
  7. 评审与反馈

    • 检查功能完成情况,并决定下一次迭代内容。

5. 增量迭代模型在 HyperSql 中的体现

目前 HyperSql 的开发过程已经体现出增量迭代模型的特点:

  1. 先完成核心功能

    • 项目首先实现了 SQLite 数据库打开、表/视图列表显示、表结构查看、表数据查看和 SQL 执行,保证系统能够运行和演示。
  2. 逐步增强可用性

    • 在基础数据查看功能完成后,进一步加入了表数据分页和 SQL 结果分页,避免大结果集造成界面显示压力。
  3. 根据实际测试补充功能

    • 因为用户没有现成数据库文件,项目增加了新建数据库和删除数据库功能,方便测试和演示。
  4. 通过反馈修复问题

    • 在使用过程中发现表/视图选择和刷新逻辑存在体验问题后,及时进行了修复,保证表数据和表结构能够同步更新,并且刷新表列表时保留当前选择。
  5. 保留后续扩展空间

    • 数据行增删改查、数据库备份恢复和 AI SQL 生成尚未完成,后续可作为新的增量继续实现。

6. 总结

HyperSql 采用增量迭代模型进行开发是合适的。当前项目已经完成了 SQLite 数据库管理工具的核心可运行版本,包括数据库文件管理、表/视图浏览、表结构查看、表数据分页查看、SQL 执行分页显示、创建表和删除表等功能。

后续开发应继续沿用增量迭代方式,优先完善数据行增删改查和备份恢复等实用功能,再根据课程进度实现 AI 辅助 SQL 生成等扩展功能。