`
touchinsert
  • 浏览: 1288293 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

程序员应该如何去设计需求

 
阅读更多
刚出道的程序员,在做需求分析的时候,总是经常挨批,客户说他们不能按照客户的要求去设计原型,领导说他们不用心去与客户沟通交流。程序员总是感到自己很冤枉,明明客户没有给出一点建设性建议,程序员按照自己的意愿去设计实现之后,结果却不是客户所需要的,程序员的怎么就那么悲催呢?

其实,程序员的悲催完全是由于程序员的自大引起的。有些程序员开发过几个软件,就以为自己对需求的把控程度很成熟了,于是在与用户做需求的时候,就省去了做原型设计的过程,在听了客户的简单介绍之后,就按照自己的想法把软件的需求分析确定下来,向领导做个简短的报告,然后开始搞开发。

作为程序员,作为需求分析设计人员,更应该明白客户就是上帝。在与用户交流的时候,不要把客户想象成架构师,要把他们当做“白目”来对待,因为客户的没有开发过软件的经验,他们表达的想法不是按照程序来执行。如果程序员只是一味的揣测客户的意愿,而不能自己的所想转换成原型,那么很可能会弄巧成拙。

比如客户甲说想要在应用软件中加个公鸡报时的功能。程序员A以为客户想要一个公鸡宠物,点击时可以报时,而实际上客户是想让软件可以设置闹钟,在某个时间点发出公鸡鸣叫的声音。可想而知,设计出来的宠物再好,也不是用户所需要的。

  作为一个程序员兼需求分析设计师,不但要将客户的需求形成文档,而且还要将用户的需求转换成作品,让用户能够清晰的明白他们将来应用的软件会在什么平台上,以何种样式展现。这样客户就会放心,也就是让我们自己放心。

也许有一些客户是属于“钻石王老五”类型的,他们对软件一窍不通,偏偏还在和你谈需求,他们会对软件提出很多意见,他们会很固执的让我们按照他的思想去设计、实现,尽管那样可以,但是软件的性能及维护性将大大降低,这时候我们需要去主动的引动客户,不是客户左右了你,就是你左右了客户。

如果客户左右了你,尽管可能你按照客户的需求把软件设计出来了,但这却是一个失败的软件,因为它的运行效率很低,而且需求又经常发生变动,而这个软件没有丝毫的可扩充性,那么最后客户会说这个软件设计师给他们设计的软件不够好,而不是客户影响了正常的开发,那么作为软件的需求分析设计师就应该对这件事会责任。

一个好的需求分析设计师,应该是引导客户去正确的使用软件,提高软件的效率与性能,而不是盲目的随从客户,被客户所左右。

分享到:
评论

相关推荐

    程序员应该知道的97件事.

    本书是一线程序员的经验荟萃,他们根据各自在软件工程各环节里的实践经历,现身说法,提出了自己的真知灼见,这些经验涵盖了用户需求、系统分析设计、编码实践、编码风格、Bug管理和项目管理等多个方面。来自各领域...

    计算机实验项目管理系统需求分析和概要设计

    软件工程课程设计内容,包括需求分析,概要设计

    《程序员》2011年08期

    作为高级程序员,乃至于设计师而言,除了应该具备上述全部素质之外,还需要具备以下素质: 1、 需求分析能力 2、 整体框架能力 3、 流程处理能力 4、 模块分解能力 5、 整体项目评估能力 6、 团队组织管理能力 1,...

    非程序员2001-47

    为了提升软件质量,许多软件组织都在谋求技术的改进:需求的技术、分析设计的技术、增量迭代的技术、构件组装的技术……我们搜索,我们买书,我们看书,我们讨论,我们试用...但学到的技术如果不能最终用于自己的...

    沟通技巧-程序员也该懂的技巧

    对于大多数程序员都是给人不善交流沟通的感觉,但实际开发中程序员有大量的沟通需要,需求的把控,产品的设计都是要通过沟通才能防止需求理解错误而导致的设计失误和大量返工,所以沟通之道,程序员非常需要哦!

    非程序员2001-18

    为了提升软件质量,许多软件组织都在谋求技术的改进:需求的技术、分析设计的技术、增量迭代的技术、构件组装的技术……我们搜索,我们买书,我们看书,我们讨论,我们试用...但学到的技术如果不能最终用于自己的...

    黑马程序员ssm代码分享

    阅读建议:此资源以开发简化版Spring学习其原理和内核,不仅是代码编写实现也更注重内客上的需求分析和方案设计,所以在学习的过程要结合这些内客一起来实践,并调试对应的代码。 本代码基于黑马程序员的课程,最好...

    文档实例需求分析概要设计详细设计.zip

    文档实例需求分析概要设计详细设计: 需求分析+概要分享+详细分析+需求分析概要设计详细设计详细案例

    程序员修理之道

    程序员修理之道(kindle版本),适合kindle电子书阅读。 本书直击编程陈地,穿过了软件开发中日益增长的规范和技术藩篱,对核心过程进行了审视――即根据需求,创建用户乐于接受的、可工作和易维护的代码。本书包含...

    数据库管理员、系统分析员、数据库设计人员,应用程序员的职责是什么?.pdf

    数据库管理员、系统分析员、数据库设计⼈员,应⽤程序员的职责是什么? (1)数据库管理员的职责: 1、决定数据库中的信息内容和结构 2、决定数据库的存储结构和存取策略 3、定义数据的安全性要求和完整性约束条件 4、...

    程序员简历模板-1.docx

    本文旨在介绍基于程序员简历模板的毕业设计实现方案。...- 快速搭建:通过使用现成的程序员简历模板,可以快速搭建个人简历网站,省去了设计和开发的时间成本。 - 个性化定制:毕业生可以根据自己的喜好

    程序员实习报告.docx

    程序员实习报告 程序员实习报告汇编五篇 程序员实习报告 篇1 一、 实习目的 通过对java语言、JavaWeb、Oracle数据库应用设计及SQL语言的复习和锻炼,并且通过使用MyEclipse 开发平台设计库存管理系统项目,以达到...

    程序开发功能需求文档模板.docx

    程序开发功能需求文档模板,适用于网站,app,程序开发,梳理功能与需求的模板

    Java程序员简历模板.docx

    # 基于Java程序员简历模板的毕业设计实现 这个毕业设计旨在开发一个基于Java的程序员简历模板,以帮助程序员在寻找工作时更好地展示自己的技能和经验。以下是该设计的要点: ## 功能 - 用户可以选择不同的简历...

    程序员简历模板大全.rar

    1. **初级程序员简历模板**:这些模板专为初级程序员设计,强调教育背景和技术技能。 2. **高级程序员简历模板**:这些模板为有经验的程序员提供了展示其技术专长和项目经验的空间。 3. **全栈开发人员简历模板**:...

    校园二手交易系统-概要设计说明书(超详细)

    为了明确软件需求、安排项目规划与进度、组织软件开发与测试,项目小组在考虑了几种可能的解决方案,并与程序员进行了较为深入地探讨和分析之后,提出了这份概要设计说明书。此概要设计说明书对校园二手交易系统的...

    《程序员》2011年第2期

    作为高级程序员,乃至于设计师而言,除了应该具备上述全部素质之外,还需要具备以下素质: 1、 需求分析能力 2、 整体框架能力 3、 流程处理能力 4、 模块分解能力 5、 整体项目评估能力 6、 团队组织管理能力 1,...

    毕业设计-基于微信小程序的面向程序员的书城小程序源码+答辩PPT+论文.zip

    毕业设计-基于微信小程序的面向程序员的书城小程序源码+答辩PPT+论文.zip 第2章 方案论证 3 2.1 可行性分析 3 2.1.1 技术可行性 3 2.1.2 经济可行性 3 2.1.3 操作可行性 3 2.1.4 法律可行性 4 2.2 方案选择 4 2.2.1 ...

    程序员10大职业生存技巧

    如果你的想法在小组会议上被驳倒,设计一个完美又顶级的破坏和怠工活动,如果刚好出现问题的话,那你就可以得意洋洋地宣布了:“我早就说过会这样!” 9. 要多和同部门的人增进感情 不要老是去其他部门办公室,否则...

    2024毕业设计论文全套资源之基于WEB的仓库管理系统的设计与实现【尚学堂·百战程序员】

    2024年的毕业设计论文全套资源,名为《基于WEB的仓库管理系统的设计与实现》,是一份完整的学习与参考资料,由尚学堂·百战程序员提供。这套资源涵盖了论文、源代码以及相关文档,旨在帮助学习者深入理解和掌握仓库...

Global site tag (gtag.js) - Google Analytics