【系统分析师之路】第五章 软件工程(章节重点)

【系统分析师之路】第五章 软件工程(章节重点)

章节考点索引

信息系统生命周期(★)
软件开发模型(★★★★)
逆向工程(★★)
净室软件工程(★)

论文案例考察方式

2014年上半年 软件的逆向工程及重构
2016年上半年 论软件开发模型及应用(论文)
2012年上半年 论敏捷开发在企业软件开发中的应用(论文)
2010年上半年 论快速应用开发在系统建模中的应用(论文)

一. 信息系统生命周期 (★)

偏向项目管理
1)立项阶段

企业全局,形成概念,需求分析

2)开发阶段

信息系统开发生命周期,包括总体规划,系统分析,系统设计,系统实施,系统验收

3)运维阶段

通过验收,移交以后

4)消亡阶段

更新改造,功能扩展,报废重建

偏向技术开发
1)系统规划

内容:初步调查,分析系统目标,子系统组成,拟实施方案,可行性研究,制定系统建设方案
成果物:系统设计任务书(系统建设方案,实施计划)

2)系统分析

业务流程分析,数据与数据流程分析,软件需求分析,网络需求分析 系统需求规格说明书,软件需求规格说明书,确认测试计划,系统测试计划,初步的用户手册

3)系统设计

内容:软件架构设计,软件概要设计,详细设计,网络设计
成果物:架构设计文档,概要设计说明书,详细设计说明书,程序规格说明书,概要测试计划,详细测试计划,各类设计图

4)系统实施

内容:软件编码,软件单元集成系统测试,综合布线。
成果物:源码,单元测试报告,集成测试报告,操作手册

5)系统验收

内容:确认测试,试运行 确认测试报告,项目验收报告

二. 软件开发模型(★★★★)

软件开发模型分类

开发方法比开发模型要来得大一号。
结构化开发方法对应V模型和瀑布模型;面向对象开发方法对应喷泉模型,统一方法模型,敏捷模型,面向服务的模型。
所有面向服务的模型都是以面向对象为基础的。

螺旋模型

螺旋模型既有原型,又有瀑布和迭代。它的特点就是把各个模型综合在一起,还有引入了风险分析。 需求在项目刚开始的时候往往会比较模糊,而随着项目的进行会慢慢的明确下来,也就是需求有渐进明细的特点。
螺旋模型是一种演进式的软件过程模型,结合了原型开发方法的瀑布模型的系统性和可控性特点。它有两个显著特点,一是采用循环的方式逐步加深系统定义和实现的深度,同时降低风险;二是确定一系列里程碑,确保项目开发过程中的相关利益者都支持可行的和令人满意的杀统解决方案。
螺旋模型将瀑布模型和快速原型模型结合起来,强调项目的风险分析,特别适合大型复杂系统的开发过程。螺旋模型沿着螺线进行若干次迭代,依次经历了计划指定、风险分析、工程实施和客户评估四个主要活动。

瀑布模型

升级的项目或者案例题中清晰告诉我们需求明确,这样的项目合适使用瀑布模型。
原型模型比较适合需求不够明确的项目。原型又可以分为快速原型(抛弃式原型),还有一种是演化式模型。
V模型是瀑布模型的一种变种,是从瀑布模型中发展而来的,它在瀑布模型的基础上加强了测试。在V模型中需要提前作测试计划和做测试用例。让测试工作贯穿于始终。

喷泉模型

喷泉模型最大特点就是面向对象,正因为如此,所以喷泉模型有迭代和无间隙的特点。

快速应用开发模型RAD

RAD:称为快速应用开发。
瀑布模型和CBSD(Component-Based Software Development基于构建的软件开发模型)的综合开发模型。它包括业务建模,数据建模,过程建模,应用生成,测试与交付。
构件模型:构件具有可复用的价值。需要建立构件库并反复使用构件库中的构件。构件也可以称作组件。
构件标准有三个:CORBA,COM/DCOM,EJB。
构件组装模型:需求分析和定义,软件架构设计,构件库建立,应用软件构建,测试和发布。其中构件库包括了构件获取和构件管理

增量模型

在开发之初,用户对系统的功能并不了解,并且系统的功能会不断变更,针对这种情况,应该采用增量的开发模型。这是因为在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成。

三. 统一开发模型

在这里插入图片描述

概念说明

统一软件开发过程是一种基于面向对象技术的软件开发过程。

三个核心

其特点是用例驱动,以架构为核心,增量与迭代。
整个开发的过程是由用例来驱动的。用例贯穿于整个开发流程之中。用例是需求层面的东西,其实也可以理解为功能需求。用例不能决定架构,因为架构往往取决于非功能需求

四个阶段

统一软件开发过程定义了四种开发阶段,它们按照过程顺序分别是起始阶段,细化阶段,构建阶段和交付阶段,其中在构建阶段主要产生的文档有设计模型。

初始阶段

1.内容:
确定项目范围和边界
识别系统的关键用例
展示系统的候选架构
估计项目费用和时间
评估项目风险
2.成果物:
项目蓝图文档(核心需求,关键特征,主要约束)
用例模型,项目计划

细化阶段

分析系统问题领域
淘汰最高风险元素
完成架构设计

构造阶段

1.内容:
开发剩余构件
构件的组装与测试
2.成果物
UML模型,测试用例

交付阶段

1.内容
进行beta测试,制作发布版本
用户文档定稿,确认新系统
培训调整产品
2.成果物
可运行的软件产品,用户手册,用户支持计划。

四. 净室软件工程(★)

1.净室即无尘室,洁净室,也就是一个受控污染级别的环境。
2.使用盒结构规约(或形式化方法)进行分析和设计建模,并且强调将正确性验证而不是测试,作为发现和消除错误的主要机制。
3.使用统计的测试来获取认证被交付的软件的可靠性所必须的出错率信息。它是一种强调正确性的数学验证和软件可靠性的认证的软件工程模型,其目标和结果具有非常低的出错率。

五. 软件开发方法—逆向工程(★★)

1)逆向工程概念

软件的逆向工程是一个恢复设计的过程,从现有的程序中抽取数据,体系结构和过程设计信息。逆向工程的完备性可以用在某一个抽象层次上提供信息的详细程度来描述,在大多数情况下,抽象层次越高,完备性就越低。
逆向工程从源代码或目标代码中提取设计信息,通常在原软件生命周期的软件维护阶段进行。

2)逆向工程特点

逆向工程的特点是从已有的程序中抽取数据结构,体系结构和程序设计信息。它的流程为:
现有系统—>逆向工程—>考虑新需求—>正向工程—>新系统

3)四个级别

1.实现级
包括程序的抽象语法树,符号表,过程的设计表示
2.结构级
包括反映程序分量之间相互依赖关系的信息,例如调用图,结构图,程序和数据结构
3.功能级
包括反映程序段功能及程序段之间关系的信息,例如数据和控制流模型
4.领域级
包括反映程序分量或程序诸实体与应用领域概念之间对应的关系信息,例如实体关系模型

六. 敏捷开发

基本原则 短平快的会议,小型版本发布,较少的文档,合作为重,客户直接参与,自动化测试
适应性计划调整,结对编程,测试驱动开发,持续集成,重构。
敏捷中的动态系统开发方法强调以业务为核心,快速而有效地进行系统开发。

1)四大分类

自适应开发,极限编程,特征驱动开发,水晶方法

2)四大价值观

沟通,简单,反馈,勇气

3)5大原则

快速反馈,简单性假设,逐步修改,提倡修改,优质工作。

4)12个最佳实践

简单设计,测试先行,重构,计划游戏,小型发布,隐喻,结对编程,集体代码所有制,持续集成,每周工作40小时,现场客户,编码标准。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
位示图(Bitmap)是操作系统中的一个重要数据结构,用于记录存储设备中文件和空闲空间的分配情况。因此,系统分析师需要熟练掌握位示图的原理和应用,以便有效地进行存储管理和优化工作。 以下是位示图的一些重点和难点: 1. 原理:位示图采用位的方式来表示每个簇或扇区的使用情况,0表示空闲,1表示已分配。系统分析师需要了解位示图的数据结构、存储方式和读写操作等方面的原理。 2. 管理:位示图是文件系统中的重要数据结构,它记录了磁盘上每个簇或扇区的使用情况。系统分析师需要了解如何使用位示图来管理文件和空闲空间的分配情况,并掌握位示图的分配算法和回收策略。 3. 优化:位示图的优化是系统分析师需要解决的难点之一。优化的目标是提高存储空间的利用率和性能,减少位示图的存储空间和读写时间。系统分析师需要了解位示图的缺陷和优化方法,并根据具体的应用场景进行优化。 4. 安全:位示图是系统中的重要数据结构,需要保护其完整性和安全性。系统分析师需要了解位示图的安全性问题,如何防止位示图遭到破坏和篡改,以及如何进行备份和恢复操作。 综上所述,位示图是操作系统中的重要数据结构,系统分析师需要熟悉其原理、管理、优化和安全等方面的知识,以便有效地进行存储管理和优化工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进击的横打

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值