**章 土地信息系统工程设计原理
**节 软件工程简介
一、软件工程的概念
软件是计算机系统中与硬件相互依存的一部分,它是包括程序、数据及其相关文档的完整集合。
软件按功能分为系统软件、支撑软件和应用软件;按规模分为微型、小型、中型、大型、超大型和极大型软件;按工作方式分为实时处理、分时处理、交互式和批处理软件;按服务对象的范围分为项目软件和产品软件。
软件发展到20世纪70年代,就进入了软件工程阶段。它应用计算机科学、数学及管理科学等原理,借鉴传统工程的原则、方法,创建软件,以达到提高质量,降低成本的目的。其中,计算机科学和数学应用于构造模型与算法,工程科学用于制定规范、设计范型,评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。从学科角度来看,软件工程是一门指导计算机软件开发和维护的工程学科。土地信息系统(Land Information System,LIS)软件工程就是在LIS软件的整个开发过程中,遵循一般软件开发的工程化原理和方法,并顾及LIS软件开发的特殊规律和要求,对LIS软件从可行性研究、需求分析、总体设计、详细设计、软件编制、软件测试,到软件维护的各个阶段进行工程化规范的一门技术。
软件工程的提出,是为了解决20世纪60年代出现的软件危机。当时在大型软件开发中存在着价格高,开发不容易控制,软件开发工作量估计困难,软件质量差,项目失败率高等许多问题,这些问题给软件行业带来了巨大的冲击。软件工程的研究,提出了一系列理论、原则、方法以及工具,试图解决软件危机。
二、软件工程的目标
软件工程的目标是提高软件的质量与生产率,*终实现软件的工业化生产。质量是软件需求方*关心的问题,用户即使不图物美价廉,也要求货真价实。生产率是软件供应方*关心的问题。质量与生产率之间有着内在的联系,高生产率必须以质量合格为前提。质量不合格的软件产品对供需双方来说,都是不能接受的。从短期效益来看,追求高质量会延长软件开发时间并且增大巍用,似乎降低了生产率。从长期效益看,高质量将保证软件开发的全过程更加规范流畅,大大降低软件的维护代价,实质上是提高了生产率,同时可获得很好的信誉。质量与生产率之间不存在根本的对立,好的软件工程方法可以同时提高质量与生产率。
评价软件质量的因素很多,如正确性、性能、可靠性、容错性、易用性、灵活性、可扩充性、可理解性、可维护性等。有些因素相互重叠,有些则相互抵触,所以要提高软件质量不是件易事。
……