十一章:软件设计与实现
工作时要懂得平衡进度和质量。我一直有一个困扰:像我们团队这次做 男神女神配 社区交友网,我负责主页的设计及内容模块,有个队友负责网站的注册和登录模块,有个队友负责搜索模块,有个队友负责活动查看模块。但是一个项目是一个整体的,每一个人所负责的每一个模块都必须关联起来才能成为一个整体,例如我的主页完成了50%后,为了查看整体效果, 发给队友与他的模块连接起来,如果对方在我的程序上修改了部分,然后同时我也继续编写我剩下的内容,双方都在我那个原本完成了50%的进度模块上做了修 改,那接下来的工作,到底用谁的?实际上两边的修改都要用上,然而我不可能等对方修改后再继续做下一步工作,而对方也不可能等我完全100%做完我负责的 模块后才查看修改或连接,因为这样会导致工作效率大大的下降。这个我觉得这个仿佛有点像我们学习 操作系统 时的那个 售票系统 ,几个窗口同时都要给顾客售票,总得有一个机制管理剩余的票数,因为不可能能同时几个窗口成功售出同一张票。
把代码修改记集成到代码库中
将开发人员手头上的经修改过的大码签入源代码控制系统的步骤:
1、根据场景和开发任务来决定集成的次序
2、互相依赖的任务要一起集成
3、在测试场景时,要保证端到端的测试
4、场景的所有者必须保证场景完全通过测试,然后把场景的状态改为“解决”
开发人员的标准工作流程:
参考《构建之法》P205
在书本中提到了一点,小飞说他在办公室里做了10个小时:然后真正能花在开发工作的时只有3个小时,然后工作进展大概只有;两个小时,他说他的时间 主要是被一些随机事情干扰了,然后就耗费了许多时间。其实在我的思维中,我一直觉得只要有关本次项目程序的事情,都不算是随机事情,比如在写程序的时候, 遇到了一个关于有效性的问题或者是完善的问题,我或许就会改变方向先将这方面做完,我觉得这点并不算是随机事情,毕竟以后发布的正式版本还是需要考虑到这 点问题。早考虑晚考虑,早晚都要考虑,老师你觉得呢?你认为这样想可以吗?
课后练习与讨论:如何对付客户不买账的行为?
在我个人看法中,如果遇到这点,我觉得首先我会想是不是我和客户沟通上出现了问题,在早期我可能会先耐心下来与客户再次好好沟通(毕竟客户就是 上帝),尽可能达到客户的需求,只要能在我们小组工作范围之内的,可以理解的要求我们都尽可能的满足,尽快给客户一个满意答复。但是,如果我们所遇到的是 一位喜欢刁难的客户,每次都提出一些极端的要求,那么我觉得对于这类客户,我们之间也没有必要有合作的余地了。
十二章:用户体验
我们要做一个好的设计,就要做到:
♠谁是你的目标用户?
♠他们会在什么时间使用你的产品?
♠目标用户会在哪里和你的产品交互?
♠你的产品是什么?而用户的期待是什么?
♠用户为什么要使用你的产品?他们的动机是什么?
♠在众多竞争产品中,用户为什么会选择你的产品?
♠用户是如何与你的产品发生交互的?他们怎么用?在使用过程中有出现什么问题吗?
用户体验这章,也正是我们小组项目当前正在进行的内容,看完本章对于我们小组接下来的工作有了很大的帮组。
用户体验的要素:
1、用户的第一印象
在设计方面需要注意一下几点:
1、我们所面对的典型用户是谁?
2、用户初次体验非常重要,这点必须要认真考虑。(在用户使用次数少的功能上少花时间,要突出程序的主要功能,特色有价值的功能。)
主要涉及到5个“W"和1个“H”上:
即:WHO谁是目标用户:
WHEN用户何时会使用我们的产品:
WHERE用户何地会使用我们的产品:
what我们的产品是什么?特色在哪里?
WHY用户为什么会选择我们的产品,哪方面吸引到了用户?
HOW用户如何与我们的茶农发生交互的?
2、从用户的角度出发考虑问题
从书本上看到那个银行假币投诉的例子,简直是无法理喻,这完全是阻断了用户使用的路径。
3、用户需要帮组,但是用户没有那么蠢
一些简答的解释,如果太多了,就会变得冗余重复啰嗦了。
4、软件服务始终要记住用户的选择
经过书本上对于用户设计的一些例子“类似于飞机上的服务遥控器”
其实这些问题看起来小,看完之后才感觉到,里面含有许多大道理、这点,我们没有实际遇到过,还真一时半会想不到,不过,我觉得在这方面,机组人员必 须经过一番专业培训,然后在乘客登机的时候,应该告知乘客这些东西,更多的是一种互动的方式来告知乘客,这样就或许能达到意想不到的效果。
那么本章问题来了,那我想请问老师,我们该如何在这第一次至关重要的用户初次体验中,尽可能的让用户达到他们想要的效果,这毕竟是第一次体验,体验不就是收集问题吗?那我们这又说第一次要做到完美才行,那做到完美还怎么让用户提出问题。这是不是有些矛盾?