GitHub -- software-engineering-project-management-plan
版本号 | 修订内容概要 | 修订人 | 修订日期 |
---|---|---|---|
0.1.0 | 形成初步项目管理计划 | 王永红 | 2018-03-20 |
开发一个博物馆应用平台系统。系统一共分为五个子系统:博物馆网数据采集子系统、博物馆新闻采集分析子系统、博物馆信息服务子系统、博物馆导览子系统、后台管理子系统。
编写一个本地应用程序,通过程序自动从博物馆网站上爬取信息,进行加工处理。主要包括以下功能:
- 1)数据爬取:爬取全国一级博物馆(130家左右)的网站信息,包括博物馆基本的介绍、参观信息(开放时间等)、展览信息、教育活动、经典藏品信息、学术研究信息等,对于展览信息可以定时更新。
- 2)数据加工:对于爬取的信息进行过滤和加工,抽取需要的内容。例如:对于展览页面,要得到展览主题、展览时间、展览地点、展览介绍等信息。
- 3)数据导入:采用合适的方式保存抽取的数据,能够导入到数据库中。
- 4)数据更新:支持数据的持续更新。例如:根据情况,每天或每周爬取一次新的数据,更新原有数据。
- 注意:数据的加工最好采用可配置的方式,能够用于多家博物馆网站的页面和内容。
编写一个本地应用系统,通过程序能从主要的新闻网站上爬取博物馆相关的新闻信息,进行加工处理。主要包括以下功能:
- 1)数据获取:爬取主要的新闻网站中的博物馆相关新闻(如百度新闻)。可以支持爬取指定时间范围内的新闻,如1年内的新闻,半年内的新闻等。
- 2)数据加工:对于爬取的信息进行过滤和加工,抽取需要的内容。例如,抽取新闻的发布时间、新闻的标题、新闻的内容、新闻涉及的博物馆等。
- 3)数据分析:对于加工好的新闻,分析是正面新闻还是负面信息。可采用已有的可直接调用的服务和代码实现。
- 4)数据定制服务:可以根据指定的某一家博物馆,获取该博物馆的指定时间的新闻,并进行加工分析,得到该博物馆指定时间内的主要新闻,正面新闻和负面新闻。
编写一个Android手机应用程序,支持用户浏览1和2中采集的数据,并对数据进行分析显示。
- 1)数据浏览:在手机端可以浏览各博物馆的介绍、参观信息、展览、教育活动、藏品、新闻等。可以采用列表方式,或地图方式,或其他便于用户定位的方式显示各博物馆。
- 2)数据查询:支持数据的查询功能。例如,按照博物馆查询、按照展览查询、按照藏品名称查询。
- 3)用户反馈:支持用户评论、打分等功能。可以按照展览、服务、环境三个方面让用户对一个博物馆进行打分。
- 4)数据分析:分析博物馆信息以及用户反馈信息,用排名列表和可视化方式显示分析结果。如,各博物馆一年举办的展览次数的排名列表。
编写一个Android手机应用程序,支持博物馆的讲解导览。可利用1中采集的部分基本信息。主要支持以下功能:
- 1)地图浏览:在地图上标注每个城市的博物馆,可以根据定位显示距离最近的博物馆。针对博物馆,在地图上标注该博物馆的近期展览和博物馆相关讲解。从地图可进入博物馆信息浏览、讲解等。
- 2)博物馆信息浏览:显示博物馆的基本信息、展览信息、藏品信息等。
- 3)播放讲解:播放一个博物馆、展览、藏品的相关讲解。
- 4)自制讲解:用户可以录制并上传关于博物馆、展览和藏品的讲解,并上传到平台,平台审核通过后,可以在手机应用中播放该讲解。
- 5)用户个人信息管理:用户可以注册登录该系统,设置用户名密码等个人信息。
- 注意:利用1中采集的130家博物馆的信息,支持一级博物馆的讲解导览。
主要包括:
- 1)用户管理:管理后台用户信息、后台管理员日志、手机端用户信息。如增加管理员,修改管理员密码,禁止一个发布过非法评论的手机端用户再次发布评论等。
- 2)讲解审核:审核用户上传的讲解。
- 3)数据管理:管理1-4系统中涉及所有数据,如一个博物馆的基本信息、展览信息、藏品信息、新闻信息、讲解信息、评论等。例如,删除一个用户发布的非法评论信息。
- 4)数据备份和恢复:支持本系统的数据库和服务器端重要文件的备份和恢复。
交付物 | 阶段 |
---|---|
项目管理计划 | 在项目初始阶段形成,在后续每一个阶段更新 |
需求规格说明 | 在需求分析阶段结束形成,在后续的设计和开发阶段更新 |
设计报告 | 在设计阶段形成,在后续开发阶段补充和更新 |
测试报告 | 在软件开发阶段形成,在后续的测试阶段更新 |
用户手册 | 在需求分析阶段结束形成,在后续阶段更新,在系统交付阶段交付 |
个人总结 | 在系统交付阶段完成 |
源代码 | 在开发阶段形成,在测试阶段更新 |
可执行系统 | 在开发阶段形成,在测试阶段更新 |
关键时间 | 任务 | 要求 |
---|---|---|
第二周 | 确定团长、组长和分组 | 电子版分组名单提交到邮箱,团长汇总提交 |
第三周 | 制定项目管理计划 | 管理计划提交到邮箱,团长汇总提交 |
第四周 | 完成需求规格说明初稿 | 电子版提交到邮箱,团长汇总提交 |
第五周 | 完成设计报告初稿 | 电子版提交到邮箱,团长汇总提交 |
第七周 | 子系统运行检查 | 以小组为单位进行,每个小组10分钟左右。 |
第十二周 | 总结汇报演讲 | 以团队为单位,按照顺序进行。 |
第十二周 | 系统集成后的运行检查 | 以团队为单位进行,组长和主要程序开发人员参加。此时提交各种文档的电子版;提交电子版源代码和可执行系统。团长提前预约时间。 |
- 确定分组,组长,团长,确定各组选题
- 制定项目管理计划
- 完成需求规格说明初稿
- 完成设计报告初稿
- 完成子系统的编码
- 完成子系统的测试
- 系统集成
- 系统集成后的测试
- 部署系统
- 总结汇报演讲
- 系统集成后的运行检查
- 完成个人总结报告
角色 | 姓名 | 学号 | 联系方式 |
---|---|---|---|
第1组组长 | 王丽娟 | 2015014368 | 13693225189 |
第2组组长 | 李盛兰 | 2015014378 | 13693275676 |
第3组组长 | 赵博宇 | 2015014386 | 18811073022 |
第4组组长 | 顾宇超 | 2015014178 | 18810155251 |
团长兼第5组组长 | 王永红 | 2015014366 | 18811080655 |
角色 | 成员姓名 | 学号 | 负责内容 |
---|---|---|---|
组员 | 栾皓 | 2015013026 | 完成130家博物馆展示信息的爬取,以及实现分布式爬取定时爬取 |
组长 | 王丽娟 | 2015014368 | 完成对数据的加工 |
组员 | 安强 | 2015014373 | 完成130家博物馆展示信息的爬取,以及实现分布式爬取定时爬取 |
组员 | 苏采婷 | 2015014374 | 完成130家博物馆基本信息的爬取,并且对数据进行加工,将数据存到数据库中 |
组员 | 李佩泽 | 2015014377 | 完成130家博物馆基本信息的爬取,并且对数据进行加工,将数据存到数据库中 |
组员 | 钱文鑫 | 2015014390 | 完成对数据的加工 |
- 第3周,完成小组项目管理计划
- 第4周,完成子系统需求规格说明
- 第5-7周,完成数据的爬取,获取基本数据
- 第8-9周,完成数据库设计,数据的动态爬取,以及数据的加工
- 第10-11周,完成数据的细节设计,并且从整体上提高爬取速度和文本分析速度
开发环境与工具
- 数据库软件:mysql
- 编程语言:python
- 集成开发环境:pycharm,框架:scrapy
角色 | 成员姓名 | 学号 | 负责内容 |
---|---|---|---|
组员 | 马雪 | 2015014364 | 数据的分析和处理 |
组员 | 王少杰 | 2015014365 | 数据的获取 |
组员 | 龙启晟 | 2015014369 | 数据的获取 |
组员 | 李达丞 | 2015014376 | 数据库的管理 |
组长 | 李盛兰 | 2015014378 | 数据的获取,数据的分析和处理 |
组员 | 余磊 | 2015014380 | 数据的获取 |
组员 | 张茹 | 2015014381 | 数据的分析和处理 |
- 第3周,完成小组项目管理计划
- 第4周,完成子系统需求规格说明
- 第3周,由于小组成员都没学习python语言,但使用python语言来写爬虫和数据分析比较方便,这周先进行python语言基础语法的学习
- 第4周,熟悉scrapy框架,进行爬虫的编写,获取数据,对数据进行处理存入数据库
- 第5周,借用第三方库,对数据库中的数据进行文本分析和处理
- 第6周,进行代码的整合和调试
- 第7周,进行汇报
开发环境与工具
- 数据库软件:mysql
- 编程语言:python
- 集成开发环境:pycharm,框架:scrapy
角色 | 成员姓名 | 学号 | 负责内容 |
---|---|---|---|
组员 | 丁毅 | 2015014362 | 用户界面的完善 |
组员 | 王旭升 | 2015014367 | 博物馆完善 |
组员 | 赵凤鸣 | 2015014384 | 博物馆完善 |
组长 | 赵博宇 | 2015014386 | 设计app的形式,样式。主页面设计和代码编写 |
组员 | 洪海涛 | 2015014387 | 用户界面完善 |
组员 | 郭一挺 | 2015014391 | 负责后端代码编写,处理数据库数据,数据库连接返回查询结果集 |
组员 | 董晓龙 | 2015014393 | 文档报告编写,素材收集 |
注:
用户模块:
登录、注册、评论、打分等功能
博物馆模块:
博物馆信息显示、博物馆信息查询
其他功能:
数据分析功能、分析数据、显示分析数据结果
- 第3周,完成小组项目管理计划,AndroidStudio 环境配置,编程语言的学习
- 第4周,完成子系统需求规格说明,语言的学习以及环境测试,app主页面开发
- 第5周,用户界面实现登录注册功能,博物馆主页面开发
- 第6周,博物馆详细页面开发,评论功能和打分功能开发
- 第7周,各个模块整合,测试运行,debug
开发环境与工具
- 整个 app 前端用 react native 编程语言实现,开发环境是 windows 10 + Android Studio
角色 | 成员姓名 | 学号 | 负责内容 |
---|---|---|---|
组长 | 顾宇超 | 2015014178 | 对外网络通信服务 |
组员 | 徐林 | 2015013270 | ui设计 |
组员 | 叶中飞 | 2015014370 | 地图模块设计 |
组员 | 刘子航 | 2015014372 | 地图模块设计 |
组员 | 李子东 | 2015014375 | 文件上传模块设计 |
组员 | 罗琦 | 2015014382 | ui设计 |
- 第3周,完成小组项目管理计划,熟悉安卓
- 第4周,完成子系统需求规格说明,开始尝试开发
- 第5周,初步开发
- 第6周,基本完成
- 第7周,整合汇报
开发环境与工具
- 整个 app 前端用 react native 编程语言实现,开发环境是 windows 10 + Android Studio
角色 | 成员姓名 | 学号 | 负责内容 |
---|---|---|---|
组员 | 凡耀栋 | 2015014363 | 博物馆管理 |
组长 | 王永红 | 2015014366 | 数据库设计,给前端和移动端提供 API |
组员 | 何文慧 | 2015014379 | 博物馆新闻管理 |
组员 | 赵功霈 | 2015014385 | 用户评论管理 |
组员 | 袁婷钰 | 2015014388 | 用户语音管理 |
组员 | 莫海仕 | 2015014389 | 展会管理 |
组员 | 郭东星 | 2015014392 | 管理员,管理日志模块 |
- 第3周,完成小组项目管理计划,熟悉 PHP
- 第4周,完成子系统需求规格说明,熟悉 thinkPHP 框架
- 第5周,初步开发,接口和前端同时开发,尽快开发接口
- 第6周,基本完成,接口基本完成,前端框架基本完成
- 第7周,整合汇报
开发环境与工具
- Windows:phpwamp,PHPstorm
- macOS:xampp,PHPstorm
- PHP 框架:thinkPHP
- 前端框架:Amaze UI
风险管理——面对开发中遇到的不确定因素,要时时刻刻调整开发进度。
技术评审一评估软件工程产品,尽鼠在错误传播到下一个活动之前发现并清除错误。
可复用管理一一定义工作产品复用的标准(包括软件构件),并且建立构件复用机制。
工作产品的准备和生产——(如建模、文档、日志、表格和列表等)所必需的活动。
http://blog.sina.com.cn/s/blog_493a84550100b7i5.html
http://blog.sina.com.cn/s/blog_493a84550100b7tp.html
http://blog.sina.com.cn/s/blog_493a84550100b87u.html
下次修订需要修订的部分
项目管理过程
活动
沟通 策划 需求分析 设计 编码 测试 部署
软件项目跟踪和控制
软件质量保障
技术评审
软件配置管理
可复用管理
工作产品的准备和生产