Products
GG网络技术分享 2025-03-18 16:18 4
1. 明确项目目标:在开始需求分析之前,确保你清楚地了解项目的目标和期望结果。这将帮助你确定需要收集和分析的信息类型。
2. 与相关人员进行沟通:与项目的关键利益相关者进行沟通,以了解他们的需求和期望。这可能包括客户、用户、管理层和其他团队成员。
3. 创建详细的需求文档:根据收集的信息,创建一个详细的需求文档,描述项目的目的、功能和非功能需求。这将帮助你的团队更好地理解项目,并确保所有相关人员都了解他们的职责。
4. 使用适当的工具和技术:利用可用的工具和技术来协助需求分析过程,例如数据可视化工具、项目管理软件和需求跟踪工具。
5. 定期审查和更新需求:在项目执行过程中,可能需要对需求进行调整或补充。确保定期审查和更新需求文档,以确保其始终反映项目的最新信息。
6. 评估风险和不确定性:在需求分析过程中,识别和管理潜在的风险和不确定性。这可能包括技术变革、市场变化或其他不可预测的因素。
7. 保持沟通和协作:在整个项目过程中,确保与团队成员和利益相关者保持良好的沟通和协作。这将有助于确保需求的准确理解和实施。
从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。
狭义上理解需求分析指需求的分析、定义过程。
原因
需求分析就是分析软件用户的需求是什么。如果投入大量的人力,物力、财力、时间,开发出的软件却没人要,那所有的投入都是徒劳。如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的(相信大家都有体会)。比如:用户需要一个forlinux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发forwindows的软件。当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,恨不得找块豆腐一头撞死。
需求分析之所以重要,就因为他具有决策性、方向性、策略性的作用,他在软件开发的过程中具有举足轻重的地位,大家一定要对需求分析具有足够的重视。在一个大型软件系统的开发中,他的作用要远远大于程序设计。
任务
简言之,需求分析的任务就是解决“做什么\"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。
过程
需求分析阶段的工作,可以分为四个方面:问题识别、分析与综合、制订规格说明、评审。
问题识别:就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准。这些需求包括:功能需求(做什么)、性能需求(要达到什么指标)、环境需求(如机型、操作系统等)、可靠性需求(不发生故障的概率)、安全保密需求、用户界面需求、资源使用需求(软件运行是所需的内存、CPU等)、软件成本消耗与开发进度需求、预先估计以后系统可能达到的目标。
分析与综合:逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分。最后综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型)。
制订规格说明书:即编制文档,描述需求的文档称为软件需求规格说明书。请注意,需求分析阶段的成果是需求规格说明书,向下一阶段提交。
评审:对功能的正确性,完整性和清晰性,以及其它需求给予评价。评审通过才可进行下一阶段的工作,否则重新进行需求分析。
方法
需求分析的方法有很多,这里只强调原型化方法,其它的方法如:结构化方法、动态分析法等,从来没用过这些方法在此不讨论。
原型化方法是十分重要的,原型就是软件的一个早期可运行的版本,它实现了目标系统的某些或全部功能。
原型化方法就是尽可能快地建造一个粗糙的系统,这系统实现了目标系统的某些或全部功能。但是这个系统可能在可靠性、界面的友好性或其他方面上存在缺陷。建造这样一个系统的目的是为了考察某一方面的可行性,如算法的可行性、技术的可行性或考察是否满足用户的需求等。如:为了考察是否满足用户的要求,可以用某些软件工具快速的建造一个原型系统,这个系统只是一个界面,然后听取用户的意见,改进这个原型。以后的目标系统就在原型系统的基础上开发。
原型主要有三种类型:探索型、实验型、进化型。
探索型:目的是要弄清楚对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性。
实验型:用于大规模开发和实现前,考核方案是否合适,规格说明是否可靠。
进化型:目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。
在使用原型化方法时有两种不同的策略:废弃策略、追加策略。
废弃策略:先建造一个功能简单而且质量要求不高的模型系统,针对这个系统反复进行修改,形成比较好的思想,据此设计出较完整、准确、一致、可靠的最终系统。系统构造完成后,原来的模型系统就被废弃不用。探索型和实验型属于这种策略。
追加策略:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,发展成为最终系统。进化型属于这种策略。
需求分析20条法则
客户与开发人员交流需要好的方法。下面建议20条法则,客户和开发人员可以通过评审以下内容并达成共识。如果遇到分歧,将通过协商达成对各自义务的相互理解,以便减少以后的磨擦(如一方要求而另一方不愿意或不能够满足要求)。
1、分析人员要使用符合客户语言习惯的表达
需求讨论集中于业务需求和任务,因此要使用术语。客户应将有关术语(例如:采价、印花商品等采购术语)教给分析人员,而客户不一定要懂得计算机行业的术语。
2、分析人员要了解客户的业务及目标
只有分析人员更好地了解客户的业务,才能使产品更好地满足需要。这将有助于开发人员设计出真正满足客户需要并达到期望的优秀软件。为帮助开发和分析人员,客户可以考虑邀请他们观察自己的工作流程。如果是切换新系统,那么开发和分析人员应使用一下旧系统,有利于他们明白系统是怎样工作的,其流程情况以及可供改进之处。
3、分析人员必须编写软件需求报告
分析人员应将从客户那里获得的所有信息进行整理,以区分业务需求及规范、功能需求、质量目标、解决方法和其他信息。通过这些分析,客户就能得到一份“需求分析报告”,此份报告使开发人员和客户之间针对要开发的产品内容达成协议。报告应以一种客户认为易于翻阅和理解的方式组织编写。客户要评审此报告,以确保报告内容准确完整地表达其需求。一份高质量的“需求分析报告”有助于开发人员开发出真正需要的产品。
4、要求得到需求工作结果的解释说明
分析人员可能采用了多种图表作为文字性“需求分析报告”的补充说明,因为工作图表能很清晰地描述出系统行为的某些方面,所以报告中各种图表有着极高的价值;虽然它们不太难于理解,但是客户可能对此并不熟悉,因此客户可以要求分析人员解释说明每个图表的作用、符号的意义和需求开发工作的结果,以及怎样检查图表有无错误及不一致等。
5、开发人员要尊重客户的意见
如果用户与开发人员之间不能相互理解,那关于需求的讨论将会有障碍。共同合作能使大家“兼听则明”。参与需求开发过程的客户有权要求开发人员尊重他们并珍惜他们为项目成功所付出的时间,同样,客户也应对开发人员为项目成功这一共同目标所做出的努力表示尊重。
6、开发人员要对需求及产品实施提出建议和解决方案
通常客户所说的“需求”已经是一种实际可行的实施方案,分析人员应尽力从这些解决方法中了解真正的业务需求,同时还应找出已有系统与当前业务不符之处,以确保产品不会无效或低效;在彻底弄清业务领域内的事情后,分析人员就能提出相当好的改进方法,有经验且有创造力的分析人员还能提出增加一些用户没有发现的很有价值的系统特性。
7、描述产品使用特性
客户可以要求分析人员在实现功能需求的同时还注意软件的易用性,因为这些易用特性或质量属性能使客户更准确、高效地完成任务。例如:客户有时要求产品要“界面友好”或“健壮”或“高效率”,但对于开发人员来讲,太主观了并无实用价值。正确的做法是,分析人员通过询问和调查了解客户所要的“友好、健壮、高效所包含的具体特性,具体分析哪些特性对哪些特性有负面影响,在性能代价和所提出解决方案的预期利益之间做出权衡,以确保做出合理的取舍。
8、允许重用已有的软件组件
需求通常有一定灵活性,分析人员可能发现已有的某个软件组件与客户描述的需求很相符,在这种情况下,分析人员应提供一些修改需求的选择以便开发人员能够降低新系统的开发成本和节省时间,而不必严格按原有的需求说明开发。所以说,如果想在产品中使用一些已有的商业常用组件,而它们并不完全适合你所需的特性,这时一定程度上的需求灵活性就显得极为重要了。
9、要求对变更的代价提供真实可靠的评估
有不同的选择。而这时,对需求变更的影响进行评估从而对业务决策提供帮助,是十分必要的。所以,客户有权利要求开发人员通过分析给出一个真实可信的评估,包括影响、成本和得失等。开发人员不能由于不想实施变更而随意夸大评估成本。
10、获得满足客户功能和质量要求的系统
每个人都希望项目成功,但这不仅要求客户要清晰地告知开发人员关于系统“做什么”所需的所有信息,而且还要求开发人员能通过交流了解清楚取舍与限制,一定要明确说明你的假设和潜在的期望,否则,开发人员开发出的产品很可能无法让你满意。
11、给分析人员讲解你的业务
分析人员要依靠客户讲解业务概念及术语,但客户不能指望分析人员会成为该领域的专家,而只能让他们明白你的问题和目标;不要期望分析人员能把握客户业务的细微潜在之处,他们可能不知道那些对于客户来说理所当然的“常识”。
12、抽出时间清楚地说明并完善需求
客户很忙,但无论如何客户有必要抽出时间参与“头脑高峰会议”的讨论,接受采访或其他获取需求的活动。有些分析人员可能先明白了你的观点,而过后发现 要你的讲解,这时请耐心对待一些需求和需求的精化工作过程中的反复,因为它是我们交流中很自然的现象,何况这对软件产品的成功极为重要。
13、准确而详细地说明需求
编写一份清晰、准确的需求文档是很困难的。由于处理细节问题不但烦人而且耗时,因此很容易留下模糊不清的需求。但是在开发过程中,必须解决这种模糊性和不准确性,而客户恰恰是为解决这些问题作出决定的最佳人选,否则,就只好靠开发人员去正确猜测了。
在需求分析中暂时加上“待定”标志是个方法。用该标志可指明哪些是需要进一步讨论、分析或增加信息的地方,有时也可能因为某个特殊需求难以解决或没有人愿意处理它而标注上“待定”。客户要尽量将每项需求的内容都阐述清楚,以便分析人员能准确地将它们写进“软件需求报告”中去。如果客户一时不能准确表达,通常就要求用原型技术,通过原型开发,客户可以同开发人员一起反复修改,不断完善需求定义。
14、及时作出决定
分析人员会要求客户作出一些选择和决定,这些决定包括来自多个用户提出的处理方法或在质量特性冲突和信息准确度中选择折衷方案等。有权作出决定的客户必须积极地对待这一切,尽快做处理,做决定,因为开发人员通常只有等客户做出决定才能行动,而这种等待会延误项目的进展。
15、尊重开发人员的需求可行性及成本评估
所有的软件功能都有其成本。客户所希望的某些产品特性可能在技术上行不通,或者实现它要付出极高的代价,而某些需求试图达到在操作环境中不可能达到的性能,或试图得到一些根本得不到的数据。开发人员会对此作出负面的评价,客户应该尊重他们的意见。
16、划分需求的优先级
绝大多数项目没有足够的时间或资源实现功能性的每个细节。决定哪些特性是必要的,哪些是重要的,是需求开发的主要部分,这只能由客户负责设定需求优先级,因为开发者不可能按照客户的观点决定需求优先级;开发人员将为你确定优先级提供有关每个需求的花费和风险的信息。
在时间和资源限制下,关于所需特性能否完成或完成多少应尊重开发人员的意见。尽管没有人愿意看到自己所希望的需求在项目中未被实现,但毕竟是要面对现实,业务决策有时不得不依据优先级来缩小项目范围或延长工期,或增加资源,或在质量上寻找折衷。
17、评审需求文档和原型
客户评审需求文档,是给分析人员带来反馈信息的一个机会。如果客户认为编写的“需求分析报告”不够准确,就有必要尽早告知分析人员并为改进提供建议。更好的办法是先为产品开发一个原型。这样客户就能提供更有价值的反馈信息给开发人员,使他们更好地理解你的需求;原型并非是一个实际应用产品,但开发人员能将其转化、扩充成功能齐全的系统。
18、需求变更要立即联系
不断的需求变更,会给在预定计划内完成的质量产品带来严重的不利影响。变更是不可避免的,但在开发周期中,变更越在晚期出现,其影响越大;变更不仅会导致代价极高的返工,而且工期将被延误,特别是在大体结构已完成后又需要增加新特性时。所以,一旦客户发现需要变更需求时,请立即通知分析人员。
19、遵照开发小组处理需求变更的过程
为将变更带来的负面影响减少到最低限度,所有参与者必须遵照项目变更控制过程。这要求不放弃所有提出的变更,对每项要求的变更进行分析、综合考虑,最后做出合适的决策,以确定应将哪些变更引入项目中。
20、尊重开发人员采用的需求分析过程
软件开发中最具挑战性的莫过于收集需求并确定其正确性,分析人员采用的方法有其合理性。也许客户认为收集需求的过程不太划算,但请相信花在需求开发上的时间是非常有价值的;如果你理解并支持分析人员为收集、编写需求文档和确保其质量所采用的技术,那么整个过程将会更为顺利。
“需求确认”意味着什么
在“需求分析报告”上签字确认,通常被认为是客户同意需求分析的标志行为,然而实际操作中,客户往往把“签字”看作是毫无意义的事情。“他们要我在需求文档的最后一行下面签名,于是我就签了,否则这些开发人员不开始编码。”
这种态度将带来麻烦,譬如客户想更改需求或对产品不满时就会说:“不错,我是在需求分析报告上签了字,但我并没有时间去读完所有的内容,我是相信你们的,是你们非让我签字的。”
同样问题也会发生在仅把“签字确认”看作是完成任务的分析人员身上,一旦有需求变更出现,他便指着“需求分析报告”说:“你已经在需求上签字了,所以这些就是我们所开发的,如果你想要别的什么,你应早些告诉我们。”
这两种态度都是不对的。因为不可能在项目的早期就了解所有的需求,而且毫无疑问地需求将会出现变更,在“需求分析报告”上签字确认是终止需求分析过程的正确方法,所以我们必须明白签字意味着什么。
对“需求分析报告”的签名是建立在一个需求协议的基线上,因此我们对签名应该这样理解:“我同意这份需求文档表述了我们对项目软件需求的了解,进一步的变更可在此基线上通过项目定义的变更过程来进行。我知道变更可能会使我们重新协商成本、资源和项目阶段任务等事宜。”对需求分析达成一定的共识会使双方易于忍受将来的摩擦,这些摩擦来源于项目的改进和需求的误差或市场和业务的新要求等。
我们都知道网站要做得好,首先的前提是要分析用户需求,只有用户需求分析正确了才能将网站真正的做起来,俗话说的好知己知彼才能百战不殆,那么网站的用户需求分析要怎么操作呢?
用户需求
网站的用户需求分析第一步是网站的产品或者是服务定位,也就是你的产品是什么?或者是服 是什么?再来根据产品来分析用户需求。而用户需求的分析又是用百度下拉框及百度相关搜索,百度指数,以及相关的SEO辅助软件来分析的。
我们知道了产品用户的核心需求之后,就要去互联网上进行营销了,那么互联网上这么多的平台要去哪些平台营销才是有效果的呢?那我们就要了解哪些平台有哪些特点,哪些地平台适合哪些用户?
比如贴吧及部落平台是属于兴趣平台 ,汇聚着的是一些有相同兴趣的用户,而这样的平台适合年轻人。一般是用来做故事营销的平台 。QQ群是交流平台与资源平台 ,适合用来解答问题的平台 。多去群里面寻找一些用户的问题并且 用户的问题。
经营模式 1.信息内容 在美国,无论是哪种类型的旅游网站,其信息内容一般都涉及到如下几个方面: 景点、饭店、旅游线路等方面的信息。 旅游常识、旅游注意事项、旅游新闻、货币兑换、旅游目的地天气、环境、人文等信息以及旅游观感等。 与旅游相关的产品和服务信息,以及各种优惠、折扣。 航空、饭店、汽车租赁服务的检索和预定等。 2.服务功能 从服务功能看,不同的旅游网站的服务功能包括: 旅游信息的汇集、传播与交流。 旅游信息的检索和导航。 旅游产品和服务的在线销售,包括票务、饭店、餐饮、汽车、旅游组团等。 个性化定制服务,它已成为旅游网站,特别是在线预定服务网站必备的功能。像Expedis、PreviewTravel、Travelocity等网站都具有该功能。 各网站在这方面的具体做法大同小异,通常是由访问者定义一个账户(用户名和密码),然后登录,然后网站会提供类似下面的一些功能选项: 客户基本信息:如姓名、电话、电子邮件、住址、护照/签证信息等。 信用卡信息:如卡号、有效期、卡的类别等。 旅游需求:如用户最希望何时开始旅游;最想搭乘哪个航空公司的哪个航班,经常飞行的次数;最喜欢租用那种类型的汽车;最愿意住在什么饭店等。这些信息反映了旅游线路的选择标准,服务器在存储了这些信息之后,就会根据这些信息帮助客户寻找相关的服务信息,并且这些信息可以随时进行修改和删除。 修改账户密码:密码遗忘时的提醒。 归纳起来,这种定制服务的作用主要有: 可以避免在预定过程中重复填写相同的信息,提高预定效率。 积累客户的消费量(比如飞行距离),以此作为促销奖励的依据。 更有针对性地推送旅游信息,特别是当客户没有找到满意的解决方案时,可以委托服务器监视和跟踪,当有符合标准的信息出现时,及时用电子邮件的方式提醒客户。 根据选择的目的地,提供当地的天气、人文环境、旅游特色和货币兑换等信息。 3.获利环节 不同类型的旅游网站的挣钱环节有所不同,归纳起来有如下几种模式: 网站信息量大,信息质量高,能够获得较高的访问率,以此吸引网络广告。这是一般信息网站实现收益的基本思路。 提供网上交易功能,从中获得收益。目前在网上销售的产品和服务主要有飞机票、饭店预定、组建旅行团、旅游物品等。 为旅游服务单位提供网上展示服务,收取服务费用。 像许多社区网站一样,很多旅游网站的收入来源于赞助商和伙伴关系等方面。 4.网站推广 从旅游网站的特点看,旅游网站的推广可以有如下几种方式: 在综合性导航台、搜索引擎中注册网址。在相关网站中设置图标广告链接。鉴于旅游消费者的分布十分广泛,所以一个旅游网站的旅游广告其实可以散布在各个领域,例如温泉浴场的网站广告可以放到美容美发的网站中去,商务旅游预定服务的广告可以放到人才网站上。关键是根据受众特点进行选择,相互交叉是基本的思路和旅游网站广告的特点;而在服务功能方面能够互补的旅游网站之间的相互链接,也是推广网站的好办法。 与访问率高的导航台或搜索引擎独家合作,将预定服务融合在导航台或搜索引擎之中。 通过电子邮件刊物及网上定制服务吸引和维系受众。 值得思考的问题 综观美国旅游行业网站的经营模式,值得我们关注的有如下几点: 1.信息质量和数量 浏览Expedia、Travelocity、Previewtravel、ITN、AmericanAirline等重量级网站,用户可以获得这样的印象:旅游资源、相关信息不仅数量巨大、准确性和时效性强,而且组织得非常好。 2.个性化定制服务 对于旅游者来说,一次旅游要考虑的因素是比较多的,既要看目的地的旅游特色、风俗习惯、安全状况,还要考虑交通、货币、时间和预算。定制服务面临的是每个消费者的不同需求,因而要能够根据不同的需求动态地、相对准确地提供比较全面的参考信息和组合。网站的设计者要全面收集、提炼和整合不同消费者的需求特点,预先将这些信息加以细分,存储在数据库中供受众检索。由于涉及的方面比较多,建库时的数据关系就非常复杂,前期的系统分析和规划任务非常繁重。从我们考察的几个网站上可以看出,很多细节都考虑得非常周到,甚至没有想到的也替你想到了,用户从中可以学到很多技巧和知识。 3.品牌竞争阶段 如客户服务的质量、营销环节处理的好坏、广告宣传和形象的树立等,也就是要树立服务的信誉度和美誉度。从网站的个案研究中可以发现,很多交易是产生在回头客身上的,说明这些网站都具有较高的信誉度和美誉度,品牌的力量起着举足轻重的作用。在互联网上如果不能做大,就很难抢到更多的市场份额。 4.访问量是基础和关键 似乎对任何网站都是如此,但是对旅游网站来说尤其如此。任何交易都是要有一定数量的消费群体做基础的,也就是说在消费群体中只有一定百分比的访问者会成为交易客户。 消费群体的基数越大,产生的交易量应该更大。这就是为什么旅游预定网站要追求访问量,要花巨资去买断大门户网站的旅游服务,形成紧密合作的战略伙伴,要用品牌来与相关网站合作共同拓展市场,与相关网站进行有效的链接等等。 5.旅游预定服务的关键是优惠 旅游市场的巨大潜力也引来了大量的公司进入这个市场淘金。在激烈的竞争中,除了服务质量、旅游特色等因素之外,价格就是最重要的因素了。所以,机票变着花样地打折和优惠,饭店按照淡旺程度浮动价格等,都是竞争的产物,其目的无非是将消费者吸引过来。而有了在线实时预定系统之后,优惠信息的传播速度加快了,覆盖的受众范围增大了。这样,实时捕捉这类信息,使其成为吸引受众的一个主要因素,就成为旅游在线销售有市场的基本原因。不仅如此,网站汇集信息的能力和高度实时交互的能力,也使网站更有吸引力。
Demand feedback