软件工程第一次结对作业
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/SE2020 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2020/homework/11224 |
这个作业的目标 | 需求分析与原型模型设计 |
学号 | 181800330(王逸凌)、181800415(牟迪) |
原型开发工具 | 墨刀 |
模型展示 | 灯塔 |
写在前面的话:
要像灯塔一样,为一切夜里不能航行的人,用火光把道路照明。—— 马雅可夫斯基
我们寄希望于用灯塔构建出一个家园,一个关于引路人与前行者的家园,让引路人播下火种,让前行者背上希望...
PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | ||
Estimate | 估计这个任务需要多少时间 | 730 | 1200 |
Development | 开发 | ||
Analysis | 需求分析 (包括学习新技术) | 100 | 200 |
Design Spec | 生成设计文档 | 60 | 120 |
Design Review | 设计复审 | 60 | 120 |
Design | 具体设计 | 150 | 400 |
Test | 测试(自我测试,提交修改) | 100 | 300 |
Reporting | 报告 | 20 | 100 |
Blog | 博客 | 200 | 250 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 40 | 110 |
Sum | 合计 | 730 | 1200 |
项目定位
我们在分析了客户的需求后,经过小组分析与讨论,意识到客户的愿望是能够搭建一个面相学生的信息交互平台,让学长学姐以及学弟学妹的信息能够互通,并且能够让学弟学妹联系到自己想接触的学长学姐,促进大家的交流。
学长学姐与学弟学妹在注册完账号之后,他们的教育经历、工作经历等通过大数据分析,汇总成一张关键词图谱,构建出了一个包容万象而且和和美美的交互圈,刚好体现了开发灯塔小程序的初衷,解决了交流困难、尴尬等问题。
此外,通过灯塔,学长们能够有效地获取消息,帮助内推。学弟们能够了解更多校内外的大牛,拓宽自己的人脉,为未来打下坚实基础。
需求分析(NABCD模型)
Need-需求
基本需求:
信息采集模块:
分别对学长学姐和学弟学妹进行信息采集,针对于学长学姐,主要包括毕业去向、研究方向、就业情况,针对于学弟学妹,则包括技能包、成绩、兴趣方向。
面向对象:
本次模型将学长学姐和学弟学妹分成两类对等客户对象。
拓展:可以将老师作为一个拓展的客户对象,加入到信息交互中。
扩充需求:
大数据信息匹配模块:
面对附录中学弟学妹、学长学姐反映出来的困扰以及问题,在成功收集对应信息的前提下,设置大数据信息匹配功能,针对于采集的客户信息,利用关键词搜索这一方法,分门别类的产生多个主要关键词,并用知识图谱的方式对关键信息进行可视化展现。对于学弟学妹,可以提供更加多元化的选择空间,对于学长学姐,也能够全方位的了解现阶段学弟学妹的发展情况。
客户交流模块:
在大数据信息匹配完成的前提下,信息已经完成交互功能,根据现实需求,添加客户交流模块,可以直接让客户对象进行实时交流。本模块主要利用关键词匹配,在关键词对客户类别已经筛选好,且不同关键词对应不同的客户类别的前提下,客户之间可以自主选择需要交流的对象。
Approach-做法
信息采集模块
针对于用户信息冗杂的问题,我们选取特殊关键词对用户的属性进行定义,并将用户分为H(high)类和L(low)类,H类表示学长学姐,L类表示学弟学妹。
共同属性:姓名、类别、联系方式、导师
H类特殊属性:就业去向、研究方向、在研项目
L类特殊属性:技能包、成绩、兴趣方向、感兴趣实验室
大数据信息匹配模块
导入属性关键词,对关键词进行分类甄别,将相近的关键词归类,并找出关键词对应的用户。将关键词相近的两类用户进行匹配。
客户交流模块
根据匹配结果,显示用户期望的对象,点击不同对象用户,显示其特定属性。用户根据自己的喜好,对其进行选择,并创建对话框,进行交流。
Benefit-好处
这个产品会给客户/用户带来的好处:
- 采用灵活的大数据匹配机制,合理有效地为客户提供了双向选择的空间
- 充分保障客户的隐私性,为客户的信息交互提供点对点的保护
- 建立客户的双向信息库,通过合理的方法,使数据信息化,解决问题更加科学
- 极大程度的解决了学弟学妹的烦恼,让他们充分了解了高年级学长的信息,以便后续的选择
- 让学长能够充分了解学弟的现状,以此来给出他们建议
Competitors-竞争
优势:
- 界面简洁,大方美观且有章可循,层次分明
- 开发效率高,及时响应当下需求
- 用户友好,交互处理人性化
- 安全性高,合理保护客户的隐私
- 采用大数据分析,信息匹配更加科学
劣势:
- 受限于开发周期短,未能实现更加丰富的功能
- 潜在竞争对手可视为目前参加软工实践的学生,其中不乏有拥有丰富项目经验的优秀码神,竞争压力大
Delivery-推广
我们的推广计划如下:
- 当原型系统被采纳之后,立马投入精力进行开发
- 通过微信小程序的方法,简单快捷的推广本产品
- 由于本产品面向的问题具有普适性,故该产品能够很好的在大学生中推广,并辐射到他们的社交圈
流程图
原型设计
我们使用了墨刀作为原型设计的软件,我们的设计的成果如下:
登录与注册界面
- 灯塔小程序的登录初始化页面,昭示着我们做这款小程序的初衷~
- 简约的登录界面配上福大校徽的点缀,无论是已毕业还是未毕业的校友都能够体会到“明德至诚,博学远志”的精神
- 如果是第一次登录的校友,小程序会提示注册一个账号,如果是学长学姐,那就点击学长学姐的框框进入,选填信息,如果是学弟学妹那就点击学弟学妹的框框进入,选填信息
灯塔(核心界面)
- 灯塔界面是我们的主界面,也是这个小程序的核心功能。接下来我们将重点对灯塔这个主界面进行分析。它又分为六个部分,分别是技能、研究方向、研究成果、兴趣爱好、所在公司、实验室,这六个关键词又分别对应了学弟学妹的相关问题:无法了解学长学姐毕业去向、研究方向、就业情况,也为学长学姐提供了一个了解低年级学弟学妹情况的渠道,同时也能够提供内推的机会。此外,我们在制作过程中额外添加了一项探索的功能,能够展现同学关注比较高的一些实验室如ACM 、西二在线、服务外包实验室的一些近况。
- 点击技能页面,弹出的是我们根据大数据搜索,匹配得出的相关学长学姐,它又可以分为在校的“小牛”,和已毕业在职的“大牛”,页面展示的关键词便是——技能
- 点击研究方向页面,领略学长学姐的研究方向,合理设定目标,筑梦扬帆!页面展示的关键词便是——研究方向
- 点击实验室页面,挖掘热门实验室,大学生活里拓展自身的最佳之地,页面展示的关键词便是——实验室
- 点击所在公司页面,可以看到从我们福大走出去的莘莘学子,在各个岗位展现出自己的能力,为母校争光,让母校为自己骄傲,页面展示的关键词便是——所在公司
- 点击兴趣爱好页面,找到和大佬一样的共同爱好QAQ,通过相同的爱好逐渐了解,为自己后续的发展打下坚实的基础,页面展示的关键词便是——兴趣爱好
- 点击研究成果页面,在感叹学长学姐获得成就的时候,也能够更加激励自身,向学长看齐,锐意进取,页面展示的关键词便是——研究成果
交互功能
- 当用户在交互界面中找到志同道合的学长学姐或者是学弟学妹后,如果想继续交流,灯塔小程序温馨的提供了加关注和联系他两个功能。加关注可以成为对方的粉丝,每当对方有动态更新后,我们可以及时收到,联系他这个功能可以直接和对方进行沟通交流(前提是对方没有开启隐私模式),无论是学习还是生活,方方面面
- 自主式的搜索和亲和式的交流
- 人性化的交流界面使交互更加流畅
- 加关注之后的动态追踪,同时灯塔小程序也添加了隐私模式,增加了用户的隐私保护
个人资料的添加修改
- 随着岁月的流逝,我们个人的教育经历与工作经历会不断增加,我们的阅历也会不断沉淀,我们的履历也会不断增加,因此灯塔提供了个人消息的修改,让这个小程序能够伴随着我们的成长,历久弥新。
探索功能(扩圈)
- 从人与人之间的交互拓展到人与校园之间的交互,让圈子大起来~
个性化功能
- 灯塔小程序在注重科学高效的交流沟通之下,也将个性放在了一个很重要的位置,隐私模式、消息免打扰模式等个性化服务,合理有效的让用户在使用过程中更加体会到用户至上这一原则
git截图
结对合作图片
- 结对过程
9.23:共同审题,提出想法,确定大体方向。
9.24:浏览《构建之法》,学习NABCD模型,讨论这次问题的相关模型。
9.25-9.27:选择原型模型的开发工具,在开发过程中不断讨论完善。
9.28-9.29:继续完善模型,总结这次结对作业,编写博客。
实践总结
牟迪:
- 经过这次结对作业,我明白了满足客户的需求并非那么简单。看来NABCD模型后,理解了需求实践的具体化流程。针对于本次作业中的信息交互问题,要真正能够解决的话,需要满足一系列的子需求:如何收集客户信息、如何让不同客户的信息得到交换、最终使客户能够相互交流。将这些需求当作一个工程,一步一步进行实践
- 在实践过程中遇到了很多问题,这些子需求怎么实现,需要哪些工具,自己已具备哪些技能等等,全是从零开始。但是只要开始动工,就可以一步一步完成。learning by doing,这确实是一个 让自己在短时间内得到进步的好方法,不懂的东西自己网上查询,现学现做。思维停滞了,就跟队友进行讨论,思维碰撞能提高完成工程的效率
王逸凌
- 这次作业我主要负责墨刀的设计与后期,墨刀的使用方法是我从来没有接受过的,因此需要大量的去搜索资料,搜索各种组件的使用方法,每一个动效的体现出的不同效果都是不尽相同的,因此,在每一个板块衔接的过程中需要不断地去尝试
- 灯塔主界面是我花了三个晚上原创完成的,我抛弃的原来模板所带的主界面,虽然做出来之后可能效果还没有原来模板自带的好看,但是我始终觉得只有自己亲手做的才能体现出这次作业的意义
- 在Github的提交过程中,两人协同操作用的不是很熟练,因此观看了许多廖雪峰的视频,最终经过多次的失败,终于完成了两个人间仓库的传递
- 结对作业会出现两种情况1+1<2或者是1+1>2,如何实现1+1>2是非常关键的,这需要两个小伙伴之间经常交流各自做的工作,互相提出修改意见,共同推进项目完成
- 如何平衡原型模型中的功能和后续实际做出的效果是我们后续要不断努力的