我要加入 登录
声振论坛 返回首页

zhezhe的个人空间 http://home.vibunion.com/?56085 [收藏] [复制] [分享] [RSS]

日志

软件工程基础知识(待整理)

已有 514 次阅读2007-2-16 11:27 |个人分类:工作点滴

 

本节目的:结合日常监理工作和软考的需要,介绍软件工程的基础知识,了解软件生命周期及其各阶段的内容;另外,介绍项目管理中变更管理的理论知识,并以软件需求变更作为例子。

但只是介绍基本术语,不做详细解释。

主要内容:

(1)软件工程知识

(2)变更管理

(3)需求变更

 

1、软件工程

软件的定义:软件 = 程序、数据 + 文档

软件工程的起源:软件危机;

软件开发模型:软件需求完全确定:瀑布模型

            开发初始阶段只提供基本需求:渐进式模型(原型模型、螺旋模型)

            以形式化开发方式为基础的变换模型:变换模型

在实际中,经常是将这几种模型组合在一起使用。

软件开发方法:结构化方法、原型方法、面向对象方法

软件可靠性计算:串联方式与并联方式或是组合方式(公式)

能力成熟度模型CMM:5个等级

 

(个人认为,软件日常监理的重点在于软件工程+项目管理)

 

软件工程的重点内容

(1)生命周期(有些书称为生存周期)

(2)各阶段的要点

 

1.1 软件生命周期:从形成概念开始,经过开发、使用和维护,直到最后退役的全过程称之为软件生命周期(Software Life Cycle).

生命周期的分类有多种说法,大致上可分为:

立项阶段、需求阶段、设计阶段、编码阶段、测试阶段、运维阶段

1.2 各阶段的要点

1.2.1 立项阶段

属于准备阶段,主要活动:规划、可研(技术可行、经济可行、社会评价可行)、招投标、合同签订

(项目建议书、已批复的项目建议书、可行性研究报告、总体设计书、招标书、投标书、合同书)

1.2.2 需求分析阶段:分析用户对目标软件系统在功能、行为、性能、设计约束等方面的期望,并为之建立模型,将用户需求精确化、完全化,最终形成需求规格说明。

调研-->分析-->整理-->文档-->评审(多方)

成果性文档:需求规格说明书(或者是:用户需求规格说明书 + 软件需求规格说明书)

面向数据流的分析方法、数据流图(DFD)、数据字典(DD)、E-R图

面向对象的需求分析:面向对象 = 对象 + 类 + 继承 + 聚集 + 消息 、 关于UML

面向数据的分析方法

1.2.3 设计阶段

设计可分为总体设计、概要设计及详细设计,一般来说,总体设计在立项阶段就已完成,在此不多讲述。

软件设计的一些原则:高内聚、低耦合、信息隐藏

C/S、B/S

流程图、判定表、过程设计语言(PDL)

面向数据流的设计方法、变换流、事务流

面向对象的设计方法:基于UML

面向数据设计:JSD,DSSD

概要设计-->文档-->评审(多方)-->详细设计-->文档-->评审(多方)

成果性文档:总体设计说明书、概要设计说明书、详细设计说明书(有时候会增加数据库设计说明书)

1.2.3.1 概要设计阶段

1.2.3.2 详细设计阶段

1.2.4 编码阶段

详细设计-->代码

程序设计语言的考虑问题:“翻译”便利度、编译器效率、源代码的可移植性、可维护性(代码的可读性,注意编码规范)

面向对象语言(C++,JAVA)的有关特点经常是考试的重点,适当了解。

1.2.5 软件测试

概念:白盒、黑盒、功能测试、性能测试、单元测试、集成测试(综合测试)、确认测试、系统测试、自动测试工具、回归测试、BUG管理

测试计划-->测试用例-->实施(包括测试过程管理)-->结果评估

成果性文档:测试计划、测试用例、测试分析报告

过程文档:BUG记录表

1.2.6 运维阶段

新系统运行及系统转移:直接转换、试点后转换、逐步转换、并行转换

管理制度与人同样重要。

所要求的总结性文档。

2、变更管理(属于配置管理中的一部分)

配置项:产品配置是指一个产品在其生命周期各个阶段所产生的各种形式(机器可读或人工可读)和各种版本的文档、计算机程序、部件及数据的集合,该集合中的每一个元素称为该产品配置中的一个配置项。

配置项主要分为两类:属于产品组成部分的工作成果及属于项目管理和机构支撑过程域产生的文档;

配置管理可概括为:它是采用技术手段和行政手段进行管理和监督的一套规范化方法;对配置项的功能特性和物理特性加以标识,并将其文档化;控制这些特性的变更,报告变更进行的情况和变更实施的状态以及验证与规定需求的一致性。

从变更的意义讲,配置管理是要解决项目产品的变更标识、变更控制以及变更发布的问题。

变更管理的任务:控制修改,使之不出现改错、改乱的现象。

3种配置库:开发库(DL)、受控库(CL)、产品库(PL);

CCB, Draft, Released, Changing

变更流程:变更申请-->CCB评审(评估、分析风险)-->通过之后实施变更-->变更记录

3、需求变更(范围管理的一部分)

(谨防镀金)

项目范围确认--对应需求规格说明书

需求变更的流程,与上文提及变更管理流程相似。

一般来说,到了项目后期,如果客户仍提出需求变更,带来的风险将比较大。这需要使用协调和沟通的方式,有利于项目的进度把握,比如进行合同变更、补充,或说服用户将相关内容在后期项目中进行)。

(YX案例)

全部作者的其他最新日志

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 我要加入

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-15 16:53 , Processed in 0.027263 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部