2020福州大学软件工程实践结对编程作业 一、结对信息 二、PSP表格 三、项目需求分析 四、UML用例图 五、原型展示 六、效能分析 七、总结
这个作业属于哪个课程 | 福州大学软件工程 |
---|---|
这个作业要求在哪里 | 结对编程作业要求 |
这个作业的目标 | 熟练使用github以及对产品的需求分析和原型设计 |
学号 | 031802538 031802520 |
目录
团队成员
成员姓名 | 成员学号 |
---|---|
余立 | 031802538 |
林鸿 | 031802520 |
结对过程
因同为实验室成员,在软工课后提出结对合作邀请,后正式组队共同努力。
- 起初初步分析客户需求,根据困扰原因仔细探讨可解决方案
- 了解相关模型工具并选定,以及探讨程序平台的优劣势
- 拟写项目大纲,分配相关工作和deadline
- 完成初步墨刀模型后,探讨完善其中的细节
- 撰写博客内容以及效能分析等
二、PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 20 |
Estimate | 估计这个任务需要多少时间 | 10 | 15 |
Development | 开发 | 0 | 0 |
Analysis | 需求分析 (包括学习新技术) | 120 | 150 |
Design Spec | 生成设计文档 | 30 | 50 |
Design Review | 设计复审 | 30 | 40 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 0 | 0 |
Design | 具体设计 | 240 | 280 |
Coding | 具体编码 | 0 | 0 |
Code Review | 代码复审 | 0 | 0 |
Test | 测试(自我测试,修改代码,提交修改) | 0 | 0 |
Reporting | 报告 | 60 | 90 |
Test Report | 测试报告 | 0 | 0 |
Size Measurement | 计算工作量 | 20 | 20 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 30 | 30 |
合计 | 540 | 695 |
三、项目需求分析
NABCD模型
N(Need 需求)
- 实验室学弟想了解实验室历史上的学长去向和现状,需要准确的信息来源。
- 实验室毕业学长想了解学弟的学术现状和技能树,需要有效的联系渠道。
- 对于工作岗位的内推渠道,学长和学弟需要实用有效的了解方式。
- 对于互相帮助或聊天,为避免时常在群聊中的尴尬发问,需要私密和便利的沟通方式。
A(Approach做法)
对于现有的客户需求,所需要的功能并不多,考虑到人群的适用性,选择开发微信小程序。
- 平台管理员 实验室内部选择部分老师或成员担任管理员,负责审核用户注册,以及管理平台信息的审核和撤销。
- 账号注册 在注册时严格要求个人信息的完整性,包括身份证学号等关键信息,通过实验室管理员审核后,方可注册成功。
- 拓展个人信息功能 除了必要简洁的个人信息,用户可以选择在名片界面添加模块化的个人信息索引,内部可包含目前研究方向,技能树,工作现状,项目经验等。
- 实验室活动和动态功能 可通过小程序举办线上活动或线下活动通知,同时可以运用动态功能发表问题求助。
- 内推渠道功能 学长可通过程序发布相关的内推渠道,并在其中写明岗位要求,通过管理员审核后发布成功。学弟可通过程序搜索相关岗位目前存在的内推渠道。
- 私信功能 用户可以相互发送消息,包括模块化的项目经验等。
B (Benefit 好处)
- 微信小程序使用更加便利,无需下载安装,同时其维护成本低,流程简单,更新由微信后端完成,不存在兼容问题。
- 集中处理实验室的成员,信息可以直接查看,而不用刻意的去沟通了解,更加方便实用。
- 保证程序的独立性和可靠性,仅为实验室成员服务,保护了用户和相关信息的隐私性。
- 为实验室内部提供可靠实用的内推信息获取渠道,既协助学长完成工作,又为学弟提供求职支柱。
- 给实验室成员提供一个更好的互动平台,促进成员间的感情。
C(Competitors 竞争)
与传统的qq群、微信群作比较:
- 这两者的名片无法认证学生个人信息
- 需要添加好友或存在共同群聊才能私聊
- qq、微信也有不再使用或者更换的可能
- 往往一届成员一个群聊,难以共通多届成员
优势: - 实验室的名片是透明共享的,方便查看
- 实名制,数据可靠,便于查找
- 能够直接私聊,不需要添加好友等待确认
- 各届成员都可以在该程序看到
- 内部成员仅有实验室成员,资源内部消耗
D(Delivery 推广)
- 由实验室指导老师给每个进入实验室的成员推广此小程序,以及成员间的互相推荐
- 对于已经退役的成员,可通过朋友圈或QQ空间等平台推广,让曾经的成员相互转发,给队友传达信息
四、UML用例图
五、原型展示
本次作业采用了墨刀作为原型制作的工具,具体原型可通过以下链接访问:
初步了解使用
- 首先是在微信聊天界面下拉获取小程序页面或选定
- 小程序的说明页面如此,以及小程序的主页面
- 可选择登录或者注册,若网络差则出现缺省页
- 注册页面,以及申请注册成功,需要管理员审核
小程序内部内容和功能
- 首先是个人设置页面,内部功能如下
- 信息补全页面以及添加模块化信息页面
- 查看其他用户时的信息页和模块页
- 对于实验室成员则以年级分类,成员页面如此
- 对于发现中的更多功能使用,以及发布页面
- 额外增加的动态发布,可发布咨询问题或随心聊
- 原需求中的内推内容可通过管理员审核发布
- 额外添加为实验室增加友谊的活动模块
- 最后便是聊天界面和聊天框
六、效能分析
- 针对现阶段的成员用户,微信小程序为平台的使用提供更多的便利
- 微信小程序维护成本低,流程简单,更新由微信后端完成,不存在兼容问题
- 注册的审核认证为平台用户提供独立性保障,均为实验室成员
- 多年级的用户集中于此,全局考虑相互沟通,信息来源可靠
- 内推工作消息仅发布于实验室程序平台,不被外界悉知
- 平台提供相关动态功能,可在平台发出咨询问题以及回答实验室他人问题
- 平台提供便捷的活动发布功能,提高实验室成员间友谊
七、总结
github协作库
github为主要合作平台,传输墨刀成品
工作反思
- 由于我和队友都是第一次接触到原型模型开发,在前期软件选择和素材选取等方面花了较多时间
- 在商量功能时并没有考虑清楚界面的元素设置,在后期不断地修改浪费了不少时间
- 起初商定的部分内容没有考虑实践难度,天马行空,在后期又是不断删改
- 没有合理的分配工作,双方大部分处于串行处理模式而非并行工作,极大地降低了效率
总体效果(learning by doing)
- 由于接近国庆可放开其他作业赶软工作业,因此通过爆肝时间砸出了这份软工作业。
- 同时因为二人关系较好,凭借着两人曾经的合作经验以及极高的默契,让这次结对作业进行的顺利不少。
- 总体上来说这次的结对作业效率达到了预期的效果,让我们学会了项目原型设计。