随着新一代信息技术的开发和应用,互联网成为基础设施,大数据成为生产要素。 人类社会从数字化,网络化走向智能化时代,对软件产业发展提出产业升级和更新换代的新要求,从基础,平台,算法到应用都面临全面创新。 在产业创新发展的过程,未来智能化的世界里,高质量的软件都起着重要的作用。
第七届“TiD2020质量竞争力大会”日前在京召开,国内外多个软件开发创新领域的专家,学者和行业领袖汇聚一堂,就软件产业的高质量发展提出了建议。
在软件工程开发中有许多问题需要解决
在软件工程开发过程中,计算机技术,软件开发方法,团队的形成和互动,新一代应用的出现都发生了巨大的变化。 根据基于需求的测试方法(RBT)的创始人理查德·本德(Richard Bender)的说法,在软件工程的发展中,有许多问题需要解决,如由于需求定义不明确而导致的运行程序缺陷、地理分布团队文化差异的挑战、缺乏真正的系统架构师、遗留库存代码造成的技术债务等。 如果这些问题得不到解决,就没有办法显著提高软件行业的生产质量和效率。 真正的软件工作应该集中在需求、架构和设计上。 今后,软件从业人员需要运用系统的方法和工具,不断提高专业素养,以强烈的紧迫感解决实际问题。
理想的软件开发模式是智能化的全过程
专家说,下一代软件开发需要数据驱动的研发智能。 所谓数据智能是指大数据引擎, 通过大规模的机器学习和深入学习等技术, 大规模数据处理,分析和挖掘,提取有价值的信息和数据中包含的知识,使数据“智能”,并通过建立现有解决方案和寻找模型。
在ITEA技术公司创始人兼首席执行长,华为研发能力中心前副总裁张大成看来,数据关联是数据智能的基础。 它也是研发智能背后的主要推动力,大数据关联的分析和应用开发可以支持智能数据。 但是,现有的软件开发模式缺乏自动化的质量评估机制。 因此,他认为理想的研发模式是以最有效的方式在合适的时间为合适的人提供及时和正确的帮助,包括平台,管理,设计,开发,实验室测试等。
张大成说,要实现软件研发过程的整体智能化,必须掌握17项关键技术,包括设计开放,自适应的研发工具平台,全面集成和开发自动化质量管理系统。 他还强调,软件工程的变革是参照前沿学术成果,结合行业实际应用需要克服的一整套系统工程。
以业务实例为导向的开发最大限度地发挥总体优势
独立软件开发顾问杰拉德·梅萨罗斯指出,在软件开发方面有30年以上的经验,通过测试软件中可测试的最小单位,例如程序代码中的一个函数,可以提高代码的质量,但不能直接提高系统整体的质量。 端到端测试将应用程序与系统一起进行测试,从用户的角度验证整个系统的功能,并确保从启动到退出都能按预期方式运行。 但是,端到端测试往往是由开发人员手动完成的,并且存在自动化程度极低的缺点。 通过业务案例驱动的开发,架构师,研发人员和测试人员可以在设计软件时熟悉用户场景,从而提高代码的简洁性,集成性和连接性,帮助正确构建系统体系结构,并最大限度地发挥整体优势。 此外,使用可执行的实例,业务,开发和产品技术人员可以更好地理解和沟通。 可执行实例有助于降低业务和开发人员之间的通信成本。