软工实践团队总结

软工实践团队总结

2026 春软工实践团队总结博客
团队:一马当先
项目: 文员办公助手Agent
GitHub:https://github.com/easyfirst14536/take-the-lead
一句话总结:艰苦但不失收获

一、前言

本学期软件工程课程实践,我们团队以文员办公助手为核心项目,完成了为期一学期的完整软件项目开发实战。相较于以往课堂上碎片化、单一化的代码作业,本次项目是我们首次完整接触真实软件开发流程,从需求调研分析、项目架构设计、前后端功能开发、智能功能集成,到功能测试优化、版本迭代发布、文档整理归档,全程自主落地、分工协作、迭代优化。本项目聚焦日常文职办公场景,针对性解决文档录入、图片文字提取、文件管理等办公痛点,依托全新技术栈实现智能化办公辅助功能。历经数月的打磨攻坚,我们顺利完成项目全部既定功能,实现了从零基础想法构思到可落地、可使用、可迭代的完整软件产品交付。基于本次全程实战经历,我们对软件工程的核心思想、团队开发模式、工程化规范标准都有了全新且深刻的认知,也积累了宝贵的全栈项目开发经验。

二、项目部署

部分 文件 行数 说明
后端 (Backend) server.js (Express 服务) 366 API + 路由 + 中间件
ocr.py (Python OCR) 56 文字识别模块
tests/utils.test.js (测试) 168 后端单测
后端合计 590
前端 (Frontend) index.html 1,080 单页应用 (Tailwind + Marked.js)
tests/frontend.test.js (测试) 179 前端测试
前端合计 1,259
桌面端 (Electron) main.js 261 主进程
preload.js 20 预加载脚本
Electron 合计 281
构建脚本 scripts/afterPack.js 106 打包脚本
脚本合计 106
项目配置 package.json, README.md, PRODUCT.md ~184 非代码
总源码 (不含文档 / 配置) 2,236 行

这个项目的特点

  1. 后端精简(590 行)— Express 框架,做了合理的路由拆分,工作量不大
  2. 前端集中在一个 HTML(1,080 行)— 虽然是单文件但包含了完整 UI,Tailwind 编译后量大但手写量不多
  3. Electron 壳(281 行)— 标准封装,模式化代码多
  4. OCR 用 Python(56 行)— 核心逻辑短,但环境配置可能坑多
  5. 测试覆盖 — 前后端都写了测试,这点不错

功能使用

https://lijiahaoleyuan.cn/(网址可直接打开)

文本归整模式(默认)

适用场景: 微信群通知、会议笔录、零散笔记等非结构化文本。

操作步骤:

  1. 确认界面左上角模式为"文本归整"(按钮显示为"🔄 切换至发票模式")
  2. 在左侧文本框中粘贴或输入混乱文本
  3. 点击 ✨ 一键整理 按钮
  4. 观察右侧 流式预览 区域实时显示 AI 生成的 Markdown 表格
  5. 完成后下方出现 可编辑表格
  6. 单击单元格即可修正内容
  7. 点击 ✅ 确认表格 → 出现导出按钮
  8. 选择导出格式:PDF / Word / CSV

示例输入:

周三下午两点行政部开会,小王带纸质报销单,李经理需要补合同编号;微信群里说财务周五前收齐供应商信息。采购部需要三台笔记本电脑预算 15000 元,请各部门下周二前提交预算。

发票/报销模式

适用场景: 电子发票、出租车票、报销单等财务单据的批量处理。

操作步骤:

  1. 点击 🔄 发票模式 按钮
  2. 出现图片上传区,可上传发票图片或 PDF 文件
  3. (可选)粘贴发票文字信息
  4. 点击 📄 批量提取 按钮
  5. AI 提取发票信息,输出结构化表格(固定表头:序号 / 类型 / 发票号 / 日期 / 金额 / 收款方 / 费用类别 / 备注)
  6. 编辑确认 → 导出

图片处理流程:

上传图片/PDF → RapidOCR 提取文字 → DeepSeek 格式化
→ 填入文本框 → 用户提交 → 流式输出表格

图片上传限制:最大 10MB,PDF 最多 10 页。

语音输入

操作步骤:

  1. 点击 🎤 语音 按钮
  2. 浏览器请求麦克风权限,点击"允许"
  3. 开始说话(中文)
  4. 识别结果自动填入文本框
  5. 继续编辑或直接提交

⚠ 语音输入需要 Chrome 浏览器,且需允许麦克风权限。
语音只是辅助输入手段,不改变当前模式(文本/发票)。

拖放输入

支持两种拖放方式:

  • 拖放文本:从其他窗口选中文本拖入文本框区域
  • 拖放文件:直接拖入图片或 PDF 文件,自动进入识别流程

可编辑表格操作

操作 方法
编辑单元格 单击单元格,直接输入
确认表格 点击 ✅ 确认表格
行预览 鼠标悬停表格行,浮窗显示该行完整数据
导出 确认后选择 PDF / Word / CSV

导出格式说明

格式 特点 打开方式
PDF 用 A4 纸张渲染,支持多页 任何 PDF 阅读器
Word HTML 格式 .doc 文件 Word / WPS 直接打开
CSV UTF-8 with BOM Excel / WPS 表格直接打开,中文正常显示

三、学期回顾

三、学期回顾

3.1 回顾你对于软件工程课程的想象

开学时,我对这门课的期待很简单:从零落地一个实用型软件项目,真正体会软件工程的开发流程。

在此之前,编程对我来说只是零散的课堂作业、碎片化的代码练习,代码写完即结束,没有项目思维、没有工程规范。我不懂分层架构、不懂模块化开发,不会规范管理项目文件,对版本控制、项目迭代、文档编写、项目发布等软件工程核心流程完全没有概念,也从未尝试过将一个解决实际场景需求的想法,一步步落地成可以正常使用的完整软件工具。

达到期待的方面:

独立协作完成了面向职场场景的文员办公助手完整应用开发,落地实用办公功能;

熟练掌握 Git 版本控制与团队协同开发,学会分支管理、代码合并、冲突解决,告别无序代码开发;

深刻理解前后端分离架构逻辑,掌握项目分层、模块化开发的工程思维,摆脱单文件堆砌代码的写法;

实战掌握 FastAPI 后端开发、PaddleOCR 本地文字识别、静态前端开发、桌面端打包等多元技术栈,突破课内基础语法局限;

完整走完需求分析、架构设计、功能开发、测试调试、版本迭代、、项目文档撰写的全流程,真正体验了真实的软件开发生命周期。

仍然不足的方面:

前端仅使用原生 HTML/CSS/JS 开发,未接触 Vue/React 主流框架,页面组件化、工程化能力不足;

项目仅支持本地部署运行,未完成云端服务器部署,不具备线上访问、线上服务的能力;

代码性能优化、高适配兼容、异常兜底机制仍有欠缺,偏向功能实现,缺少精细化打磨。
团队四人人在三个月内,需要同时完成后端接口开发、AI问答功能、前端界面开发、功能测试调试与全套文档整理,兼顾广度与落地性,能完整跑通全部核心办公功能、交付可用项目已经全力以赴。“先实现核心功能,完成从0到1的落地,再逐步优化迭代”,这不仅是我们的开发节奏,也是新手团队实战落地的真实写照。

3.2 团队分工与个人工作投入

本次搜题 Agent 项目开发采用职责明确、分工细化、互补协作的四人团队模式,每位成员各司其职、相互配合,高效推进项目从需求分析、架构设计、功能开发、测试迭代到结题答辩的全流程工作,具体成员分工、阶段耗时、整体投入如下表格所示。

一、成员角色分工表

成员 承担角色与具体工作
庄伟浩 后端开发、FastAPI 接口开发、GitHub 仓库管理、版本迭代与代码管控、环境兼容与底层 Bug 修复
张逸川 前端页面开发、界面 UI 设计与交互优化、项目原型设计、前端适配与体验优化
刘佳浩 项目整体架构设计、技术栈选型、代码分层规范制定、模块解耦优化、项目整体结构梳理与架构迭代
章其忠 项目单元测试与功能测试、全流程 Bug 排查与回归测试、项目文档撰写、答辩 PPT 制作、总结博客整理与成果归档

二、各阶段团队作业耗时表

课程阶段作业 累计花费时间
第一次团队作业 3 天
第二次团队作业 5天
第一次团队项目作业 一周
第二次团队项目作业 一周
第三次团队项目作业 两周
第四次团队项目作业 两周
四、总结收获与新技术学习

4.1 个人与团队整体收获

经过一整个学期的软件工程实践与文员办公助手 项目开发,我们团队最大的收获不再是单纯的“学会写代码”,而是真正建立了软件工程的工程化思维。在此之前,我们的编程学习大多停留在碎片化作业层面,只追求代码跑通、答案正确,完全没有项目结构、模块化、迭代开发、测试维护的概念。而在本次完整的项目实战中,我们从零体验了真实软件的生命周期:从需求分析、原型设计、架构搭建、前后端开发、功能集成、测试排错到版本发布、文档归档、答辩总结,补齐了我们课内学习缺失的工程实践短板。

在团队协作层面,四人分工模式让我们体会到了规范化开发的重要性。每个人各司其职、相互补位:架构、后端、前端、测试文档四条线并行推进,既保证了开发效率,又避免了代码冗余与功能冲突。我们熟练掌握了Git多人协同开发规范,学会了分支管理、代码合并、冲突处理,告别了以往单打独斗的编程模式,懂得了项目开发中沟通对齐、分工协作、迭代优化的重要意义,真正理解了软件工程并非单一的代码编写,而是团队协作、规范开发、持续优化的系统性工程。

4.2 新技术与新能力收获

本次开发文员办公助手项目,我们突破了课本局限,自主学习并落地运用了大量全新技术栈,实现了从基础语法学习到项目工程化落地的跨越。在后端开发上,我们熟练掌握FastAPI框架的使用,能够独立搭建服务、设计接口、处理请求逻辑,完成前后端数据交互;在智能功能层面,自主学习PaddleOCR本地文字识别技术,实现图片文字提取、文档识别等办公核心功能,掌握了AI视觉技术的工程化落地方法。在前端开发上,熟练运用原生HTML、CSS、JS完成页面搭建与交互设计,掌握界面美化、响应式适配、用户交互优化的实操技巧。同时,我们积累了项目架构设计、模块化分层开发、功能测试调试、项目打包部署、版本迭代发布的实战能力,学会了自主查阅官方文档、排查环境报错、解决技术兼容问题,极大提升了独立攻坚与自主学习能力。

五、致谢

时光荏苒,为期一学期的软件工程课程实践圆满落幕。从最初对项目开发一无所知、对工程化概念懵懂不解,到最终完整交付可用的文员办公助手项目,我们的成长与收获离不开每一位帮助过我们的人。

首先,衷心感谢软件工程课程授课老师。老师在课堂上细致讲解软件工程核心理论、项目开发规范、团队协作准则,为我们的项目开发奠定了扎实的理论基础。同时,在项目迭代过程中,老师耐心为我们答疑解惑,指导我们优化项目架构、规范开发流程、完善项目文档,纠正我们开发过程中的误区,让我们得以规避诸多工程问题,顺利完成项目全流程开发与交付。

其次,感谢并肩同行的团队成员。本次项目四人分工明确、各司其职,从需求调研、架构设计、代码开发、功能测试到文档撰写、答辩筹备,每个人都全力以赴、互帮互助。面对陌生的技术栈、繁琐的环境调试、棘手的程序Bug,我们一同查阅资料、熬夜攻坚、交流探讨,在分歧中磨合、在困难中成长。这段协作经历,不仅让我们收获了技术能力的提升,更培养了彼此的团队默契与协作意识,成为我们本学期最珍贵的收获之一。

最后,感谢一学期坚持学习、不断试错的自己。从零起步搭建完整项目,克服技术陌生、开发卡顿、迭代繁琐等诸多难题,我们跳出舒适区,完成了从课堂作业到实战项目的蜕变。本次软件工程实践,不仅提升了我们的代码开发与工程落地能力,更让我们树立了严谨、规范、务实的编程思维,为今后的软件开发学习与项目开发积累了宝贵的实战经验。

前路漫漫,步履不停。本次课程实践的所有收获与成长,都将成为我们未来深耕计算机领域、探索软件开发道路的坚实底气。

posted @ 2026-06-24 21:13  Frenkie21  阅读(1)  评论(0)    收藏  举报