卢晓东:我们的实践围绕着调试SH框架环境做了两天,然而进展还是有点汗颜。。。。。。同桌的小伙伴不得不说出“调试SH,从开始到放弃”的玩笑式言语,不得不说我们还太年轻,对环境还不了解,每次出现错误了上百度一搜,总是可以有很多的解决方案,然而一个都解决不了....一个都解决不了???!让我对环境的调试产生了新的认识.Anyway,且行且珍惜,珍惜被调试环境虐待的日子吧,今天就到这
李凯城:
之前已经学过了需求分析,在“需求分析”阶段,我们要搞清楚
在问题领域中的现实世界里,都有哪些实体,如何抽象出我们真正关心的属性,实体之间的关系是什么,在这个基础上,用户的需求是什么,软件如何解决用户的需求。
而在分析设计阶段,软件团队的所有相关人员都需要处理、了解这些信息。
那么这些信息怎么表达才能更准确、更能有效地交流呢?
构建之法给我们提供了几个方法。
以文字为主的文档,如Word、PowerPoint 文档。正如我们在需求分析和场景设计中看到的那样
用图形为主构造的模型,如Mind Map(思维导图),ERD,DFD,UML的各种图,甚至包括Flow Chart流程图
用数学语言的描述,如Vienna Development Method
用类自然语言+代码构造的描述,如Literate Programming
源代码加注释也能描述。
在计算机软件发展的过程中,科学家和工程师们还尝试了很多其他方法,它们在不同程度上解决了一些局部问题,从不同的方面推动了相关领域的发展。
构建完毕并不意味着结束,后期还需要修复许多Debug
奚佳峰:
关于典型用户和场景光看用户的表面语言或行动还是不够的。我们还要找到用户语言或行动背后的动机!不能光根据用户的语言就匆忙做决定。
典型用户的价值:典型用户不再是一个抽象的概念,而应该是一个活生生的人。一个典型用户描述了一组用户的典型技巧、能力、需要、想法、工作习惯和工作环境。在设计软件的过程中,我们往往会以自己使用产品的习惯对软件行业的熟悉程度出发设计,忘记了我们的软件是给千千万万个不那么会用电脑的人使用的。在这种情况下,搞一个“典型用户”会强迫我们在考虑问题时从用户的角度出发。
我们应该怎样去定义一个典型用户:
1.名字(越自然越好)
2.年龄(不同年龄和收入的用户有不同的需求)
3.收入
4.代表的用户在市场上的比例和重要性(比例大不等同于重要性高,如付费的用户比例较少,但是影响大,所以更重要)
5.使用这个软件的典型场景
6.使用本软件/服务的环境(在办公室/家里/沙发/床上/公共汽车/地铁……)
7.生活/工作情况
8.知识层次和能力(教育程度,对电脑、互联网的熟悉程度)
9.用户的动机、目的和困难(困难=需要解决的问题)
10.用户的偏好
值得注意的是:我们的软件不是为所有人服务的
从经典用户到场景:有了典型用户之后,我们还得决定每一个典型用户的目标——他/她使用系统想要达到什么目的。对于每一个目标,列出达到目标所必须经历的过程,这就是场景,也可以叫故事。注意,有些场景描述了成功的结果,有些场景描述了失败的结果。用户和系统有成百上千中可能的交互情况,写场景时要有针对性。场景之间如何区分呢,这就要求我们找到这个场景的特殊之处,对于共同的流程可以一笔带过,重点描述场景中特殊的因素。把场景组织成一个故事,这样就能把一个完整的用户与文件系统交互的流程记录下来,以后进行产品演示或验收都可以以此为基础。
从场景到任务:不同的任务会把一个场景编织起来,虽然有多个开发者参与这项工作,但是应该有一个开发者对整个场景负责。得到开发任务后,我们就可以创建和分配测试任务
王彦凯:
一、典型用户和典型场景
Visual Studio的经典用户
怎样定义典型用户
从典型用户到场景
用例
规格说明书
功能说明书
定义好相关的概念
规范好一些假设
避免一些误解,界定一些边界条件
描述主流的用户/软件交互步骤
一些好的功能还会有副作用
服务质量的说明
功能驱动的设计
构造总体模型
构造功能列表
制定开发计划
功能设计阶段
实现具体功能
11章
分析和设计方法
图形建模和分析方法
表达实体和实体之间的关系
表达数据的流动
表达控制流
统一的表达方式
其他设计方法
形式化的方法
文学化编程
从Spec到实现
把修改集集成到代码库中
开发人员的标准工作流程
开发阶段的日常管理
闭门造车
每日构建
构建大师
宽严皆误
小强地狱
代码完成
杨嘉豪:
实践开始已经过去两天了,第一天老师给我们搭建了MyEclipse和MySQL的环境,环境很重要,多人一起开发时必须使用相同的环境才能使调试结果一致,或者由于开发环境的不匹配使得开发无法继续下去,刚开始搭建环境时同学们就出现了各种各样的问题花费了很多时间解决。
第二天老师向我们演示MySQL数据库的搭建和各种操作,接着在MyEclipse里将数据库和网页前端连接,达到在前端操作修改数据时数据库后台的相应数据也一同改变的效果,但是由于时间不足,网页前端的编写尚未开始。