“软件工程实践/课程思路”的版本间的差异
(→实施顺序) |
|||
第26行: | 第26行: | ||
*'''第一阶段:先创业,利用软件工程课堂知识''' | *'''第一阶段:先创业,利用软件工程课堂知识''' | ||
#确定人才市场、定义创意,引入赛马和创业 | #确定人才市场、定义创意,引入赛马和创业 | ||
− | #可以网上找,一个Base版本,也可以直接开发一个alpha0. | + | #可以网上找,一个Base版本,也可以直接开发一个alpha0.1版本,出具'''商业计划书'''。 |
#需要明确第一步增量开发的内容,在开发过程熟悉相关代码和语言。 | #需要明确第一步增量开发的内容,在开发过程熟悉相关代码和语言。 | ||
#根据自己喜好采用瀑布模型、敏捷开发 | #根据自己喜好采用瀑布模型、敏捷开发 |
2024年2月2日 (五) 03:38的版本
百科首页 | 课程思路 | 课程大纲 | 主题讲座 | 支撑工具 | 点滴知识 | 历届作品
学情分析
学生为大三计算机专业学生,在大三上学期学习了软件工程理论课程。主要专业课程包括:计算机科学导论、人工智能导论、信息伦理与道德、程序设计基础、数据结构、算法设计与分析、面向对象方法与技术、数据库系统、软件工程、计算机系统导论、计算机组成与结构、操作系统、计算机网络、编译原理等。这里面包括计算机通用知识,也包括编程、数据库、数据结构、算法和软件工程等相关课程。从以往的经历来看,大家的工程化能力和体系性综合能力较弱。
大三下的 学生面临考研、找工作等现实 问题,如果课程任务太重,比如课后还需要花很多时间的话,会让学生难以接受。当然也要考虑部分学生还是愿意学习得更深入。所以课程安排,要有梯度:
- 能在课堂上完成任务,课后基本不需要花时间,这类学生应该要在70%,但这部分学生可能很难拿到优秀。
- 如果以上都不认真参与,可能处于及格或几个以下。
- 要给30%的学生拿到优秀的机会,这部分除了在课堂上认真完成、全力以赴之外,课后还需要花一些精力,比如每周2小时左右。
总体原则
根据我院培养学生的目标,本课程应该是计算机专业用于加强前期各课程学习综合应用的机会。也是为其进入社会的提前演习,因此,我们要尽量来到真实世界。
- 模仿社会实践中软件工程项目如何开展的。因为在现实情况下,工程项目因资金等条件限制,开展的方式方法也是不尽相同。如外包企业、创业项目、企业自研等,在流程上、组织上也差异较大。
- 根据学情分析,首先要至少服务于60%的学生,30%有高要求的学生,10%的学生可能表现较差。
- 要尽量让学生对课程活动提升兴趣,因此计划采用创业项目的方式。
主要措施
- 鼓励学生从创业的角度拟定项目:从组队、创意、执行、交互和运营全面进行。
- 引入“赛马”机制,创业项目要遴选。别的队也可以做同样的题目。
- 还可以从毕业论文的角度思考,能否作为毕业论文的工程化部分
- 参考案例一定瞄准实际应用的项目,可以是已有项目的2.0、3.0……
- 实现和编程环境可选:可以是小程序开发、可以是应用系统实现、可以是结合AI硬件等等
- 加强业绩经验的分享,穿插几个讲座
- 与软件工程理论课部分指标进行结合,用于最后项目的评审评优
实施顺序
- 第一阶段:先创业,利用软件工程课堂知识
- 确定人才市场、定义创意,引入赛马和创业
- 可以网上找,一个Base版本,也可以直接开发一个alpha0.1版本,出具商业计划书。
- 需要明确第一步增量开发的内容,在开发过程熟悉相关代码和语言。
- 根据自己喜好采用瀑布模型、敏捷开发
- 穿插一次经验性讲座。
- 时间:4周
- 输出/整理:需求文档、数据库设计文档、用例和流程图等
- 第二阶段:应对变化
- 尝试运行、寻找用户、收集新需求
- 墨刀工具
- 回顾第一阶段遇到的问题,讲解DevOps,采用Gitee/GitLab,并将现有项目纳入相关工具
- 穿插一次讲座
- 时间:4周
- 第三阶段:再出发在DevOps的思想指导下逐步实践,完成一个项目的构建V1.0。
- 制作V1.0的墨刀文档
- 运营并更新
- 时间:7+1,1周用于展示
可选案例
- 计算机机房简易管理系统:教师预约、巡检和统计。(2.0版可以加上学生预约,面向机房开放)
- 计算机机房绿化(鱼养殖)智慧运行系统
- 其他可能能成为毕业论文的内容
头脑风暴
- 做一个项目、接一个项目、创意一个项目的流程是啥?组队伍,分工
- 需求与表达:
- 找资源与环境:
- 技术评估
- 第一版本的产生:原型设计、开发、测试、发布
- 敏捷开发促进升级:用户?
参考书籍
- 现代软件工程基础,彭鑫、游依勇、赵文耘 /2022-07-01 /清华大学出版社