这个想法前段时间就有了,但一直不成熟。这个想法的出现来自以下发现:
1. 用户的需求都体现在界面上。
一个系统对用户真正的价值在于对其业务的帮助和用户体验。而一个系统对于用户在业务上的帮助大概来自3个地方:数据的存储和显示,数据的传输,数值的计算。但用户不理解这些,他们只知道自己要在界面上看到什么,不要看到什么,在界面上可以进行什么操作,不可以进行什么操作。而用户体验更是来自界面。换句话说,用户只对界面有感觉。所以,我们在对用户业务进行了一定的分析和建模之后,应该把这些模型映射到用户界面。然后让这些页面去驱动我们的开发我测试。
2.界面对于开发,测试人员和用户都是最直观的,最容易拿来交流。
3. 来自建筑业的经验。这个好像是大部分软件工程人员喜欢那里对比思考的一个东西。我们去看一座大厦的建设过程,最先出来的都是外观设计,然后才是结构设计。