• 大王不高兴 实验五 团队作业1:软件研发团队组建与软件案例分析


    项目 内容
    课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
    作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12709461.html
    团队名称 大王不高兴
    团队的课程学习目标 组建软件项目研发团队;团队协作学习:软件案例分析。
    本作业在哪些方面帮助我实现学习目标 通过进一步和结对同伴的学习,提升团队合作的能力和意识。
    团队博客链接 https://www.cnblogs.com/xiaochenCYR/

    一.团队组建

    1.结对小组两两组合

           (1)王之泰&韩腊梅组和李瑞红&陈亚茹组两个小组组合为软件项目开发团队。

           (2)开通团队博客,并加入到班级博客

    2.团队介绍

           (1)队名:大王不高兴

           (2)团队成员组成

    成员学号 成员姓名 个人博客地址 备注
    201771010131 王之泰 https://www.cnblogs.com/hackerZT-7/ PM
    201771010108 韩腊梅 https://www.cnblogs.com/hanlamei/ ----
    201771010111 李瑞红 https://www.cnblogs.com/LRHLRH123----/ ----
    201771010103 陈亚茹 https://www.cnblogs.com/980303CYR/ ----

           (3)成员风采:介绍每位队员的风格、擅长技术、编程兴趣、希望的承担的软工角色(文档、开发、测试、PM等)、一句话宣言等;

    姓名 承担角色 个人介绍 个人宣言
    王之泰 PM,开发 擅长写文档 本人是爱喷队友的小菜鸟0号
    韩腊梅 测试 风格:高冷话少;
    擅长:页面设计;
    编程兴趣:前端。
    月亮不睡我不睡,我是秃头小宝贝
    陈亚茹 文档 也就只能写写文档了 本人是战战兢兢的小菜鸟1号
    李瑞红 测试 做一下测试。风格:无 本人是如履薄冰的小菜鸟2号

           (4)请阅读《现代软件工程—构建之法》第7章,理解MSF的9点基本原则。

     理解总结知识点如下:

      ①推动信息共享与沟通

      第一个原则,就是所有信息都保留并公开,讨论要包括所有涉及的角色,决定要公开并告知所有人。当然,对牵涉到的技术机密,安全性等信息采取必要的保护措施。随着项日复杂度和团队规模的增加,没有信息共享与沟通是万万不行的。

      ②为共同的远景而工作

      这个“共同的远景”是指产品的远景。我们做一个产品,不管是应用软件、行业软件,还是通用软件,要明确项目的目标是什么。“共同的远景”,即团队的领导人要让全体成员都同意并为之奋斗的项目的远景。

      ③充分授权和信任

      在一个高效的团队中,所有成员都应该能得到充分的授权。他们有权在职权范围内按照自己的承诺完成任务。同时.他们也充分信任其他同事能实现各自的承诺。类似地,团队的顾客(包括内部和外部的顾客)也认为团队能兑现承诺,并进行相应的规划。充分授权的管理方式是MSF的核心观念之一。

      ④各司其职,对项目共同负责

    关键质量目标 MSF小组角色 出口条件
    按约束条件交付产品 项目经理 项目经理们的项目是在时间/资源的条件内交付的么
    按产品规格说明交付 开发 我们是否按照功能说明完成了各项功能
    保证所有问题都得到处理 测试 我们发现了所有的问题,而且都有处理方案吗
    产品部署和后续管理 发布管理 客户是否能快速方便地部署产品和进行后续管理
    让客户满意 产品管理 产品是否适应用户的使用习惯?易学易用

      团队的各个角色合起束,对整个项目最终的成功负责。每个角色在其职责范围内的失败都会导致整个项目的失败,而且各个角色的工作都是互相渗透、互相依赖的。这种互相依赖的方式也鼓励团队成员在自已本职之外为其他领域做贡献。

      ⑤交付增量的价值

      如果我们没有搞清楚我们的项目会解决什么问题,为谁解决问题,为什么它会解决问题,以及怎样才能拿到客户的报酬,那我们的项目还不能算是真正开始。

      ⑥保持敏捷,预期和适应变化

      软件工程,唯一不变的是变化。所以干脆别幻想客户的需求会在第一时刻很明确,然后保持不会变。但要注意,我们是预期变化,不是期望变化。除开外部原因,团队内部也在变化,我们对技术的掌握每天都在提高,原来认为不可能的事可能变得容易。我们对客观世界和软件系统的了解每天都在深化,原来觉得没问题的小细节忽然成了大问题。甚至原来一起打拼的同事忽 然要离开.....这些都要求我们团队保持敏捷的身段。

      ⑦投资质量

      对质量的重视,引发对质量的投资,引发对人、过程和工具的投资。

      ⑧学习所有的经验

      在学习过去的经验的同时,也要避免让过去的经验妨碍解决现在的问题。这一原则有两个含义:把经验总结出来;分享经验。MSF在每一个里程碑结束时都要做一个 “里程碑回顺”.这个回题不必等到整个项目结束才做。这样做的好处是,大家对最近的成败都记忆犹新,能提供比较准确和全面的反馈:如果发现了错误,可以马上研究解决办法。在下一个里程碑中通过实践来验证。

      ⑨与顾客合作

      MSF强调产品团队与顾客的交流与合作,并不是产品团队拿到合同之后,就闭门造车,直到产品完成才告诉用户,给他们一个惊喜。项目当然是项目团队成员做的,但是项目的商业价值要由用户说了算。那些“我觉得用户会喜欢”的东西要及早和用户交流。因为“我觉得"和“用户觉得”是两码事。

           (5)组建团队企业微信群,给出群成员截图

           (6)团队特色描述,言简意赅的描述团队特点或核心竞争力

      本团队最大的优点有三个,凝聚力,执行力,敢发声。

      整个团队都是围绕做好项目这个目标而努力;队长布置任务后,能严格按照规定时间提交任务甚至提前;不只有队长一个人在发声,当有不同意见或队长的主意偏离目标时,团队成员敢于提出质疑和想法。

    二.软件项目案例分析(案例分析作业以邹欣老师博客1和2为基础改编)

    1.案例选择

      现代社会,人们很多时候要和软件打交道,手机游戏、微信、QQ、中国铁路12306等等。软件工程学习中,通过这些软件案例的分析、 评测、辨析和总结,我们就能看到软件工程的原理和原则在工程实践中的种种体现和应用,从而加深对软件工程知识内容的理解,帮助我们在软件项目实践中做得更好。

      因为本团队使用博客园这个网站已经有两年的使用体验,对该网站的功能有多次的使用,而且接下来的学习中还会继续使用,选取该案例有助与我们以后更好的使用该网站。所以本团队选取案例1作为分析案例:

    案例 案例描述
    案例1:博客园班级博客        请对博客园的班级博客中针对院校+班级为对象的班级管理、作业管理、互相交流的功能进行分析,这一方面的参照对象是:CSDN。另外,班级博客的作业管理、班级管理等功能在手机上做得如何呢?有什么可以改进的?
    案例2:VS和VS Code        微软公司有两个代码编辑器:Visual Studio、VS Code,它们的目标用户,主要功能有何不同?为何要有两个编辑器和开发环境?请用这两个编辑器/IDE写出一个简单的C/C++/Python程序,记录程序耗时多久运行成功?描述你的发现。给出程序和运行结果截屏。
      Visual Studio (Community)社区版指的是可免费提供给单个开发人员,给予初学者及大部分程序员支持,可以无任何经济负担、合法地使用的版本。官网下载链接:
    https://visualstudio.microsoft.com/zhhans/rr=https%3A%2F%2Fwww.microsoft.com%2FzhCN%2Fdownload%2Fdetails.aspx%3Fid%3D48130
    VSCode发布站点:https://code.visualstudio.com/
    VSCode源代码git地址:https://github.com/Microsoft/vscode
    VSCode作为一个开源的项目,github平台有许多IT人士在为此项目做出贡献,参照本篇博文后ffl((范飞龙老师)的建议可以学习github协作开发的技巧和方法。

    2.案例选择阅读《现代软件工程—构建之法》第8章、第12章内容,完成以下案例分析任务:

           2.1 下载、部署并体验案例软件的功能

           (1)博客园网站功能体验

    • 首先用自己的学生账号登录博客园,我们会看到首页界面如下图,然后针对院校+班级为对象的班级管理、作业管理、互相交流的功能进行简要分析。

      ①对于班级管理功能,在班级博客界面,我们可以在首页看到一些推荐的活跃班级以及热度较高的作业博文

    • 点击校区,可以看到全国使用博客园的校区

    • 我随机的点击了福州大学,可以看到该大学使用博客园的所有的班级

    • 随后返回,点击班级,可以根据条件筛选班级信息

    • 可以点击“我的班级”,对自己所在的班级进行选择,然后查看自己班级发布的作业公告等

      ②对于作业管理功能,我们首先可以看到所有博客园班级的作业按照时间顺序排列

      ③对于互相交流功能,班级博客中的博文和评论功能都可以让用户交流沟通

    • 在博文功能下,可以查看别人的优秀博文进行学习,并评论与作者交流

    • 在评论功能下,评论按照时间顺序排列,你可以看到最新的评论,并参与评论

           (2)博客园APP功能体验

    功能板块 详细功能介绍
    “登录”板块
    (1)软件开始界面;
    (2)账号登录界面;
    (3)账号注册;
    (4)登录验证。
    “我的博客”板块 (1)查看自己的博客;
    (2)查看博客评论以及回复评论;
    (3)收藏博客以及分享博客。
    “我的班级”板块 (1)点击班级名称,可以选择自己所在的其他班级;
    (2)查看班级公告;
    (3)查看班级博客作业要求以及提交作业;
    (4)通过条件判断查看相应博文;
    (5)发起投票。
    “个人信息”板块 (1)显示自己的账号信息,包括:头像、昵称、园龄、博客地址;
    (2)日程提醒,提示下次交作业的时间;
    (3)收藏列表,显示收藏的博客;
    (4)浏览记录,显示自己查看过的博客;
    (5)设置,包括黑暗模式以及是否接受推送;
    (6)关于APP的基本介绍;
    (7)退出登录。

      
      具体使用软件截图如下所示:

    • “登录”板块

    • “我的博客”板块

    • “我的班级”板块

    • “个人信息”板块

           (3)为了方便后面的比较测评我们也对CSDN网站功能做了体验

    • 首先用自己的学生账号登录CSDN,会看到首页界面如下图,然后同样针CSDN的部分功能进行简要分析。

    • CSDN采用虚拟学院班级形式,我们在学院界面可以看到很多课程,这些课程通过学习内容来进行划分

    • 这些视频课程的学习者就相当于一个班集体,我们可以根据自己的需求选择相应的课程进行学习。

    • 选择一个课程进入学习,我们可以看到课程介绍、课程目录、同学笔记、最新评论四个功能,我们可以通过学习其他同学的学习笔记、发表自己的学习笔记来和同学进行沟通交流。

    • 也可以通过查看评论,回复评论进行沟通交流。

    • 除了这些沟通之外,返回至首页,其中的论坛板块在用户学习交流过程中也起到了重要作用,用户可以通过论坛的分类,快速地找到相应的论坛,在论坛里面和其他用户分享学习成果。

           2.2 描述使用案例产品的过程,产品解决了用户的问题么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?

           (1)博客园网站

      通过对博客园网站功能的再次使用,总的来说使用体验很棒。就我们团队看来博客园网站这一产品很好的解决了高校班级群体的一些功能需求,从创建班级,添加成员,发布作业,提交作业等等功能,建立起了供一个个学习群体的学习、沟通交流、分享的平台。

      通过与CSDN的测试对比我们发现了以下优缺点:

      数据量方面,CSDN网站比较占优一些,因为不管是从用户量还是用户种类上来说CSDN都要比博客园多一些,而且可能是因为CSDN商业化做的较好的原因(也就是掏钱了),所以在百度等引擎搜索一些博客园和CSDN都有的技术博客内容时,CSDN的排在检索列表的靠前地方。

      界面方面,这一方面博客园做的非常好,因为它不但有多种多样美观的界面模板样式,而且用户还可以自定义CSS样式,添加JS文件,自主设计博客界面。就这一点吸引了大量的用户。而CSDN无法自主设计不说,只有单调的几个固定的模板样式。

      功能方面,博客园在班级管理这一方面,做的非常好,很好的满足了各大高校群体的功能需求,而CSDN则完全没有班级模块这方面的设计。

      用户体验方面,博客园简洁而便捷的设计大大提升了用户的体验度,CSDN则不然,其过多广告的植入使用户体验变得极差。而且CSDN大部分操作都需要注册用户才可以使用,这种强制注册的设计让用户极其不爽,博客园则是不用注册也可以浏览学习。

      准确度方面则大体相差不多,我们团队估计,都是采用关键词检索这一技术,搜索用户想要的内容。

      我们可以很容易地发现,博客园在班级管理模块做的很好,提交作业、查看班级同学博客、查看班级公告等功能都很完美,用户体验也很好。但对于相互沟通交流功能而言,博客园明显做的没有CSDN好,CSDN不仅支持以评论博客和课堂评论的方式进行交流学习,而且通过撰写和阅读学生笔记增强对知识点的掌握程度,同时CSDN的强大论坛功能更是用户之间相互交流沟通学习的宝地。

           (2)博客园APP

      在使用案例产品的过程,产品解决了用户使用电脑查看博客园不方便的问题,这样而来用户即使不随身携带电脑,仍然可以用手机软件登录博客园。除了方便用户使用之外,对于用户对博客园的一些常用操作也基本满足,比如:查看自己的博客和评论、查看班级作业要求、提交作业、查看其他同学的博客等等。并且软件还有自己的创新部分,比如黑暗模式,这个模式满足了用户对于视力保护的需求。所以总而言之,该案例产品基本解决了用户的问题,但在解决的时候存在一些bug,希望后期可以不断地完善。

     软件在数据量/界面/功能/准确度上的优缺点:

    • 数据量

      • 优点:考虑到不同机型可能在使用上存在差异,所以软件在测试阶段,采用了小米、华为、三星S8、Custom Phone6.0、Google Nexus这5种机型对软件进行测试,从测试结果中可以看出软件在这5种机型上的基本操作都正常,这样可以增加用户的使用数据;
      • 缺点:对于部分机型还是不适用,苹果手机用户在所有手机用户中也占有较大比例,但由于苹果手机和其他手机系统不同,所以本软件不支持苹果手机用户使用。
    • 界面

      • 优点:登录界面以及个人信息界面美观;
      • 缺点:我的博客界面不够美观,并且部分博客表格不显示,博客界面布局也存在问题。
    • 功能 

      • 优点:功能较全面,并且基本功能都可以正常使用;
      • 缺点:部分功能存在bug,比如:在发起投票时,会提醒发送失败,但实际已经成功发送等。
    • 准确度

      • 优点:在注册新账号时,对于邮箱、手机号以及登录用户名等都有相应的限制。
      • 缺点:在登录的时候,点击左下角记住我,即下次登录会自动使用之前账号,但实际情况是每次都需要重新登录。

      用户在体验过程中,该软件带给用户最大的感受应该就是便捷了,可以在手机上通过该软件来登录博客园,并进行简单的操作。但用户在体验的时候也会遇到很多问题,比如:每次登录都需要重新输入用户名和密码;使用过程中总是弹出“身份信息过期,请重新登录”;在发起投票时,会提醒发送失败,但实际已经成功发送等等。这个问题虽然对软件的功能没有太大影响,但是用户在实际使用过程中会因为这些细节问题而感觉对该软件的体验感变差。

           2.3 对产品有什么改进意见

           (1)博客园网站意见

      对于该网站大多功能已经做的很好了,有一点是当班级成员点开作业链接提交作业后,班级内的热门博文没有实时更新,或许是服务器的问题又或者是代码逻辑的问题,在作业提交后的一段时间内更新,但用户的体验就很不好,所以建议在此处做一些适当调整或提升。

      博客园的作业剩余时间也是应该做出修改的地方,让时间随着时分的变化,或者自动随着时间的变化而变化,本次作业的提交剩余时间为10天,但是却显示为剩余1周,就很容易让人误解,导致有些同学提交不了作业,或者赶时间作业完成度降低。如下图所示。

           (2)博客园APP意见

      app的一个最大的特点是便捷性,该产品最该改进的功能就是博客园评论功能的实时通知与回复。但这个功能需求仍然没有实现,仍然只能通过发送邮件的方式收到回复通知。如果在移动端收到回复时,能够手机弹出消息提醒,用户就能够像实时聊天一样便捷地与评论者回复交流,相信会有更好的使用效果。
      
      而且使用APP有时候网络不稳定时使用十分困难,部分页面存在打不开的现象,一些页面设计仍然较为粗糙,部分功能做的不够细致化。并且官方并没有推出相对应的APP,在应用市场下载时有很多版本的博客园app,让人找不到对应的那一款。

           2.4 对该网站进行定量的测评

      我们以如下表格的形式展现本团队对该网站的测评:

    类别 描述 评分(满分10分,良好6分,及格4分,聊胜于无1分,很差-3分)
    核心功能 分析三个核心功能 10
    细节 有什么为用户考虑的细节? 9
    用户体验 当用户完成功能时,不干扰用户 (例如: 是否不断弹出不相关广告)。 9
    辅助功能 一些辅助功能如皮肤等 10
    差异化功能 这个软件独特的功能. 它对用户的吸引力有多大? 9
    软件的效能 占用内存, 启动速度, 内存泄漏情况 9
    软件的适应性 在联网/断网, 大小屏幕, 没有鼠标的情况下都可以顺畅操作. 和不同平台的软件能流畅协作 8
    成长性 记住用户的选择, 适应用户的特点,用户越用越方便 8
    用户有控制权 系统状态有反馈,等待时间要合适。关键操作有确认提示,有明确的错误信息。 让用户方便地从错误中恢复工作, 快捷操作键可调整。 9
    综合评分 9

           2.5 经过以上工作,你们一定有充分的理由给这个软件选择一个评价结论: ( D )

                  A) 非常不推荐   B) 不推荐   C) 一般   D) 好,不错   E) 非常推荐

    3.案例选择阅读《现代软件工程—构建之法》第8.6、14.1节内容,完成以下案例分析任务

           3.1 使用软件,估计该软件/网站做到这种程度大约需要多少时间,并说明估算理由(假设团队人数6人左右,计算机大学毕业生,并有专业UI支持)。

           (1)项目WBS

           (2)阅读内容总结

      通过阅读8.6、14.1节内容,总结书中提到的方法,估计这个软件/网站做到这个程度大约需要的时间,假设并不是没有根据的给出答案。

    “我们其实并不是不会估计,我们真正不会的,是把估计后面藏着的种种假设全部列举出来”。这句话指出了假设在估计过程中的重要作用,做出合理的假设,才能使得我们的估计不偏离实际。
    ---软件工程专家Paul Rook

      
      Wideband Delphi估计法,这是一种结构化的方法,严格按照流程执行。Wideband Delphi估计法的目的不是比较估计的准确性,而是在较短的时间内让团队充分沟通,交换意见。这种估计法的主观性比较强,估计值缺少客观的统计,可能会有很大的偏差,因此,我觉得这种方法可以用于软件项目准备阶段的粗略估计,不适合做项目的精确估计。

           (3)分析

      在这个案例中,我们假设团队人数6人左右,计算机大学毕业生,并有专业UI支持,总体来说,这个团队的整体实力处于中上游水平。根据当前了解的情况和掌握的资源,可以进行分块估计。

           (4)估算表样例

    项目名称 博客园项目估计
    标识 task1
    负责人 团队队长
    估计日期 2020年4月16日
    假定及理由 假设项目组人员和资金充足
    待估量 登录模块开发进度
    估计值 14天
    估计值计算方法 取平均值

           (5)汇总估算表样例:

    WBS Activity 初值 change1 change2 ··· 终值
    task1(登录模块) 3 3 3 ··· 3
    task2("我的博客"模块) 20 21 22 ··· 21
    task3(班级模块) 22 23 24 ··· 23
    task4(个人信息模块) 22 24 24 ··· 23
    和值 67 71 73 ··· 70

      最后通过估计得出加权平均,实现博客园网站的开发需要为期70天。

           3.2 和同类软件相比分析,这个软件目前的优劣,这个产品的质量在同类产品中估计名列第几?

           (1)博客园网站:

      如图所示,在CHINAZ站长之家的博客类网站排名中,博客园网站排名居第三名。

    • 优点:
      • 搜索命中率比较高,在百度上搜技术类问题时也会出现很多博客园的内容,应该是做过SEO优化的。
      • 感觉实用的文章也挺多的,博客园上面也经常有不错的专题类系列文章。
      • 博客园收录机制控制不太好,有可能出现原创文章被人转载之后,原创者没有阅读量,而转载者却阅读量爆棚。
      • 提供了较大的界面风格定制空间。
    • 缺点
      • 由于定制空间较大,导致每个博客版式不统一,看内容需要来回找,甚至有的时候都认不出来是博客园了。
      • 除了写博客看文章之外,其他的业务资源比较少。
      • 不提供排名机制,看不到总访问量,总排名。
      • 博客园的编辑器(例如Markdown)使用比较复杂,写作效率不是很高。

           (2)学生团队开发APP

      我们对目前应用市场存在的三款博客园APP做了横向对比。

      主界面功能展示:

      与博文之前展示学生团队APP相比,这三款APP都添加了博文搜索功能,为用户提供方便。且主界面均显示为博文小广场,展示最新园内博客。而之前所测试APP主界面展示为登录用户所在班级博文,无法现实此外其他人的博文,适合学生使用,而不适合大多数相关专业人使用。

      三款软件在主界面上方均提供了导航栏,软件一在导航栏增添了精华博文展示功能,为用户挑选了点赞和评论数较高的博文。软件二还添加了账号关注博文的展示。我们认为软件三的导航栏设置最为合理,对博文按照技术类型进行了栏目区分,用户可以直接进入自己需要浏览的栏目区寻找感兴趣的博文。

      在下方状态栏中,这三款APP的功能都比较全面,用户可以从多方面浏览博文。学生团队APP中状态栏主要包括班级博客、“我的班级”和个人资料设置三个栏目。我们认为我们认为学生团队开发APP的优势在于提供了明确的班级入口,方便用户进行班级模块操作。三款APP与学生团队APP共同的特点是界面简洁明朗。

      个人账户资料界面对比:

      从三款软件的个人账户界面对比来看,软件三的功能最为全面,且较为新颖的添加了字体设置功能,软件开放了源码并提供了内测邀请连接,可见软件三的后期维护最好。

      相比于这三款APP,学生团队开发APP在个人账户界面提供了浏览记录和收藏列表等入口,但是软件缺少了“我的博客”的入口,用户难以直接查看到自己的所有博客列表,但是创意性的开发出了暗黑模式,对于视力较差的用户来说相当实用。

      可以看出目前博客园软件虽然评分比较高,但是下载量都不是很高。主要是在于软件面向的用户只限于IT行业相关用户。当然,这也与博客园APP存在许多功能上的缺陷有关,例如上图中第三款登录显示404错误、无法全屏显示等问题。此外,相比于新浪博客、LOFTER等比较成熟的博客类APP来说,博客园软件的稳定性和功能的完整性都不是很高。时至今日,博客园也没有推出功能比较齐全的官方APP。

      综上所述,我们估计学生团队所开发APP在一众博客类软件的对比下排名应当不是很高,大致处于五六七名之间徘徊。

    • 优点:
      • APP的优点在于功能专一,主要突出“我的博客”以及“班级博客”两个模块。
      • 具备了博客园网页端的基本功能,用于IT类技术性博客的浏览。
      • 界面纯净简洁而且直观,用户的观感比较好。
      • 博文下方设置了收藏、评论和分享三个按钮,对用户来说操作简单。
      • 设置了暗黑模式,保护用户视力(该功能实现尚不完整)。
    • 缺点:
      • 目前软件存在的bug还是比较多,需要继续优化。
      • 相比于市面上已经存在的几款博客园APP来说,我认为软件缺乏了搜索功能。
      • 文章加载比较慢。
      • APP内目前只显示个人博客以及班级博客,他人博客除非点击链接跳转至网页,否则不显示,个人认为软件缺了一个资讯广场。

           (3)与CSDN相比

      CSDN商业化气息更重,也许你刚好找到了你想要的文章,可是它却无法查阅,要积分,这会使得你的体验变差,下次也许不会在来CSDN查找知识。而更愿意去免费的博客园。

      CSDN的界面美观程度不如博客园。

      CSDN规范化欠缺,文章看上去比较零散,没有博客园那样使用了班级进行集中管理。这使得CSDN也会损失一些用户。

      而且CSDN页面存在大量广告,相比来说,博客园更加精简,而且对主题修改的支持更好。

           3.3 综合判断,给出这个软件团队在软件工程方面可以提高的一个重要方面。

     这个软件团队在博客园的功能的细节方面的处理可以进一步提高。

      ①在软件开发的过程中文档记录是非常重要的,此项目在GitHub仓库中并没有相关的文档记录,个人认为这会在代码复审和软件测试的过程中带来一定的问题。应当在开发过程中注意文档的撰写,还应当制定代码规范,统一团队成员的代码风格。

      ②软件目前主要面向的用户是计算机系的学生,主要功能停留在“我的班级”模块,我们认为可以把软件用户扩展到广大的博客园网站使用者,增加一些IT从业者经常会用到的功能模块。

      ③推送消息!收集用户使用app的习惯,数据。来推送相应的对于用户来说感兴趣的消息。

    4.案例选择阅读《现代软件工程—构建之法》第8.5节、第9章内容,完成以下案例分析任务:

      这个软件/网站有很多可以提高的部分,如果你是该软件新上任的项目经理,你一定非常希望所负责的项目在竞争中胜出,请思考以下问题:

           4.1 首先,市场有多大?潜在的用户有多少?

      目前来说,根据本团队的调研该网站的市场相当庞大。大部分用户为各高校的教职工老师企业导师和大学本科生、研究生等,数量大约在千万以上。但这还不仅仅是全部用户,企业公司乃至一些以集体为单位的集合都是潜在用户。只要根据这部分人的需求,增加改善相关功能,市场还会进一步扩大。而且博客园唯一的竞争优势就是几乎免费且开放而且针对性较强,很好地抓住了相关专业用户的内心思想,相比较而言,用户更容易接受功能使用体验差距不大且性价比较高的。

           4.2 目前市场上有什么样的产品了,它们的优势劣势在哪里?和它直接竞争的产品在那里?

      目前市场上有三类产品主导技术类博客论坛网站:CSDN,博客园,简书、知乎等平台。

      第一类竞争的产品是CSDN平台,这个平台主打的是技术心得交流,完全没有考虑到高校、企业这些小圈子的需求,它是从宏观的一个角度看待用户,只要接触互联网那么你肯定就会有技术方面的需求,而这个平台集合各种各样的技术博客、资源乃至教程。所以他的用户并不仅仅局限于一些专业相关人士。所以在班级管理等这些方面它并没有与博客园竞争。其优势是有强大的商业支持,在部分搜索引擎中搜索的技术相关内容,大多都会将CSDN平台相关的技术资源、博客推到顶部。这对于非商业化的博客园平台来说是一座高峰,但正因为CSDN的过度商业化导致部分高校群体和小型企业用户流向了博客园,因为这部分群体并没有太多收益投入到学习性资源的使用。

      第二类竞争产品是知乎、简书等平台,这些平台客户杂乱,而且内容种类繁多。唯一的优势就是综合性强,并不针对某些特定人群。但因为他的专业性不足使得CSDN和博客园两大平台完全不会担心用户的流失。

      至于各个高校自主研发的学生作业提交平台,完全没有与以上产品竞争的资格,首先用户量有一定的上限,而且各个高校能否联合起来共同使用同一款还尚未可知,其次开发维护的资金来源仍然是巨大的问题。

           4.3 作为新上任的项目经理,这个产品的核心用户群是什么样的人,典型用户长什么样?学历,年龄,专业,爱好,收入,表面需求,潜在需求都是什么?

      我认为该产品除非做出巨大改变,不然其核心用户群体依然是高校的教职工团体和各个高校的学生,学历为本科乃至更高,年龄大多在16——45之间。以后随着编程技术的低年龄普及化,可能还会加入初高中生等群体,而专业基本大都为工学类且偏向电子信息专业的学生,爱好这些,每个人各有不同,以及在学生时代就有收入就更是少之又少了。

      这些用户的表面需求大都与实际教学、学习相关,老师与助教发布作业,与其他企业导师互动了解前沿技术,学生探索学习并提交作业;潜在的需求也有很多,怎样才能更好地管理班级学生;如何提高师生之间的交流频次;如何让学生真心求学,而不是流于形式化的作业提交等等。

           4.4 功能:你要设计什么样的功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析

      设计优化适宜的检索功能。

    • N(Need):需求
      • 广大用户需要搜索到自己需要的博文。
      • 用户需要向开发者反馈软件使用过程中的问题。
    • A((Approach):做法
      • 优化搜索栏,也可以模仿上文中软件三,添加一技术类型为区分的导航栏。
      • 实现用户交流社区模块或者帮助与反馈入口
    • B(Benefit):好处
      • 满足用户精准找到所需博文的需求
      • 满足用户对软件问题的反馈,也有利于软件后期的维护和继续开发
    • C(Competitors):竞争
      • 同类博客园软件之间的竞争
      • 知识共享型软件之间的竞争(例如知乎,CSDN等)
    • D(Delivery):推广
      • 可以在各大高校的计算机系进行推广
      • 增强软件自身优越性,提高在IT行业从业者之间的口碑
         下面用简明的语言总结我们的NABCD:
          我们的产品博客园是为了解决各大高校以及小型企业群体的痛苦,他们需要搜索到自己需要的博文,,但是现有的产品并没有很好地解决这些需求。我们有独特的办法,即添加搜索栏,实现用户交流社区模块或者帮助与反馈入口,它能满足用户精准找到所需博文的需求,远远超过竞争对手。同时,我们可以在各大高校的计算机系进行推广,就能很快地让目标用户知道我们的产品,并进一步传播。

           4.5 如果你有钱可以招聘6个人,有4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?描述你的团队在16周期间每周都要做什么,才能在第16周如期发布软件的改进版本,并取得预想中的成绩。

      在招聘的6个人里面,我们感觉开发人员要占多数,其余人员可以按照任务的量分配。会让4个人负责开发,其中2个人前端,2个人后端,另外的两个人1个负责美工,一个负责测试。
    下面是角色(开发,测试,美工等等)分配。

    时间 工作
    1-2周 调研用户需求
    3周 制定需求文档
    4周 设计网站架构,明确各部分工作
    5-9周 不断迭代
    11-12周 测试并发布alpa版本,收集得到的反馈信息
    13-14周 根据得到的反馈修复bug或完善功能
    15周 发布beta版本
    16周 后期的部署与维护

    5.团队协作学习方式总结

      本次学习我们团队采用的是总分总的学习形式学习、分析。顾名思义,先团队一起确定学习目标以及分析任务,每个人提出自己的看法,之后由队长根据成员具体情况进行细致任务划分,各成员每完成一个任务点就在微信群中通知,以便于其他成员审核并提出修改意见。各成员完成所有任务后在微信群中分享自己的看法、心得体会,反思自己的不足向其他成员提出建设性的意见。之所以采用这种学习因为是第一次团队学习,这样的学习利于队长了解每个人的能力,态度以及想法,便于以后的任务划分。增加各成员之间的沟通,消除陌生感,在以后的学习中能够更加紧密的合作分工,打下良好的基础。

      这种学习方式就好比“揉面团”。一个大面团,团队里的每个人揉起来都非常的吃力,且效率不高。但将这个面团按照每个人的能力范围适当划分开来,分成几个小面团。这样每个人就都能有游刃有余的完成。再由队长将这几个小面团揉到一起,和成一个大面团。

    三.记录完成《实验五 团队作业1:软件研发团队组建与软件案例分析》各项任务实际花费的时间;

    任务 花费时间(h)
    任务一 2.5
    任务二 7.5
    任务三 8

    四.从团队分工角度,谈谈完成本次作业的感受和体会。

      本次团队学习任务是在之前结对小组的基础上两两组合而成。多了一倍的人,并不像是“人多了,事就好办了”,人多固然有人多的好处,但也伴随着相当的弊端。人数多的优势在于,任务划分能够更加细致,每个人的任务可以减小一些。但如何根据每个人的能力划分这不是一朝一夕就能够做到的,并且我们以总分总的学习方式分析本次案例,一旦有个别成员分配的任务完成较慢,那整个团队的进度就慢了下来。

      团队学习比起小组来说最大的优势就是能够多角度看待问题,每个人思考同一个问题时就有四个不同的看法,而以小组学习时,两个人的想法是很有可能重复的,而且一个人容易受另一个强势的人的影响而导致失去自己的主见。经过这次团队学习,我们相信在以后的团队任务中,分工合作会越来越好。

  • 相关阅读:
    vue 父子组件传参
    vue中引入swiper(vue中的滑块组件vue-awesome-swiper)
    border-radius值的解析
    chrome开发工具指南(十四)
    chrome开发工具指南(十三)
    Python动态强类型解释型语言
    go基础 01
    代码发布 04
    代码发布03
    代码发布02
  • 原文地址:https://www.cnblogs.com/xiaochenCYR/p/12711088.html
Copyright © 2020-2023  润新知