主页 > 其它问答 > > (软件需求分析怎么做)实例帮我解释下如何做软件
最佳回答 最佳答案

本回答由网友推荐

匆匆乍现

下面这个你看下,内容有点多,部分条款按照自己公司习惯和要求修改1引言11编写目的:编写此文档的目的是进一步定制软件开发的细节问题,便于用户与开发商协调工作本文档面向的读者主要是项目委托单位的管理人员希望能使本软件开发工作更具体12项目背景121项目委托单位:****公司122开发单位:***公司13定义14参考资料2任务概述21目标:<1>决策支持:根据公司的要求及时提供所需报表及文件,并在适当时候对各部门领导给予销售及进货等方面的提示<2>提高效率:利用软件进行管理,避免人工管理的失误以及延迟性,从而实现高效率的管理22运行环境:<1>硬件方面:Pentium级处理芯片1兆显存的兼容显卡256色,800*600的兼容显示器标准兼容打印机<2>软件方面:WIN95操作系统23条件与限制:编程用计算机一台完成期限2000/7/1无资金供给3数据概述数据流程图如下:31静态数据:包括系统登录密码,各数据库所在位置,系统分析原始数据32动态数据:包括各数据库内各项显示数据,用户登录信息,系统时间33数据库描述:人事管理数据库:公司内人员的个人详细信息,包括档案信息销售管理数据库:当日销售记录及以前的销售统计,用于销售分析财务管理数据库:公司内部账目及收支情况详表技术管理数据库:公司所需各技术档案的详细记录(包括文档)34数据字典:<1>数据流词条描述:1数据流名:登录信息来源:用户的输入去向:系统内部检验部分组成:用户名,密码流通量:每次登录输入一次2数据流名:登录结果来源:系统去向:用户组成:返回信息流通量:每次登录返回一次3数据流名:输入修改信息来源:用户去向:系统判断部分组成:根据各数据库内容而不同流通量:依用户输入而定4数据流名:反馈信息来源:系统判断部分去向:用户组成:系统经判断后发回的字符数据流通量:依系统当前信息而定5数据流名:识别信息来源:系统内部检验部分去向:系统判断部分组成:系统各数据库的标识信息流通量:用户每次输入流通一次6数据流名:处理信息来源:系统判断部分去向:各数据库处理部分组成:读取/修改标识,读取/修改的变量名称流通量:用户每次输入流通一次7数据流名:读取修改来源:系统判断部分去向:系统各数据库组成:读取/修改标识,读取/修改内容流通量:用户每次输入流通一次<2>数据文件词条描述:1数据文件名:人事数据简述:存储人员信息数据文件组成:人员的各项信息(以CString类型为主)2数据文件名:销售数据简述:存储当日及从前的销售记录数据文件组成:销售的各项信息3数据文件名:财务数据简述:存储财务管理信息数据文件组成:财务管理的各项记录4数据文件名:技术数据简述:存储公司内部使用的技术档案信息数据文件组成:技术档案名称,内容<3>加工逻辑词条描述:1加工名:检验简要描述:判断用户的许可性输入数据流:登录信息输出数据流:登录结果加工逻辑:判断是否与系统内部用户信息相符合2加工名:判断简要描述:判断用户的操作并进行相应的读取/存储工作输入数据流:输入修改信息输出数据流:反馈信息加工逻辑:判断用户的操作->调用数据库->读取/修改->反馈3加工名:人事档案管理简要描述:对人事数据库进行相应要求的操作,并与判断部分交互输入数据流:处理信息,读取修改输出数据流:读取修改,处理信息加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息4加工名:销售统计简要描述:对销售数据库进行相应要求的操作,并与判断部分交互输入数据流:处理信息,读取修改输出数据流:读取修改,处理信息加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息5加工名:财务统计简要描述:对财务数据库进行相应要求的操作,并与判断部分交互输入数据流:处理信息,读取修改输出数据流:读取修改,处理信息加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息6加工名:技术管理简要描述:对技术统计数据库进行相应要求的操作,并与判断部分交互信息输入数据流:处理信息,读取修改输出数据流:读取修改,处理信息加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息<4>源点及汇点词条描述:名称:用户简要描述:既是源点又是汇点,发出动作信息给"检验"和"判断"加工,通过交互界面接受反馈信息有关数据流:登录结果,登录信息,输入修改信息,反馈信息数目:一个4功能需求41功能划分可细分为四部分:人事管理,销售管理,财务管理,技术档案管理42功能描述<1>人事功能:(1)能对公司内部的所有人员有关档案详细资料记录并保存。
(2)能对数据库内人事档案的数据进行查阅和修改。
(3)能按部门或姓名检索人员。
(4)当某员工的雇用期限达到整年时,按时提醒。
<2>销售统计功能(1)按日对公司的销售情况进行统计,包括销售额\销售数量\各地区销售比例\不同销售方式的销售量比例以及销售毛利润情况(2)制定销售情况的月报表\季报表以及年报表对销售情况进行分析,对不同销售人员的业绩进行评定<3>财务管理功能(1)协助财务人员进行计算机管理,对库存情况\进货情况\销货进行登录和输出(2)根据预设的库存情况提醒进货(3)对收款情况进行统计,在应收帐款达到预设值时进行提示<4>技术管理功能(1)对技术资料进行登录(2)对维修记录进行登录和统计,按不同型号的机器进行故障整体分析,并作出分析报告(3)对维修配件的需求进行管理并及时提示备货5性能需求51数据精确度:因为此数据为公司内部数据,所以要求不能有误差52时间特性:当日销售统计要求有即时性,马上能反应出存货的问题;同时财务管理数据计算当前存货情况,并对进货情况进行估算53适应性:此软件只在公司内部管理人员的机器上使用,因此不考虑适应性6运行需求61用户界面:屏幕格式:(1)要求有菜单及工具栏以方便操作(2)各数据库信息可在屏幕上直接修改(3)各数据统计结果可在屏幕上显示(4)进行系统分析后的结果在另一窗口中显示报表格式:(1)人事管理报表只要求有个人的普通数据(2)销售统计报表要求可分别打印当日统计或之前的统计(3)财务统计报表要求打印出存货及公司帐务详表(4)技术管理报表要求可以分别打印技术档案总表和任一技术档案文档内容菜单格式:要求菜单项大致与WIN95标准相同,另外附加的功能做到新的单项中输入输出时间:年份以4位数字表示62硬件接口:需要标准打印机接口进行报表打印63软件接口:Windows标准接口7其他需求可使用性:要求容易使用,界面友好安全保密性:因本数据属于公司内部管理用关键数据,因此除公司管理人员外,其他人员不得访问要求设有登录密码检验功能,并且此密码可以在以后进行修改可维护性:要求本软件的维护文档齐全,便于维护

赞同 (52709)

反对 (832)

其它回答
没胆挂念

项目需求分析是一个项目的开端,也是项目建设的基石。
在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。
因此一个项目成功的关键因素之一,就是对需求分析的把握程度。
项目需求分析是一个项目的开端,也是项目建设的基石。
在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。
因此一个项目成功的关键因素之一,就是对需求分析的把握程度。
在原则上,需求阶段监理应尊重承建方的项目管理和项目分析能力;
在具体的任务开展上,以不深入、不干扰承建方的自主权为主,除非在项目合作过程中发现承建方的项目管理以及项目分析能力存在很大的差距和不足。
为了保证项目的成功,监理方必须加强项目管理和项目分析工作,在具体的操作上可以坚持吸收、同化、贯彻的方法和手段。
其中,需求分析是一个项目的开端,也是项目建设的基石。
在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。
因此一个项目成功的关键因素之一,就是对需求分析的把握程度。
而项目的整体风险往往表现在需求分析不明确、业务流程不合理,用户不习惯或不愿意去用承建方的软件。
作为第三方的监理公司,必须提醒承建方、客户方重视需求分析的重要性,采用必要的手段和方法来进行需求调研,同时监理方也应深入具体的需求调研中去。
只有这样才能切切实实地把握用户的需求和方向,才能在将来的功能界定、开发范围上有发言权。
如何进行需求分析需求分析不象侦探推理那样需从蛛丝马迹着手,而是应该先了解宏观的问题,再了解细节的问题。
一个应用软件系统(记为S)的涉及面可能很广,可以按不同的问题域(记为D)分类,每个问题域对应于一个软件子系统。
S={D1,D2,D3,…Dn}问题域Di由若干个问题(记为P)组成,每个问题对应于子系统中的一个软构件。
Di={P1,P2,P3,…Pm}问题Pj有若干个行为(或功能,记为F),每个行为对应于软构件中的实现接口。
Pj={F1,F2,F3,…Fk}需求说明书应该对于那些只想了解宏观需求的领导,和需要了解细节的技术员都合适。
在写需求说明书时应该注意两个问题:
1最好为每个需求注释“为什么”,这样可让程序员了解需求的本质,以便选用最合适的技术来实现此需求。
2需求说明不可有二义性,更不能前后相矛盾。
如果有二义性或前后相矛盾,则要重新分析此需求。
重点监控需求分析由于项目的特殊性和行业覆盖的广阔性,以及需求分析的高风险性,软件需求分析的重要性是不言而喻的,同时需求分析又的的确确难做。
其原因基本是由于以下情况造成的。
客户说不清楚需求有些客户对需求只有朦胧的感觉,当然说不清楚具体的需求。
例如全国各地的很多部门、机构、单位在进行应用系统以及网络建设时,客户方的办公人员大多不清楚计算机网络有什么用,更缺乏IT系统建设方面的专家和知识。
此时,用户就会要求软件系统分析人员替他们设想需求。
工程的需求存在一定的主观性,为项目未来建设埋下了潜在的风险。
需求自身经常变动根据以往的历史经验,随着客户方对信息化建设的认识和自己业务水平的提高,他们会在不同的阶段和时期对项目的需求提出新的要求和需求变更。
事实上,历史上没有一个软件的需求改动少于三次的!
所以必须接受“需求会变动”这个事实,在进行需求分析时要懂得防患于未然,尽可能地分析清楚哪些是稳定的需求,哪些是易变的需求,以便在进行系统设计时,将软件的核心建筑在稳定的需求上,同时留出变更空间。
咨询监理方在需求分析的功能界定上担任一个中间、公平、公正的角色,所以也必须积极参与到需求分析的准备中来,以便协助客户方和承建方来界定“做什么”、“不做什么”的系统功能界限。
分析人员或客户理解有误软件系统分析人员不可能都是全才,更不可能是行业方面的专家。
客户表达的需求,不同的分析人员可能有不同的理解。
如果分析人员理解错了,可能会导致以后的开发工作劳而无功。
记得一则笑话,有个外星人间谍潜伏到地球刺探情报,它给上司写了一份报告:
“主宰地球的是汽车。
它们喝汽油,靠四个轮子滚动前进,嗓门极大,双眼在夜里能射出强光……有趣的是,车里住着一种叫作‘人’的寄生虫,这些寄生虫完全控制了车。”所以分析人员知识的专一性也会造成需求分析的误解和失败。
这时,咨询监理公司就必须根据实际的项目需求调研计划,提醒承建方加强业务了解程度和注重沟通技巧。
需求分析方法论根据以往的工程经验,需求分析工作方法,应该定位在“三个阶段”(也称“三步法”)。
第一阶段:
“访谈式”(Visitation)这一阶段是和具体用户方的领导层、业务层人员的访谈式沟通,主要目的是从宏观上把握用户的具体需求方向和趋势,了解现有的组织架构、业务流程、硬件环境、软件环境、现有的运行系统等等具体情况、客观的信息。
建立起良好的沟通渠道和方式。
针对具体的职能部门以及各委办局,最好能指定本次项目的接口人。
实现手段:
访谈、调查表格输出成果:
调查报告、业务流程报告第二阶段:
“诱导式”(Inducement)这一阶段是在承建方已经了解了具体用户方的组织架构、业务流程、硬件环境、软件环境、现有的运行系统等等具体实际、客观的信息基础上,结合现有的硬件、软件实现方案,做出简单的用户流程页面,同时结合以往的项目经验对用户采用诱导式、启发式的调研方法和手段,和用户一起探讨业务流程设计的合理性、准确性、便易性、习惯性。
用户可以操作简单演示的DEMO,来感受一下整个业务流程的设计合理性、准确性等等问题,及时地提出改进意见和方法。
实现手段:
拜访(诱导)、原型演示输出成果:
调研分析报告、原型反馈报告、业务流程报告第三阶段:
“确认式”(Afirm)这一阶段是在上述两个阶段成果的基础上,进行具体的流程细化、数据项的确认阶段,这个阶段承建方必须提供原型系统和明确的业务流程报告、数据项表,并能清晰地向用户描述系统的业务流设计目标。
用户方可以通过审查业务流程报告、数据项表以及操作承建方提供的DEMO系统,来提出反馈意见,并对已经可接受的报告、文档签字确认。
实现手段:
拜访(回顾、确认),提交业务流程报告、数据项表;
原型演示系统输出成果:
需求分析报告、数据项、业务流程报告、原型系统反馈意见(后三者可以统一归入需求分析报告中,提交用户方、监理方进行确认和存档)整体来讲,需求分析的三个阶段是需求调研中不可忽视一个重要的部分,三个阶段或者说三步法的实施和采用,对用户和承建方都同样提供了项目成功的保证。
当然在系统建设的过程中,特别在采用迭代法的开发模式时,需求分析的工作需一直进行下去,而在后期的需求改进中,工作则基本集中在后两个阶段中。

赞同 (217)

反对 (350)

我们都一样.

一。
确定对系统的综合要求1功能需求这方面的需求指定系统必须提供的服务。
通过需求分析应该划分出系统必须完成的所有功能。
2性能需求性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的需求。
3可靠性和可用性需求可靠性需求定量地指定系统的可靠性。
可用性与可靠性密切相关,它量化了用户可以使用系统的程度。
4出错处理需求这类需求说明系统对环境错误应该怎样响应。
例如,如果它接收到从另一个系统发来的违反协议格式的消息,应该做什么?注意,上述这类错误并不是由该应用系统本身造成的。
5接口需求接口需求描述应用系统与它的环境通信的格式。
常见的接口需求有:
用户接口需求;
硬件接口需求;
软件接口需求;
通信接口需求。
6约束设计约束或实现约束描述在设计或实现应用系统时应遵守的限制条件。
在需求分析阶段提出这类需求,并不是要取代设计(或实现)过程,只是说明用户或环境强加给项目的限制条件。
常见的约束有:
精度;
工具和语言约束;
设计约束;
应该使用的标准;
应该使用的硬件平台。
7逆向需求逆向需求说明软件系统不应该做什么。
理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。
8将来可能提出的要求应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。
注意:
举例让学生理解:
这样做的目的是,在设计过程中对系统将来可能的扩充和修改预做准备,以便一旦确实需要时能比较容易地进行这种扩充和修改。
二。
分析系统的数据要求任何一个软件系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远影响,因此,必须分析系统的数据要求,这是软件需求分析的一个重要任务。
分析系统的数据要求通常采用建立数据模型的方法(举例)。
三。
导出系统的逻辑模型综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。
四。
修正系统开发计划根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。

赞同 (14332)

反对 (161)

山月知我意

软件需求分析需要多年的编程工作经历,在各企业中多是有丰富经验老资格的软件程序员担当。
大学刚毕业想找到需求分析师的工作岗位,有一定的难度。
如果先把初期的工作岗位定位在软件测试,可能更实际一些。
这个工作要求有一般的编程能力,经过适当的软件测试培训,当然自学也可以。
而且非常适合女生心细的特点。
如果你有时间,在网页设计师方面或网站设计师方面做些准备,今后找工作,会容易一些。
对软件专业的学生,几乎没有难度方面的障碍。
女生工作稳定,不爱跳槽,坐得住,网络企业也非常欢迎,找工作时一般不会遇到性别歧视的。
祝你学业有成,前途似锦。

赞同 (81977)

反对 (581)

风过境

第一个步骤是市场调研(可行性分析“做还是不做”)第二个步骤是需求分析(软件需求规格说明书“做什么,不做什么”。)第三个步骤是概要设计(概要设计说明书)第四个步骤是详细设计(详细设计说明书)第五个步骤是编码第六个步骤是测试(集成测试计划)选B

赞同 (79066)

反对 (223)

逍遥枫

市场调研?需求分析阶段好像是去公司里面做需求分析,然后写两份报道,一个给目标公司,一个给自己团队,那个好像是架构师的事。
就一般而言好像是熟悉该行业的业务流程,根据需求,写报告好像是这样的,问题再清楚一点就好了

赞同 (6079)

反对 (242)

只想喜欢你

(17)[答案]B[考点]软件工程基础[评析]评审(复审)每阶段都有,把前三个方面说完了,还剩什么呢?此题需要记一下,至于各名词的解释,顾名即可思义。

赞同 (82961)

反对 (333)

梦想摄影家

您说的太笼统了,需求分析初期,就是与客户沟通,业务调研,业务流程还有后面的,就是UML,建模工具一般,是powerdesigner,rose

赞同 (70444)

反对 (750)

相关百科

(当有人当你是傻B你怎么做)当别人把你当傻子看

如何表白 一、男生表白女生 你好!哥们,我是过来人了,经历过你们这种阶段,确实很有意思也很纠结,下面听哥们好好说。 看了你的情况,我分析了下...全文

等你回答

换一换