结对第一次—原型设计
格式描述
- 课程名称: 软件工程1916|W(福州大学)
- 作业要求: 结对第一次—原型设计
- 结对学号: 221600408_蔡鸿键 | 221600409_蔡森林
- 作业目标:学习使用NABCD模型,模拟用户需求和使用工具设计模拟软件原型。
- 作业格式描述:该博客首段
- 作业完成工具: Mindmaster & 墨刀
- 博客编辑器: MARKDOWN
- 结对照片: 正文
- 效能分析与PSP:正文
- PDF附件:已上传
作业目录
1.格式描述
2.NABCD模型
3.原型设计
4.结对讨论过程
5.效能分析与PSP
6.困难与解决
7.心得与总结
8.PDF以及花絮
作业正文
1.NABCD模型
-
**NEED **
- 需求来源:小樱不知道不知道近几年顶会的热门领域和研究方向,根据论文list去一篇一篇查找总结效率又着实太低
- 关键词:“效率,顶会,热点论文”;
- 以功能分析需求
- 用户可给定论文列表 ;
- 通过论文列表,爬取论文的题目、摘要、关键词、原文链接;
- 可对论文列表进行增删改操作(今年、近两年、近三年);
- 对爬取的信息进行结构化处理,分析top10个热门领域或热门研究方向 ;
- 可对论文属性(oral、spotlight、poster)进行筛选及分析;
- 形成如关键词图谱之类直观的查看方式;
- 可进行论文检索,当用户输入论文编号、题目、关键词等基本信息,分析返回相关的paper、source code、homepage等信息;
- 可对多年间、不同顶会的热词呈现热度走势对比(这里将范畴限定在计算机视觉的三大顶会CVPR、ICCV、ECCV内)。
- 可进行数据统计,例如每个国家录用文章的分析、每个学校录用文章的分析、哪个学校哪方面的研究方向比较强等.
- 用户可给定论文列表 ;
- 以用户角度分析需求
- 用户
- 检索 (题目、摘要...)
- 收藏 (自定义列表、增删改查...)
- 结构化(筛选分析、可视化图谱...)
- 管理员
- 操作(账号、文章...)
- 统计数据(热度、关键词、引用...)
- 用户
- 我们使用MindMaster将笔记草稿转为思维导图。
-
**Approach **
- 以 WEB 为平台,WEB 平台优点:良好的交互体验 良好的前后端工作分离模式
- 检索方式
- 题目
- 关键词
- 领域
- 时间
- 热度
- 引用
- 会议
- 检索方法
- 精确匹配(关键词完全匹配)
- 模糊匹配(关键词近视匹配)
- 公式匹配
- 收藏
- 用户点击交互式按钮进行收藏
- 对收藏论文进行增删查
- 添加书签
- 整合“我的笔记”
- 结构化
- 用图表直观显示数据
- 论文对比(对比论文的引用量,发表影响力等)
- 进行数据统计,例如每个国家录用文章的分析、每个学校录用文章的分析、哪个学校哪方面的研究方向比较强等。
- 管理论文
- 下载(批量、发送邮件)
- 上传 (通过网站、发送邮件)
- 删除
- 修改(论文信息)
- 统计
- 图标直观化
- 用户点击次数最多的热度关键词
- 对多年间、不同顶会的热词呈现热度走势对比
- Top10热门分析
-
**Benefit(以效率为主) **
- 让用户易上手
- B/S 框架 平台无关性
- 热词、图表,数据直观易懂
- 随时随地上传下载(手机、电脑、 平板)
- 自定义收藏
- 方便摘取相关文章
- 书签:将有用信息摘取到笔记中,生成"我的笔记"。
- 让用户易上手
-
**Competitors **
- 优势:
- 跨平台
- 随时随地
- 对数据进行分析,统计最近最热方向以及预测估计未来方向
- 功能多样性
- 劣势:
- 使用论文的版权难处理
- 大量数据维护不变
- 优势:
-
**Delivery **
- 社交平台 (公众号、推送)
- 会议网页,论文库网页,图书馆网页
- 向个学校的老师和学生推荐
2.原型设计
墨刀链接
阶段一
- 根据讨论得出的需求分析,大致拟定产品的基本功能。
- 从用户角度上详细制定规划。
- 分工完成各模块的大致草图。
阶段二
- 互相交流各模块的遇到的问题,协商解决。
- 借鉴其他优秀的UI设计。
- 初定界面草图。
阶段三
- 通过墨刀工具进行相关模块的设计。
- 讨论并对原型进行调整和优化。
- 实现原型的基本功能。
界面设计
-
登录界面
-
论文搜索界面
-
热词搜索界面
-
论文列表界面
-
收藏夹界面
-
折线图界面
-
条形图界面
-
热词图界面
结对讨论过程
与3月4日(星期一)组成小组。过程如下
- 分析问题需求,提取关键字,使用NABCD模型分析问题,生成草稿
- 使用了解MINDMASASTER和 墨刀工具
- 进行模型创作,分析讨论用户需求和体验
- 优化模型,生成博客
- 结对照片
4.效能分析与PSP
效能分析
目前还没生产出软件实例,经我们估计数据库访问语句和服务器的访问压力是比较耗费资源和耗时最多的,应该对此进行优化,如:
- 服务器:
- 使用内存数据库(仅对热词,访问量较高的文章)
- 增加缓存
- 选择合适的IO模型
- ...
- 数据库:
- 对查询进行优化,要尽量避免全表扫描
- 对于多张大数据量的表JOIN,要先分页再JOIN,否则逻辑读会很高,性能很差。
- ...
PSP
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分 钟) |
Planning | 计划 | ||
• Estimate | • 估计这个任务需要多少时间 | 180 | 350 |
Development | 开发 | ||
• Analysis | • 需求分析 (包括学习新技术) | 60 | 150 |
• Design Spec | • ⽣生成设计⽂文档 | 30 | 40 |
• Design Review | • 设计复审 | 20 | 10 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 20 | 20 |
• Design | • 具体设计 | 120 | 250 |
• Coding | • 具体编码 | 120* | 250* |
• Code Review | • 代码复审 | 20 | 10 |
• Test | • 测试(自我测试,修改代码,提交修改) | 20 | 20 |
Reporting | 报告 | ||
• Test Repor | • 测试报告 | 30 | 15 |
• Size Measurement | • 计算工作量 | 15 | 10 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 30 | 25 |
合计 | 435 | 800 |
5.困难与解决
-
D:每个人设计想法不同
-
A:求同存异,取其优者
-
D:工具的使用不便
-
A:只能多看说明多使用
-
D:设计艺术细胞短缺
-
A:多看参考精美UI设计
-
D:分开来做各种部分
-
A:多交流多讨论,向对方提供合理的建议
6.心得与总结
蔡鸿键
以往我们编程时都是一股脑使劲写,想到什么写什么,就像在希尔顿的屋子里那个外国人一样,会写中文缺不理解中文的意思。通过此次任务,我明白了编程只是很小的一个方面,要赋予软件生命绝对不能机械生硬的把代码从一边搬运到另一边。要去了解需求,体会用户,把软件带入到我们生活中,以对人的态度对软件,也就是对用户的尊重。但我还是会有一些疑惑,我们这种的方法挺好的,但是不是所有公司都在使用这种方法(计划),如果未来遇上了某种公司不认真地对待软件设计,把程序员只当成代码生产机器,我们应该怎么办呢?
蔡森林
通过这次的原型设计,让我受益匪浅。以往我并不把需求分析当做一回事,觉得大概就好,但是当我们互相讨论时,我发现不能只是通过自己的角度看待问题,有时候需要听取别人的意见。自己考虑问题时,难免会出现考虑不周全等问题,与人交流讨论,互相求同存异,更能解决问题。还有就是,通过原型设计,我学会了如何使用墨刀这款工具,这是我第一次使用这样的工具设计界面,对于我以后的UI设计还是很有帮助的。尽管当中难免会碰到难以解决的问题,但对于我而言都是一种锻炼。当设计原型时,我发现,有个大致的草稿图,对于后期的UI设计能提高很好的开发效率,当然,有时候我们也需要去借鉴一些优秀的UI模板,不仅可以从中体会一些好看的UI设计,而且能让自己更好的借鉴经验。总的来说,原型设计的实验,于我获益多多。
总结
这次任务看似比较轻松,没有编程任务。实际上分析设计和合作才是我们需要锻炼的,作为一个大学生,在大学的课程都是在学习编程,很少学习分析设计,从上学期的UML才算是软件设计技术的初略门道,作为软件设计者来说,用户需求才是我们最关心的。我们必须站在用户角度考虑问题。还有合作,在未来工作的时候,自己单干的几乎很少,都是大家一起分工搭配,我觉得合作中,信息与信任是最重要的。在工作中,信息必须平等流通,否则会导致设计或代码对接失败,成为木桶的短板。信任为合作的核心,有着事倍功半的效果。
7. PDF文档以及花絮
草稿图
结对第一次—原型设计PDF