该软件要求的特征和目标系统的功能性描述。要求传送用户从软件产品的期望。这些要求可以明显或隐藏的,已知或未知的,预期的或意外但从客户的角度.
这个过程收集的软件需求,从客户端,分析和记录他们被称为需求工程.
需求工程的目标是开发和维护复杂的和描述性的“系统需求规范”的文件.
这是一个四步骤的过程,其中包括 –
让我们来看看这个过程 -
当客户接近组织获取开发所要的产物,它涉及了什么所有功能的软件必须执行与其中所有的功能由软件预期粗略的概念.
参照该信息,则分析做详尽的研究有关系统要求的和它的功能是有可能开发.
本可行性研究报告的重点是对本组织的目标。本研究分析是否该软件产品可实际上物化在实施项目的组织,成本约束的贡献方面,并按照价值观和组织目标。它探讨的项目和产品技术方面,如可用性,可维护性和生产效率和整合能力.
这一阶段的输出应该是一个可行性研究报告应包含充分的意见和建议,供管理有关项目是否应该进行.
如果可行性报告是对正在进行的项目正,下一阶段的开始,从用户收集需求。分析师和工程师设有自己想要的软件,包括与客户和最终用户沟通,了解他们的想法是什么软件应该提供和.
收集来自各利益相关方的要求后,系统分析员创建SRS文档.
SRS定义如何预定软件将与硬件,外部接口,操作的速度,系统的响应时间,在不同平台上,可维护性,恢复的速度软件之后崩溃,安全,质量,限制等的便携性相互作用.
系统分析员准备根据客户要求的技术文件。为了软件开发团队该文件很理解和有用的.
SRS应该拿出以下特点:
经过规定的技术规格,本文档中提及的要求进行验证。用户可能会问非法的,不切实际的解决方案或专家可以解释的规定不正确。这将导致成本大幅增加,如果在萌芽状态不是扼杀。要求可核对以下条件 -
需求获取过程可以用下面的图来描绘:
收集需求 - 开发人员与客户和最终用户的讨论和认识,从软件的期望.
组织要求 - 开发者优先考虑和安排顺序的重要性,紧迫性和便利性的要求.
谈判和讨论 - 如果要求不明确或存在各种利益相关者的要求有冲突,如果是这样,它是那么谈判和与利益相关方进行讨论。要求然后可以优先和合理妥协.
需求来自各个利益相关者。消除不确定性和冲突,他们的清晰度和准确性进行讨论。不切实际的要求是合理的妥协.
文档 - 所有正式和非正式的,功能性和非功能性需求都记录并供下一阶段的处理.
需求获取的过程中,找出一个预期软件系统的要求与客户,最终用户,系统用户和其他人谁在软件系统开发的股权进行通信.
有多种方法来发现需求
面试是强中收集的要求。组织可进行多种类型的面试,如:
组织可通过查询他们从即将到来的系统的期望和要求,进行各种利益相关者之间的调查.
与预先定义的一组客观题,并选择相应的文件移交给所有利益相关者的回答,这是收集和编译.
这种技术的缺点是,如果没有在问卷中提到的一些问题的选项,这个问题可能会被看管。.
工程师和开发团队可能分析的量,新的系统是必需的操作。如果客户机已经有一些软件来执行某些操作时,它进行了研究,并提出了系统的要求被收集.
每个软件属于某个领域的范畴。专家人在域可以是有很大的帮助,分析一般和具体的要求.
一个非正式辩论举行各种利益相关者之间以及他们所有的投入都记录作进一步的需求分析.
原型是建立用户界面,而无需添加细节功能,为用户诠释意软件产品的功能。它有助于提供更好的主意的要求。如果没有在客户端结束于开发人员的参考安装的软件和客户端是不知道自己的要求,开发人员创建一个原型的基础上开始提要求。原型被示出为客户端和反馈悉。客户反馈作为输入的需求收集。.
专家团队拜访客户的组织或工作场所。他们观察了现有的已安装系统的实际工作。他们观察工作流程,在客户端和如何执行的问题得到处理。团队本身得出了一些结论,形成从软件预期的要求的援助.
采集软件需求是整个软件开发项目的基础。因此,他们必须清晰,正确和明确的.
一个完整的软件需求规格必须是:
我们应该试着去了解可能出现的需求获取阶段有什么样的要求,什么样的要求,从软件系统的预期.
广义的软件需求应该被归类于两类:
这是关系到软件功能方面都属于这一类.
它们定义内,并从软件系统的功能和功能性.
要求,这是不相关的软件功能性方面,都属于这一类。他们的软件隐含的或预期的特征,这对用户做出的假设。.
非功能性需求,包括 -
要求在逻辑上划分为
必须具备 : 软件不能说的操作没有他们.
应具备 : 增强软件的功能.
可以有 : 软件仍然可以正常使用这些功能的要求.
我的收藏夹 : 这些要求不映射到软件的任何目标.
在开发软件,'必须拥有'必须执行,“应该有”的争论与利益相关者和否定的问题,而“可能”和“愿望清单”,可以保持软件更新.
用户界面是任何软件或硬件或混合动力系统的重要组成部分。软件已被广泛接受,如果它是 -
用户的认可,取决于用户如何使用该软件。用户界面是用户感知系统的唯一途径。表现良好的软件系统也必须具备有吸引力的,明确的,一贯的,反应灵敏的用户界面。否则软件系统的功能不能在方便的方式被使用。系统被认为是好的,如果它提供的手段来有效地使用它。用户界面要求下面简要提及 -
系统分析师在IT组织是一个人,谁提出分析系统的需求,并确保要求构思和记录正确与正确。分析师的角色,SDLC的软件分析阶段开始。这是分析师的责任,以确保所开发的软件满足客户的要求.
系统分析员有以下职责:
软件的措施,可以理解为量化和象征各种属性和软件方面的处理.
软件度量提供措施,软件过程和软件产品的各个方面.
软件措施是软件工程的基本要求。他们不仅有助于控制软件开发过程中,也有助于保持最终产品的优良品质.
据汤姆•德马科,A(软件工程师),“你无法控制你无法衡量的东西。”通过他的说法,这是非常清楚的软件措施是多么的重要.
让我们来看看一些软件指标:
尺寸度量 - LOC(代码行),主要是计算在数千交付源代码行数,记为KLOC的.
功能点计数是衡量由软件提供的功能。功能点计数定义的软件功能性方面的大小.
复杂性度量 - McCabe的圈复杂度量化上限的计划,这被认为是程序或模块,它的复杂性,独立路径数。它是通过使用控制流图表示在图论中的概念术语。.
质量指标 - 缺陷,它们的类型和原因,后果,严重程度的强度及其影响界定产品的质量.
在发展的过程和报告的客户端产品安装,或在客户端交付后的缺陷数量发现的缺陷数,定义产品的质量.
流程指标 - 在SDLC的各个阶段,方法和工具使用,公司的标准和发展的表现是软件过程的度量.
资源指标 - 精力,时间和使用的各种资源,代表度量资源的测量.