软件工程项目的基本目标和原则:
http://se.csai.cn/SoftDocuments/200806241439391312.htm
组织实施软件工程项目,最终希望得到项目的成功。所谓成功指的是达到以下几个主要的目标:
成功实施软件工程的目标:
·付出较低的开发成本;
·达到要求的软件功能;
·取得较好的软件性能;
·开发的软件易于移植;
·需要较低的维护费用;
·能按时完成开发工作,及时交付使用。
在具体项目的实际开发中,企图让以上几个目标都达到理想的程度往往是非常困难的。
图1软件工程目标之间的关系
图1表明了软件工程目标之间存在的相互关系。其中有些目标之间是互补关系,例如,易于维护和高可靠性之间,低开发成本与按时交付之间。还有一些目标是彼此互斥的,例如,低开发成本与软件可靠性之间,提高软件性能与软件可移植性之间,就存在冲突。
软件工程的原则
以上的软件工程基本目标适合于所有的软件工程项目。为达到这些目标,在软件开发过程中必须遵循下列软件工程原则。
·抽象:抽取事物最基本的特性和行为,忽略非基本的细节。采用分层次抽象,自顶向下、逐层细化的办法控制软件开发过程的复杂性。
·信息隐蔽:将模块设计成“黑箱”,实现的细节隐藏在模块内部,不让模块的使用者直接访问。这就是信息封装,使用与实现分离的原则。使用者只能通过模块接口访问模块中封装的数据。
·模块化:模块是程序中逻辑上相对独立的成分,是独立的编程单位,应有良好的接口定义。如C语言程序中的函数过程,C++语言程序中的类。模块化有助于信息隐蔽和抽象,有助于表示复杂的系统。
·局部化:要求在一个物理模块内集中逻辑上相互关联的计算机资源,保证模块之间具有松散的耦合,模块内部具有较强的内聚。这有助于控制解的复杂性。
·确定性:软件开发过程中所有概念的表达应是确定的、无歧义性的、规范的。这有助于人们之间在交流时不会产生误解、遗漏,保证整个开发工作协调一致。
·一致性:整个软件系统(包括程序、文档和数据)的各个模块应使用一致的概念、符号和术语。程序内部接口应保持一致。软件和硬件、操作系统的接口应保持一致。系统规格说明与系统行为应保持一致。用于形式化规格说明的公理系统应保持一致。
·完备性:软件系统不丢失任何重要成分,可以完全实现系统所要求功能的程度。为了保证系统的完备性,在软件开发和运行过程中需要严格的技术评审。
·可验证性:开发大型的软件系统需要对系统自顶向下、逐层分解。系统分解应遵循系统易于检查、测试、评审的原则,以确保系统的正确性。
使用一致性、完备性和可验证性的原则可以帮助人们实现一个正确的系统。
- 大小: 9.1 KB
分享到:
相关推荐
【软件工程框架】是软件开发过程中的核心指导思想,它为软件项目的实施提供了有序的步骤和阶段划分。软件工程框架通常包括软件生存周期,涵盖了从软件的构思到废弃的整个过程。这一周期可以分为四个主要时期:计划、...
**软件工程的目标:** - **提高软件质量:**通过标准化开发流程,减少错误和缺陷。 - **降低成本:**有效规划资源分配,避免不必要的浪费。 - **缩短开发周期:**利用高效的开发工具和技术,加快产品上市时间。 - *...
软件工程的核心目标是通过应用系统化的、规范化的和可量化的方法来确保软件的质量,同时控制开发成本和时间。本节我们将深入探讨“软件工程技术概述”及其与“软件项目管理”的关联。 首先,软件工程不仅仅是编程,...
软件工程的基本原理包括软件工程的定义、软件工程的基本目标、软件工程的原则等。软件工程的原则包括软件工程的定义、软件工程的基本目标、软件工程的基本原理等。 软件工程的基本目标是为了解决软件危机的问题,...
软件工程是一门工程学科,旨在研究和应用科学原则和方法来设计、开发、测试和维护软件产品。软件工程的目标是开发高质量、可靠、可维护、可扩展的软件产品,以满足用户的需求。 软件工程的基本概念包括软件、软件...
本文将深入探讨“软件工程思想教程(项目管理)”中的关键知识点,旨在帮助读者理解并掌握软件工程的基本观念和项目管理的核心要素。 首先,我们关注的是“软件工程基本观念”。这一部分涵盖了软件开发的哲学基础,...
- **定义与目标**:软件工程是指应用计算机科学、管理科学、数学和工程学等原理和方法,按照工程化的原则与方法组织和实施软件开发与维护的过程。 - **基本原则**:包括但不限于需求明确、分阶段实现、模块化设计、...
7. **二八定律**:作为对软件工程基本原则的补充,二八定律指出在软件工程中,20%的关键要素通常决定了80%的项目结果,提醒我们在软件开发中要抓住关键点,高效利用资源。 以上内容是针对“实用软件工程课后习题...
软件工程的基本原则适用于所有的软件系统,包括通用软件产品和定制软件产品。软件工程的目标是降低软件开发成本,提高软件功能和性能,提高软件可靠性和易用性。在实际应用中,软件工程可以满足绝大部分用户的共同...
《软件工程数据库项目设计文档》是一份至关重要的技术文档,它详细阐述了在软件开发过程中,如何规划、设计和实施数据库系统。这份文档是软件工程流程中的关键环节,旨在确保数据库设计符合项目需求,能够有效地存储...
软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度,实现满足用户要求的软件产品的定义、开发、发布和维护的工程或进行研究的学科。软件工程的发展经历了四个阶段:软件危机阶段、面向对象的...
2. **第1章**:通常会阐述软件工程的定义、目标和基本原理,包括软件开发过程模型(如瀑布模型、螺旋模型、敏捷开发等)以及软件工程的伦理和职业责任。 3. **第2章**:可能会讲解需求工程,包括需求获取、分析、...
传统软件工程的基本思想、开发过程和步骤、应遵循的原则和准则;面向对象软件工程的基本思想、基本过程和基本模型;软件工程的管理技术。 课程的知识结构包括: * 软件工程学概述 * 可行性研究 * 面向对象的软件...
### 软件工程师的未来发展方向和个人规划 在信息技术飞速发展的今天,软件工程师作为这一领域的核心力量,其...同时,深入了解软件工程的基本概念和流程,以及不同角色的具体需求,对于规划好自己的职业道路至关重要。
本章通常介绍软件工程的基本概念,包括软件工程的起源、发展、重要性以及它在现代信息技术中的角色。还会讨论软件危机及其解决方案,引入软件生命周期的概念,以及软件工程的目标和原则。 **第二章 从程序到软件** ...
《软件工程教学课件PPT》是一份全面涵盖软件工程学科的教育资源,旨在为初学者提供深入理解软件开发...通过深入学习,不仅可以掌握软件工程的基本概念,还能培养出解决实际问题的能力,为未来的职业生涯奠定坚实基础。
"软件工程基础知识、软件工程思想"这一主题旨在教授和理解软件工程的核心概念和原则。 首先,让我们关注"软件工程基础知识2.doc"。这个文档可能包含了软件工程的基本概念,例如定义、目标、历史背景以及它的重要性...
在软件项目计划书中,软件工程的原则和方法贯穿始终,例如: 1. 需求获取与分析:运用软件工程方法收集、整理用户需求,确保需求的准确性和完整性。 2. 设计阶段:遵循设计原则,如模块化、可扩展性、可维护性,...
《软件工程学与软件工程教案》是一份针对编程爱好者精心整理的教学资料,旨在为学习者提供全面、深入的软件工程理论知识和实践经验。这个压缩包包含的文件名为“软件工程学”,暗示着它可能是一个系列教程或者课程...