| 项目 | 内容 |
|---|---|
| 课程班级博客链接 | 班级链接 |
| 这个作业要求链接 | 要求链接 |
| 团队名称 | 微风吹过的街道 |
| 团队的课程学习目标 | (1)组建软件项目研发团队(2)团队协作学习 |
| 这个作业在哪些方面帮助团队实现学习目标 | 软件案例分析 |
| 团队博客链接 | 博客链接 |
任务1:团队组建
- 在实验四结对基础上,结对小组两两自由组合,尽量按照男女搭配组队要求,组建软件项目研发团队;
- 申请开通团队博客,点击以下链接提交团队信息,将团队博客加入到班级博客。
1.队伍名称:微风吹过的街道
2.团队成员组成,在备注中标记团队组长(PM)
| 成员学号 | 姓名 | 个人博客地址 | 备注 |
|---|---|---|---|
| 201771010113 | 李婷华 | https://www.cnblogs.com/litinghua | 维护 |
| 201771010123 | 汪慧和 | https://www.cnblogs.com/http-www-whh0601-cnblogs-com | 测试 |
| 201771010129 | 王颖奇 | https://www.cnblogs.com/1556889081wyq | 开发 |
| 201771010136 | 杨野 | https://www.cnblogs.com/2017xinghui | 组长 |
3. 成员风采:介绍每位队员的风格、擅长技术、编程兴趣、希望的承担的软工角色(文档、开发、测试、PM等)、一句话宣言等
| 姓名 | 风格 | 擅长领域 | 兴趣 | 担任角色 | 宣言 |
|---|---|---|---|---|---|
| 李婷华 | 注重规范化 | java,数据库 | 前端,小程序 | 开发,编写文档 | 最大的敌人是自己,没有什么是不劳而获的 |
| 汪慧和 | 撞大运编程 | C、JAVA | 前端、网页、APP | 开发 | 把豆浆油条转换成软件 |
| 王颖奇 | 简单 | java | 前台编写 | 测试运行 | 好好学习,天天向上 |
| 杨野 | 钻研 | 底层开发 | 探寻原理 | 开发人员 | 不是在摸鱼就是在摸鱼的路上 |
4.请阅读《现代软件工程—构建之法》第7章,理解MSF的9点基本原则
MSF的基本原则
- 推动信息共享与沟通( Foster open communications )
第一个原则,就是所有信息都保留并公开,讨论要包括所有涉及的角色,决定要公开并告知所有人。当然,对牵涉到的技术机密、安全性等信息要采取必要的保护措施。 - 为共同的远景而工作( Work toward a shared vision )
共同的远景是指产品的远景。我们做一个产品,不管是应用软件、行业软件,还是通用软件,要明确项目的目标是什么;这个目标必须是明确的,没有二义性;这个目标不是当前就能达到,必须是通过努力才能达到的;这个目标不是空泛的,它应该对项目成员每天的工作都有指导作用。 - 充分授权和信任( Empower team members )
这一点的关键是“授权”这个词,授权( Empower)有两个意思:一是给某人权力和权威;们有权在职权范围内按照自己的承诺完成任务,同时,他们也充分信任其他同事能实现各自的们有权在职权范围内按照自己的承诺完成任务,同时,他们也充分信任其他同事能实现各自的规划。 - 各司其职,对项目共同负责( Establish clear accountability and shared responsibility)
团队中的每个角色都有自己的职责,如果出了问题,这个角色就要负责任。
- 交付增量的价值( Deliver incremental value )
增量交付是指为及时反馈和接纳,频繁向客户交付连续改善的工作产品。为演示和反馈,往往在每一个冲刺或迭代的末期交付产品。这项反馈技能,可使客户评价产品并提出新的需求。在敏捷流程中,接受变动/更新/改善的需求,以确保客户得到有价值和质量的产品。 - 保持敏捷,预期和适应变化( Stay agile, expect and adapt change )
软件工程,唯一不变的是变化。所以干脆别幻想客户的需求会在第一时刻很明确,然后保持不会变。但要注意,我们是预期变化,不是期望变化。除开外部原因,团队内部也在变化,我们对技术的掌握每天都在提高,原来认为不可能的事可能变得容易。我们对客观世界和软件系统的了解每天都在深化,原来觉得没问题的小细节忽然成了大问题。甚至原来一起打拼的同事忽然要离...这些都要求我们团队保持敏捷的身段。 - 投资质量( Invest in quality )
对质量的重视,引发对质量的投资,引发对人、过程和工具的投资。 - 学习所有的经验( Learn from all experiences )
在学习过去的经验的同时,也要避免让过去的经验妨碍解决现在的问题。 - 与顾客合作 ( Partner with internal and external customers )
MSF强调产品团队与顾客的交流与合作,并不是产品团队拿到合同之后,就闭门造车,直到产品完成才告诉用户,给他们一一个惊喜(通常“惊"大于“喜”)。项目当然是项目团队成员,做的,但是项目的商业价值要由用户说了算,那些“我觉得用户会喜欢”的东西要及早和用户交流。因为“我觉得”和“用户觉得”是两码事。
5.组建团队企业微信群,给出群成员截图

6.团队特色描述,言简意赅的描述团队特点或核心竞争力
众人拾柴火焰高
任务2:软件项目案例分析
现代社会,人们很多时候要和软件打交道,手机游戏、微信、QQ、中国铁路12306等等。软件工程学习中,通过这些软件案例的分析、 评测、辨析和总结,我们就能看到软件工程的原理和原则在工程实践中的种种体现和应用,从而加深对软件工程知识内容的理解,帮助我们在软件项目实践中做得更好。
以下是本次作业候选分析案例:
案例1:博客园班级博客
请对博客园的班级博客中针对院校+班级为对象的班级管理、作业管理、互相交流的功能进行分析,这一方面的参照对象是:CSDN。
另外,班级博客的作业管理、班级管理等功能在手机上做得如何呢?有什么可以改进的?
案例2: VS和VS Code
微软公司有两个代码编辑器:Visual Studio、VS Code,它们的目标用户,主要功能有何不同?为何要有两个编辑器和开发环境?请用这两个编辑器/IDE写出一个简单的C/C++/Python程序,记录程序耗时多久运行成功?描述你的发现。给出程序和运行结果截屏。Visual Studio 社区版指的是可免费提供给单个开发人员,给予初学者及大部分程序员支持,可以无任何经济负担、合法地使用的版本.
官网下载链接:https://visualstudio.microsoft.com/zh-hans/?rr=https%3A%2F%2Fwww.microsoft.com%2Fzh-CN%2Fdownload%2Fdetails.aspx%3Fid%3D48130
VSCode发布站点:https://code.visualstudio.com/
VSCode源代码git地址:https://github.com/Microsoft/vscode
VSCode作为一个开源的项目,github平台有许多IT人士在为此项目做出贡献,参照本篇博文后ffl((范飞龙老师)的建议可以学习github协作开发的技巧和方法。
从候选案例中选择一个软件进行分析:
我们团队选择案例一
以团队协作学习方式完成以下任务:
1.阅读《现代软件工程—构建之法》第8章、第12章内容,完成以下案例分析任务:
(1)下载、部署并体验案例软件的功能,使用10–30分钟这个软件的基本功能,上传使用软件的照片
作业要求的第一点是让我们对博客园的班级博客中针对院校+班级为对象的班级管理、作业管理、互相交流的功能进行分析,并与参考对象进行比较。

博客园班级博客是博客园开发的供班级教学使用的博客讨论交流平台。在此平台上,老师可以方便地建立班级,并将同学加入班级。老师可以布置作业,同学通过博客的形式提交作业。因此,我们测试了以下的功能:
-
首先,我以教师身份创建了一个博客园班级,又添加了一名学生。如图所示:
- 创建班级

- 添加成员

- 相比之下,CSDN只有学院的功能,并且主要是课程,如图所示:

-
之后,发布一项作业,学生完成作业,我给予评分,并给予评价,导出成绩等。
- 发布作业

- 学生完成作业并提交

- 我给予评分

- 我给予评价

- 导出成绩

-
然后,测试投票功能,发布一则投票,学生进行投票。
- 发布一则投票

- 学生进行投票

-
最后,测试公告和推荐博客功能等,基本功能测试完毕。
-
测试公告

- 推荐博客
- 会推荐很多的活跃班级
- 从推荐的博文来看,貌似是推荐最新发布的作业博文(从博文的发布时间看出来的)

- 以下功能我们也一一进行了测试:

-
校区功能:
- 在中国地图上显示了各个学校的地点

- 点进任意一个学校后,以时间线的形式显示这个学校拥有的所有班级博客

-
班级功能:
- 可以按照按时间排序,按人数排序,按活跃度排序,按博文数排序,按校区拼音排序快速筛选出班级博客
- 也可以通过搜索功能,快速查询班级博客

- 博文功能
可以按零回复博文,总阅读排行,周阅读排行,首页精华,所有博文进行排序

- 评论功能
默认是按的评论时间顺序进行排序的,没有相关的筛选和查询功能

- 作业功能
默认是按的作业发布的时间顺序进行排序的,没有相关的筛选和查询功能

- 学习计划功能:

CSDN没有班级博客功能,因此主要测试了CSDN的博客功能,并与博客园的博客功能进行对比:
- 从图中可以看出,CSDN拥有的比博客园拥有的功能多


- CSDN支持Markdown和富文本编辑器;博客园支持TinyMCE,Markdown,TextBox编辑器


-
CSDN个性化自己的博客需要付费购买皮肤;博客园则不需要。
- CSDN的等级权益

- 博客园
很多的控件可供选择

可以进行页面定制,这个是CSDN所不能做到的

-
CSDN写博文的功能非常全面,所给选项人性化;博客园的功能少,需要自己钻研(Markdown的形式下,想弄很多格式或者风格,需要自己在网上查资料解决,这点真的很难受)。


作业要求的第二点是让我们评论班级博客的作业管理、班级管理等功能在手机上做得如何?有什么可以改进的?
- 博客园
-
官方

-
第三方(官方推荐的第三方):

-
界面整洁清新
-
都缺少班级博客的功能
改进:增加功能
-
- CSDN

- 与博客园app的首页相比,CSDN的客户端拥有筛选功能
改进:可以增加像博客园一样的班级博客功能
(2)描述使用案例产品的过程,产品解决了用户的问题么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
- 首先,两个产品均解决了客户的基本问题,成功地提供给用户一个良好健康的平台。
- 软件在数据量/界面/功能/准确度上各有的优缺点
从刚刚的体验中可以得出:
一.数据量
- CSDN的数据量远远大于博客园
- 下载量可以衡量一个软件的受欢迎程度。从这点来看,博客园的数据量是远远小于CSDN的


二.界面
- 博客园
- 优点:界面整洁美观,博客可以自己个性化
- CSDN
- 优点:界面整洁美观
- 缺点:博客个性化的选择少,广告比博客园多(见下图,CSDN的一个页面上就有三条广告)

三.功能
- 博客园
- 优点:有班级博客功能
- 缺点:功能比CSDN少,且不够人性化(可以说是bug,在后面会讲到)
- CSDN
- 优点:功能全面
- 缺点:部分项目需要付费(见下图)

四.准确度
两者的准确度没有较大的差别
最后,感觉在用户体验方面,感觉主要有这么几个问题:
- 添加成员后不会立即自动更新成员列表
在添加成员后,更人性化的设计是要更新一下成员列表,如果不更新的话,用户可能以为添加失败,造成不必要的麻烦。此项应属于广义bug,可以改进。

- 这里并没有马上更新

添加成员时,被添加人没有确认机制
添加成员后,该成员直接被添加到班级里,不给成员拒绝的权利在某些情况下可能不是一个好的设计。例如攻击者可以建立多个班级,然后将某个用户添加到每一个班级,由于用户没有确认机制,所以会莫名其妙地加入很多班级中。造成不必要的麻烦。
剩余时间显示不准确
博客园的作业剩余时间会根据时间长短,自动选择时间单位,如小时,天或周。如下图,该作业的实际剩余时间为9天,但是显示的却是剩余1周,猜测其实现方法应该是自动向下取整。我认为,自动选择时间单位看似人性化,实则容易让人误解,本来剩余将近9天的任务,显示为剩余1周,这应该是不太合理的。

创建班级的老师,竟然可以把自己删掉

最新博文有筛选功能,而所有成员博文却没有
所有成员博文似乎更需要筛选功能呢!


校区功能无法快速查询你的学校,条目比较混乱

博文,评论,作业均未有查询功能和筛选功能(排序)。
没有查询功能和筛选功能(排序),想要在那么多条目里找到你想要的目标,是比较困难的一件事。



学习计划功能不明所以然
我明明进的是学习计划,可是出来的却是学院。

手机端的博客园app体验感不是特别好
- 博客园手机端下载(官方):
https://www.cnblogs.com/cmt/archive/2009/09/26/1574616.html
登录页面显示不完:

功能(班级博客没有)

- 第三方(官方推荐的第三方):
https://www.cnblogs.com/ourozts/p/7553945.html
功能(班级博客没有)
(3)对产品有什么改进意见?
- 博客园班级功能,添加成员后,该成员直接被添加到班级里,不给成员拒绝的权利在某些情况下可能不是一个好的设计。添加是否确认加入班级的功能是一个好选择。
- 博客园班级中博文添加筛选功能,方便查找特定的博文和筛选,博客园班级中博文添加排序功能,查看时可以更直观
- 手机端博客园应该考虑机型适配问题,添加手机端的博客园班级功能
- 添加更多的引导教程,介绍博客园的各个功能,添加md编写教程,方便查阅
- 虽然通过网页登录,倒是没有什么太大的问题(主要还是一些排版不太美观,可能与兼容有关),但是作为一个国内比较大的程序员网站,我觉得在手机端博客园app开发的进度,与快速发展的技术之间,实在是不太相容,也不太应该出现这种情况。除此之外,官方推荐给我们的app是非官方的,试问一下,这可以保证我们的信息安全吗?对此深表怀疑。因此,官方开发可靠的,功能齐全的app才是最好的选择。
(4)除了定性的结论,还可以定量地评价一个软件?并尝试进行定量的测评。
- 如何评价博客园的UI设计?
学计算机的除了CSDN,可能接触最多的就是博客园啦。博客园让人有一种慢节奏的感觉。博客园第一时间给用户的感受就是就是:这个页面看起来是真的老!

优点:博客园的首页文章质量都挺不错的,这应该是有人在维护,因而保证了博文的质量。博客园发博文还有评论博文的响应速度都很快,在这上面发文章体验很好。此外,博客园提供了多种编辑器,比如我现在使用的markdown编辑器,就很好用,虽然博客园的界面在个人看来做的不太好看,基本就是中规中矩,但是功能是真的挺好用的。
缺点:页面风格不太好看,比如我去我的个人博客,基本上就是只有纯文字。像标题这些感觉排版很不好看,参差不齐。
- 博客园的用户体验怎么样?
大多数人还是很喜欢博客园的,虽然博客园的首页被很多人吐槽,但一些大佬会根据自己的喜好去建一个自己喜欢的界面。当然博客园在后台的设置->博客皮肤中可以进行主题选择,个人根据自己的喜好选择一个自己喜欢的。可以直接搜索“博客园美化”,有很多炫技调教。
| 类别 | 描述 | 评价 | 评分 |
|---|---|---|---|
| 核心功能 | 分析三个核心功能,功能设计和质量 | (1)写博客,写自己的心得体会,对知识点的理解与看法,可以随时编辑自己已发的博客。 (2)查看自己想看的相关博客,进行学习和交流。 (3)可以创建小组、班级等进行交流,老师助教也可以实时进行评分 |
8 |
| 细节 | 有什么为用户考虑的细节? | (1)可以在浏览界面设置偏好筛选想看的帖子。 (2)有足够的反馈问题的渠道且通常能够得到及时的回复和解决。 (3)开设博客需人工审核,让人感觉到对品质的坚持。 |
8 |
| 用户体验 | 当用户完成功能时,不干扰用户(例如:是否不断弹出不相关的广告) | (1)广告很少,不会弹出广告 (2)界面较老。 (3)写博发博响应及时 |
6 |
| 辅助功能 | 一些辅助功能如皮肤等 | 皮肤种类较多,可以根据自己的喜好选择,当然自己也可以使用博客美化代码来进行美化 | 6 |
| 差异化功能 | 这个软件独特的功能. 它对用户的吸引力有多大? | 以博客为载体,把老师学生班级这几个概念连接到一起,首页博客质量基本都很高 | 8 |
| 软件的效能 | 占用内存, 启动速度, 内存泄漏情况 | 在网页端进行占用内存很小,启动速度及时 | 9 |
| 软件的适应性 | 在联网/断网, 大小屏幕, 没有鼠标的情况下都可以顺畅操作. 和不同平台的软件能流畅协作 | 是 | 10 |
| 成长性 | 记住用户的选择, 适应用户的特点,用户越用越方便 | 没有根据搜索次数的多少而推相关的帖子 | 3 |
| 用户有控制权 | 系统状态有反馈,等待时间要合适。关键操作有确认提示,有明确的错误信息。 让用户方便地从错误中恢复工作, 快捷操作键可调整。 | 会提示,但不会自动进行保存,快捷键不可调整 | 4 |
| 用户自定义 | 用户对系统界面,功能的自定义以及二次开发的可扩展 | 博客园的系统洁敏用户可以根据自己的喜好去进行代码编写,可以自定义功能,可扩展性较强。 | 8 |
注:评分满分10分,良好6分,及格4分,聊胜于无1分,很差-3分
(5)经过以上工作,你们一定有充分的理由给这个软件选择一个评价结论: a) 非常不推荐 b) 不推荐 c) 一般 d) 好,不错 e) 非常推荐
通过以上的打分和体验我们给这个软件的结论是:d) 好,不错。
2.阅读《现代软件工程—构建之法》第8.6、14.1节内容,完成以下案例分析任务
(1)使用此软件的所有功能,估计这个软件/网站做到这个程度大约需要多少时间,并说明估算理由(假设团队人数6人左右,计算机大学毕业生,并有专业UI支持)。
- 在对博客园网站进行测试之后,我总结了一下博客园的班级博客的功能。
- 主功能图
graph TB A[班级博客] --- B[班级管理] A --- C[作业管理] A --- D[互相交流]- 班级管理的功能图
graph TB A[班级管理] A --- B[老师] A --- C[学生] B --- 创建班级 B --- D[我的班级] D --- 添加班级成员 D --- 班级结课 D --- 查看班级成员 C --- 我的班级 C --- E[查看班级成员]- 作业管理的功能图
graph TB A[作业管理] A --- B[老师] A --- C[学生] B --- 发布作业 B --- 编辑作业 B --- 关闭作业 B --- 删除作业 B --- 作业评分 B --- D[作业列表] B --- 成绩汇总 C --- 作业列表 C --- 提交作业 C --- 查看作业得分 C --- E[成绩汇总]- 互相交流的功能图
graph TB A[互相交流] A --- B[老师] A --- C[学生] B --- 发起投票 B --- 发布公告 B --- 分享博文 B --- 查看提交的作业 C --- D[发起投票] C --- E[分享博文] C --- 查看公告 C --- F[查看已提交的作业] - 在看了《现代软件工程—构建之法》第8.6节的内容之后,我注意到了书中提到的两种项目估计方法。
- 自底向上。团队成员各自估计底层模块和单个功能(及单元测试)所需的时间,再加上集成及基本测试的时间,就是大概的开发时间。这还没有考虑各个模块之间的相互依赖性。
- 回溯。团队从整个项目最终交付之日往回倒推。
这两种方法都是站在团队的立场上去分析项目完成所要花费的时间,目前该项目已经完工了,作为案例测试人员,我们用这两种方法显然是不太可能的,但是我们可以通过已有的经验对这个项目的完成时间做一个预测。
以网页版为例,从功能上来看,这个项目包含的功能是比较多的。假设团队人数为6人左右,计算机大学毕业生,并有专业UI支持,团队成员都是专业人士,在开发时,可以每个人负责一部分,将要实现的功能一步步细分,实现过程中,先实现主要的功能模块,然后在对每个模块细化,逐步求精。主要功能的实现预估计花费一周时间。班级管理、作业管理、相互交流这些模块,每一个模块又分了好多的功能,预估计每个模块大概需要2个月左右的时间,最终完成整改为项目预计花费67天-70天的时间。
(2)和同类软件相比分析,这个软件目前的优劣,这个产品的质量在同类产品中估计名列第几?
- 优势:
- 博客园的班级博客在我们日常接触到的软件中可以说是一个比较新的交流工具了,它可以以博客的形式发布作业、提交作业,而且班级中的其他成员,包括老师、助教、同学都可以查看你的博客,并对博客进行评论,指出博主博客中存在的问题,已达到共同学习的目的,交流讨论是一项很成功的尝试,吸引了众多高校师生用户。
- 同类的博客网站CSDN并没有此类型的产品。对比同类产品CSDN,博客园更加精简无广告,而且对主题修改的支持更好。
- 其他的作业管理平台如北航的课程中心网站也具有收发作业,点评评分等功能,但是其交流性不高,同学之间很难互相共享学习彼此的作业。博客园班级博客将博客的网络共享、一切皆可链接的优势发挥到了极致。通过博客里的各种链接,我们可以将各种知识、技术分享出来供所有人学习交流。
- 缺点:
- 有一些不是特别重要的bug,比如说作业的截止日期显示这部分,显示的剩余时间不是很准确。
- 在班级博客中点击首页时,不会返回自己博客的首页,而是返回到了班级首页。我觉得这一点设计的不是很合理,应该返回自己博客的首页会比较实用。可以方便查找自己的博客以及撰写随笔。
- 网页版的总体还算可以,许多移动端的APP,功能做的还是非常差。有的有班级博客,但也仅限于查看作业要求以及提交的作业,并不能查看作业得分。甚至一些都没开发班级博客。整体来说,APP对博客的排版还是很糟糕,尤其是处理表格的时候,对于markdown编辑的表格,简直看不出来是一张表格。
- 要说博客园网站的排名,它的排名还是比较靠前的。查找了一下资料,关于博客园班级博客的排名,并没有找到确切的数据。但是目前很多高校都在实用博客园班级博客,因此在同类产品中我认为博客园班级博客应该是首屈一指的。
(3)综合判断,给出这个软件团队在软件工程方面可以提高的一个重要方面(具体建议)。
“软件=程序+软件工程”,因此想要提高软件的质量,我们必须要从程序的质量和软件工程的质量两个方面下手。程序的质量体现在软件外在功能的质量上。作为专业人士,这一点是毋庸置疑的。就提高软件功能的质量方面,有以下几点建议。
(1)我们应该顺应时代的潮流,多学习先进技术,通过不断的进行市场调研,找到需要改进的方面,用学习到的先进技术,不断推出最适应用户的最新版本。尤其是手机版APP的开发,目前手机应用市场的这类产品并不是很多,在这上面还有着很大的改进。比如说排版上,还有就是班级博客。作为一个APP,目的是为了更方便用户,至少需要具备网页版的所有功能吧。
(2)应该多做测试,并且了解用户的体验感,不断修复bug,尤其是500错误。还有就是一些功能性的bug,比如在创建班级之前,是否应该先去认证教师身份,不然任何一个用户都可以建立班级。
3.阅读《现代软件工程—构建之法》第8.5节、第9章内容,完成以下案例分析任务:
这个软件/网站有很多可以提高的部分,如果你是该软件新上任的项目经理,你一定非常希望所负责的项目在竞争中胜出,请思考以下问题:
(1)首先,市场有多大?潜在的用户有多少?
相对于CSDN来说,博客园有着CSDN没有的功能班级博客园,班级博客园的好处是可以将一个班级的老师和学生通过班级博客联系起来,方便大家更好的交流学习,此外,班级博客是免费的,而且有来自不同地区不同院校的班级,这就吸引了一大批的学生、老师入驻班级博客来拓宽学习的范围。中国有1000万左右的大学生,大量的师生都有需求使用一款课程平台满足教学需求,其中有很大一部分会使用学校内部的课程中心网站,如果我们的产品能够提供更强大的功能,就可以将这些用户占为己有。
(2)目前市场上有什么样的产品了,它们的优势劣势在哪里?和它直接竞争的产品在那里?
- CSDN:国内另一大博客平台,他的优势是有强大的商业支持,在百度搜索引擎中搜索的技术内容,很大程度会将CSDN的链接推到前面。此外,CSDN的用户也很多,而且很大程度上都是一些专业的人士,CSDN里面的资料一般正确率都是高达80%的,而且里面的内容可以随意复制粘贴下来。甚至还有很多专业人士开发的各类软件或者系统的压缩包。这对于非商业化的博客园平台是一项挑战。
- 各高校的课程中心网站:这些网站采用传统的数据库模式进行下发和上交作业,上交的作业通常只有老师能看到,缺少了同学之间相互学习讨论的氛围。而博客园班级博客采用了不同于传统课程中心的独特方式,是一种基于博客的作业收发方式,充分地利用了互联网的优势,同学之间可以很方便地讨论交流,学习其他人的技术。和其他同行互相学习。
(3)作为新上任的项目经理,这个产品的核心用户群是什么样的人,典型用户长什么样?学历,年龄,专业,爱好,收入,表面需求,潜在需求都是什么?
这个产品的核心用户群是各个高校的老师以及学生,学生当中本科生的人数占绝大多数。这些用户的年龄基本上在18-43岁之间,而且大多数都是IT行业的学生、老师。他们对编程的兴趣比较浓厚一点。这些群体,尤其是学生来说,基本上是没神魔收入的,大多数还处于向父母讨生活费的阶段,只有少部分人可能会兼职赚钱,总来的说收入很低,像CSDN这样的网站是收费的,对学生来说是没有那么多资金去查找资料的,因此这个博客园也成了一个首选学习网站。
这些用户,就老师来说主要是为了改善教学方式,增加师生更频繁有效的互动,老师的潜在需求就是,可以借鉴其他一些高校的教学方式,更有效的提高教学质量。学生使用这个软件,一般来说是为了拓宽学习资源,配合老师的教学。此外,班级博客里面的资源很多,在遇到困难,请求身边的人不能解决或者交流条件有困难时,可以通过博客园来查找资料解决困难。也可分享一下自己的一些经验,帮助其他的同行来解决困难。
(4)功能:你要设计什么样的功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析.
功能
博客园提供代码运行功能预览功能,博客园提供一个平台运行一些小demo可以查看结果,或者定义web代码查看渲染后的实际效果。
- N (Need):需求
- 支持多种语言代码的运行,如c,java,python,c++,go,sql语言等等
- 统计代码运行效率,耗费空间的大小,耗费时间的大小,时间空间复杂度等等
- 提示语法问题错误
- A (Approach):做法
- 征集博客园用户的意见
- 功能的详细设计
- 界面的详细设计
- B (Benefit):好处
- 方便一些小测试
- 查看同行们构建的优秀案例与demo
- C (Competitors):竞争
- 用户基数多,就有不俗的竞争力
- 方便简易使用,不用配置环境,也是一大优势
- D (Delivery):推广
- 博客园本身有不少用户,通过系统消息通知用户
- 各个站点发布广告
(5)如果你有钱可以招聘6个人,有4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
UI设计师1人:
根据产品需求,对产品的整体美术风格、交互设计、界面结构、操作流程等做出设计。负责项目中各种交互界面、图标、LOGO、按钮等相关元素的设计与制作;能积极与开发沟通,推进界面及交互设计的最终实现。
开发工程师3人:
开发工程师根据需求进行客户端软件的设计、开发和维护。与项目相关人员配合共同完成应用软件的开发设计工作。遵循软件开发流程,进行应用及人机界面软件模块的设计和实现。 参与技术难题攻关、组织技术积累等工作。配合项目经理执行开发过程的技术管理工作。根据产品的需求,进行服务器端功能的开发和维护。在产品开发过程中,配合APP/终端/测试团队,确保方案落地。分析和监控服务器运行状况,确保服务器可扩展性和稳定运行。
测试工程师1人:
制定测试产品的测试计划、方案。设计并执行测试用例,对产品进行功能,性能,安全等测试。实施高效的测试活动,并对测试结果进行分析,给出专业报告,与其他部门紧密协作,跟踪缺陷及推动及时修复。维护测试环境,进行测试环境的部署与调试。设计并且开发测试工具,对测试方法进行创新。
运维工程师1人:
对服务器进行日常维护,确保网络连续正常运行。配合数据分析、开发人员进行相关数据统计、参数配置、系统测试及系统监控; 研究运维相关技术,根据系统需求制定运维技术方案。
(6)描述你的团队在16周期间每周都要做什么,才能在第16周如期发布软件的改进版本,并取得预想中的成绩。
| 时间 | 工作 | 备注 |
|---|---|---|
| 5% | 需求提出 | 产品方提出需求,一般进行用户的调研,团队成员确定需求是否合理,是否可行;然后讨论成本,周期等等。 |
| 5% | 需求PRD评审 | 根据需求提出的结果给出demo版本的原型图,涉及的业务和一些交互设计都会讨论确定,这个阶段也要确定ui设计 |
| 5% | 交互设计评审 | 确定一些地方是否合理,ui大大小小的改动 |
| 5% | 概要设计 | 确定使用技术,考虑使用技术出现的相关问题及其解决,考虑到涉及什么服务,增加什么接口,是否新建表啊,表是否增加什么字段啊 |
| 15% | 详细设计 | 研发的时候流程会很复杂,直接去写代码,很容易有问题,详细涉及之后进行开发会明确许多 |
| 40% | 接口定义&开发 | 团队成员要沟通协作好 |
| 5% | 代码review | 好处多多 |
| 5% | 提测&灰度&产品第一次验收 | 提交产品方看是否有什么出入 |
| 10% | 发布计划 | 发布的服务有顺序依赖关系,确定好合适的发布计划 |
| 4% | 产品第二次验收 | 求个好日子 |
| 1% | 需求结束 |
需求分析越规范越是提升效率,会让产品的质量不断提升,对设计考虑严苛更会提升能力,开发时考虑的越多,能力提升越快,知识的广度和深度也是这样积累出来的。
4.总结陈述团队协作学习的方式
方式有很多,主要是找到知识后分享给成员,经过学习和讨论慢慢吸收,团队成员共同学习共同成长。
任务3:完成博文作业
1.记录完成《实验五 团队作业1:软件研发团队组建与软件案例分析》各项任务实际花费的时间;
| 任务 | 时间 |
|---|---|
| 任务1 | 2h |
| 任务2 | 5h |
| 任务3 | 7h |
2.从团队分工角度,谈谈完成本次作业的感受和体会。
杨野:每个人都会有擅长和不擅长的地方,就像一块拼图,如果找到彼此契合的部分,就会组成更完整的一块;对比他人之后更能看出自身的不足,以长补短,共同学习共同进步。
汪慧和:通过本次作业我更团队更加了解和熟悉了团队分工合作,体会了1+3>4,每个软件做出来都有令人不满意的地方,这也就需要软件从事人员通过不断地学习来满足用户日益变化的需求。本次跟团队小伙伴合作的很愉快,在此特地感谢我们团队所有的小伙伴。
李婷华:在团队中合理的分工可以让整个团队的工作进展的更加快速,每个人都有自己的特长,通过团队的方式,在团队中,每个人各尽所长,会比一个人的效果好。但是也会有一些地方做的不是很好,这就需要我们相互学习,共同进步了。
王颖奇:团队合作中,我感觉每个人都可以发挥自己的特长,并与合作伙伴之间取长补短,让任务可以更快,更高效,更高质量的完成;同时,在合作过程,也可以建立更加深厚地友谊。
来源:oschina
链接:https://my.oschina.net/u/4271883/blog/4254219




















