[Group Weekly Plan] 2005 12/1-12/9 需求设计 UNICODE

1 view
Skip to first unread message

corlin

unread,
Dec 1, 2005, 4:23:16 AM12/1/05
to cyber...@googlegroups.com
论坛的成员越来越多,但发言的人还是很少。不知道大家加入的目的是什么。)
 
沿用以前的计划,每周定个主题讨论吧。我会在主题期间多关注一些主题相关的资源和论点。
大家畅所欲言。)
 
本次的两个主题是
1.需求设计
2.UNICODE
 


--
QKnowledge 设计开发进行中
我的blog
http://www.cybercorlin.net/corlin

corlin

unread,
Dec 1, 2005, 4:29:20 AM12/1/05
to cyber...@googlegroups.com
我参考的书籍:
 
实用软件需求 [译本]
Practical Software Requirements,A Manual of Content & Style
 

Unicode 揭秘 [电子版]
Unicode Demystified

By Richard Gillam


 
在05-12-1,corlin <cyber...@gmail.com> 写道:

corlin

unread,
Dec 1, 2005, 4:36:12 AM12/1/05
to cyber...@googlegroups.com
 
NASA的Freedom 需求设计方法,比较敏捷,以原形为驱动。
感觉适应的领域不宽,组织内部实行此方法好一些。。
有一本新出的书全面的介绍了这个方法,图书馆有资源的可以看看。
Software Requirement : encapsulation,quality , and reuse /Rick Lutowski
 
在05-12-1,corlin <cyber...@gmail.com> 写道:

Yu,Wang

unread,
Dec 1, 2005, 4:34:10 AM12/1/05
to cyber...@googlegroups.com
这样好啊,不然会把这里当BBS来潜水了
需求设计很郁闷,俺们曾有个项目,边做用户就边改需求,最好做出来得东东烂得死啊

corlin

unread,
Dec 1, 2005, 4:48:19 AM12/1/05
to cyber...@googlegroups.com
需求分析和设计一般都是迭代进行的,但每次的问题域,断言的定义必须清晰。
 
整体的框架也应该比较稳定;最怕需求模糊和互相交叉。
问题域的分解需要技巧,很好分解的问题域能清晰问题,发现解决方案。需求设计人员没有很好的划分问题域就没法指导任务划分和开发。
 
需求就是明确问题(定义良好的问题)。这样开发人员不需要再更深入的研究问题域。。
 
感觉好多的时候都是需求人员没有明确问题,而直接下发,拖延整个工期;造成恶性循环。
 
上面是照本宣科,兄弟们上阿

 
在05-12-1,Yu,Wang <wy5...@gmail.com> 写道:

corlin

unread,
Dec 1, 2005, 4:57:15 AM12/1/05
to cyber...@googlegroups.com
感觉RUP等过程过分建模,弱化了[软件就是为了解决问题]。由于沟通成本(粗燥的文档,不流畅的沟通,隐含信息),需求到实现会遗失很多重要的信息,造成了成本增加和质量下降。
敏捷方法注重快捷实现,需求就是设计,弱化建模(非诋毁),双效沟通(pair dev),用原形来强化白盒实现(减少随意性)。的确不错

 
在05-12-1,corlin <cyber...@gmail.com> 写道:

None

unread,
Dec 1, 2005, 5:01:42 AM12/1/05
to SEofCHINA 软件工程社区
需求分析真的是一件麻烦的事,我自已曾经调研一个系统,起码要三个月才把需求分析写完,主要此系统是为劳动部门开发的,要是企业我相信早就停止,因为一般情况没有那么长的时间写需求文档,不过,如果没认真去调研,以后开发程序也比较麻烦,但这样资金成本很高,所以,需求分析要搞好真是很头痛的一件事.我觉得要做好它很难.

corlin

unread,
Dec 1, 2005, 5:14:53 AM12/1/05
to cyber...@googlegroups.com
调研的同时应该同步需求文档,这样用户也可以马上确认该文档;推荐原型驱动;这样可以框定用户需求;白版也是个不错的东西(表达能力很强);切忌别漫无目的,无限扩散(别开茶话会哦 ^_^);
 
客户需求调研完以后,初步的需求设计文档和原型系统应该成形(真的很苦,白天调研,晚上加班写文档/原型 ),
 
MIS系统,OA系统等逻辑简单的非产品项目可以用这种方法。
 
有了成型的产品后可以在此基础上向用户推广和定制,这方面的需求调研和书写就应该比较生硬和流程性了。
 
需求也可以分阶段进行,先调研整体框架,相关功能,然后再具体调研,有效分工;产品化项目的调研需要积累迭代的原型(模型库),拿原型/实体模型板砖砸客户先,谁先把谁弄伏贴谁就有主动权:)

Kasen

unread,
Dec 1, 2005, 7:33:12 AM12/1/05
to cyber...@googlegroups.com
这两天出差苏州,不能和兄弟们讨论了,不过回头我会仔细看大家的讨论。
给个建议,是不是按照软件的开发过程,一个一个步骤地讨论,
整个过程讨论完了,我想大家会有一个更深的认识,我觉得这次应该像个开头。

 

corlin 陈

unread,
Dec 2, 2005, 1:13:40 AM12/2/05
to cyber...@googlegroups.com
The Basic Principles of the Business Rule Approach 商业规则分析方法基本原理 10点
  1. Rules should be written and made explicit.清晰书写,没有歧义
  2. Rules should be expressed in plain language.简明表达
  3. Rules should exist independent of procedures and workflows.依赖于过程和工作流
  4. Rules should build on facts, and facts should build on concepts as represented by terms.
    规则基于现实/事实/论据,现实建立在术语表示的概念基础上。
  5. Rules should guide or influence behavior in desired ways.在期望路径内指导或影响行为
  6. Rules should be motivated by identifiable and important business factors.规则应由确定的重要商业因素推动
  7. Rules should be accessible to authorized parties.只有被授权的组织才可访问
  8. Rules should be single-sourced.单一来源
  9. Rules should be specified directly by those people who have relevant knowledge.规则应由领域专家直接制定
  10. Rules should be managed. 可管理
     
 
 
--
SEofChina 筹备中
QKnowledge 设计开发中
支持请点击GOogLe广告
http://www.cybercorlin.net/corlin

corlin 陈

unread,
Dec 4, 2005, 9:58:29 PM12/4/05
to cyber...@googlegroups.com
MSN (Microsoft 解决方案框架) 参考一下
微软94年开始总结的一个软件实施框架,结合迭代和瀑布模式,旋转上升过程中加入验证点,讲求日构建,高风险高优先级,扁平组织管理,人员合理分工。和敏捷方法有很多共同点,又不失规范和可跟踪。。

以前很少关注微软的方法学,失误阿。)

资源:
Microsoft 解决方案框架版本 3.0 概述
http://www.microsoft.com/china/technet/itsolutions/techguide/msf/msfovrvw.mspx
Microsoft 解决方案框架
http://www.microsoft.com/china/technet/itsolutions/techguide/msf/default.mspx

下载中的资源很不错。

参考书目:
对应MSCD的开始编目是MCSD.NET Exam 70-300
《Analyzing Requirements and Defining Microsoft .NET Solution Architectures》
http://www.microsoft.com/mspress/china/books/book20239.htm
中译本为:
《MCSD制胜宝典:需求分析与Microsoft.NET解决方案体系结构定义》
http://www.welan.com/199909/

corlin 陈

unread,
Dec 4, 2005, 10:00:26 PM12/4/05
to cyber...@googlegroups.com
不好意思,打习惯了,msn 应为 msf

corlin 陈

unread,
Dec 5, 2005, 1:34:08 AM12/5/05
to cyber...@googlegroups.com

软件需求的分支与约束

需求工程(Requirements  Engineering)包括:
需求获取 是需求分析员与系统的最终用户一起工作以明确用户需要的过程,
需求分析 是提炼用户的需要和约束的过程,
需求规约 是清楚、准确地编写用户需要和约束文档的过程,
需求验证 是保证系统需求完整、正确、一致、明白的过程,
需求管理 是调度、协调需求工程活动,如获取、分析、规约及验证,并编制文档的整体过程。
在实际工作中,伴随着需求的改进,需求工程的各阶段有时是交织在一起的,
其最终结果是产生需求分析文档《软件需求规格说明书》(Software Requirement Specifications SRS)
相当于最终用户和开发机构之间的技术合同书。

需求包括
业务需求(Business  Requirement)反映丁组织机构或客户对系统、产品高层次的目标要求
用户需求(User  Requirement)描述了用户使用产品必须完成的任务
功能需求(Functional Requirement)定义丁开发人员必须实现的软件功能。


对需求的约束
完整性:要从全局出发,不能单纯从本业务考虑问题。一方面要完整地反映该项业务,另一方面还要全面反映本项业务同其它关联业务的联系。
准确性:准确无误,无二义,各项要求、业务做法、每种处理的详细流程、数据等方面的要求等明确定义,不能摸棱两可、含糊不清。
通用性:业务需求要具有较广泛的适应性,要能够适应大部分分支机构、适应大部分业务处理情况,减少以后各分支机构对系统的修改要求。
前瞻性:业务需求要具有前瞻性,要能够反映该项业务当前的发展状况(包括同业情况)和发展趋势。系统要留有可扩充的余地。
稳定性:一定时限内相对稳定、不变。
权威性:业务需求要具有权威性,能被普遍接受,并具有很强的约束力。
可行性:需求在技术实现和经济负担上要符合实际,切实可行。
安全性:从需求的提出就应充分考虑软件的安全性问题,要有专门负责安全生产或稽核的人员全程参与需求管理及软件开发。

名词:
Computer Supported Cooperative Work (CSCW) 计算机支持的协同工作应该能很好的协助
需求分析过程并实现异步和分布式需求分析和设计。
1994年麻省理工学院的Iren Gieif提出,前景不错,感觉成本有些高,
还是解决人与人之间的沟通问题先吧..

corlin 陈

unread,
Dec 5, 2005, 4:03:17 AM12/5/05
to cyber...@googlegroups.com
User Stories ????
如何不同于use cases 用例, software requirements specifications需求说明书, interaction design scenarios 交互设计场景

corlin 陈

unread,
Dec 5, 2005, 4:30:29 AM12/5/05
to cyber...@googlegroups.com
 BJUG 冰云的一份BA笔记,里面谈到了一些写User Stories及用户交流,优先级确认及需求下发的主旨。
主要感觉还是
充分沟通为成事而作事要事第一,愿景统一
 
 
下面从BJUG Group转载,感谢冰云,粗体是我篡的。。。)
 

    * Responsibility
          o Analysis requirements to stories
          o Help clients on their requirements
                + give them suggestions not dreams
                + find out new requirements
          o Assist PM on iteration management
          o Coach clients prioritizing stories
                + everything has cost (time, people, quality).
                + clients should balance which story has most important
                  business value.
                + High risks,
          o Answer requirements relative questions for developers
          o Guarantee acceptance tests
          o know everyone in the office and keep a eye on what they are
            doing
    * Communication
          o Clients-side
          o a high level vision rather than implementation description
          o remember to ask why they need this story
          o talk to developers to know potential problems and analysis
          o if we use another way implemented the story target, is it
            acceptable?
          o different way have different cost, simplicity first
    * Iterations Management
          o stories
                +

                  we don't always choose stories based purely on this
                  prioritizing, other factors often come in to play

                  go through all stories with customer after iteration
                  or phase finished

                  stories should be detailed enough to implement and test

                  high level estimate by a group of developers

                  stories should reduce the dependences
                  

          o iterations
                +

                  it makes more sense for us to focus on some smaller
                  low-value stories (so that we can build development
                  momentum, and show everyone the process that we are
                  using) than it does to take the bigger, more complex
                  (and yet more valuable) stories.  As we move into
                  iteration two, we will begin to focus more on the
                  higher value stories
, whilst also making sure that the
                  development order makes sense from a technical
                  perspective.

                  go through all stories at IPM, find more problems,
                  questions

    * Business
          o BA should be more business
          o BA should keep a high level vision of whole system
    * User Interaction Design
          o determine user experience or performance



在05-12-5,corlin 陈 <cyber...@gmail.com> 写道:

corlin 陈

unread,
Dec 6, 2005, 4:50:13 AM12/6/05
to cyber...@googlegroups.com

Why User Stories?

  1. User stories emphasize verbal rather than written communication.强调口头沟通

  2. User stories are comprehensible by both you and the developers.地球人都知道(BA,Dev,User)

  3. User stories are the right size for planning.适合计划

  4. User stories work for iterative development.为迭代开发

  5. User stories encourage deferring detail until you have the best understanding you are going to have about what you really need.
    激励你明确所需后才进行需求细化

  6. User stories support opportunistic design.避免投机取巧,偷工减料

  7. User stories encourage participatory design.鼓励分享设计

  8. User stories build up tacit knowledge 构建隐性知识
详细说明请看:
User Stories Applied: For Agile Software Development (Chapter 13. Why User Stories?
By Mike Cohn
 
Publisher : Addison Wesley
Pub Date : March 01, 2004
ISBN : 0-321-20568-5
Pages : 304

txy

unread,
Dec 12, 2005, 2:23:36 AM12/12/05
to cyber...@googlegroups.com
我觉得快速原型法,是那种客户需求不是很详细的项目最好的一种方式了,因为有时客户也不知道他所需要的是什么。

Zhang Ke

unread,
Dec 20, 2005, 9:09:06 AM12/20/05
to cyber...@googlegroups.com
各位,小弟潜水很长时间了,今天冒个泡,请教几个问题。
 
1. AJAX用XMLHttpRequest的时候是不是不能将request指向当前web application域之外的service?比如请求的URL是http://www.google.com
2. forward在server端可以向其它的域内的service请求资源,而且不需要client的browser参与?
3. sendRedirect向client端发出特殊的HTTP指令,由browser向相应的service请求资源?
4, 但是上述两种方法是否都不能完成类似proxy的功能?比如我向自己的servlet提交一个URL(http://www.google.com),我能用上面的方法拿到google首页的HTML代码么?(并不是要客户端转向,而是通过AJAX发请求,拿到HTML代码)
5. 我是否应该用java.net.URL直接在servlet端访问google来实现这个功能呢?
 
可能我问得不太清楚,试着讨论一下吧,谢谢啦。
 
Antix
Add FUN to your email - CLICK HERE!

哈哈

unread,
Mar 3, 2006, 8:53:40 AM3/3/06
to cyber...@googlegroups.com
1、肯定是可以的,没试过浏览器是否会有安全提示。
2、forward 我所知是不能转向其它 server 的。
3、是由 browser 重请求的,但应该不是特殊的 HTTP 指令吧,具体可以抓个包看看。
4、5、你想让客户端直接得到指定网站的HTML页,我知道只能用 iframe ,否则就只能自己去请求了,让你自己的 server 去访问指定的网站得到。
 
不知道这样的回答是否满意。

 
在05-12-20,Zhang Ke <zha...@sina.com.cn> 写道:

shanzb

unread,
Mar 4, 2006, 12:22:44 AM3/4/06
to cyber...@googlegroups.com
1.xmlhttp可以在一个页面调用多个server的内容,浏览器不会有安全提示(IE6里面测试过)
2.forward只能转向本机的连接request.getRequestDispatcher("resource").forward(request,response).其中的resource是相对于webcontext的内容,所以无法访问其它的资源.
此外可以这样想想:request里面存有你这次访问的信息,如果forward到其它的server上面去,这个操作本身就是不合法的,http协议应该会有所限制.
3.同意
4.你完全可以通过ajax(甚至只用xmlhttp)在客户端实现,也就是说html就可以实现对应的功能,不必要使用后台的技术或者servlet.但是性能和效率可能会相对低一些.
5.你除了使用URL类以外还可以试试使用HttpClient类,这个类可以模仿http操作.

 
----------------------------------

Reply all
Reply to author
Forward
0 new messages