软考高项学习教程【第一阶段】:第1章-信息系统开发基础【考点笔记1】

2023-11-15

文章目录

前言

什么是软考高项?
软考高项指的是软考高级信息系统项目管理师,信息系统项目管理师属于软考高级资格考试,通过考试获得证书的人员,用人单位可根据工作需要从获得证书的人员中择优聘任相应专业技术职务。软考包含多个级别资格考试,信息系统项目管理师属于软考高级资格考试。

编写系列笔记目的?
最近报了个软考高项培训,为11月份第一次冲击高级信息系统管理师(高级项目经理)职业证书做准备。这个证书,作为职业证书的一种,可以个税抵扣,也可以作为阅历的加成,好处还是多多的,相比于近几年PMP证书考试的难度,这项考试难度更大覆盖更广,通过率也相对较低,好在它是国家承认的职业证书(PS:PMP并不是国家认可的职业证书,因此不能享受个税减免,以考代评等服务)。报培训班的目的呢,也是在有限的时间内,画出考点重点,在那么厚一本教材中,找到重点,方便在几个月的时间内系统性的备考,似乎一次过的人也是很少的,但争取早日过,奥力给!!!

附上官方教程PDF资源一份,信息系统项目管理师教程-第三版,提取码:tzqj。需要的朋友可以免费自取。

本笔记结合教程书籍目录与培训考点总结,按照教程章节的结构来编写。

一、信息系统开发基础

教程目录:

  • 1.1 信息系统与信息化
  • 1.2 信息系统开发方法
  • 1.3 常规信息系统集成技术
  • 1.4 软件工程
  • 1.5 新一代信息技术
  • 1.6 信息系统安全技术
  • 1.7 信息化发展与应用
  • 1.8 信息系统服务管理
  • 1.9 信息系统规划

1.1 信息系统与信息化

本节考试题型占比:考题点比重7-8个选择题
概要:

  • 信息系统
  • 信息与信息系统的概念
  • 信息系统的类型
  • 信息系统生命周期
  • 信息系统规划方法
  • 信息系统开发方法

1、信息系统建设:信息与信息系统的概念

信息:

定义1(控制论创始人维纳):信息就是信息,既不是物质也不是能量,是客观事物的基本存在形式之一。不是物质也不是能量。
定义2(香农-信息论奠基人):信息是有别于物质与能量的第三种东西,是对事物运动状态或存在方式的不确定性的描述。(用概率的方式进行描述的)

信息系统:

定义:信息系统是由计算机硬件、网络和通讯设备、计算机软件、信息资源、信息用户和规章制度组成的以处理信息流为目的的人机一体化系统

2、信息系统的类型(了解)

数据环境分类:数据文件、应用数据库、主题数据库、信息检索系统
应用层次分类:战略级(企业最高管理层)、战术级(企业中层经理及其管理部门)、操作级(服务型企业的业务部门)、事务级(企业的管理业务人员)

3、信息系统的生命周期(产品生命周期)【重要】

对应教程: 1.1.4 章节内容

信息系统的生命周期可简化为:

  • 系统规划(可行性分析&项目开发计划)、
  • 系统分析(需求分析)、
  • 系统设计(概要设计、详细设计)、
  • 系统实施(编码、测试)、
  • 运行维护等阶段

为了便于论述针对信息系统的项目管理,信息系统的生命周期可以简化为以下四个阶段:

  • 立项阶段(也叫系统规划,企业全局、形成概念、需求分析)
  • 开发阶段(项目经理介入阶段)
    • 总体规划:起始阶段,以立项阶段所做的需求分析为基础,明确:开发目标,总体结构,组织结构,管理流程,实施计划,技术规范
    • 系统分析:提供逻辑模型(需求模型)
    • 系统设计:根据分析结构提出实施方案
    • 系统实施:将设计阶段的成果,在计算机和网络上具体实现,即将设计文本变成软件体系
    • 系统验收
  • 运维阶段(通过验收、移交之后 )
  • 消亡阶段(更新改造、功能扩展、报废重建)
    在这里插入图片描述

4、信息系统规划方法

对应教程书:1.9 章节内容

信息系统规划方法:重点在于BSP-企业系统规划法。它是IBM提出的一种方法,主要用于大型信息系统的开发。BSP采取自上而下的系统规划,而实现是自下而上分步进行。
BSP是通过全面调查,分析企业信息需求,制定信息系统总体方案的一种方法
企业系统规划法(BSP):结合现有情况,明确未来开发方法
考点:考流程图
在这里插入图片描述

5、信息系统开发方法【考点】

对应教程书1.2 章节内容

常用的开发方法包括:结构化方法、面向对象方法、原型化方法、面向服务的方法等

5.1 结构化方法(上世纪80年代提出)

  • 结构:是指系统内各大个缅怀要求之间的相互联系、相互作用的框架。
  • 结构化方法,也称为“生命周期法”,是一种传统的信息系统开发方法。(结构化方法是目前最成熟,应用最广泛的工程化方法)
  • 方法组成:由结构化分析(SA),结构化设计(SD),结构化程序设计(SP)三部分组合而成。
  • **适用场景:**成熟的,稳定的,需求明确的项目。在开发过程中不能随意更改。适合于数据处理领域的问题。不适应于规模较大,比较复杂 的系统开发。
  • 特点
  • 1、开发目标清晰化。“用户第一”,与用户保持沟通,取得共识
  • 2、开发工作阶段化: 每个阶段的工作内容明确,注重过程控制
  • 3、开发文档规范化:每个阶段工作完成后,要按照要求完成相应的文档,保证各阶段衔接与系统维护工作的使得
  • 4、设计方法结构化:强调整体性和全局性,自顶向下分解,自底向下实现
PPT 中特点:
- 用户至上
- 严格区分工作阶段,每阶段有任务与成果
- 强调系统开发过程的整体性和全局性
- 系统开发过程工程化,文档资料标准化
- 自顶向下,逐步分解(求精)、模块化设计
  • 不足与局限性:
  • 开发周期长:因为要按顺序历经各个阶段,直到系统实施后,用户才能使用系统
  • 难以适应需求变化 : 用户需求变化 是不可避免的,而结构化方法要求在系统分析阶段明确需求
  • 很少考虑数据结构: 结构化方法是一种面向数据流的开发方法,比较活生生系统功能的分析与抽象,数据结构方法兼顾不多。

5.2、原型化法

  • **原型化方法:也叫快速原型法,原型法。**是一种根据用户初步需求,利用系统开发工具,快速的建立 一个系统模型展示 给用户,在此基础上与用户交流,最终实现用户需求的信息系统快速开发方法。

  • 原型:是系统的一个早期可运行版本,它反映最终系统的部分重要特性。

  • 分类:

    • 从最终结果来分:可分为抛弃式原型(指达到预期目的后,原型本身被抛弃 ),演化式原型(为开发增量式产品提供基础,逐步将原型演化成最终系统,主要用在必须易于升级和优化的场合,特别适用于Web项目)。
  • **应用场景:**适用于需求不明确,不断迭代的开发方法。对于分析层面难度大,技术层面 难度不大的系统,适合于原型法

  • 特点:

    • 1、使系统开发的周期缩短、成本和风险降低、速度加快、获得较高的综合开发效益
    • 2、以用户为中心来开发系统, 用户参与度高,增加了用户满意度
    • 3、有得于系统的运行与维护
  • 不足:

    • 1、开发环境要求高
    • 2、管理水平要求高:系统的开发缺乏统一的规划和开发标准,难以对系统的开发过程进行控制 。
      开发过程:
      在这里插入图片描述

5.3、面向对象方法

  • 面向对象方法(Object-Oriented, OO): 客观世界是由各种对象胶原蛋白的,任何事物都是对象。复杂的对象可由相对简单的各种对象以某种方式而构成,不同的对象组合及相互作用就构成了系统。
  • 特点:
  • 1、更好的复用性
  • 2、关键在于建立 一个全面、合理、统一的模式(用例模型和分析模型)
  • 3、OO方法也划分阶段,但系统分析,设计,实现这三个阶段之间界限变得不明确
  • 4、缩短开发周期
  • 不足:
  • 必须依靠一定的OO技术支持
  • 大型项目的开发上有局限性

一些大型信息系统的开发,通常是将结构化方法和OO方法结合起来。首先,使用结构化方法进行自顶向下的整体划分,再自底向上的用OO法进行开发。

5.4 面向服务的方法(了解)

  • 面向服务(Service-Oriented, SO)是一个较新的领域,有待进一步深入。

二、软件工程

对应教程书 1.4章节内容

软件工程:是指应用计算机科学、数学 及管理科学等原理,以工程化的原则 和方法来解决软件问题的工程,其目的是提高软件 生产率、提高软件质量、降低软件 成本。
IEEE对软件工程的定义:将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及上述方法的研究,即为软件工程。
组成部分:方法、工具、过程。
主要内容点:

  • 软件开发模型(项目生命周期模型。教程2.7章节内容)
  • 需求工程(需求分析。教程1.4.1 章节内容)
  • 软件设计
  • 软件测试
  • 软件运行与维护
  • 软件复用
  • 软件开发环境

2.1 需求工程(分析)

  • **软件需求:**是指用户对新系统在功能、行为、性能、设计约束等方面的期望。是指用户解决问题或达到目标所需的条件或能力。是系统或系统部件 要满足合同、标准、规范或其他正式规定文档所需具有的条件或能力。
  • 需求开发的过程有四个主要活动:
    • 1、需求获取:积极与用户交流,捕捉、分析和修正用户地目标系统的需求,并提炼出符合解决问题的用户需求,产生《用户需求说明书》
    • 2、需求分析:目的是对各种需求信息进行分析并抽象描述,为目标系统建立 一个概念模型
    • 3、需求定义:目标是根据需求调查和需求分析的结果,进一步定义准确无误的产品需求,产生《需求规格说明书》。系统设计人员将依据《需求规格说明书》开展系统设计工作。
    • 4、需求验证:也叫需求确认,指开发方和用户共同对需求文档评审,经双方对需求达成共识后做出书面承诺,使需求文档具有商业合同效果。实际工作中,通过需求评审和需求测试工作来对需求进行验证。
  • **需求分类:**六类
    • 1、业务需求:指反映企业或客户对系统高层次的目标要求,通常来自项目投资人、客户、客户单位管理人员、市场营销部,产品策划部等, 业务需求可确定 项目视图和范围。它描述了组织 为什么要开发一个系统,即组织希望达到的目标,使用前景和范围文档来记录业务需求,这份文档有时也被称为项目轮廓图或市场需求文档。
    • 2、用户需求: 描述用户的具体目标
    • 3、系统需求:从系统的角度来说明软件的需求。用于描述包含多个子系统的产品(即系统)的顶级需求:包括功能需求、非功能需求、设计约束
      • 3.1 功能需求:也叫行为需求,规定了开发人员必须在系统中实现的软件功能
      • 3.2 非功能需求:(性能需求)指系统必须具备 的属性或品质
      • 3.3 设计约束:限制条件或补充规约 ,通常是一些系统约束说明,如必须采用国有自主产权的数据库系统,必须运行在UNIX操作系统之下 等

需求分析涉及分析需求的过程,其目的如下:
1、检测和解决需求之间的冲突
2、发现软件的边界,以及软件与期环境如何交互
3、详细描述系统的需求,以导出软件需求

软件需求规格说明书(Software Requirement Specification, SRS)是需求开发活动的产物,编制该文档的目的是使项目干第人与开发团队对系统的初始规定有一个共同的理解 ,使这成为整个开发工作的基础。SRS是软件开发过程中最重要的文档之一,对于任何规模和性质的软件项目都不应缺少。
国家标准GB/T 8567 -2006中,规定SRS应用包括以下内容:范围,引用文件,需求,合格性规定,需求可追踪性,尚未解决的问题,注解,附录。

2.2 软件开发模型(项目软件生命周期模型)

见教程2.7章节内容,软件开发模型,又叫”项目生命周期模型“
软件开发模型:即方法的具体实例,一共9个模式

  • 瀑布模型 *
  • V模型 *
  • 原型化模型
  • 迭代模型
  • 螺旋模式*
  • 构建组装模型
  • 统一过程(RUP)
  • 喷泉模型
  • 敏捷方法

标星为重点掌握模型,其余了解即可

1、瀑布模型(SDLC)*

  • 瀑布模型的几个阶段:可行性分析(计划)、需求分析、软件设计(概要设计,详细设计)、编码(含单元测试)、测试、运行维护
  • 特点:
    • 从上一项开发活动接受该项活动的工作对象作为输入。(严格按顺便执行工作)
    • 利用这一输入,实施该项活动就完成的工作内容
    • 给出该项活动的工作成果,作为输入传给下一项开发活动(每阶段有成果产出并传递给下一阶段)
    • 对该项活动的实施工作成果进行评审。若工作成果得到确认,则继续进行下一项开发活动。否则返回前一项,甚至更前项的活动。(阶段存在返工可能 )

瀑布模型:是结构化开发方法的具体应用

  • 适应场景:只适用于需求明确,成熟稳定的项目

在这里插入图片描述
如上:

  • 每个阶段都有一定的成果,如设计阶段会产生文档到编码阶段,成为一个单向瀑布流
  • 每个阶段向上的箭头:每个阶段产生的成果可能不满足要求,因而需要返工

2、V模型 *

  • V模型的重要意义:它明确表明了测试过程中存在的不同的级别,并清晰的描述了这些测试阶段和开发阶段的对应关系
    • 单元测试:对应详细设计,验证软件单元是否按照详细设计说明来正确执行,即保证每个最小的单元能够正常进行。一般由开发人员来执行。
    • 集成测试:对应概要设计,检查 多个单元是否按照系统概要设计描述的方式协同工作。
    • 系统测试:对应需求分析,验证整个系统是否满足需求规格说明
    • 验收测试:对应用户需求,从用户的角度检查系统是否满足合同中定义的需求或用户需求
  • 特点:
    • 1、体现了开发和测试同等重要,左侧代表开发活动,右侧代表测试活动
    • 2、测试贯穿整个开发的每个阶段
    • 3、测试依旧是开发生命周期中的阶段
  • 应用场景: V模型适用于需求明确和需求变更 不频繁的情形

与瀑布模型相似,但每个阶段有对应的测试
注意:测试是贯穿整个开发流程的工作
本节重点:掌握每个阶段所对应的测试类型

在这里插入图片描述

3、迭代模型

在这里插入图片描述

  • **迭代模型:**如上图,水平方向为时间流向维度,从组织管理的角度,描述整个软件开发生命周期,分四个阶段:初始,细化,构造,移交。纵向为核心工作流,从技术角度描述迭代模型的静态组成部分。
  • 特点:
    • 图中阴影部分描述了不同的工作流,在不同的时间段内工作量的不同,几乎所有工作流在所有时间段都有工作量,只是大小不同。

4、螺旋模型

在这里插入图片描述

  • 螺旋模型:是一个演化软件过程模型,将原型实现的迭代特征与瀑布模型中控制 的和系统 化的方面结合起来。
  • 特点:
    • 在螺旋模型中,软件开发是一系列的增量发布。
    • 螺线代表随着时间推进的工作进展,四个象限标志每个周期所划分的四阶段:制订计划,风险分析、实施工程、客户评估。
    • 强调了风险分析
  • 适用场景:适用于庞大而复杂的,高风险的系统
  • 把螺纹拉开即是一条直线,且分为了多个瀑布过程。
  • 本质 : 结构化方法+原型方法的思路。(瀑布模型和快速原型模型的结合)
  • 特殊点:两条直线坐标,作用:将整个螺旋沿着螺线的迭代分为了四种活动:制定计划,风险分析,实施工程,客户评估
  • 强调软件开发过程中的”风险分析“,
  • 适合于:风险大,复杂的大型系统

5、原型化模型-构建组装模型(CBSD)

  • 面向对向方法对应的模型。
  • 模仿瀑布模型,但没有时间线介入
    在这里插入图片描述

6、统一过程

  • 面向对象化方法下的模型
    在这里插入图片描述

7、敏捷开发模型

敏捷开发,是一种应对快速变化 的需求的一种软件开发能力。 以人为核心、迭代、秩序渐进。更强调程序 员团队与业务专家之间的紧密协作 、面对面沟通、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化 的代码编写和团队组织方法,也更注重软件开发中人的作用。
Scrum是一种迭代式增量软件开发过程,常用于敏捷软件开发。

  • **适用于:**小团队,小规模项目,小步快跑模型
  • **4大价值观:**沟通、简单、反馈、勇气
  • **5大原则 :**快速反馈、简单性假设、逐步修改、提倡更改、优质工作
  • 23个最佳实践:
    • 小版本、规则 游戏、现场客户
    • 隐喻、简单设计、重构
    • 测试欢动开发、持续集成、结对编辑
    • 代码共有、编程标准、每周40小时工作

3、架构设计

  • 架构设计:即需求分配,将满足需求的职责 分配到组件上。主要设计宏观体系结构。为软件系统提供了一个结构、行为和属性的高级抽象,由构件的描述、构件的相互作用、指导构件集成的模式以及这些模式的约束组成。
  • **软件架构:**是一个描述软件系统的子系统和组件,以及他们之间相互关系的学科
  • **架构视图:**一个架构视图是对于从某一视角或某一点上看到的系统所做的简化描述,描述中涵盖 了系统的某一特定方面,而省略了与此方面无关的实体。什么是软件视图

Phillippe Kruchten的4+1视图方法

4、软件设计

软件设计包含3个过程:

  • 1、架构 设计:架构模式,宏观设计
    - 逻辑视图(满足功能需求)
    - 过程视图(并发问题)
    - 组件视图(实现问题)
    - 部署视图(分布问题)
  • 2、概要设计
  • 3、详细设计(设计模式、微观),以下三个原则 要掌握(*)
    - 自顶向下 ,逐步求精
    - 信息隐蔽(为了模块独立)
    - 模块独立(高内聚、低耦合)

4.1 典型架构

典型架构模式有以下7种:

  • 管理/过滤器:有助于快速定位错误(管理-连接过滤器,不改变数据;过滤器-处理构建,可以改变数据)
  • 面向对象模式:为了复用性
  • 事件驱动模式
  • 分层模式:把复杂问题分层解决
  • 知识库模式:复杂版的事件驱动 模式
  • 客户机/服务器模式(C/S;B/S):C/S模式 维护验证,局域网,安全性差
  • 面向服务的架构 :SOA架构,高内聚低耦合

4.2 测试原则与类型

1、测试原则:

  • 尽早、不断的进行测试
  • 程序员避免测试自己设计的程序
  • 既要选择有效、合理的数据,也要选择无效、不合理的数据
  • 修改后应进行回归测试
  • 尚未发现的错误数量 与该程序已发现的错误数成正比

2、测试类型:
按“是否需要执行”可以将测试分为2大类:

  • 动态测试(需要执行程序):
    • 黑盒测试法:通过输入,输出 判断。特点:等价类划分,边界值划分,错误推断,因果图。(不了解内部结构
    • 白盒测试法:特点:语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组合覆盖,路径覆盖。(了解内部结构的前提下进行的
    • 灰盒测试法:不常用
  • 静态测试(不需要执行程序):
    • 桌前检查
    • 代码走查
    • 代码审查(审计)

系统集成项目管理工程师教程3.3内容:
从是否关心软件内部结构和具体实现的角度划分白盒测试,黑盒测试,灰盒测试。
从是否执行程序 的角度划分静态测试和动态测试
从软件开发的过程按阶段划分有:单元测试,集成测试,确认测试,系统测试,验收测试

3、测试阶段

根据软件项目生命周期V模型中可以将测试分为如下阶段:

  • 单元测试:测模块接口、局部数据结构、边界条件、独立的路径、错误处理(测内部)
  • 集成测试:模块间接接口和通信
  • 系统测试:包括恢复测试、安全性测试、强度测试、性能测试、可靠性测试、和安装测试
  • 验收测试:有效性测试、软件配置审查、验收测试

其他测试:

  • 回归测试:发现并解决问题后进行
  • 负载测试:按设计原则 进行测试,没要测性能
  • 压力测试:测系统能承担的最大能力

4、测试管理

测试管理过程包括:制定测试计划及用例,执行测试,发现并报告缺陷,修正缺陷,重新测试
测试管理分类:

  • 测试团队管理:根据不同业务分
  • 测试计划管理
  • 错误(缺陷)跟踪管理
  • 测试件管理

4.3 系统运行与维护

软件维护是生命周期的一个完整部分。可以将软件维护定义为需要提供软件支持的全部活动,这些活动包含在(1)交付前完成的活动,以及(2)交付后完成的活动。交付前完成的活动包括交付后运行的计划·维护计划等,交付后的活动包括软件修改、培训、帮助资料等。

系统运维分为4类:

  • 改正性维护(25%):指在使用过程中发现了隐蔽的错误后,为了诊断和改正这些隐蔽错误而修改软件的活动。该类维护一般占总维护工作量的25%
  • 适应性维护(20%):指为了适应变化 了的环境而修改软件的活动。该类维护一般占总维护工作量的20%
  • 完善性维护(50%):指为了扩充或完善原有软件 的功能或性能而修改软件 的活动。一般点总维护工作量的50%
  • 预防性维护(5%):指为了提高软件的可维护性和可靠性,为未来的进一步改进打下基础而修改软件的活动。

4.4 软件复用

软件复用是指利用已有软件 的各种有关知识构造新的软件,以缩减软件开发和维护的费用。软件复用是提高软件生产力和质量的一种重要技术。
分类:

  • 代码的复用
  • 设计的复用
  • 分析的复用
  • 测试信息的复用

4.5 软件开发环境及过程管理(了解)

开发环境:

  • 建模工具(Rational Rose)
  • 设计工具(PowerDesign,ERWin)
  • 开发工具(VisualStudio.NET,Eclipse)
  • 测试工具(LoadRunner)
  • 项目管理工具(Project,Clearcase,VSS,CVS)

软件过程管理:(集成了过程管理和项目管理,包括以下6个方面)

  • 启动和范围定义
  • 软件项目计划
  • 软件项目实施
  • 评审和评价
  • 关闭
  • 软件工程度量

三、面向对象技术

此节包含以下三个部分:
1、面向对象基本概念
2、UML
3、面向对象分析与设计

3.1 基本概念

面向对象技术有以下几个概念:

  • 对象
  • 抽象
  • 封装
  • 继承与泛化
  • 多态(*):指两个或多个属于不同类的对象,对于同一个消息(方法调用)作出不同响应的方式。它是一种方法,这种方法使得在多个类中可以定义同一操作或属性,并在每个类中可以由不同的实现。使得一个属性或变量在不同的时期可以表示 不同类的对象。
  • 接口
  • 消息:可以理解为方法调用(函数)
  • 组件
  • 模式和复用

面向对象设计的7大原则(了解):

  • 单一职责原则 :设计目的单一的类
  • 开放、封闭原则:对扩展开放,对修改封闭
  • 李氏替换原则:子类可以替换父类
  • 依赖倒置原则:要依赖于抽象,而不是具体实现,针对接口编程,不要针对实现编程
  • 接口隔离原则:使多个专门接口比使用单一的总接口要好
  • 组合重用原则:要尽量使用组合,而不是继承关系达到重用目的
  • 迪米特原则 (最少知识法原则):一个对象应对其他对象有尽可能少的了解。

3.2 UML

UML:UML 是一种定义良好、易于表达、功能强大旦普遍适用的建模语言。是面向对象分析的重要表示方法。它的作用域不限于支持OOA和OOD,还支持从需求分析开始的软件开发全过各。

1、UML的结构包括:

  • 构造块:3种基本的构造块——事物,关系、图。(事物是UML的重要组成部分,关系把事物紧密 联系在一起,图是多个相互关联的事物的集合)
  • 规则 :是构造块如何放在一起的规定
  • 公共机制:指达到特定目标的公共UML方法。包括:规格说明(详细说明)、修饰、公共分类、扩展机制

2、UML中的关系:

  • 依赖:两个事物之间的主义关系,其中一个事物发生变化会影响另一个事物的主义
  • 关联:关联描述一组对象之间连接的结构关系
  • 泛化:是一般化和特殊化的关系,描述特殊元素的对象可替换一般元素的对象
  • 实现:是类之间的语义关系,其中的一个类指定了由另一个类保证执行的契约。

UML的特征:

  • 可视化的建模语言
  • 面向对象分析与设计的一种标准表示
  • 允许任何一种过程和方法是用它
  • 简单并且可扩展
  • 强调重用(架构、框架、模式和组件)

3、UML2.0的图形分类:

  • 用例图:特点-有客户元素。描述一组用例 、参与者与它们之间的关系
  • 顺序图/序列图:强调消息的时间次序。(是一种交互图,但有强调时间)
  • 通信图/协作图:强调收发消息的对象或参与者的结构组织。
  • 定时图*:强调消息跨越不同对象或参与者的实际时间,
  • 状态图:有状态,有条件等元素。描述一个状态机,它由状态、转移 、事件和活动组成。
  • 活动图:强调对象的流转关系。将进程或其他计算结构展示为计算内部一步步的控制和数据流。
  • 交互概览图*
  • 类图:描述一组类、接口、协作 和它们之间的关系。常在OO系统的建模中
  • 对象图:描述一组对象及它们之间的关系。
  • 包图*:描述由模型本身分解而成的组织单元,以及它们之间的依赖关系。
  • 组合结构图*:描述结构化类的内部结构,包括结构化类与系统其余部分的交互点
  • 构件图:描述一个封闭的类和它的接口、商品以及由内嵌的构件和连接件构成的内部结构
  • 部署图:带服务器,TCP/IP的图
  • 制品图*:描述计算机中一个系统的物理结构。包括文件、数据库和类似的物理比特集合。

UML图形描述之间的关系
在这里插入图片描述

3.3 面向对象分析技术(OOA)

面向对象分析阶段的核心工作是建立 系统的用例模型与分析模型。
OOA:Object Orient Analyse,面向对象分析
SA:Structural Analyse,结构化分析

1、用例模型
构建用例模型一般需要经历四个阶段:

  1. 识别参与者
  2. 合并需求获得用例
  3. 细化用例描述
  4. 调整用例模型:利用用例之间的关系来调整用例模型。(关系主要有:包含、扩展、泛化)

2、分析模型

  • 定义概念类
  • 识别类之间的关系:包括依赖,关联,聚合,组合,泛化,实现关系。
  • 为类添加职责
  • 建立交互图

下图描述类之间的关系表示 :
在这里插入图片描述
3、面向对象分析与设计
步骤:

  • 发现角色/参与者
  • 发现用例
  • 建立 用例模型
  • 进行领域分析
  • 建立对象-关系模型
  • 建立 对象-行为模型
  • 建立 功能模型

目标:

  • 描述用户需求
  • 建立软件设计基础
  • 定义可被确认的需求

面向对象设计分类:

  • 用例设计
  • 类设计
  • 子系统设计

3.4 信息系统开发基础【重点】

1、软件质量保证与质量评价
软件:是计算机程序及其有关的数据和文档,也包括固化了的程序
**软件质量:**指软件产品中能满足给定需求的各种特性和和总和。这些特性称做质量特性,包括:功能特性,可靠性,时间经济必,资源经济性,可维护性和移植性等。
软件质量管理过程:

  • 质量保证过程
  • 验证过程:
  • 确认过程:
  • 审计过程:指评价软件产品
  • 评审过程

验证是指确定软件开发周期中一个给定阶段的产品是否达到上一阶段确定的需求的过程
**确认:**指在软件开发过程结束时对软件进行评价以确定它是否和软件 需求相一致的过程【重要】
**测试:**是指通过执行程序 来有意识地发现程序 中的设计错误和编码错误的过程。测试是验证和确认的手段之一
**审计:**指评价软件产品和过程对于设定规则 、标准、流程等的遵从性。【背下来】

2、软件质量保证与质量评价

  • 评审对现有的或提出项目成果所做的正式评估和审查,基目的是找出可能会影响项目产品、过程或服务工作的适用必和环境方面的缺陷,并制定补救措施,以及找出在性能、安全性和经济方面的可能 的改进。
  • 评审分类:
    • 技术评审:目的是评价软件 产品,以确定其对使用意图的适合性
    • 管理评审:目的是监控进展 ,决定计划和进度的状态,或评价用于达到目标所用管理方法的有效性

3、软件 质量保证的主要职责 是?

  • 检查 开发和管理活动是否与已定的过程策略,标准和流程一致,检查 工作产品是否遵循模板规定的内容和格式。检查 关键交付物的质量,是质量控制 要做的事情 。

3.5 GB/T 16260.1-2006质量模型 【重要】

在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软考高项学习教程【第一阶段】:第1章-信息系统开发基础【考点笔记1】 的相关文章

  • 软考-软件设计师-数据库1-体系结构-模型-关系代数-规范化

    1 数据库技术基础 2 基本概念 数据库系统DBS 是一个采用了数据库技术 有组织地 动态地存储大量有关数据 方便多用户访问的计算机系统 其由下面四个部分组成 数据库 统一管理 长期存储在计算机内的 有组织的相关数据的集合 硬件 构成计算机
  • 2016年10月—信息安全工程师—上午综合知识(26-30)

    信安16年10月 试题26 26 已知DES算法的S盒如下 如果该S盒的输入110011 则其二进制输出为 A 0110 B 1001 C 0100 D 0101 尚大参考答案 C 解析 本题考查考生对DES算法中S 盒的运用 DES算法是
  • 综合布线系统6个独立的子系统介绍

    综合布线系统是一个用于传输语音 数据 影像和其他信息的标准结构化布线系统 是建筑物或建筑群的传输网络 它使语言和数据通信设备 交换设备和其他信息管理系统彼此相连接 综合布线的热物理结构一般采用模块化设计和分层星型拓扑结构 系统结构有6个独立
  • 软考考点之Mccabe度量计算及路径覆盖

    McCabell 主要是度量程序的复杂度 环形复杂度 度量程序的逻辑复杂度 描绘程序控制流的流图之后 可以用下述3种方法中的任何一种来计算环形复杂度 1 流图中的区域数等于环形复杂度 2 流图G的环形复杂度V G E N 2 其中 E是流图
  • 高级信息系统项目管理(高项)论文——质量管理

    1 如果您想了解如何高分通过高级信息系统项目管理师 高项 你可以点击一下链接 高级信息系统项目管理师 高项 高分通过经验分享 高项经验 2 如果您想了解更多的高级信息系统项目管理 高项 软考 原创论文 您可以点击以下链接 高级信息系统项目管
  • 软件设计师上午题——第五章 知识产权

    软件设计师备考 知识产权 一 著作权 1 知识产权基础知识 2 计算机软件著作权 3 职务作品 4 委托开发 5 计算机软件著作权侵权 二 商业秘密权 1 计算机软件的商业秘密权 三 专利权 1 专利权申请 四 商标权 1 商标注册 五 杂
  • 软件设计师学习笔记9-进程调度

    目录 1 PV操作 1 1进程的同步与互斥 1 1 1互斥 1 1 2同步 1 2 PV操作 1 2 1信号量 1 2 2 PV操作的概念 2 信号量与PV操作 2 1 PV操作与互斥模型 2 2 PV操作与同步模型 2 3 互斥与同步模型
  • 从程序员到项目经理(一)

    从程序员到项目经理 这个标题让我想起了很久以前一本书的名字 从Javascript到Java 然而 从Javascript到Java充其量只是工具的更新 而从程序员到项目经理 却是一个脱胎换骨的过程 从Javascript到Java 是一个
  • 【软考-中级】系统集成项目管理工程师-计算题

    系统集成项目管理工程师 二 计算题 题型一 EMV 预期货币价值 题型二 加权系统 题型三 自制和外贸决策 采购管理 题型四 沟通渠道 沟通管理 题型五 投资回收期 回收率 题型六 进度 网络计算题 学习章节 软考 中级 系统集成项目管理工
  • 系分 - 结构化方法【概念】

    个人总结 仅供参考 欢迎加好友一起讨论 文章目录 系分 概念 结构化方法 结构化分析 SA Structured Analysis 结构化设计 SD Structured Design 结构化程序设计 SP Structured Progr
  • 关于项目跟进

    为什么写这个 因为之前自己同时在跟进几个项目 还在做新需求 没有忙过来 自己觉得自己项目那块没有抽出时间做好 所以列下看看哪些流程 是自己需要注意的 这都谈不上项目管理 只能说项目跟进 距离项目经理更是差得远 总之后面会补上这块的知识 激励
  • 看板的六大实践学习总结

    这次活动主要是学习看板的实践 看板的六大实践介绍如下 可视化 可视化价值项和价值流 story和它的流动 将问题和 瓶颈也在看板上可视化 可激发团队协作 限制在制品 通过限制各阶段的在实现的story 来加速流动 避免造成 交通 阻塞 考虑
  • 【信息系统项目管理师】十大管理——1、整合管理

    十大管理 1 整合管理 项目背景 项目概况 2021年6月 我有幸作为项目经理主持了 某省广电网络工程资源管理系统 项目的建设工作 该项目中标金额为888万元 建设工期为5年 该项目是该省广电网络公司的重点项目 该项目整合并条理化广电运营商
  • 软考-嵌入式系统设计师-笔记:计算机系统基础知识

    文章目录 数制及其转换 数据的表示 原码 反码 补码 移码 浮点数 奇偶校验 CRC校验 海明校验 计算机组成及主要部件的基本工作原理 计算机硬件组成 CPU组成 存储器 计算机体系结构 冯诺依曼结构和哈佛结构 CISC和RISC 流水线技
  • 【新版】系统架构设计师 - 案例分析 - 总览

    个人总结 仅供参考 欢迎加好友一起讨论 架构 案例分析 总览 新旧大纲对应 旧版 新版 系统规划软件架构设计设计模式系统设计系统建模分布式系统设计嵌入式系统设计系统的可靠性分析与设计系统的安全性和保密性设计 系统计划信息系统架构的设计理论和
  • 软件设计师-UML基础教程

    场景 针对UML1 5各种模型图的构成和功能进行说明 UML概述 UML简介 UML Unified Modeling Language 为面向对象软件设计提供统一的 标准的 可视化的建模语言 适用于描述以用例为驱动 以体系结构为中心的软件
  • [软考笔记]存储管理——页式,段式,段页式

    页式存储 4kb为1页 考点 逻辑地址和物理地址之间的转换 1 先区分逻辑地址哪一部分是页号 哪一部分是页内地址 2 根据页内地址确定物理地址 后面那块 3 再根据页号查找块号 4 拼接起来就是物理地址 解题过程 1 将页面大小转化为二进制
  • 软考-操作系统

    考点梳理 进程管理 考点1 进程的状态 考法分析 本考点主要考查形式主要是根据图示判断相关状态位置或状态变迁条件 要点分析 操作系统三态模型如下图所示 操作系统五态模型 备考点拨 掌握操作系统三态模型 五态模型的状态位置及其状态变迁条件 考
  • 软考-嵌入式系统设计师-笔记:历年专业英语题

    文章目录 2020年 2019年 2018年 2017年 2016年 2015年 2014年 2013年 2020年 题目 加粗的为各题答案 Fog computing is a mid layer between cloud data c
  • 软考考试多少分通过?

    根据 人力资源社会保障部办公厅关于单独划定部分专业技术人员职业资格考试合格标准有关事项的通知 人社厅发 2022 25号 的相关规定 软考考试在一般情况下是需要达到45分才能及格的 但在一些特定地区却有不同的要求 这些地区包括国家乡村振兴重

随机推荐

  • ARM64撬开逆向大门

    图片
  • QML和QWidget混合开发(初探)

    为什么要搞混合开发 Qml已经越来越成为Qt开发的主流 相比与QWidget的界面开发更快 也更容易上手 实现效果上也更好 但老旧项目都是QWidget的框架 大家不可能一次性的把QWidget项目界面全部换成qml 这时候我们可以将新开发
  • python条件运算符_Python中的条件运算符

    python条件运算符 如果条件运算符 if else conditional operator Just like other programming languages Python also provides the feature
  • Spring全家桶

    Spring Spring的架构体系 spring是一个基于java语言写的一个轻量级的一站式解决方案框架 它的最底层是核心容器 在核心容器上面提供了AOP这些中间层技术 然后再往上就可以去集成别人的技术 比如像Dao层的MyBatis J
  • 银河麒麟V10 wireshark安装说明(断网离线)

    下载离线安装包 链接 https pan baidu com s 11QFRmCGlIJrJaiKcHh9Hag pwd u9wv 提取码 u9wv 安装步骤 tar zxvf wireshark tar gz cd wireshark s
  • python连接wss走自己的代理

    我开了一个vpn 然后用py写wss连接 怎么才能让他这个连接走我系统代理呢 vpn 开9090端口 set https proxy socks5 127 0 0 1 9090 set http proxy socks5 127 0 0 1
  • 类的六大默认构造函数

    缺省的构造函数和析构函数 等于放弃了自己初始化和清除的机会 缺省的拷贝构造和缺省的赋值函数 采用 位拷贝和值拷贝 若类中出现指针时 这两个函数出错 class String public String const char str NULL
  • 整理Rapid object detection using a boosted cascade of simple features论文中的要点

    整理Rapid object detection using a boosted cascade of simple features论文中的要点 使用haar特征 在24 24像素的框内有180000以上不同的haar特征 怎么算的 终于
  • openwrt路由器-timeout while waiting for PADS.

    最近使用openwrt路由器进行PPPoE拨号的时候 经常出现 远程服务器无响应 的错误 log打印日志如下 pppoe Timeout waiting for PADS packets Unable to complete PPPoE D
  • c语言错误不允许使用不完整的类型,C语言中的void和void*的定义及用法

    void void最常见的用法 就是在函数中限定函数的参数和返回值的 void draw void 表明函数draw没有参数也没有返回值 void在别的的地方的应用我也没见过 实际上 如果把void 和int char double等类型放
  • 「猜题第一篇」2019年大学生电子设计竞赛

    点击上方 大鱼机器人 选择 置顶 星标公众号 福利干货 第一时间送达 昨天出了清单之后 第一时间我是懵逼的 脑子里想的是 这都是啥啊 后面仔细的理了一下 关于三脚架和小车的用处 极大概率三脚架会是和无人机使用 但也不排除 和小车一起使用然后
  • MYSQL8-快速生成表结构(用于生成文档)

    MYSQL8 快速生成表结构 用于生成文档 SELECT rownum rownum 1 AS 序号 column name AS 代码 CASE WHEN column comment IS NULL OR TRIM column com
  • C语言技巧 ----------调试----------程序员必备技能

    作者前言 作者介绍 作者id 老秦包你会 简单介绍 喜欢学习C语言和python等编程语言 是一位爱分享的博主 有兴趣的小可爱可以来互讨 个人主页 小小页面 gitee页面 秦大大
  • 解决端口被占用问题,安装MySQL出现端口被占用

    1 快捷键 Win R 打开命令提示符 输出命令 netstat ano 目的 查看占用3306端口的 PID 值 上图可以看出 占用3306 窗口的 PID值为 13620 2 打开任务管理器 点击 详细信息 选中该程序 鼠标右键 点击
  • 密度聚类DBSCAN、主成分分析PCA算法讲解及实战(附源码)

    需要源码请点赞关注收藏后评论区留言私信 一 基于密度的聚类 基于密度的聚类算法的主要思想是 只要邻近区域的密度 对象或数据点的数目 超过某个阀值 就把它加到与之相近的聚类中 也就是说 对给定类中的每个数据点 在一个给定范围的区域中必须至少包
  • 操作系统最全面试题汇总

    1 操作系统的特点 共享 资源可被多个并发执行的进程使用 并发 可以在同一时间间隔处理多个进程 需要硬件支持 异步 进程走走停停 每次执行的速度不一样 但是要保证进程每次执行结果相同 虚拟 将物理实体映射成为多个虚拟设备 操作系统的组成 驱
  • Python中的pandas库简介及其使用

    pandas模块 pandas是一个强大的分析结构化数据的工具集 它的使用基础是Numpy 提供高性能的矩阵运算 用于数据挖掘和数据分析 同时也提供数据清洗功能 Pandas中常见的数据结构有两种 Series DateFrame 类似一维
  • 股票相关信息

    股票开头数字代表什么 600 开头的股票是上证 A股 属于大盘股 其中 6006 开头的股票是 最早上市的股票 6016开头的股票为大盘蓝筹股 900 开头的股票是上证 B股 000 开头的股票是深证 A股 001 002开头的股票也都属于
  • C++11尝鲜:右值引用和转发型引用

    C 11尝鲜 右值引用和转发型引用 2013 10 05 19 52 5979人阅读 评论 4 收藏 举报 分类 C 33 版权声明 本文为博主原创文章 未经博主允许不得转载 目录 右值引用 为了解决移动语义及完美转发问题 C 11标准引入
  • 软考高项学习教程【第一阶段】:第1章-信息系统开发基础【考点笔记1】

    文章目录 前言 一 信息系统开发基础 1 1 信息系统与信息化 1 信息系统建设 信息与信息系统的概念 2 信息系统的类型 了解 3 信息系统的生命周期 产品生命周期 重要 4 信息系统规划方法 5 信息系统开发方法 考点 5 1 结构化方