陆康杰
摘要:通信技术与信息技术的深度融合,为软件工程开发提供了新的发展机遇。当前,正值数字中国建设之际,软件工程进入了高质量开发与高水准运用阶段,有必要在“互联网+”深化期间持续扩大对新技术的应用为其实践赋能。文章以此为出发点,概述了软件工程开发技术的特点,剖析了“互联网+”时代软件开发中出现的新技术,并在此基础上提出了几点有利于促进其应用的建议。
关键词:互联网;软件工程;开发技术
doi:10.3969/J.ISSN.1672-7274.2024.04.028
中图分类号:TP 311.5 文献标志码:A 文章编码:1672-7274(2024)04-00-03
Analysis on New Technology of Software Engineering Development
in the "Internet Plus" Era
LU Kangjie
(Chongqing University of Posts and Telecommunications, Chongqing 400065, China)
Abstract: The deep integration of communication technology and information technology provides new development opportunities for software engineering development. At present, at the moment of the construction of digital China, software engineering has entered the stage of high-quality development and high-level application. It is necessary to continue to expand the application of new technologies to enable its practice during the deepening of "Internet plus". Taking this as the starting point, this paper summarizes the characteristics of software engineering development technology, analyzes the new technologies emerging in software development in the "Internet plus" era, and on this basis, puts forward several suggestions conducive to promoting its application.
Keywords: Internet; software engineering; development technology
1 “互联网+”时代软件工程开发新技术分析
1.1 软件系统架构技术
“互联网+”时代为软件工程开发提供了一种思想资源,开发人员遵循“思路决定出路”的原则,可以创新或选择不同的技术资源进行要素配置,完成软件工程开发。具体而言,软件工程开发中牵涉到分析阶段、设计阶段、编程阶段,三大阶段相辅相承、彼此影响。开发人员为了保障开发的有效性,以及在后续应用中对其进行持续优化,需要在“思想资源+技术资源”的加持下,从现代软件工程开发技术中的未来性、智能化、整体性特点出发,结合当前PC机向移动终端设备发展趋势应用一些新技术。以软件系统架构为例,它的功能是在顶层设计方面,为软件工程开发提供软件的基本轮廓,满足其开发需求。
从目前应用的软件系统架构技术看,比较经典的C/S架构居于主流地位,可以把应用软件划分为客户机与服务器。①客户机属于用户端安装的用户软件;②服务器则涉及到Web服务器、数据库服务器;③应用该软件系统架构技术时,服务器能够根据客户软件中发送的逻辑业务请求为其提供数据解析与处理服務,并以报表形式将结果发送到用户端,交互性相对较好。与上述软件系统架构相比,B/S应用软件架构主要由Web服务器、数据库服务器、浏览器三个基本层次构成,能够节省安装客户端的环节。实际应用时,用户只需要在浏览器中通过Web服务器提供的地址,进行输入即可以登录系统,实用性更强,对开发人员的专业性要求一般,更加有利于移动终端设备方面创新[1]。
在软件工程开发中使用软件架构系统时,通常需要注意以下三点:①应突出问题导向,利用定义、界定等方式增强目标系统的边界设置,并根据具体的切分原则分解其中的任务,借助串行、并行等节约开发时间;②在切分部分设置沟通机制时,要注重各部分之间的关联性与组合后的整体性;③除上述两种比较典型的软件系统架构外,目前部分软件工程开发企业已开启了对黑板模式(Blackboard pattern)、解析器模式(Interpreter pattern)、代理模式(Broker pattern),以及其他模式的比较分析,预期在后续开发中逐渐进行多元模式下的开发实践。以分层模式(Broker pattern)为例,使用场景以通用桌面应用程序、电子商务Web应用为主,可以拆分为表示层、应用层、业务逻辑层、数据访问层,每个层次的独立抽象特点突出,在当前的软件工程开发中的结构化设计中具有较大优势。
1.2 人工智能技术
软件系统架构技术属于软件服务平台技术领域,人工智能技术则属于软件工程开发中的算法领域。目前,大模型的出现将人工智能推进到了较高的发展阶段。从软件工程开发实践经验看,一般采用监督技术方面的支持向量机、BP神经网络等算法,和无监督技术方面的K均值等技术,重点放在数据分析模型方面,旨在通过有效监督训练及学习、自动化挖掘信息等,为软件工程开发提供持续性的技术支持。以BP神经网络算法为例,主要按照“输入层→隐含层→输出层→比较→期望输出→是否达到要求→若否,则向后进行层层列新权重与偏置,或是则进入下一环节→结束”等流程进行操作。由于其中的每个神经元都受来自其他神经元的输入信号,在输出、比较、判断诸环节,可以借助带权重的连接传递方式、模拟阈值电位对比、激活函數等完成一系列操作。需要注意的是,该算法应用过程中牵涉到正向传播过程、反向传播过程,在软件开发工程中对其进行应用时应注重模型的两个传播过程,将计算误差控制在较小范围内。
在新时期的软件工程开发中,随着对人工智能技术应用的增多,结构数据逐渐拓展到了半结构数据、非结构数据,开发人员在实践中通常会采用“大数据+人工智能”联合方案。尤其在密集式数据研发技术相关的软件工程开发方面,对联合方案应用较多。例如,软件工程开发时可以借助该技术提前解决数据采集、清洗、存储、保存、更新等问题,为软件工程开发提供更好的流畅度。同时,在数据分析模型中对数据进行分析时面临着数据整合的难题,利用该技术的数据整合功能可为其提供数据管理服务,并提高软件智能化水平[2]。
除此之外,新时期软件开发工程中对软件安全防护的需求较大,针对有记录的知识库、数据集安全防护较好,但是,针对没有记录的攻击手段则缺乏相应的安全防护服务,此时可以配套应用自主学习技术。该技术应用时包括两个部分:①未接触过的恶意攻击→安全防护软件→攻击数据信息记录→自主学习→未接触过的恶意攻击转变为已接触过的恶意攻击,可防护。②未接触过的恶意攻击→安全防护软件→内部监管控制→备份保护安全。在其基本原理支持下,通过逻辑推演可以提前预判软件工程中可能存在的风险。
1.3 大数据技术
人工智能技术在软件工程开发中的应用,通常会配套大数据技术。在软件工程开发中对大数据技术的应用重点放在软件工程开发管理系统上,可满足软件升级数据对比、催生软件工程开发需求等。关键技术包括三类:软件服务工程技术、众包软件服务工程技术、密集型数据处理技术。其中,软件服务工程技术在软件工程开发的分析阶段、设计阶段、编程阶段、安装阶段、维护阶段,均可以为其提供安全防护服务。密集式数据处理技术除了与人工智能联合应用防控病毒、提高数据完整度外,还能够辅助软件工程方法应用时,加强面向对象分析中的动态模型、功能模型、对象模型中的数据分析,提高建模效率,以及设计阶段的数据统计、数据对比分析等[3]。众包软件服务工程技术可以提一种“工作模式”,减少对软件工程开发人员数量的配置。但是在应用该技术时需要配套的解决流式数据、密集数据问题,一般在应用时需要与密集式数据处理技术联合应用,帮助开发人员完成对重点、难点部分的数据处理。
进一步看,随着“互联网+”时代向深度的理论层面、广度的技术推广层面、精度的指标管理层面发展,软件工程管理模式正在从C/S架构向B/S架构转变。而且,服务性已成为软件工程开发中的基本立足点。在这种前提下,为了解决软件工程开管理中的混乱问题、资源占用问题,大部分企业选择了服务化、资源虚拟化等方案,通过“一个接口,多种服务”探索新的服务路径以提高资源利用率。但是,受到服务对象的多样化因素影响,数据种类增多、数据分布变化加快,对异构系统数据的有效处理及整合要求越来越高[4]。在这种现状下,软件工程开发人员会选择适配性较高的大数据技术,在新思路、新模式支持下满足其新需求。另外,软件工程开发中普遍存在系统工程与项目控制重叠问题,此时可应用大数据技术中的“系统文档树”进行结构化方面的自定义处理,通过整体性计划解决其中的重叠问题,并将其落实到集成、组成、控制、检测各环节。
2 “互联网+”时代软件工程开发新技术应用策略
2.1 有效发挥政府管理职能
新时代的一系列改革证实了举国体制下的制度优势,并且将其融入到了各行业、领域之中,产生了令人瞩目的成绩。在“互联网+”时代软件工程开发新技术应用策略方面,建议从该角度出发有效发挥政府管理职能,持续辅助其实践。例如,在软件工程开发环境营建方面,政府应通过政策引导、资金支持,为其提供一个相对较好的研发环境,满足其对基础资源的配置要求。以政府引导为例,应激励民间资本投资软件工程开发,并将重点调整到相关新技术的研发环节。同时,应引导实体企业与技术企业开展协同合作[5]。以资金支持为例,各地政府应根据当地的数字产业化、产业数字化转型所处阶段,在不同的项目中给予适配性的资金支持,包括财政拨款、技术创新奖励、减免税收等。
2.2 积极进行产品升级更新
在供需理论下,只有满足用户需求的软件工程开发新技术,才能获得更为广泛的应用。虽然当前的软件工程开发企业,已在用户需求导向下创建定制化模式(“订单+采购+实施+售后”),补充了设计生产一体化模式(项目立项、开发设计、采购、实施订单、营销、售后)中的短板,但是用户在使用软件时存在一定的“惰性”,不期望软件频繁升级更新。相反,为了保障软件的高质量开发后的高水准应用,软件工程开发企业通常会根据实际需求对产品进行升级更新。
在这种矛盾下,软件工程开发人员应从技术赋能的角度出发,一方面明确积极进行产品升级更新的必要性,另一方面在不改变其使用功能的前提下创新技术或者选择新技术完成产品升级更新。这样做,在实质上有利于将用户需求与软件工程中的缺陷结合起来,对其进行综合考虑,进而促进软件工程开发技术层面的创新与突破。进一步看,在量子计算机未推广应用之前,所有软件均不能从根本上解决病毒传播、木马程序侵入、非授权登录等方面的隐患。在这种前提下,建议软件工程开发企业及相关人员突破新技术研发环节的引领性作用,借助产品升级更新方向的调整加强对新技术的创造及应用[6]。
2.3 增强知识产权保护力度
目前,我国的知识产权保护制度相对完整,但是在软件工程开发企业方面的知识产权保护差强人意,具体表现为知识产权保护力度不足。建议在当前阶段从统一大市场的角度出发,深入理解知识产权保护的重要性,并在该方面将创新与保护结合起来,探索基于软件工程开发新技术的新型商业模式。
(1)软件工程开发企业应充分意识到在統一大市场建成后形成的新发展格局下,不得不参与全球同行业的残酷竞争。然后,按照定价权与供应链竞争方向,加强软件开发新技术的创新与知识产权保护[7]。尤其在供应链管理方面,供应链寻源难度有所增加,此类企业应尝试在新技术创新与知识产权保护的前提下,探索以售卖新技术专利为主的商业模式,打破供应商与相关技术垄断企业的联合。
(2)就软件工程行业而言,对自主知识产权的保护有利于在本土形成更加激励的竞争,优化行业投资结构,进一步使新技术产生的利好反哺到对软件工程开发新技术中。从当前软件工程开发新技术的创新及应用经验看,任何一项新技术的突破,均可能对整个软件产业产生结构升级的作用,同时借助新技术调整软件的应用方向。建议在该方面,按“政府+企业”的合作模式,激励企业形成知识产权保护意识、加大知识产权保护力度[8]。
3 结束语
总之,“互联网+”时代的到来为软件工程开发中的新技术研发提供了新思路,推动了软件工程开发新技术的多元化、融合化应用。当前,正值此类工程高质量发展阶段,对于软件系统架构技术、人工智能技术的应用相对增多,这有利于解决各行业、领域“并联式”发展过程中软件工程开发产业链不完善、实用性不强、创新性欠缺的问题。建议在新时期一方面有效发挥政策管理职能,在政策导向下给予一定的扶持;另一方面在需求导向下开展产品升级更新,推动相关新技术的研发及应用。另外,软件工程开发始终以全球行业竞争为背景,应在知识产权创新的过程中进一步通过制度建设增强知识产权保护力度,为我国软件工程开发及在各行业、领域的应用保驾护航。■
参考文献
[1] 刘佳娜.大数据时代下软件工程关键技术应用[J].工程管理与技术探讨,2023(11):5-7.
[2] 毛淑鑫.互联网时代软件工程开发分析[J].国际计算机科学进展,2022,2(2):21-23.
[3] 周丽霞.软件工程方法在计算机软件开发中的应用[J].科海故事博览,2022(24):1-3.
[4] 姚楠.大数据时代软件开发与维护技术要点及运用实践关键要素探究[J].消费电子,2022(12):53-55.
[5] 孙辉.计算机软件工程中的数据挖掘技术应用[J].大众标准化,2022(2):122-124.
[6] 张鹏.软件工程思想在管理信息系统开发中的应用[J].信息系统工程,2022(5):84-87.
[7] 曹嵩彭,王鹏宇.基于软件工程的Web开发与应用[J].信息记录材料, 2022(2):108-110.
[8] 刘一林.软件工程技术在系统软件开发过程的应用研究[J].数码设计, 2022(8):25-27.