软件的设计与实现。
一: 我们写软件就是为了解决用户的需求,我们要表达和传递下面的这些信息。
在问题解决中的现实世界里,都有哪些实体,如何抽象出我们真正关心的属性,实体之间的关系是什么,在这个基础上,用户的需求是什么,软件如何解决用户的需求。
在“设计与实现段”我们要搞清楚软件如何解决这些问题的需需求的。
在“测试”和“发布”阶段,我们要搞清楚软件真的解决了这些需求了吗?
我们来看看解题者解题过程,有下面的步骤:
1.理解 ,抽象:理解问题,过滤掉非核心的信息,抽象出关键信息和他们之间的关系。
2.找到合适的数学模型。
3.根据数学模型和解法,按部就班的解决问题,这要依赖对数学模型和基本操作的掌握。
分析和设计有多方法:
1.以文字为主的文档,如word,Powerpoint文档。
2.用图形为主构造的模型,如Mind Map,ERD,UML等各种图,甚至包括Flow Chart流程图
3.用数学语言的描述
4用类语自然语言+代码构造的描述,如LIterate Programming.
5.源代码加注释也能描述。
二:图形建模和分析方法
1.思维导图。
2.实体关系图。
三:用户体验
用户使用我们的软件后,软件第一次启动,软件设计者要给用户什么样的第一映像?用户回过头来访问你的网站,你要给他们什么样的第一映像?我们需要考虑到这几点。
1.谁会是我们的用户,他们又怎样的需求,他们知道这个软件事做什么的吗?用户想表达什么目的,怎样使他们尽快找到相应的功能入口,完成任务。
2.用户和软件的第一次使用,很大程度上决定了用户的对软件的评价,怎样使用户在第一次使用的时候就感觉很有价值,使用户在没有价值的地方少花时间,而把大部分时间都花在有价值的功能
3.从用户的角度考虑,用户需要帮助,但是用户不是笨蛋。
四:用户评价标准
1.尽快提供可感触的反馈。
2.系统界面符合用户的现实惯例。
3.用户有控制权。
4.一致性和标准化。
5.适合各种类型的用户。
6.帮助用户是被诊断和修复错误。
7.有必要的提示和帮助文档。