人工智能软件系统的非功能属性及其质量保障方法
2023-07-21李子航葛阳刘思语黄文圣张大伟通信作者
李子航 葛阳 刘思语 黄文圣 张大伟通信作者
摘要:互联网人工智能软件系统的质量保障,是目前业界比较关注的问题。本文在分析互联网人工智能软件系统的非功能属性特征及其形成机制的基础上,提出了基于软件开发过程和生命周期理论的互联网人工智能软件系统非功能属性质量保障方法,并以具体项目为例,进行了实践验证。近年来,互联网人工智能软件系统在社会生产和生活中发挥着越来越重要的作用,但同时也出现了大量问题,其中一个重要原因是缺乏相应的质量保障方法。因此,研究和探索互联网人工智能软件系统的质量保障方法,对促进该系统健康发展具有重要意义。
关键词:人工智能;非功能属性;质量保障方法
引言
随着信息技术和互联网技术的飞速发展,互联网软件系统也发生了巨大变化,人工智能软件系统以其高效、智能化、人性化等特点,正在被广泛应用于各行各业。人工智能软件系统的应用在给人们生活带来便捷的同时,也给用户带来了一定程度的困扰,如网络安全问题、隐私保护问题、算法歧视问题等。目前,国内外学者对互联网人工智能软件系统的研究主要集中在安全性、可靠性、易用性等方面。随着互联网人工智能软件系统的规模和复杂程度不断提升,人们对其质量要求也随之提高,以保证人工智能软件系统的安全性和可靠性。
在互联网人工智能软件系统的质量保障过程中,主要关注系统功能层面的质量保障,而忽略了其非功能属性的质量保障。在人工智能软件系统的实际开发过程中,人们往往会忽视软件系统非功能属性,导致人工智能软件系统难以满足用户需求和期望。因此,研究和探索互联网人工智能软件系统的非功能属性及其质量保障方法,对提升互联网人工智能软件系统的质量具有重要意义。本文针对互联网人工智能软件系统非功能属性中存在的问题,分析了其形成机制,并从软件开发过程和生命周期理论的角度,提出了相应的质量保障方法,并以某保险公司“智能理赔服务”项目为例进行了实践验证。
1. 非功能属性
非功能属性是指软件系统中不具备实现某个功能所必需的全部信息,或者不具有实现某个功能所必需的全部功能,但能够满足用户某种需求,且对系统性能、可靠性、安全性等无不良影响的属性。从软件系统的功能需求分析入手,考虑到互联网人工智能软件系统具有以下几个特点:(1)系统是以数据为核心;(2)软件是一个复杂的系统,除了需要完成某一特定功能外,还需要实现多种不同的功能;(3)软件系统具有一定的开放性和可移植性;(4)系统由多个子系统组成,各子系统之间相互关联、相互影响,存在着明显的耦合关系;(5)系统中包含大量的数据和业务处理流程,这些数据和流程往往具有较强的可移植性[1]。
基于以上特点,互联网人工智能软件系统中往往存在一些非功能属性,这些非功能属性会给软件系统带来潜在的风险,从而影响到软件系统的可靠性、易用性、可维护性等。为了保证互联网人工智能软件系统的质量,首先,必须了解其非功能属性的特征,以及这些非功能属性的形成机制;其次,在进行互联网人工智能软件系统开发前,必须要对软件系统进行需求分析和设计,以保证软件系统满足需求分析和设计阶段的非功能属性要求;再次,在进行互联网人工智能軟件系统开发过程中,必须要按照严格的生命周期过程进行开发,以保证整个开发过程严格按照既定的质量标准进行;最后,在互联网人工智能软件系统的生命周期结束后,必须要对软件系统进行分析、测试和验收,以保证整个软件系统达到设计目标[2]。
2. 存在的问题
互联网人工智能软件系统的非功能属性,主要包括应用程序性能、计算资源、存储资源、网络带宽、用户隐私等。这些非功能属性对互联网人工智能软件系统的运行性能和服务质量影响重大,在实际应用过程中,对互联网人工智能软件系统的质量保障提出了严峻挑战。具体如下:
(1)由于非功能属性的存在,使得互联网人工智能软件系统的开发工作量巨大,通常需要耗费大量的时间和精力进行开发,甚至在整个生命周期内都难以完成。
(2)由于非功能属性对互联网人工智能软件系统的性能影响重大,其测试用例设计需要充分考虑对性能的影响,测试结果一般会存在较大偏差。
(3)由于非功能属性对互联网人工智能软件系统的运行效率、运行速度、稳定性等有较大影响,其测试用例设计需要充分考虑对系统的影响,测试结果一般也会存在较大偏差。
(4)由于互联网人工智能软件系统的非功能属性,可能会产生一些安全问题,因此在实际应用过程中,对其安全保障要求也比较高。
(5)由于互联网人工智能软件系统的非功能属性,可能会导致用户隐私泄露,因此在实际应用过程中,用户隐私保护是一个重要问题,也是一个重要挑战。
(6)由于互联网人工智能软件系统的非功能属性,可能会导致系统产生故障,因此在实际应用过程中,对其故障处理能力要求比较高。
(7)由于互联网人工智能软件系统的非功能属性,可能会产生一些其他问题。由于互联网人工智能软件系统通常具有跨平台的特点,因此,在不同的操作系统环境下,系统可能会出现兼容性问题,导致无法正常运行。
3. 形成机制
根据软件开发过程和生命周期理论,软件系统的非功能属性主要包括性能、可靠性、安全性、可维护性和易用性等。这些属性是软件系统在不同的开发阶段中由用户需求驱动的,主要作用是满足用户对软件功能和性能的需求。互联网人工智能软件系统的非功能属性与普通软件系统相比具有以下4个特点:
(1)在不同阶段,用户对软件的功能和性能需求可能发生变化;
(2)随着时间的推移,用户需求可能会发生变化,导致需求变更;
(3)用户需求和软件功能、性能需求之间存在一定的差异;
(4)用户需求可能会与供应商提供的产品特性相冲突。
由此可以看出,互联网人工智能软件系统的非功能属性主要是由需求驱动的,需求的变化和迭代是产生非功能属性的前提条件,而数据的质量直接影响着软件系统的性能和可靠性。
基于软件开发过程和生命周期理论,我们认为,互联网人工智能软件系统的非功能属性通过以下3种机制形成:
3.1 数据驱动
基于数据的非功能属性是互联网人工智能软件系统特有的特征,因此只有充分利用数据才能满足用户对软件功能和性能的要求。
(1)数据采集:在互联网人工智能软件系统的开发过程中,可以根据用户需求和任务,选择合适的技术手段,通过对用户提供的数据进行分析、挖掘和利用,实现对用户需求的满足。
(2)数据存储:互联网人工智能软件系统要具有高并发、高可用的特点,数据存储必须有较强的可靠性和可用性。
(3)数据处理:互联网人工智能软件系统的开发需要采用先进的技术手段和工具进行数据处理和分析。
(4)数据共享:互联网人工智能软件系统需要对数据进行充分的挖掘和利用,实现数据的共享。
3.2 模型驱动
互联网人工智能软件系统开发的过程就是通过分析、归纳和总结已有的经验,基于已有知识的积累和经验来设计开发模型,以指导后续的设计、开发和测试。
(1)模型设计:在互联网人工智能软件系统开发过程中,需要根据软件需求,利用软件工程理论,结合本行业相关的业务知识、技术知识、数据知识和管理知识等,设计并开发软件系统的模型。
(2)模型处理:互联网人工智能软件系统的模型主要是通过建立软件系统的概念模型、逻辑模型和物理模型等实现的,同时还需要建立软件系统的运行模型,如数据模型、算法模型等,以指导软件系统的设计、开发和测试。
3.3 算法驱动
互联网人工智能软件系统的非功能属性,可以通过算法来实现。在互联网人工智能软件系统开发过程中,通过不断地运用算法迭代来改进算法,最终获得满足用户需求的算法。
总之,在互联网人工智能软件系统的开发过程中,可以通过上述3种机制形成互联网人工智能软件系统的非功能属性[3]。
4. 质量保障方法
在互联网人工智能软件系统的开发过程中,通过上述3种机制,可以形成对非功能属性的有效保障,提高互联网人工智能软件系统的质量。但是,由于非功能属性是由用户需求驱动的,因此在开发过程中要充分考虑用户需求的变化、软件系统的性能、可靠性和安全性等方面的影响。为了实现对互联网人工智能软件系统非功能属性的有效保障,可以考虑采取以下措施:
(1)加强对用户需求变化的跟踪和分析,及时调整软件系统的设计;
(2)通过数据采集、模型设计和算法优化等措施,提高互联网人工智能软件系统的性能、可靠性和安全性;
(3)加强对非功能属性保障措施的验证和测试。
在上述研究的基础上,进一步提出以下3个方面的质量保障方法:首先,建立需求分析与设计模型;其次,建立编码与测试模型;最后,建立测试与验证模型。通过实施这些质量保障措施,可以实现对互联网人工智能软件系统非功能属性的有效保障,从而提高互联网人工智能软件系统的质量。建立需求分析与设计模型。在互联网人工智能软件系统的开发过程中,需求分析和设计是两个紧密相连的环节。为了实现对互联网人工智能软件系统非功能属性的有效保障,首先,需要建立需求分析与设计模型,根据用户需求,确定软件系统的功能需求和性能需求,并进行数据结构设计和数据流图设计。其次,按照上述需求分析与设计模型,结合实际应用场景和系统需求,设计并开发互联网人工智能软件系统的软件架构、数据模型和算法模型等。最后,按照上述设计模型和开发模型进行编码和测试,确保非功能属性保障措施的有效实施[4]。
5. 实例分析
以某大型互联网人工智能软件系统的开发为例,介绍上述質量保障方法在该项目中的应用。
该项目是一个面向服务的互联网人工智能软件系统,涉及的功能模块包括数据管理、算法服务、数据处理、数据挖掘等,应用场景主要包括数据管理、任务调度、数据分析和智能推荐等。项目开发团队根据用户需求和行业特点,首先对该系统进行了功能和性能需求分析;其次根据功能需求和性能需求,结合项目开发进度和实际情况,采用生命周期方法,设计了软件系统的需求模型、设计模型、编码模型和测试模型等;最后在此基础上,按照上述质量保障方法进行了开发[5]。
在具体应用中,通过将用户提供的数据接入到数据管理模块,然后将获取的数据导入到数据库中,并根据用户的需求和要求进行相应的查询、统计等操作。对于需要进行算法服务的功能模块,采用Java语言开发了算法服务模块,主要包括算法导入参数配置、算法调用和输出等功能。用户可以在数据管理模块中查看历史数据、当前数据和查询条件等信息,并可以进行相关操作。在任务调度模块中,通过调用数据管理模块提供的接口,获取用户的历史数据,然后根据历史数据的质量指标和任务参数信息,生成最优任务序列。用户可以通过点击相关按钮选择最优的任务序列进行处理。对于处理完的最优任务序列,系统可以生成一份报告,并提供给用户。在数据挖掘模块中,用户可以输入各种条件如时间、地点、天气、心情等,系统通过数据挖掘算法分析和计算,获得用户感兴趣的推荐结果。在智能推荐模块中,用户可以输入各种条件如性别、年龄等,系统自动生成相应的推荐结果。
结语
本文分析了互联网人工智能软件系统的非功能属性,介绍了其主要特点和形成机制,并在此基础上,提出了基于软件开发过程和生命周期理论的非功能属性质量保障方法,并以实际项目为例进行了验证。对于互联网人工智能软件系统的质量保障,本文提出的方法可以有效提升质量,但仍存在一些不足之处,非功能属性评估模型在实际应用中还有待进一步研究。互联网人工智能软件系统非功能属性质量保障方法的提出,对互联网人工智能软件的健康发展具有重要意义。
参考文献:
[1]张笑宇,沈超,蔺琛皓,等.面向机器学习模型安全的测试与修复[J].电子学报, 2022,50(12):2884-2918.
[2]王赞,闫明,刘爽,等.深度神经网络测试研究综述[J].软件学报,2020,31(5): 1255-1275.
[3]贾开,赵静,傅宏宇.应对不确定性挑战:算法敏捷治理的理论界定[J].图书情报知识,2023,40(1):35-44
[4]张言亮.神经元行为模式引导的深度神经网络测试用例生成和优化技术[D].南京:南京邮电大学,2022.
[5]Zhao LP,Huang X,Yang GH.Injection Molding Process Quality Analysis and Prediction Based on Batch Dynamic Augmentation[C]//第33届中国控制与决策会议论文集(3),2021:479-484.
作者简介:李子航,在读硕士研究生,研究方向:视觉识别及人员疏散;葛阳,在读硕士研究生,研究方向:视觉识别及人员疏散;刘思语,在读硕士研究生,研究方向:视觉识别与智能算法;黄文圣,在读硕士研究生,研究方向:视觉识别及机器人路径规划 ;通信作者:张大伟,博士,讲师,研究方向:视觉识别及人员疏散。