2020软工第一次结对作业
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2020/homework/11224 |
这个作业的目标 | 尝试用软件工程的思想编写一个小型应用软件 |
学号 | 031802129 031802133 |
原型设计 | https://modao.cc/app/0b1f9e784d4a01948ef152e4a1d3a909a671d23e?simulator_type=device&sticky |
结对名单
谢林煌 031802133
吴涣祺 031802129
项目定位
我们的小程序名字叫学长通。我们在分析了客户的需求后,知道了此项目为实验室或同社团的同门师兄弟们提供一个能够轻松获得彼此信息的平台。师兄弟们的信息通过名片的方式整合,并依照所属实验室或社团整合成为一个名片夹。在同一个实验室或社团的同学们可以彼此看到对方的名片。大家也可以为没有加入这个平台的学长学姐们添加名片,分享你所知道的信息。将实验室的师兄弟们整合为一个圈子,大家可以在圈子里面组织线下活动,面面基,增加彼此的了解,并且更能有效地交流。在圈子里面也可以发布问题寻求学长学姐们的帮助。并且大家也可以加好友,创建群聊,在群里聊天或者进行私聊,再也不怕在群里聊天太尴尬了!
需求分析
Need-需求
我们通过分析客户的现实担忧,提炼出了客户的几点需求:
- 无法确切得知学弟的研究方向,热心的学长们希望了解学弟们当前研究的方向,特长,但是因为毕业离开了实验室,没有有效的消息来源。
- 没有了解学长的现状与去向的渠道,学弟们同样很希望了解师兄们的去向与现状,但是却苦于消息来源少,很难得知哪位同学或导师还与其有联系。
- 缺乏有效的沟通方式,学长与学弟们通常通过微信等聊天软件交流,效率低下。许多学长学弟们通常只能互发消息,但是却不能更进一步的深入了解。
- 希望得到学长在工作,生活或者技术上的帮助,学弟们可能希望学长们能帮忙内推,或者解决某些学习,工作上的问题,学长有时也希望能得到学弟的帮助,但是缺乏可供使用的一个平台。
- 希望有私密的沟通方式,在群里聊天实在是太尴尬了!何况是有那么多不熟悉的学长学姐或者学弟学妹的情况下!大家都希望能有个方便使用且私密的沟通方式。
- 想要知道自己工作或生活的附近有没有同门师兄,途经或生活于某地,不想与近在咫尺的同门师兄失之交臂。
- 担心自己的,或他人的隐私泄露,如果将自己的详细信息放在谁都能看的地方,岂不是很危险。
Approach-做法
对于客户们的需求,我们将创建一个小程序,并包含如下功能:
- 名片功能:通过完善自我信息,可以向他人展示自己现如今的去向所在,拥有的技能特长,现如今的研究方向,以及自己的联系方式
- 拓展他人名片功能:很久失去联系的学长可能无法得知这个小程序,但可以通过已使用此小程序的学生或导师贡献自己所知的社团或实验室的学长资料,方便之后的学弟联系。
- 线下活动功能:线上聊天远不如面对面聊天来得高效,线上无法表达的不如线下见一面,可以制定一个发布活动的功能,社员可选择报名参加活动。
- 私信功能:可以方便社团或实验室同门之间一对一交流,避免群聊尴尬。
- 发布问题功能:可向相应实验室或社团的学长提问,问题将推向相应社团或实验室的所有人,以寻求相应的帮助。
- 搜索功能:可以根据地点来查看周围有没有自己已加入过的社团的同门,也可根据名字来精确查找。
- 隐私自定义功能:可以设置自己的资料查看的范围,比如只有互相关注的人或自己加入的社团的人才可查看,自己贡献的学长资料只允许相应的社团的人查看,而非自己加入的所有社团
- 管理员功能:每个社团或实验室圈子可以设置1~3个管理员,只有管理员允许才可加入社团,实现对外的相对封闭性。
Benefit-好处
- 能快速知晓同门信息:名片提炼了最主要的联系信息,通过搜索功能可以快速锁定希望搜索的某种类型的人。
- 可以大大方便同门之间的沟通:提供了多种的交流渠道,可以组织活动线下交流,也可以进行私聊,多种方式供您选择!
- 信息全面:名片可以自己创建也可以他人创建并进行修改,有助于整合信息。
Competitors-竞品分析
我们通过网络搜索等途径,找到了几个功能相似竞品:
- 猫头鹰同学会
- 深圳同济大学校友会
我们对这两个竞品进行了分析:
猫头鹰同学会
猫头鹰同学会主要针对同班同学,提供了组织线下活动以及同学录的功能,界面清晰,功能完善。
深圳同济大学校友会
深圳同济大学校友会主要针对整个学校的校友,但是与我们的小程序功能有相近之处,故也拿来做分析,他提供了校情新闻,组织活动以及校友圈(类似贴吧)等功能,功能丰富,界面简洁明了。
对比上述两个竞品,我们认为我们的产品有如下优势以及劣势:
优势:
- 资源整合:猫头鹰同学会的同学录需要自己添加,而我们的产品可以直接看到整个实验室同学们的“名片”,从而得到信息,并且名片可以由他人添加,让小透明们不再透明!
- 联系方式多样:上述两个软件都没有提供线上即时聊天的功能,而我们提供了包括私聊,群聊等方式。
劣势:
- 功能较多:我们设想的软件功能较多,实现起来较为复杂,需要大量的时间与精力,并且可能因为功能“不精”影响用户的使用体验。
- 开发经验:深圳同济大学校友会小程序非常精美,操作的逻辑也非常号,应该一个有着丰富经验的开发者开发的,但我们认为我们可能达不到这种程度,可能导致成品功能的缩减。
Delivery-推广
我们的推广计划如下:
- 向实验室老师以及社团部长推荐使用。从高层入手,由上到下进行推广,让同学们使用这个软件,拓展用户群。
- 利用学校的平台进行推广,在如福大易班的首页打广告来进行推广,让更多的人了解这款软件。
- 发小传单,利用最原始的方法,给学生宿舍塞小传单。
虽然累点但倒是挺省钱(只要传单钱)
流程图
原型设计
这是我们的原型设计:https://modao.cc/app/0b1f9e784d4a01948ef152e4a1d3a909a671d23e?simulator_type=device&sticky
我们使用了墨刀作为原型设计的软件,我们的设计的成果如下:
登录与认证功能:
我们使用微信的小程序接口获得用户的信息登录
登录成功!如果是第一次登录,需要再用福大教务处的账号进行登录,确认是福大的同学
名片功能
我们认为我们的名片夹功能是我们的核心功能,接下来我们会重点介绍我们的名片功能!
我们将名片夹页面作为我们的主页,一进来就看得到了!这个页面将会显示你所在的实验室(社团)的名片夹,只有在相应的圈子中,才可以看到相应的名片夹。只要单击就可以进入特定的名片夹进行查找,也可以用搜索功能筛选名片夹。
单击名片夹,即可进入,以扁平化的方式显示整个实验室内所有人的名片。在此页面可以快速浏览实验室所有人的名片,也可以通过搜索进行筛选,或者通过右下角的“+”来为你认识的但是没有入驻的同门添加名片以及创建修改你的名片。
单击名片上的“···”进入详情,可以查看名片里更为详细的内容,本人创建与他人创建的名片通过颜色进行区分,蓝色为本人创建,红色为他人创建。
首先是本人创建的,本人创建说明本人入驻了本小程序,所以可以通过本小程序添加好友,或者进行私信。
然后再是由他人创建的。他人创建的名片的修改权限在创建者手里,一直到本人入驻后,权限才转移到本人手中,在本人入驻前信息的完善由创建者负责。他人创建的名片将开放评论区,大家可以提供自己知道的信息,完善去向。
只要入驻了本小程序,将会通过你填写的个人信息生成名片,而为他人创建名片,需要填写相关信息并经过管理员的审核,审核成功后名片才会出现在相应的文件夹中。
创建/修改自己的个人信息:
创建他人的名片
圈子
接下来我们将会介绍我们的圈子功能。圈子是实验室/社团的集合,大家可以在圈子里面探讨问题,发起,参与活动,增进大家的了解!
从导航栏可以进入圈子的首页,首页显示了大家都加入了哪些圈子,以及圈子里面都有哪些人。如果是圈子管理员则有管理圈子的能力。
如果是实验室老师或者是社团的部长则可以创建圈子,经过管理员审核后即可创建圈子(管理员会审核的噢!),同时也可以搜索圈子申请加入。
底下为圈子创建页面:
以下为圈子加入页面:
圈子有两个重要功能,分别是圈子问答以及圈子活动。
在圈子问答中,用户可以向圈子内的同学们提出问题,并由他人解答。当然,你也可以回答他人的问题。
在圈子活动中,大家可以组织线下活动报名,也可以报名参加线下活动,当面聊聊总比对着手机屏幕效果要好许多。
消息
消息整合了圈子问答可能得到的消息以及聊天消息,通过上面的导航条进行切换,方便回复以及查看。
“消息”栏目中的信息来自圈子,而“聊天”栏目中的消息来自好友或者群聊。
在聊天页中,你可以看到好友的私聊以及你的群聊。小程序提供了一定的即时聊天(如微信)
我的
在“我的”界面中,可以查看自己的详情信息,以及查看在圈子中参与的活动和提出的问题,以及查看自己贡献的名片。
单击我贡献的名片,可以查看与修改自己贡献的名片
查看自己参与的活动
查看自己的回答
更新自己的信息
实践总结
XLH:
- 前期需求定位并不是很准确,甚至差点理解成校友社交软件,后深度分析后,将其使用用户定位为社团或实验室成员而非校友
- 通过此次实践,我们初步学会了正式开始编写软件前的一系列步骤,学会了通过NABCD模型一步步分析,完善自己的软件定位
- 深刻明白了老师所说的做好前期的分析真的很重要,有按照分析方法模型真的便捷了许多,节约了很多时间
- 学会了墨刀的使用,捣鼓了贼久,才勉强捣鼓出这个模型。
WHQ:
- 经过了这一次的结对作业,我对软件工程中的原型分析的过程有了大致的了解。
从刚开始的不知方向,在纸上随便写着自己的想法,到后面仔细阅读了构建之法,
和队友一起讨论,做需求分析,设计解决方案,用NABCD模型慢慢的完善我们的
想法,按照软件工程的思想,我们的工作变得原来越有条理。每次晚上和队友讨论,
顺带吃点夜宵成为了每日的快乐时光,大家一起便吃便讨论问题,感觉快乐指数
直线上涨。看作业附录的需求,就已经提前感受到了以后甲方的而已了,有的地方
就由不知所言的感觉,要仔细的去剖析这背后的需求。后面设计好了主要的功能,
开始使用墨刀来制作原型。在墨刀上我们的设计一步步的呈现在眼前,感觉颇有
自豪感。虽然界面有点简陋,操作的逻辑也还是有点问题,但是毕竟是自家的孩子,
喜爱之情掩盖不住呀。
这次组队终于有机会抱了传说中的大佬的大腿,没错,这就是天天在别人口中说的
某大佬,我先膜为敬!合作很愉快哈哈哈哈哈。
git截图
结对过程的照片
PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | ||
Estimate | 估计这个任务需要多少时间 | 30 | 30 |
Development | 开发 | ||
Analysis | 需求分析 (包括学习新技术) | 90 | 120 |
Design Spec | 生成设计文档 | 25 | 30 |
Design Review | 设计复审 | 150 | 200 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | ||
Design | 具体设计 | 360 | 490 |
Coding | 具体编码 | ||
Code Review | 代码复审 | ||
Test Report | 测试报告 | ||
Size Measurement | 计算工作量 | ||
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 30 | 30 |
合计 | 685 | 900 |