版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件设计师培训(二)培训课程1. 软件工程基础2. 软件开发项目管理3. 软件工具与开发环境4. 软件过程管理、软件质量管理5. 结构分析与设计、系统设计知识6. 软件测试与维护学 习 内 容1. 软件工程基础 开发生命周期模型概念:系统开发的生命周期是指一个系统历经计划、分析、设计、编程、测试、维护直至淘汰的整个过程。生命周期的阶段划分通常采用以下三种方法: boehm划分法:计划(问题定义、可行性研究)、开发(需求分析、总体设计、详细设计、编码、测试)、运行(维护)三大阶段。 国际(GB8566-1988)划分法:可行性研究
2、与计划,需求分析、概念设计、详细设计、实现、组装测试、确认测试、实用和维护。定义了获取过程、供应过程、开发过程、运行过程、维护过程、管理过程、支持过程骑个部分。 RUP划分法:分为初始、细化、构造、移交四个主要阶段软件开发模型: 瀑布模型:严格遵循软件生命周期各阶段的固定顺序,一个阶段完成再进入另一个阶段 快速原型模型:对于许多需求不够明确的项目,比较适合采用该模型。 演化模型:它将从初始的模型中逐渐演化为最终软件产品,是一种“渐进式”原型法。 增量模型:它采用一种“递进式”模型,它将软件产品划分为一系列的增量构件,分为分别设计、编码、集成和测试。 螺旋模型:结合了瀑布模型和演化模型的优点,最
3、主要的特点在于加入了风险分析。 喷泉模型:主要用于描述面向对象开发过程,最核心的特点是迭送。 系统开发方法论结构化分析与设计:采用结构化技术来完成软件开发的各项任务。面向数据结构的设计:基本思想是根据数据结构导出程序结构。面向对象分析与设计:将数据和方法封装在一起,提高了模块的聚合度,降低了耦合度,更大程度上支持软件复用。构件化开发:基于构件的开发(CBD),通过有计划地集成现有的软件部分来进行软件开发。采用CBD后所,所有的软件解决方案将可以使用预建的构件和模板,像“搭积木”式的建造。构件五个要素:规格说明、一个或多个接实现、受约束的构件标准,包装方法和部署方法。重点难点思考题1、掌握各种常
4、见的开发生命周期模型的概念及特点,能够正常的做出比较与选择,了解结构化分析与设计、面向数据结构的设计、面向对象分析与设计,以及构件四种开发方法的基础知识、概念和特点,对其建立宏观的认识与理解。软件设计师培训(二)培训课程1. 软件工程基础2. 软件开发项目管理3. 软件工具与开发环境4. 软件过程管理、软件质量管理5. 结构分析与设计、系统设计知识6. 软件测试与维护学 习 内 容2. 软件开发项目管理项目管理是基于被接受的管理原则的一套技术或方法,这些技术或方法用于计划、评估和控制工作活动,以便按时、按预算、依照规范达到理想的
5、最终效果。 制定项目计划制定项目计划包括确定项目范围、识别项目活动、工作量的估算、资源计划、进度计划。 软件项目估算度量·估算策略:包括“自顶向下”和“自底向上”两种。·软件规模估算:也就是估算完成的工作范围,常用的方法有LOC和FP估算法。·软件工作量估算:工作量的单位通常是人月,计算方法为规模/产能=工作量。·成本估算:通常包括人员成本、资源成本、其他开支等。常用的估算辅助方法:Delphi法和三点法。 进度计划与监控·甘特图:使用水平线段表示任务的工作阶段,线段的起点和终点分别对应着任务的开工时间和完成时间,线段的长度表示完成任务所需的时
6、间。·PERT技术和CPM方法:PERT叫做计划评审技术,CPM方法则是关键路径法。她们都是采用网络图来描述一个项目的任务网络,通常使用两张图来定义网络图。 开发组织和作用建立开发结构的组织结构时,可以采用三种不同的组织结构:按课题划分、按职能划分、矩阵式。程序设计小组的组织形式也有三种常见结构:主程序员制、民主制、层次式。 配置管理软件配置管理的任务包括:制定配置管理计划、实施变更管理、实施版本管理和发行管理。 风险管理项目风险管理通常包括:风险识别、风险估计(风险评估)和风险驾驭(风险控制)三个主要活动。风险识别包括:项目风险、技术风险和商业风险三种。当在软件工程中考虑风险时,主
7、要是基于关心未来、关心变化、关心选择这三个概念提出的。重点难点思考题1、重点在意了解项目管理的目标,项目计划的内容,了解各种如那件估算的策略与方法,了解软件规模,工作量、成本估算的常用模型,了解项目进度计划与监控技术,掌握甘特图、PERT技术、CPM方法的关键特征。软件设计师培训(二)培训课程1. 软件工程基础2. 软件开发项目管理3. 软件工具与开发环境4. 软件过程管理、软件质量管理5. 结构分析与设计、系统设计知识6. 软件测试与维护学 习 内 容3. 软件工具与开发环境软件开发环境包括:软件开发工具和集成环境开发环境(简
8、称开发环境)两种。软件工具是指用于辅助软件开发、运行、维护、管理、支持等过程中的活动的软件,通常也称为CASE工具。继承开发环境是一种把支持多种软件开发方法和开发模型、支持软件开发全过程的软件工具集成在一起的软件开发环境。环境集成机制主要包括:·数据集成机制:提供统一的数据模式和数据接口规范。·控制集成机制:支持各种工具或各开发活动之间的通信、切换、调度和协调工作,并支持软件开发过程的描述、执行和转换。·界面集成机制:为统一的工具界面分割和同意的操作方式提供支持,使得环境中的工具具有相同的视觉效果和操作规则。4. 软件过程管理、软件质量管理 软件质量管理 软件质量
9、特性描述·ISO/IEC9126模型:详见GB/T 16120-1996软件产品评价、质量特性及其使用指南·McCall质量模型: 软件质量保证基本概念软件质量保证就是保证软件产品充分满足消费者要求的质量而进行的有计划、有组织的活动。 技术评审正式的技术评审FTR是软件工程师组织的软件质量保证活动。通常采用系统化、严密的过程,包括制定计划、总体会议、做准备、开会、返工、追踪和因果分析。 过程管理基础软件过程是软件生命周期中的一系列相关的过程,即用于开发和维护软件及相关产品的一系列活动。 过程分类:按照IOS/IEC 12207标准信息技术软件生存期过程,可以将软件生存周期氛
10、围基本过程、支持过程和组成过程三大类。 软件过程改进相关标准:分类为两类一类是理论指导类,一类是时间指南类。重点难点思考题1. 软件开发环境:重点在于了解各种如那件开发工具的分类、作用以及典型的CASE工具。2. 软件过程管理:重点在于了解软件过程改进的基本概念,熟悉常见软件过程模型。3. 质量管理基础:掌握ISO/IEC9126软件质量模型和McCall软件质量模型中定义的质量特性的含义。了解主要的软件质量保证措施。软件设计师培训(二)培训课程1. 软件工程基础2. 软件开发项目管理3. 软件工具与开发环境4. 软件过程管理、软件质量管理5. 结构分析与设计、系统设计知识6. 软件测试与维护
11、学 习 内 容 统一过程(UP)基础统一过程是重型方法论中的百科全书,其核心特色是“用例和风险驱动,以架构为中心,迭送的增量开发过程。”UP和RUP一样将软件开发工作分成先启(初始)、精化(细化)、构建、产品化(移交)四个阶段,在每个阶段中RUP定义了9个核心工作流(5个核心开发工作流及4个核心支持工作流)的工作。 极限编程(XP)基础XP是一种轻量(敏捷)、高效、低风险、柔性、可预测、科学而且充满乐趣的软件开发方式。它由价值观、原则、实践、和行为四部分组成,彼此相互依赖、关联,并通过行为贯穿整个生命周期。·四大价值观
12、:沟通、简单、反馈、勇气。·五个原则:快速反馈、简单性假设、逐步修改、提倡更改、优质工作。·十二个最佳实践:计划游戏(快速制定计划,随着细节的不断变化而完善),小型发布、隐喻(找到合适的比喻传达信息)、简单设计、测试先行(先写测试代码,然后再编写程序)、重构、结构编程、集体代码所有制、持续集成、每周工作40小时以上、现场客户、编码标准。 主要开发文档:太多自己百度或Google。 软件维护活动软件维护从性质上分为:纠错型维护,适应性维护、预防型和完善型维护。5. 结构化分析与设计、系统设计知识 需求分析与设计基础 需求分的任务过程:需求分析主要是确定等开发软件的功能、性能、
13、数据、界面等要求。 需求分析的原则:必须能够表达和理解问题的数据域和功能域、必须按照自顶向下、逐层分解的方式对问题进行分解和不断的细化、要给出系统的逻辑视图和物理视图。 需求的分类:包括功能需求、非功能需求、设计约束。 需求工程:包括需求开发、需求管理。 软件设计的任务与活动:软件设计分为以下两步,概要设计(也称为高层设计),详细设计(也称为低层设计)。重点难点思考题1. 结构化分析与设计、系统设计知识:重点在于掌握结构化分析方法的基本特征,数据流图和数据字典两大分析工具的要点。掌握结构化设计技术的基本知识,深入领会模块化设计的要点。软件设计师培训(二)培训课程1. 软件工程基础2. 软件开发
14、项目管理3. 软件工具与开发环境4. 软件过程管理、软件质量管理5. 结构分析与设计、系统设计知识6. 软件测试与维护学 习 内 容软件设计包括四个既独立又相互联系的活动:体系结构设计、接口设计、数据设计和过程设计。 结构化分析与设计结构化分析方法也称为生命周期方法学,它采用结构化分析、设计、编程来完成软件开发的各项任务。它具有阶段性、推迟实现、文采管理三大特点。 结构化分析基础·数据流图:数据流图是用来描述数据流从输出到输出的变化过程流,由加工、数据流(包括输入数据流和输出数据流)、文件、外部实体构成。·数
15、据字典:数据字典就是对数据流图中的每个数据流、文件、加工,以及组成数据流或文件的数据项进行说明。 结构化设计基础·概要设计:主要是设计软件的结构、确定系统是由哪些模块组成,以及每个模块之间的关系。·详细设计:确定如何具体地实现所要求的系统,得出对目标系统的精确描述。 模块设计原则:·信息隐蔽:信息隐蔽是开发整体程序结构时使用的法则,既将每个程序的成分隐蔽或封装在一个单一的设计模块中,并且尽可能少地暴露其内部的处理。·模块独立:模块独立是指每个模块成一个相对独立的特定子功能,并且与其他模块之间的联系最简单。通常我们用耦合和内聚两个标准来衡量,我们的目标是高
16、内聚、低耦合。除了以上两大原则之外,通常在模块分解时还需要注意:保持模块的大小适中;尽可能的减少调用的深度;直接调用该模块的个数应该尽量大,但调用其他模块的个数则不宜过大;保证模块是单入口、单出口的;模块的作用域应该在之内;功能应该是可以测的。6. 软件测试与维护 测试阶段与任务测试的四个阶段:单元测试、集成测试、确认测试、验收测试。 测试的种类与目的:重点难点思考题1.软件测试:重点在于掌握四个阶段以及他们的任务,了解各种常见的测试种类。软件设计师培训(二)培训课程1. 软件工程基础2. 软件开发项目管理3. 软件工具与开发环境4. 软件过程管理、软件质量管理5. 结构分析与设计、系统设计知
17、识6. 软件测试与维护学 习 内 容设计审查、代码审查、代码走查、功能测试、结构测试、回归测试、可靠性测试、强度测试、性能测试、恢复测试、启动/停止测试、配置测试、安全性测试、可使用性测试、可支持性测试、安装测试、互联测试、兼容性测试、容量测试、文档测试。 黑盒测试与白盒测试 白盒测试:又称为结构测试或逻辑驱动测试,在已知产品内部工作过程的基础上,通过测试证明每种内部操作是否符合设计规格要求。最常见的方法是逻辑覆盖法,覆盖程度从弱到强排序为:语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖。 黑盒测试常用方法包括:等价类划分,边界值分析,错误推策法,因果图,功能图。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年煤矿安全防护设备安全培训方法培训试卷及答案
- 2025年上半年食源性疾病培训试卷及答案
- 施工现场安全交底
- 内部供应内控流程制度
- 内部单位安保制度
- 内部发行期刊保密制度
- 内部合金烘烤管理制度
- 内部安保人员管理制度
- 内部安全治安防范制度
- 内部定价转移制度
- 2026年春学期部编版小学语文五年级下册教学计划附教学进度表
- 燃气具安装维修培训课件
- DB22∕T 3259-2021 健康儿童及青少年心肌酶参考区间规范
- 2024年珠海辅警协警招聘考试真题附答案详解(完整版)
- 知到《微观经济学(重庆财经学院)》智慧树网课完整版章节测试答案
- 《自我管理》课件-2. 第一单元第二课 认清自身角色
- 交通运输执法培训知识课件
- 2025年9月17日事业单位联考《综合应用能力(A类)》试题及答案
- 5年(2021-2025)高考1年模拟化学真题分类汇编专题14 化学实验探究综合题(北京专用)(原卷版)(北京专用)
- 新疆可爱的中国课件
- 城市社会学-课件 第九章 城市社会发展
评论
0/150
提交评论