Page 50 - 计算机应用软件开发技术研究
P. 50
计算机应用软件开发技术研究
Research on Computer Application Software Development Technology
改,而这些修改又会不可避免地引入错误,导致软件失效率升高,从而使得软件
退化。
第四,软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,
这导致了软件移植的问题。
第五,软件复杂性高,成本昂贵。软件是人类有史以来生产的复杂度最高的
工业产品。软件涉及人类社会的各行各业、方方面面,软件开发常常涉及其他领
域的专门知识。软件开发需要投入大量、高强度的脑力劳动,成本高,风险大。
第六,软件开发涉及诸多的社会因素。许多软件的开发和运行涉及软件用户
的机构设置、体制问题以及管理方式等,甚至涉及人们的观念和心理,软件知识
产权及法律等问题。
软件根据应用目标的不同,是多种多样的。软件按功能可以分为:应用软
件、系统软件、支撑软件(或工具软件)。应用软件是为解决特定领域的应用而
开发的软件。例如,事务处理软件、工程与科学计算软件、实时处理软件、嵌入
式软件、人工智能软件等应用性质不同的各种软件。系统软件是计算机管理自
身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。例如操作系
统、编译程序、汇编程序、网络软件、数据库管理系统等。支撑软件是介于系统
软件和应用软件之间,协助用户开发软件的工具软件,包括辅助和支持开发和维
护应用软件的工具软件,如需求分析工具软件、设计工具软件、编码工具软件、
测试工具软件、维护工具软件等,也包括辅助管理人员控制开发进程和项目管理
的工具软件。例如,计划进度管理工具软件、过程控制工具软件、质量管理及配
置管理工具软件等。
(二)计算机软件开发概念
计算机各种软件的数量在以惊人的速度膨胀的同时,软件规模也变得越来
越大:数百万行代码、耗时几千人年投入开发出来的软件产品已经是司空见惯。
面对如此庞大的软件开发工作,软件技术的提高也已成为计算机业致力开发的
重心。
1.软件开发演变
软件开发从其诞生之日起,就是针对人类所遇到的各种问题的。计算机发展
初期,由于计算机硬件价格昂贵,计算机只为人们分担科学计算任务——计算速
度快——这也是计算机的本质优点。这一时期,人们编写的计算机软件表现在纸
·38·

