要给一个名词下定义,是一件很严肃和严谨的事情,因此,要给出需求工程准确的定义是不太现实的。本书从方法论推进和实施的角度出发,提出了本书对需求工程的理解和定义。需求工程是面向业务全局、系统顶层的一种着眼于软件过程全过程的工程,是将客户业务作为内部研究对象、将软件工程实施作为外部研究对象的工程。之后,书中提到的需求工程即以此定义为准。......
2023-11-17
美国的第三方机构Standish Group自从1994年起每年都会对软件项目实践的现状进行分析和统计,对软件产业在当前年度的发展给出概括总结。根据2015年发布的报告,从显示的数据中分析失败的原因,为下一步解决问题提供思路。
2015年的CHAOS Report研究了全球50 000个软件项目,从软件的附属小项目到超大型的工程项目都有涉及,对其执行过程从不同的角度进行了调查和分析总结。2015年的报告在关于软件项目成功的定义上,除了总结了前几年的调查经验外,还特别强调了需要加强的额外因素。
结果显示,软件开发项目想要取得成功仍有很长的路要走。表1-1显示加入新的关键因素后,五年内软件开发项目的结果。
表1-1 2011-2015年项目结果统计
Standish Group组织自从1994年开始发布报告后就持续地追踪影响软件项目成功的因素,而这部分也是报告的关键部分,CHAOS Report还根据各个因素的权重及影响因子进行了分级。2015年的报告结果如表1-2所示。
表1-2 成功项目因素占比
其中关于表中涉及到的因素的定义如下:
高层支持:信息化项目一直都是一把手工程,只有获得管理层的高度支持,从思想到财务都能达到高度的一致时,执行层受到鼓舞,加大投入才是项目获得成功的有力保障。
心理成熟度(项目环境冲突解决):主要是指一起工作的人们的基本行为的集合,在任何团队、组织或者公司,项目环境冲突的解决都是工作技能和项目人员本身个性的妥协和融合。(www.chuimin.cn)
用户的参与:不仅指用户在项目的导向和业务信息的收集过程中参与,更是包括用户的反馈、需求的审查、业务研究、原型界面评审甚至业务工具的开发等环节。
持续的改进:是指关于小项目的不断优化,或大型项目核心需求的持续收集过程中形成一套可以结构化的方式方法。这种改进或优化基于相应的业务目标,从项目的范围开始。
拥有专业技能的人员:主要是指有理解业务和技术的人员,同时兼具业务领域背景和技术能力的人通常都会对项目的具体业务需求和产品的形成过程贡献较大的价值。
标准化的架构体系:主要是指标准化的技术管理框架。Standish Group组织定义这种框架是以开发、执行、运维为核心,集成了实践过程、服务和产品发布等一体的技术管理框架体系。
敏捷过程:主要是指项目团队或者产品开发者具有丰富的敏捷过程开发经验。
成熟的项目过程:是指整个项目具有很少的可变部分,整个项目过程都应该尽量使用自动化工具或形成流水线型的软件生产过程,阶段分明、任务明确、管控标准。
项目管理技能:是指应用知识、技能满足业务需求,或者化解客户不切实际期望的能力,能够对组织产生有用的价值的过程。
清晰的商业目标:是指能够清晰地理解项目干系人及所有的项目参与人员对项目的期望,清晰的项目目标意味着对应组织的目标和策略的响应过程也是敏捷的。
从表1-2可知,在10大保证项目成功的因素中有4个是与需求直接关联的(加粗显示的部分),累计权重达45%,可见需求问题对项目成功有着巨大影响。
有关软件需求工程的文章
要给一个名词下定义,是一件很严肃和严谨的事情,因此,要给出需求工程准确的定义是不太现实的。本书从方法论推进和实施的角度出发,提出了本书对需求工程的理解和定义。需求工程是面向业务全局、系统顶层的一种着眼于软件过程全过程的工程,是将客户业务作为内部研究对象、将软件工程实施作为外部研究对象的工程。之后,书中提到的需求工程即以此定义为准。......
2023-11-17
需求工程的过程分为需求准备、需求获取、业务建模、系统建模等阶段,中间各环节通过关联规则体系串接起来以达到跟踪监控整体需求工程进度的目的。......
2023-11-17
在方法论中原型界面就是原型,并不代表系统的最终实现,可以使用草图来表示。图3-18审核薪资原型界面同时配合原型界面的使用以及为设计人员提供关键元素,每个原型界面都有对应的用例脚本展示,主要以边界类、业务类及实体类的划分为依据,按照MVC的主要思想将设计的关键要素表达出来。......
2023-11-17
业务目标又称为业务前景,是对要建设的系统的展望。业务目标非常重要,在定义边界一章中会看到,边界正是基于业务目标来定义的。投资构建系统的原因,以及这样做利益相关者会从业务中得到什么,这些都可帮助确定业务目标。业务目标不仅仅是要解决问题,还要提供业务上的效益。业务目标大部分情况下是由客户提出,当然也可以由开发方整理得出。在初步了解业务目标以后,接下来的工作就是找出项目范围内的利益相关者。......
2023-11-17
快速而不完美的建模在我们的方法论中作为一种贯彻思想,通过快速为过程建模来理解当前的工作,并与客户达成一致意见。图2-4白板建模使用白板对业务过程建模,一个明显的优势就是方便擦除,便于讨论和修改调整,方便RA人员和客户共同参与建模过程。其实当RA和客户在进行业务碰撞的时候,发现有些业务是可以简化的,或者发现有些业务之间改条连线会更加高效。......
2023-11-17
为了真正理解客户的需求并给出满足这些需求的解决方案,必须理解真实世界中的问题。这些工作包括业务背景调查、业务前景分析、业务可行性分析、技术可行性分析等。在统一过程中,以上内容汇集到被称为《前景》的文档中。业务前景和客户期望所描述的内容与UML分析技术关系密切,严格来说,这些正是UML分析的开始。这几部分基本囊括了薪酬管理系统的主要业务范围,读者可稍作了解。......
2023-11-17
图3-4薪酬表表头图3-5薪酬业务对象在上述业务对象的获取中,首先将薪酬表转换为业务对象,当然RA人员在获取原始表的同时,需要初步了解表内元素的基本含义,在转换为业务对象时,在相应的备注信息栏中予以说明。......
2023-11-17
相关推荐