关于需求和架构的典型问题

主持人:大家下午好,今天是IBM倾诉月活动的第二期在线聊天节目,欢迎大家来到我们的在线聊天室。今天的主要话题是围绕需求分析师和架构师在开发过程中的问题而展开。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

广大网友在倾诉月前期的group讨论中,提出了很多自己工作中所遇到的困惑和难题,我们已经收集在问题列表中并邀请到身经百战的专家来现场为大家一一解答。

 

问答现场实录:

问:如何面对客户不断的需求变化?[2008-8-6 14:27:00]

嘉宾[肖勇]: 客户需求的不断变化这是软件项目中经常遇到的。我觉得首先是要做好的是项目的范围管理,也就是说必须要让客户知道,哪些需求是是在可以满足的,哪些是暂时或者不能满足的(不能满足的是为什么?包括:进度,成本等等方面的原因),我相信一般客户还是能理解的。

 

问:如何让开发团队系统地理解客户的需求?[2008-8-6 14:32:00]

嘉宾[肖勇]: 这需要有统一的工作规范,统一的工作过程,最后,双方需要站在客户的角度去思考问题,弥补针对同一问题站在不同角度去思考而形成的鸿沟。

 

问:在一个项目进行中,需求分析师的职责有哪些?您觉得一个合格的需求分析师应该具备哪些素质?[2008-8-6 14:33:00]

嘉宾[肖勇]: 职责:产出结构清晰,质量合格的需求工作成果,需求工程师首要的是必须理解行业,其次,有系统化的需求启发和需求工程的技能。

 

问:如何才能既满足客户需求,又能降低成本?[2008-8-6 14:38:00]

嘉宾[肖勇]: 首要的是了解项目的成本和范围。其次,搞清楚本项目中决定项目成败的首要利益相关者,平衡好利益相关者的利益关系。在成本有限的情况,优先满足首要利益相关者的需要。

 

问:怎样才能更准确的将需求原型转化为系统原型?[2008-8-6 14:36:00]

嘉宾[肖勇]: 采用业界公认的,统一的符号体系。特定系统需要根据特定的情况自定义一部分转换的规则

问:如何才能精确界定客户需求?[2008-8-6 14:40:00]

嘉宾[肖勇]: 不存在在精确的方式,但是我们可以采用一些可视化的方法让需求更可见,避免客户和开发方对需求理解的不一致性。

 

 

问:敏捷过程如何做需求分析?[2008-8-6 14:43:00]

嘉宾[肖勇]: 当然是敏捷的需求方法,一般采用讲故事的方式和描述业务场景的方式,在形式上需要随时随地的与软件的使用者进行沟通,同时也可以辅助采用软件原型的方法

 。

 

问:优秀系统分析师必须有哪些素质?[2008-8-6 14:46:00]

嘉宾[肖勇]: 首先,全局的架构观,其次,灵活的架构视角的采用,最后,理解架构的模式,能够娴熟的使用常用的架构模式的框架。
 
问:需求开发是指从信息收集、分析和评价到编写文档、评审等一系列产生需求的活动,分为四个阶段:需求获取、需求分析、编写规格说明和需求验证(评审)。哪位高人指点一下:在每个阶段,也就是子过程中要产生什么文档?[2008-8-6 14:48:00]

嘉宾[肖勇]: 需求工程的方法是根据不同的项目情况采用适合的方法,所谓法无定法,不要陷入到某一个特定的框架中,适合就是最好的。
 
问:我们经常要面对用户需求的变更,如果已经进入了开发阶段,用户突然对需求发生了根本的变化导致整个系统都需要推翻重做。 如果用户提出这样的变更,你如何应对?如何解决此问题,以及此问题带来的风险和危害![2008-8-6 14:49:00]

嘉宾[肖勇]: 首先变化是永恒的,其次变化的过程是需要管理的,最后,严重超出范围是要想办法收钱的。

 

问:用户提出变态的需求怎么办?[2008-8-6 14:57:00]

嘉宾[肖勇]: 让商务人员去处理。

 

问:现在有个项目,需要不同地域的人在业余时间一起开发,人员很分散。在管理方面和进度控制方面,例如代码管理,文档管理,交流等方面, 各位是否有好的建议。或者提供一些好的参考资料。[2008-8-6 14:59:00]

嘉宾[肖勇]: 开发源码的工作方式就是很好的参考,这里强调的是工作成果需要尽量的集中。

 

 
问:需求分析师和需求工程师,区别是什么[2008-8-6 15:01:00]

嘉宾[肖勇]: 有些局部差别,一般需求分析师指的是讲针对需求进行分析产出分析模型的人员。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值