WhatTimeIsIt .com
2013-02-05 13:34
435 查看
这是一份功能规格的范例, 是讨论软件管理的网站Joel on Software中的一环. 这份规格是以教学为目的, 并不牵涉任何真实的产品. 这样声明是怕万一你没注意到这整篇东西有多蠢. 创投业者注意, 特别是很蠢的哪些:
先期投资500到2000万美金就可以实现这个产品的点子.
WhatTimeIsIt
.com
功能规格
Joel Spolsky
最后更新日期: 2000年9月27日
- 极 机 密 -
著作权 2000 Fog Creek Software, Inc. 保留所有权利.
是一项用网络告诉大家时间的服务
不管再怎么幻想, 这份规格都是不完整的. 在完成前所有用字都需要修改多次. 这里展示的画面图案及配置只是为了说明里头的功能. 实际的外观需要参考绘图设计师意见并视使用者反应逐步开发.
时间计算引擎所用的演算法会在其他文件中讨论, 并不会出现在这份规格中. 本规格只讨论使用者与WhatTimeIsIt.com互动时所看得到的內容.
脚本1: 麦克.
麦克是位忙碌的经营者. 他是一家重要大公司的总裁, 公司的业务是制作在玩具反斗城等全国连锁店販售的超热门儿童玩具. 在典型的某一天, 麦克和很多大人物有很多会议要开. 有时候会有银行的人抱怨他信用贷款的利息三个月未缴. 有时候另一家银行的人会要他再申请另一个信用贷款. 有时候他的出资者们(拿钱给麦克开公司的好人) 会跑来抱怨他赚太多钱了. "多烧点钱!"他们要求著说"华而街要看到烧大钱!"(译著:讽刺网络泡沬时代公司花钱愈凶愈有价值)
如果麦克先前答应要在某时刻见面, 结果时间到了又找不到人, 这些访客就会非常不爽. 而当麦克不知道时间时就会发生这种事. 基于秘书的推荐, 麦克新开了一个WhatTimeIsIt.com
的帐号. 现在当麦克不知道时间时, 只要登入WhatTimeIsIt.com, 输入他的用户名称和密码, 就可以知道现在的时间. 他每天都要上这个站好几次: 看看是否到了午餐时间, 查查下个会议是否迟到等等. 等到一天快结束时(事实上是从大概下午三点起),他就会一直查查是不是该回家了,而且查的次数愈来愈密. 基本上从4:45开始, 麦克就只是一直在按重新显示.
脚本2: 辛蒂.
辛蒂是个高中生. 她在一所很烂的公立高中念书不过人很聪明, 所以她下午2点回家后平均只花约7分钟写代数作业. 其他科目的老师根本连作业都懒得出. 她的小弟弟(同父异母的)只会窝在电视前看天线宝宝, 所以下午(从2:07起到约6:30新 妈妈弄好晚餐)都在逛网络并且和AOL上的朋友聊天. 她总喜欢找些刺激的新网站. 因为不小心在搜索引擎上输入了"What Time Is It?"(纯属意外, 她本来只是想在Instant Messenger 上问朋友时间而已), 所以连到了WhatTimeIsIt.com
并且建了个新帐号. 她选了用户名称并把密码设成"RyanPhillipe"再选好时区, 瞧 -- 就知道现在的时间了.
单一会员的多个时区. 所有会员都会假设是在相同的时区內.
更改密码.
约会.
所有画面都是以HTML制作.(唯一的异常是以Macromedia Shockwave制作的启动画面).
在这份文件中, WhatTimeIsIt.com 中的每一个画面都有一个加有底线标记的正式名称, 所以你知道我们会以名称来表示画面, 比如首页.
吃午饭前还会去Starbucks四次.
等这段动画播放约10秒后, 动画右下角会以淡入方式浮现"跳过这段"的连结. 为了避免人们看到并点选这个连结, "跳过这段"会放在很右边很下面以便让大部份人都看不到. 位置至少要在动画由左算起800点以及由上算起600点.
点选"跳过这段"就会连到首页. 当动画结束时就会自动把浏览器重新导向到首页.
未定项目
如果行销人员同意的话, 当使用者点选"跳过这段"时, 我们应该在使用者的电脑上留一个cookie, 以后就直接略过动画. 对常来的访客说动画应该只需要看一遍. 我和行销部门的吉姆讨论过, 他会负责召集会议找业务,行销以及公关一起讨论.
让人们认识本服务并考虑是否要加入
允许已加入的会员登入
允许想加入的人建立帐户.
首页的外观如下:
在这个画面及所有画面中按左上角的WhatTimeIsIt
.com图案就会跳回首页.
技术注释
由于各个画面非常相似, 服务器上应该使用某种含入系统, 万一服务名称变更或我们买不到所要的网域名称时, 可以一次更改所有的画面. 我建议用Vignette Story Server. 这当然是杀鸡用牛刀而且要花20万美元. 不过这比用服务器端含入功能好用太多了!
按标有"按这里登入"的连结就会连到登入表格. 按标有"按这里加入"的连结会连到 加入表格. 其他五个连结会显示管理阶层提供的固定文字, 这份规格并不涵盖文字內容. 而且內容也不需要时常变更.
画面右半边的行为和首页原先描述的內容相同.
电子邮件框允许你键入最多60个字. 密码框允许最多键入12个字. 为了避免被侵入, 使用者在密码框键入的字都不会显示出来, 只会看到星号(*).
技术注释
这个功能可以用<INPUT TYPE=PASSWORD>达成
当使用者按登入时, 要在服务器端进行下列检查:
如果有填电子邮件地址, 可是格式错误不可能是真实的地址(比如缺@符号或含有 RFC-822电子邮件地址不允许的文字), 服务器会传回另一个很像登入表格的网页 (只有这种场合会出现), 其中地址框的上方会插入红色的错误讯息,说" 你输入的电子邮件地址不合法. 请再次确认." 虽然这段字是红色的, "请输入你的电子邮件地址" 还是黑色的. 使用者原先输入的错误电子邮件地址会直接放在编辑框內.
如果有填电子邮件地址, 可是找不到对应的注册会员, 服务器会传回另一个很像登入表格的网页, 其中地址框的上方会插入红色的错误讯息,说" 你输入的电子邮件地址不是会员. 请再次确认. 要成为会员时可以按画面右方的连结." 虽然这段字是红色的, "请输入你的电子邮件地址" 还是黑色的. 使用者原先输入的错误电子邮件地址会直接放在编辑框內. [问开发人员的问题. 这里能不能利用JavaScript,
让使用者按加入会员的连结时, 可以自动把原先的电子邮件地址放在加入表格內?]
如果有填电子邮件地址而且确认是注册会员, 可是完全没输入密码, 我们会把密码用电子邮件传给给该地址. 邮件的主题是"你的WhatTimeIsIt.com会员身份". 电子邮件是纯文字的. 董事会还在争议该邮件的确实文句內容, 不过在服务推出前会定案. [开发人员: 我建议暂时用嘲讽的字眼. 可以让老总加快动作. ]
如果有填电子邮件地址而且确认是注册会员, 有输入密码但却是错的, 服务器会传回另一个很像登入表格的网页, 其中地址框的上方会插入红色的错误讯息,说 "你输入的密码错误. 请再确认. 注意, 对密码来说大小写是 不一样的." 如果使用者输入的密码里完全没有小写字母, 讯息內要增加下列文字: "你是不是不小心打开大写功能(CAPS
LOCK)了?" 不管密码是否正确, 重新显示登入表格时都会清除密码框內容.
如果电子邮件地址和密码都正确, 就直接跳到时间显示.
未定项目
必须决定第二项的JavaScript
未定项目
需要总经理决定密码电子邮件的文句內容
回到Joel on Software
先期投资500到2000万美金就可以实现这个产品的点子.
WhatTimeIsIt
.com
功能规格
Joel Spolsky
最后更新日期: 2000年9月27日
- 极 机 密 -
著作权 2000 Fog Creek Software, Inc. 保留所有权利.
概要
WhatTimeIsIt.com是一项用网络告诉大家时间的服务
不管再怎么幻想, 这份规格都是不完整的. 在完成前所有用字都需要修改多次. 这里展示的画面图案及配置只是为了说明里头的功能. 实际的外观需要参考绘图设计师意见并视使用者反应逐步开发.
时间计算引擎所用的演算法会在其他文件中讨论, 并不会出现在这份规格中. 本规格只讨论使用者与WhatTimeIsIt.com互动时所看得到的內容.
脚本
想像一些真实(典型)人物如何使用产品的真实生活故事, 会对产品设计很有帮助. 我们将会看看两份脚本.脚本1: 麦克.
麦克是位忙碌的经营者. 他是一家重要大公司的总裁, 公司的业务是制作在玩具反斗城等全国连锁店販售的超热门儿童玩具. 在典型的某一天, 麦克和很多大人物有很多会议要开. 有时候会有银行的人抱怨他信用贷款的利息三个月未缴. 有时候另一家银行的人会要他再申请另一个信用贷款. 有时候他的出资者们(拿钱给麦克开公司的好人) 会跑来抱怨他赚太多钱了. "多烧点钱!"他们要求著说"华而街要看到烧大钱!"(译著:讽刺网络泡沬时代公司花钱愈凶愈有价值)
如果麦克先前答应要在某时刻见面, 结果时间到了又找不到人, 这些访客就会非常不爽. 而当麦克不知道时间时就会发生这种事. 基于秘书的推荐, 麦克新开了一个WhatTimeIsIt.com
的帐号. 现在当麦克不知道时间时, 只要登入WhatTimeIsIt.com, 输入他的用户名称和密码, 就可以知道现在的时间. 他每天都要上这个站好几次: 看看是否到了午餐时间, 查查下个会议是否迟到等等. 等到一天快结束时(事实上是从大概下午三点起),他就会一直查查是不是该回家了,而且查的次数愈来愈密. 基本上从4:45开始, 麦克就只是一直在按重新显示.
脚本2: 辛蒂.
辛蒂是个高中生. 她在一所很烂的公立高中念书不过人很聪明, 所以她下午2点回家后平均只花约7分钟写代数作业. 其他科目的老师根本连作业都懒得出. 她的小弟弟(同父异母的)只会窝在电视前看天线宝宝, 所以下午(从2:07起到约6:30新 妈妈弄好晚餐)都在逛网络并且和AOL上的朋友聊天. 她总喜欢找些刺激的新网站. 因为不小心在搜索引擎上输入了"What Time Is It?"(纯属意外, 她本来只是想在Instant Messenger 上问朋友时间而已), 所以连到了WhatTimeIsIt.com
并且建了个新帐号. 她选了用户名称并把密码设成"RyanPhillipe"再选好时区, 瞧 -- 就知道现在的时间了.
非目标
这个版本不会支持下列功能:单一会员的多个时区. 所有会员都会假设是在相同的时区內.
更改密码.
约会.
WhatTimeIsIt.com 流程图
我们待会再花时间讨论细节, 现在先看看这个服务的流程图, 让你能有些概念. 这份流程图并不完整, 不过还是让你正确地了解使用WhatTimeIsIt.com的"脚本":各个画面的规格
WhatTimeIsIt.com 由很多不同的画面构成. 大部份画面都会依循一个标准格式(实际型式将由绘图设计师负责). 这份文件主要著重在功能性以及互动设计而非实际的外观及画面配置.所有画面都是以HTML制作.(唯一的异常是以Macromedia Shockwave制作的启动画面).
在这份文件中, WhatTimeIsIt.com 中的每一个画面都有一个加有底线标记的正式名称, 所以你知道我们会以名称来表示画面, 比如首页.
启动画面
一个无意义的烦人Shockwave动画, 只会放著无聊的音乐把大家逼疯.启动画面将会包给 某家位于苏活区二楼的高收费动画坊, 里头的员工不但带狗上班还把铸金属饰物挂在耳上,吃午饭前还会去Starbucks四次.
等这段动画播放约10秒后, 动画右下角会以淡入方式浮现"跳过这段"的连结. 为了避免人们看到并点选这个连结, "跳过这段"会放在很右边很下面以便让大部份人都看不到. 位置至少要在动画由左算起800点以及由上算起600点.
点选"跳过这段"就会连到首页. 当动画结束时就会自动把浏览器重新导向到首页.
未定项目
如果行销人员同意的话, 当使用者点选"跳过这段"时, 我们应该在使用者的电脑上留一个cookie, 以后就直接略过动画. 对常来的访客说动画应该只需要看一遍. 我和行销部门的吉姆讨论过, 他会负责召集会议找业务,行销以及公关一起讨论.
首页
当Shockwave动画结束时就会出现, 首页有三个功用:让人们认识本服务并考虑是否要加入
允许已加入的会员登入
允许想加入的人建立帐户.
首页的外观如下:
WhatTimeIsIt.com
|
.com图案就会跳回首页.
技术注释
由于各个画面非常相似, 服务器上应该使用某种含入系统, 万一服务名称变更或我们买不到所要的网域名称时, 可以一次更改所有的画面. 我建议用Vignette Story Server. 这当然是杀鸡用牛刀而且要花20万美元. 不过这比用服务器端含入功能好用太多了!
按标有"按这里登入"的连结就会连到登入表格. 按标有"按这里加入"的连结会连到 加入表格. 其他五个连结会显示管理阶层提供的固定文字, 这份规格并不涵盖文字內容. 而且內容也不需要时常变更.
登入表格
登入表格是让现有会员登入帐户找出现在的时间. 其外观如下:WhatTimeIsIt.com
|
电子邮件框允许你键入最多60个字. 密码框允许最多键入12个字. 为了避免被侵入, 使用者在密码框键入的字都不会显示出来, 只会看到星号(*).
技术注释
这个功能可以用<INPUT TYPE=PASSWORD>达成
当使用者按登入时, 要在服务器端进行下列检查:
如果有填电子邮件地址, 可是格式错误不可能是真实的地址(比如缺@符号或含有 RFC-822电子邮件地址不允许的文字), 服务器会传回另一个很像登入表格的网页 (只有这种场合会出现), 其中地址框的上方会插入红色的错误讯息,说" 你输入的电子邮件地址不合法. 请再次确认." 虽然这段字是红色的, "请输入你的电子邮件地址" 还是黑色的. 使用者原先输入的错误电子邮件地址会直接放在编辑框內.
如果有填电子邮件地址, 可是找不到对应的注册会员, 服务器会传回另一个很像登入表格的网页, 其中地址框的上方会插入红色的错误讯息,说" 你输入的电子邮件地址不是会员. 请再次确认. 要成为会员时可以按画面右方的连结." 虽然这段字是红色的, "请输入你的电子邮件地址" 还是黑色的. 使用者原先输入的错误电子邮件地址会直接放在编辑框內. [问开发人员的问题. 这里能不能利用JavaScript,
让使用者按加入会员的连结时, 可以自动把原先的电子邮件地址放在加入表格內?]
如果有填电子邮件地址而且确认是注册会员, 可是完全没输入密码, 我们会把密码用电子邮件传给给该地址. 邮件的主题是"你的WhatTimeIsIt.com会员身份". 电子邮件是纯文字的. 董事会还在争议该邮件的确实文句內容, 不过在服务推出前会定案. [开发人员: 我建议暂时用嘲讽的字眼. 可以让老总加快动作. ]
如果有填电子邮件地址而且确认是注册会员, 有输入密码但却是错的, 服务器会传回另一个很像登入表格的网页, 其中地址框的上方会插入红色的错误讯息,说 "你输入的密码错误. 请再确认. 注意, 对密码来说大小写是 不一样的." 如果使用者输入的密码里完全没有小写字母, 讯息內要增加下列文字: "你是不是不小心打开大写功能(CAPS
LOCK)了?" 不管密码是否正确, 重新显示登入表格时都会清除密码框內容.
如果电子邮件地址和密码都正确, 就直接跳到时间显示.
未定项目
必须决定第二项的JavaScript
未定项目
需要总经理决定密码电子邮件的文句內容
回到Joel on Software
相关文章推荐
- [翻译Joel On Software] “现在几点了”网站功能规范/WhatTimeIsIt.com Functional Specification
- POJ 1676 What time is it? 笔记
- poj 1676 What time is it?(经典模拟)
- poj1676 What time is it?
- Introduction to COM - What It Is and How to Use It.
- poj 1676 What time is it?
- Windows,Introduction to COM - What It Is and How to Use It.
- Poj 1676 What time is it?
- poj 1676-What time is it?
- what time is it?
- Introduction to COM - What It Is and How to Use It.
- poj 1676 What time is it?
- Problem 45 What Time Is It
- What is pseudopolynomial time? How does it differ from polynomial time?
- What is the difference between routine , method , procedure , function ? please explain it with example?
- This view is not constrained, it only has designtime positions
- What is d_type and why Docker overlayfs need it
- 解决php的It is not safe to rely on the system’s timezone settings的问题
- 20080331 - What is a PID, How is it useful when troubleshooting a system
- what is love -- google say it everyday