1. 项目背景与定位
山东大学软件学院的创新实训项目是该院特色实践教学环节的重要组成部分。作为计算机相关专业的学生,我在大三下学期参与了为期8周的创新实训课程。这个项目不同于传统的课程设计或毕业设计,它更强调在真实开发环境中解决复杂工程问题的能力培养。
实训采用企业级项目开发流程,从需求分析到产品交付完整模拟了软件企业的运作模式。我们小组6名成员需要完成一个具备商业价值的完整软件系统开发,期间需要经历技术选型、架构设计、编码实现、测试部署等全流程环节。这种实战训练对于在校学生而言,是难得的将理论知识转化为工程能力的机会。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 团队组建与项目启动
2.1 团队成员角色分配
我们小组由4名开发、1名测试和1名项目经理组成。在首次团队会议上,我们根据个人技术特长进行了角色分工:
- 前端开发:负责Web界面和移动端应用开发
- 后端开发:处理业务逻辑和数据库设计
- 算法工程师:实现核心算法模块
- 全栈开发:协助前后端联调
- 测试工程师:制定测试方案和自动化测试
- 项目经理:协调进度和文档管理
这种分工既考虑了个人技术栈,也确保了每个关键岗位都有专人负责。作为后端开发,我需要重点掌握Spring Boot框架和MySQL数据库的应用。
2.2 项目选题与需求分析
经过多轮讨论和导师指导,我们最终确定开发一个"智能校园服务系统"。该系统主要解决三个核心问题:
- 教室资源智能预约与管理
- 校园活动线上化组织
- 学生个性化服务推荐
需求分析阶段我们采用了用户故事地图的方法,将系统功能拆分为8个核心模块。通过访谈20位在校师生,收集到37条具体需求,最终形成了一份25页的需求规格说明书。
3. 技术架构设计
3.1 整体技术栈选型
基于项目需求和团队技术储备,我们确定了以下技术方案:
- 前端:Vue.js + Element UI(Web端),Uni-app(移动端)
- 后端:Spring Boot 2.7 + MyBatis Plus
- 数据库:MySQL 8.0 + Redis缓存
- 基础设施:Docker容器化部署
- 算法服务:Python Flask + Scikit-learn
选型主要考虑因素包括:
- 团队成员已有基础,降低学习成本
- 技术社区活跃度,确保问题可解
