软件工程技术在系统软件开发过程的应用
2021-11-20尹振坤
尹振坤
(中原工学院 河南省郑州市 450000)
互联网技术的高速发展让软件已经涉及到了商业、教育、政府部门、财政等多个领域,人们的生活也逐渐变得智能化。软件开发伴随着计算机技术的深度应用逐渐成为很多国家的支柱性产业。软件设计在人性化层面的优势是保障工作效率的前提,软件应用程序和信息管理系统的优势也能够显著提高软件开发的质量,起到降低风险保障开发效率的目的,避免信息的频繁变化。
1 系统软件开发过程的内容需求
1.1 信息需求
传统的软件开发环节涉及到开发周期模型的有关内容,且软件工程思想在经过复杂计算后得到软件生存期模型,但都存在着不同的缺陷,特别是在某个环节出现问题,整个软件开发过程将受到影响。但现阶段的技术条件下,不同类型的信息之间存在着信息的包含关系,即一个信息会包含着另一个信息的内容。对于系统软件开发过程来说,多个软件开发领域的同类型信息之间也可以细化为不同类型的子信息,即一个领域下对应了多个子领域,这种关系也被称为是信息的主关系和子关系。在一个主信息之下可以包含多个类型的子信息,但一个子信息只能够对应一个主信息。所有信息呈现出的是一个树状关系结构,在结构当中的对象需要通过软件工程技术的应用开帮助开展系统软件开发,达到某些业务逻辑的现实需求。
例如在工作量计算方面,某些项目的工作量计算需要等于所有的下级业务需求和技术需求,且业务需求的工作量等同于所有下级业务需求的工作量综合。当一个业务需求完成之后,表示一个软件的开发目的已经达成或是开发要求已经满足,且该技术能够呈现出信息之间的依赖关系。如果某个需求需要在另一个需求的基础上才能达到,则说明两者之间存在着依赖关系,所有需求应该在被依赖的需求完成之后才能开始实现,两个不同的需求之间并不能同时存在,依赖关系描述的内容也是不同需求之间的内容完成顺序。
1.2 内容优化
随着网络信息技术和网络应用的有效普及,现阶段的软件程序都是基于WWW 进行开发,且这些内容给软件的开发和管理提供了更加有效的期待性内容。传统软件的生命周期模型已经无法适应现代社会的软件系统研发要求,面向企业对象的差异化也决定了程序内容要作出适应性的调整,对应的软件开发活动也要调节发展方向。对于软件的研发过程而言,传统的软件研发消耗时间比较长,应用程序也区域复杂;相比而言软件应用系统的研发时间比较短,适用性更加突出。应用系统基于软件本身的内容对数据信息量的要求比较高,基于软件的应用系统需要满足不同文化程度人群的接受能力和软件技术应用标准,包括对于某些复杂信息的阐述和用户界面设计等。
1.3 程序研发
软件工程的特性决定了软件应用系统的研发过程与传统的软件研发有所差异,开发过程的模型、项目管理模型和组织公共模型也共同地构成了软件工程的不同部分,其中开发过程模型对应的是整个软件应用系统的开发周期,项目管理模型对应的是基本过程和项目管理要求,组织公共模型则主要对应的是软件从开发到结束产生的作用。软件的开发流程源于迭代思想,并且演化后产生流程模型,在一次迭代当中会包含软件的版本开发所对应的各项工作。一个完整的软件应用程序开发会涵盖用户需求分析、测试应用、发布等,其中技术工程人员的各项操作是开发过程的关键组成部分,且设计测试是维持程序功能的主要手段,在这些因素共同作用的前提下达到用户需求。此时工程管理的实效性更加重要,无论是方案设计策划、项目研发还是后续的软件开发流程内容,在项目结束之后要进行检查测试和产品验收[1]。
对于软件需求信息的开发流程来说,需要记录不同内容的定义、管理拆分需求,确定优先级的顺序和工作量。从过程来看,先要定义产品内容、产品项目和领域的关系结构,通常情况下在确定初始业务需求之后就可以将业务需求放置在某个领域之下或产品项目之下,确保业务需求可以细化到与技术进行匹配的程度。
1.4 技术管理
从技术管理的角度而言,软件工程和软件开发过程当中都会遇到很复杂的理论结构问题,企业在自主研发层面也应该重视软件系统的程序设计要求,同时研发出适应社会和生活需求的软件程序,给生活带来更便捷的应用。
2 系统软件开发当中的软件工程技术——以信息管理为例
2.1 系统流程
前文提到软件的开发信息之间有主信息和子信息的关系,同种类型的需求信息之间也会存在依赖关系,业务需求信息和技术需求之间的匹配关系会涉及到工作量计算的有关内容,且信息的关系设置之间会互相影响。即两个信息不可同时存在依赖关系等,在设计需求信息方面也应该确定关系设置完毕后才可以进行。业务需求划分为不同的状态,软件工程技术的应用将从不同的状态下得到体现,每种状态有着具体的说明和要求。
草稿状态:在出现新的业务需求时如果未能完成基本的信息处理,则这些内容会被视为草稿状态保存在系统内部,草稿状态需求不要求将所有信息全部填写完整,某些特殊情况下只需要填写一个需求或序号内容即可。
计划状态:一个新的业务需求可以在新建状态和待定状态之间相互转换,当需求被设为待定状态后则无法进行下一步的操作,如果进入计划状态,那么可以预先设置主对象,将某个业务需求的主对象设置为不同的业务对象,表示某个业务需求对应的是某个项目或是技术领域需求等,且两个业务需求都需要保持在计划中的状态[2]。
2.2 系统模块设计
如果将系统的不同软件信息进行显示之后,系统的信息可以逐级地呈现,在选择某一个产品的信息后列表会对应出不同的产品下的多种版本信息,此时用户可以先选择某一个版本信息然后查询内部包含的所有软件开发内容,筛选特殊领域内的业务需求。这些业务需求也可以细化到具体的开发方案层面,创建匹配的技术需求,然后作为一个开发周期的团队任务。整个系统的软件开发信息还可以在同一个列表当中进行平级显示,字段包含了主关系和子关系树的路径字段。两种不同类型的模式可以相互切换,经过一个查询面板来查询,系统会按照查询面板当中的条件获取结果。若需要高级查询则可以通过不同的约束条件来明确软件开发信息。
在业务模块方面,同一个项目下的所有业务内容会有优先级排序,优先级越高的业务需求,其排序会越前,并且在系统平级显示基础上可以同时规划不同的业务需求展开整体处理,便于用户对信息进行有效编辑。
2.3 业务对象设计
系统的数据处理并不完全需要通过数据库进行,使用SAP 的业务对象之后可以让开发者以更加便捷的方式完成数据的建模、操作等。例如在SAP 系统内部,BO 可以代表着现实的对象信息,采购订单、数据、职员信息等都可以在系统外部完成通信过程,或是以真实世界当中的业务对象作为单位来描述出企业的数据和业务特征信息。其中内核层包含了内部的数据内容,整合层对应的是业务规则与限制,接口层对应的是接口类型的定义方法。一个完整的BO 会包含接口、字段、属性和方法等,且一个业务对象展现的是一个独立而清晰的业务实体。整个业务逻辑的定义信息都会被包含在业务对象之内,而每一个业务对象都可以通过标准化服务来获取关联特征,让节点通过层次关系做好业务组合。同一个部署单元业务对象内部的关系也可以利用关联的方式进行描述,且不同的业务对象之间的关系也可以得到确定。
系统对应的业务对象结构会根据软件产品的特性产生变化,例如在产品开发的过程当中,如果投资项目下包含不同的产品领域,则后续的另一个版本在开发时就可以对应不同的投资项目或是不同的子产品领域。但无论如何每个对象只能对应一个主对象,但可以对应多个子对象,所有的业务对象之间的主关系和子关系都将呈现为一个树状关系结构。
在业务需求的设计方面,业务需求对象管理的是不同的业务需求信息,除去基本的工作量信息之外还包含了知识管理和计划状态的某些内容,系统的排序会按照字段降序排列。
3 软件工程技术的应用模式
3.1 系统扩展与系统开发
随着信息化发展速度的加快,企业需要面临的各种内外部信息和工作流程变得更加复杂,不同类型的干扰因素也在此时产生。如果每次增加新信息都去采取技术手段和系统开发模式,在后期可能会产生多个信息管理系统,无论是维护还是应用的难度都非常大。因此,可以通过系统扩展和系统开发技术来满足不同的需求,同时减少管理系统的成本消耗。以基于云计算的企业管理SAP Business By Design 为例,它可以涵盖管理的多个方面,包括资源管理、供应链管理、财务管理等,甚至还包含了解决方案自身的扩展开发应用管理,在云计算支持下实现了完善的管理流程[3]。通过对业务对象的扩展开发,可以按照新的需求来定义业务对象,然后合作伙伴自定义业务对象能够和原有的业务对象相互关联以实现功能的拓展。标准的业务对象上定义了一系列可以进行扩展的节点,这些节点可以被添加新的属性、动作和事件信息,根据不同的需求来创建页面内容。这些页面对应的数据可以包含标准的业务对象,也可以包含自定义业务对象。标准的页面当中有很多可以用于嵌入的区域,这些自定义的内容也可以在标准页面当中得到体现。
3.2 软件开发系统
系统包含了不同类型的信息,不同的信息之间存在着主-子关系。无论是多层结构显示还是平级显示,可以直接在开发过程完成管理流程的有效规划。业务需求信息对象的状态字段能够表示出前文提到的不同业务状态,在业务对象正式创建之后开发工具会生成业务对象,函数在加载的阶段会被自动地执行,函数则在业务需求保存之前就自动执行。这样一来,业务需求在某一个状态下只能进行“某种类型”的操作,业务需求在保存之前如果进行了修改,那么也应判断业务需求的匹配关系等。
技术需求在软件开发层面和实现方法上和业务需求流程设计比较接近,只有某些地方可能存在差异。一是技术需求完成状态时会调用函数来修改匹配的业务需求,而是技术需求加载时会匹配各个需求的优先级[4]。
3.3 系统测试
如果将该系统嵌入到SAP Business By Design 当中,作为软件开发阶段的扩展模块,会和其它的模块结合并展开配套运行从而进行系统测试。一般情况下在完成集成测试的工作之后会按照需求说明对系统内部的功能展开测定,确保整个软件开发阶段不出现严重的程序错误。如果存在错误,也应该先定位错误的原因和区域,然后进行改正以确保整个开发阶段的稳定性。除去一般的功能测试之外还可以通过性能测试和安全测试,从软件的架构出发判断产品的特点和可操作行为,确定其是否满足要求。在对这些管理信息进行测定后,可获得功能测试的结果信息。
以性能测试为例,其作用在于确定软件系统是否能够达到既定的性能指标标准,了解软件系统内部是否存在性能缺陷[5]。在界面嵌入、读写对象、信息显示查询、业务需求、技术需求等模块都可以通过观察和操作确定该项功能是否能够正常执行,包括和系统功能分析描述的相符程度。后续的安全性测试、系统运作测试则根据实际需求做出调整。
4 结语
软件工程技术在我国新兴产业的发展过程当中扮演着非常重要的角色,随着未来软件系统程序设计的复杂化,与软件研发相关的研究工作将进一步深入。因此,需要结合当前技术与社会发展需求,借助软件优势提供应用保障。