2015上半年软件设计师考点,难点3

晴天彩虹 晴天彩虹     2022-08-11     412

关键词:

软件维护

软件交付后。

占整个生存周期工作量的70%以上,代价极高

类型:

  1.正确性维护(错误)

  2.适应性维护(外部环境、数据环境、市场、管理需求)

  3.完善性维护(新的功能、性能)

  4.预防性维护(可维护性、可靠性、未来变化)

    

  可维护性:被理解、校正、适应、增强功能的难易程度

  度量:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性、效率

    方法:质量检查表;质量测试、质量标准;

  提高可维护性:明确的目标、优先级;先进的技术、工具;明确质量保证;选择可维护的程序语言;改进文档;开发时考虑维护

  非结构化维护:只有程序代码,没有设计文档、测试文档

  结构化维护:有完整的软件配置,从评价文档开始

  维护量因素:系统大小;程序设计语言;系统年龄;数据库技术的应用;先进的软件开发技术;其他;

  文档:决定性因素,比代码更重要。

    分类:用户文档、开发文档、管理文档、系统文档

  软件再工程:重构

    

    库存目录:分析哪些需要再工程;

    逆向工程:更高的抽象层次,抽取设计信息。根据以存在的产品反推设计数据的过程

      

    正向工程:新功能、高性能

    重构:调整程序代码,改善质量、性能、设计模式、架构、扩展性、维护性。不修改体系结构,关注设计细节、局部数据结构

  项目管理:计划、组织、协调、控制

    运用:知识、技能、工具、技术

    5要素:技术、方法、团队建设、信息、沟通

    错误管理

    风险管理:危机管理、失败处理、风险缓解、预防、消灭根源

      包括:风险评估(识别、分析、优先级)、风险控制(管理、化解、监控)

    人员管理:

  项目度量:软件度量、质量度量、继承度量

  风险管理:贯穿整个项目过程

数据库

数据依赖

  1.函数依赖:Functional Dependency,FD。

    平凡函数依赖、非平凡函数依赖

    

    完全函数依赖、部分函数依赖

         

    传递函数依赖    

  2.多值依赖:Multivalued Dependency,MVD。

    “1:0…*”,1对多。

    只要知道了R上的一个多值依赖X→→Y,就可以得到另一个多值依赖X→→Z,而且X、Y和Z是U的分割;“(2)”说明多值依赖是函数依赖的某种推广,函数依赖是多值依赖的特例

    

  3.其他

  候选码:

    

  主属性、非主属性

    

  全码:

    

  外部码:

  范式种类:

         

      1NF:属性不可分

      2NF:非主属性完全依赖与码

              

      3NF:非主属性之间不依赖

          

      BCNF:主属性之间不依赖

             

      4NF:

        

  规范化:

    目的:消除插入、删除异常、修改复杂、数据冗余

    实质:概念的单一化

    基本思想:逐步消除数据依赖中不合适的部分

    

    注意:

      

推理规则:

  1.自反律

    

  2.增广律

        

  3.传递律

    

  4.合并规则:     1,3可证

  5.伪传递规则:  2,3可证

  6.分解规则:   1,3可证

闭包

  

覆盖=等价

  

极小函数依赖集=最小函数依赖集=最小覆盖

  结果:不唯一

      

分解:

  方法不唯一,关系模式等价

  函数依赖:减轻、解决各种异常情况

  无损连接:与自然连接的结果相等

    分解不丢失信息;不一定可以解决插入异常、删除异常、修改复杂、数据冗余……问题

      

人工智能

求最优解、*似最优解方法:

  1.枚举法:适合枚举空间小的

  2.启发式算法:找到特有的启发式规则

  3.搜索算法:在可行解集合的一个子集进行搜索

    

遗传算法:

  自适应全局优化概率搜索算法。获取*似最优解、满意解。

  本质:生物的遗传、进化过程的模拟

  特点:强适应力、高优化力

    定义:

    Xi:一个遗传基因;

    等位基因:所有可能取值。

  遗传算子:搜索最优解。类似:染色体之间的交叉、变异

    选择:Selection。根据个体的适应度,按一定的规则、方法

    交叉:Crossover。交叉概率

    变异:Mutation。变异概率

  特点:

    1.以决策变量的编码最为运算对象:而非决策变量的值

    2.直接以目标函数值作为搜索信息:个体适应度。而非函数的导数值

    3.同时使用多个搜索点的搜索信息:而非单个搜索点

    4.使用概率搜索技术:自适应概率搜索技术,而非确定性的搜索方法。概率收敛于最优解。交叉概率+变异概率

  应用:函数优化、组合优化、生产调度问题、自动控制、机器人学、图像处理、人工生命、遗传编程、机器学*

  改进:

    1.自适应变异:防止“*亲繁殖”。双亲差异小,选取较大的变异率(增强搜索能力);双亲差异大,选取较小的变异率(防止破坏优良个体)

    2.部分替代法:部分个体被新个体取代,其他部分个体直接进入下一代。

    3.优秀个体保护法:一定数量的最优个体,直接进入下一代

    4.分布式遗传算法:分为若干个子群,相对独立、封闭(保证搜索的充分性、全局最优性);定期一定比例的迁移(防止向局部最优收敛)

基本遗传算法:Simple Genetic Algorihms ,SGA

  只使用选择算子、交叉算子、变异算子。三种基本遗传算子

  固定长度的二进制符号串:表示群体中的个体

  等位基因:{0,1}。

  1.染色体编码方法

  2.个体适应度评价:确定被遗传到下一代群体中的概率,正比。适应度:非负值,可转换

  3.遗传算子:

    比例选择算子:有退还随机选择、赌盘选择。

    单点交叉算子:最常用,最基本。两两配对;随机交叉点;交叉互换染色体

    基本位变异算子:概率选择变异点;基因值取反;

          

  4.基本遗传算法的运行参数

    

  注意:

    

蚁群算法:

  模拟:蚁群搜索食物源的寻优能力。个体间的信息交流、协作。正反馈现象

    

  解决:离散系统优化问题。随机搜索算法。利用整体信息

  1.适应阶段:候选解积累的信息,不断调整自身结构

  2.协作阶段:信息交流,产生更好的解

  优点:不需任何先验知识,随机选择路径。随着对解空间的“了解”,趋向最优

  1.记忆:禁忌列表,随时间,选择动态调整

  2.信息素通信:

  3.集群活动:群体智能建立路径选择机制。自催化、正反馈,增强型学*系统

  算法:

    1.蚁环算法:整体信息

      

    2.蚁量算法:局部信息

      

    3.蚁密算法:局部信息

      

  信息素更新:

    1.离线方式:同步更新。统一访问完后,统一对残留信息进行更新

      单蚂蚁离线更新:第s只蚂蚁完成对N个城市的访问后,对路径上的残留信息进行更新。记忆信息量相对较少

      蚁群离线更新:M只蚂蚁全部完成N个城市的访问后,统一对残留信息进行更新

    2.在线方式:异步更新。每执行一步,马上回溯更新线路上的信息素。记忆信息量最少

  相关参数:

    

  终止条件:

    1.给定的外循环最大数目

    2.最优解连续K次相同而停止的规则(算法已收敛,不需继续)

    3.目标控制规则。优化问题的下界、误差值。

  

  离散蚁群算法:

    包括:最优解保留策略蚁群系统、蚁群系统、最大最小蚁群系统、自适应蚁群算法……

    适合:离散优化问题。不能直接求解连续优化问题

    概念:路径、节点的生成;转移概率;能见度指标;信息素更新(局部、全局)

  

粒子群算法:Particle swarm optimization,PSO

  本质:群体智能的进化

  模拟:鸟群捕食行为。社会群体中的信息共享机制

  特点:算法简单,容易实现

  应用:函数优化、神经网络训练、模式分类、模糊控制……

  极值:

    1.个体极值(pbest):粒子本身所找到的最好解

    2.全局极值(gbest):整个粒子群历代搜索过程中的最优解

  更新速度:动量(多样化)、个体认知(集中化)、社会认知(集中化)、

      

  参数:

      

    

  算法:

    

  改进算法:

    1.惯性权重法:

      惯性权重大,加强全局探测能力;惯性权重小,加强局部搜索能力。直接影响全局搜索能力

       适合:多峰函数。平衡猴脸的全局性、收敛速度

      (1)线性调整法:迭代次数增加,惯性权重线性下降。

         权重线性下降的粒子群算法(Linearly Decreasing Inertia Weight,LDW)。

          

      (2)模糊调整法:构造模糊推理机来动态修改惯性因子

        实现较困难,性能更好

        性能评测:CBPE,the Current Best Performance Evaluation

          

  2.收敛因子法:

    适合:单峰函数,速度限制放松

    

人工神经网络算法

  特点:从环境中学*,*似于人类的学*能力

  模拟:生物神经系统。从外界环境学*知识;突触全值存储知识

    

  神经元:

    

    特点:

      

    分类:阈值型、S型、分段线性、概率型

  激活函数

  模型:分层网络、相互连接型网络

  信息处理:执行阶段、学*阶段

  学*方法:有导师学*(有监督学*)、无导师学*(无监督学*)、灌输式学*(“学*”是“死记硬背”)

    

  学*规则:各神经元的连接权值按一定的规则调整

    分类:

      

  循环控制:循环次数控制法、分阶段迭代次数控制法、精度控制法、综合控制法

  前向式神经网络算法:

    二值函数

    感知器算法:有导师学*

    适合:简单的分类问题

  BP神经网络算法:

    S型的对数、正切函数、线性函数

    包括:正向传播、误差信号的反向传播

    

2015上半年软件设计师考点,难点5

URL:UniformResourceLocator统一资源定位符语法规则:  scheme://host.domain:port/path/filename  scheme类型:  TCP-IP协议TCP/IP层次结构      互连层协议            传输层协议                 ... 查看详情

2015上半年软件设计师考点,难点

存储器:  高级存储器容量一般较小,而低级存储器容量较大。  寄存器:    中央处理器的一部分,是有限存贮容量的高速存贮部件,可用来暂存指令、数据和地址。是CPU必须的    是中央处理器内的组成部份。... 查看详情

2015下半年软件设计师考点,难点2

资源分配图,即进程资源图    化简:第一步:先看系统还剩下多少资源没分配,再看有哪些进程是不阻塞(“不阻塞”即:系统有足够的空闲资源分配给它)的第二步:把不阻塞的进程的所有边都去掉,形成一个孤立的点... 查看详情

全网最全计算机二级c语言知识总结,还不快来白嫖

...的程序设计考点2:面向对象方法的基本概念第3章、软件工程基础3.1软件工程基本概念考点1:软件定义与软件特点考点2:软件工程过程与软件生命周期3.2结构化设计方法考点3软件设计的基本概念考点4:详细设计3... 查看详情

2019年上半年软件设计师考前冲刺班直播开课软考中级软设冲刺视频

课程简介:本课程从高频知识内容入手,全面解析提分,以使各位考生在有限的时间内,达到最理想的成绩。本课程适应于以下情况的考生:1)有一定基础,但备考时间不足2)虽然复习时间多,但抓不到重点3)在复习备考过程中,... 查看详情

软考-01考试范围及知识点

...课目录考试简介考点浅析架构科目2考点详解系统规划、软件架构设计、设计模式、系统设计、系统建模、分布式系统设计、嵌入式系统设计、系统的可靠性分析与设计、系统的安全性和保密性设计。架构科目3考点详解系统建模... 查看详情

软考-01考试范围及知识点

...课目录考试简介考点浅析架构科目2考点详解系统规划、软件架构设计、设计模式、系统设计、系统建模、分布式系统设计、嵌入式系统设计、系统的可靠性分析与设计、系统的安全性和保密性设计。架构科目3考点详解系统建模... 查看详情

《软件设计师》考点分布

上午:  下午:  查看详情

2017年上半年软件设计师试题-04

一.某医疗器械公司作为复杂医疗产品的集成商,必须保持高质量部件的及时供应。为了实现这一目标,该公司欲开发一采购系统。系统的主要功能如下:  1.检查库存水平。采购部门每天检查部件库存量,当特定部件的库存量... 查看详情

软件设计师考点总结

 计算机组成与体系结构操作系统基本原理数据库系统(未完待续)   查看详情

2019年上半年软件设计师上午真题及答案解析

1.计算机执行指令的过程中,需要由(  )产生每条指令的操作信号并将信号送往相应的部件进行处理,以完成指定的操作。A.CPU的控制器   B.CPU的运算器   C.DMA控制器    D.Cache控制器2.DMA控制方式是在(  )之间直接建... 查看详情

2021年上半年软件设计师下午真题及答案解析

阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某中医医院拟开发一套线上抓药APP,允许患者凭借该医院医生开具的处方线上抓药,并提供免费送药上门服务。该系统的主要功能... 查看详情

上半年软件设计师试题-01

    查看详情

2021上半年软考中级软件设计师考试心得(10天时间你可以拿捏的)(代码片段)

软考中级软件设计师考试心得1,考试题型分析2,考前复习顺序3,考中注意事项4,考后成绩、证书查询5,总结笔者专业是信息与通信工程,工作内容涵盖编程,本着以考促学的目的,以积累基础知... 查看详情

10-1系统设计考点解析(代码片段)

一、考点聚焦:1.什么是系统设计?2.系统设计需要掌握哪些知识?3.如何设计和实现一个后端系统服务的设计?二、什么是系统设计?SystemDesign:1.系统设计是一个定义系统架构、模块、接口和数据满足特定需... 查看详情

2018上半年软件设计师上午试题参考答案(代码片段)

2018上半年软件设计师上午试题参考答案基础知识A.O(lgn)B.O(n)C.O(nlgn)D.O(n2) A.4B.5C.6D.7 2018上半年软件设计师下午试题参考答案综合技能试题一(共15分)阅读下列说明,将解答填入题纸的对应栏内。【说明】某医疗护理机构... 查看详情

下半年软件设计师下午试卷真题解析

 试题一 阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。【说明】某证券交易所为了方便提供证券交易服务,欲开发一证券交易平台,该平台的主要功能如下:(1)开户。根据客户服务助理提交的开户... 查看详情

2017年上半年软件设计师试题-05(代码片段)

   某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,但其制作过程相同。前台服务员(Waiter)调度厨师制作套餐。现采用生成器(Builder)模式实现制作过程,得到如图6-1所示的... 查看详情