考点(6)软件需求分析
1需求分析的任务
确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。需求分析的出发点是可行性分析阶段产生的文档和数据流图;需求分析的具体任务是确定对系统的综合要求,分析系统的数据要求,导出系统的逻辑模型,修正系统开发计划,开发原型系统。
2需求分析常用的工具
(1)数据字典是定义一个应用程序中使用的所有数据元素和结构的含义、类型、数据大小、格式、度量单位、精度以及允许取值范围的共享仓库。
(2)数据流图。是结构化系统分析的基本工具。一个数据流图确定了系统的转化过程、系统所操纵的数据或物质的收集(存储),还有过程、存储、外部世界之间的数据流或物质流。
(3)状态转换图。实时系统和过程控制应用程序可以在任何给定的时间内以有限的状 态存在。
(4)对话图。对话图描绘了系统中的对话元素和它们之间的导航连接。
(5)类图。类图是用图形方式叙述面向对象分析所确定的类及它们之间的关系。
3需求分析的方法和步骤
需求分析的方法如下:
(1)理解当前的现实环境。
(2)将当前系统的具体模型抽象为当前的逻辑模型。
(3)分析新系统与当前系统逻辑上的差别,建立新系统的逻辑模型。
(4)确定新系统的人机界面和一些补充考虑的细节问题。
需求分析的步骤如下:
(1)沿数据流图回溯。
(2)用户复查。
(3)细化数据流图。
(4)修正开发计划。
(5)书写文档。
(6)审查和复审。
4软件需求说明书
软件需求说明书的内容包括概述、数据描述(包括数据流图、数据字典、系统接口说明和内部接口)、功能描述(包括功能、处理说明和设计的限制)、性能描述(包括性能参数、测二讼类、预期的软件响应和应考虑的特殊问题)、参考文献目录和附录等。
考点(7)软件系统设计
1系统设计概述
系统设计一般分为总体设计和详细设计两个阶段。
2总体设计
总体设计的任务是确定软件的总体结构。
总体设计的目标是用比较抽象概括的方式确定系统如何完成预定的任务,也就是说应该确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。总体设计可以分为系统设计和软件结构设计。
总体设计的典型过程是设想供选择的方案,选取合理的方案,推荐方案,功能分解,设计软件结构,数据库设计,制定测试计划,书写文档,审查和复查。
3软件的结构、过程和模块
(1)软件结构。是软件模块间关系的表示。
(2)软件结构的度量术语如下:
深度:是表示软件结构中控制的层数。
宽度:是软件结构内同一层次上的模块总和的值。
扇出:是一个模块直接控制的模块数。
扇入:是有多个上级模块直接调用一个模块。
(3)软件过程。软件过程用于描述每个模块的操作细节,同时也包括一个模块对下一层模块控制的操作细节。
(4)模块独立性。是设计的软件结构使得每个模块完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单。模块独立性是用藕合与内聚来度量的。藕合:衡量不同模块彼此之间相互依赖的紧密程度;内聚:衡量一个模块内部各个元素彼此结合的紧密程度。
4面向数据流的设计方法
面向数据流的设计方法是把信息映射成软件结构,信息流的类型决定映射的方法。
(1)变换流是指信息沿输入通路进人系统,同时由外部形式变换成内部形式进人系统;信息通过变换中心,经加工处理后,经输出通路变换成外部形式输出。
(2)事务流是指数据沿输入通路到达一个处理T,这个处理T根据输入数据的类型在若干个动作序列中选出一个来执行,这类数据流称为事务流。
(3)面向数据流方法的设计过程是精化数据流图,区分是事务流还是变换流,根据设计准则精化软件结构,导出接口描述和全程数据结构,复查,进人详细设计。
(4)变换分析指的是将变换流映射为变换结构。变换分析的目的是用一系列设计步骤,把具有变换流特点的数据流按预先确定的模式映射成软件结构。
(5)事务分析。事务分析的设计步骤和变换分析设计步骤大致相似,差别仅在于从数据流图到软件结构的映射方法不同,它将事务中心映射成为软件结构中发送分支的调度模块,将接收通路映射成为软件结构的接收分支。
(6)详细设计的任务是为软件结构图中的每一个模块确定所采用的算法和数据结构。
考点(8)程序设计
1程序设计阶段的任务
编码阶段的任务是为每个模块编写程序,就是将详细设计的结果转换成某种程序语言的源程序,编译程序再将这些源程序转换成依赖于具体机器的目标代码。
2结构化设计的概述
结构化设计的基本要求是在详细设计阶段,所有的模块都只使用顺序、选择和循环3种基本控制结构。结构化设计的缺点是目标程序所需要的存储容量和运行时间都有一些增加。
3程序设计语言的选择
(l)程序设计语言。程序设计语言是编程者用于求解问题的工具。
(2)程序高级语言通常分为基本语言、结构化程序语言和专用语言。
(3)程序设计语言的选择。选择语言的方法是从所要解决的课题出发确定对语言的要求,并同时确定这些要求的相对重要性。
4程序设计的方法
(1)模块化。是把一个较大的程序划分为若干个子程序,每一个子程序总是独立成为一个模块;每一个模块又可继续划分为更小的子模块。
(2)自顶向下。是先设计第1层,即顶层,然后步步深入,逐层细分,逐步求精,直到整个问题可用程序设计语言明确地描述出来为止。
(3)自底向上。是先设计底层,最后设计顶层。
5程序设计的步骤
(1)分析问题。
(2)建立数学模型。
(3)选择算法。
(4)编写程序。
(5)调试运行
(6)分析结果。
(7)写出程序的文档。
软件工程及项目管理基础知识:
信息系统工程质量管理:质量计划、质量保证、质量控制
软件质量因素:正确性、健壮性、安全性、可用性、适应性、效率、风险、可理解性、可维修性、可测试性、可移植性、可再用性、互运行性。
项目进度控制的重要方法:规划、控制、协调
进度控制所采取的措施如下:1 组织措施2 技术措施3 合同措施4 经济措施5 管理措施
影响进度因素:1 人的因素2 材料和设备的因素3 方法和工艺的因素4 资金的因素5 环境因素
成本管理由4个过程组成:1 资源计划过程2 成本估算过程3 成本预算过程4 成本控制过程
影响工程成本主要因素:1 项目属性2 人员属性3 项目成果属性4 计算机属性5 其他因素
影响工程变更的主要因素:1 工程的生命周期2 工程的计划、组织和管理3 客户需求变化4 新技术、新工艺的影响5 其他外部因素和不可遇见的突发事件
何为风险?控制风险的方法:风险是指某种破坏或损失发生的可能性,风险管理是指识别,评估,降低风险到可以接收的程度并实施适当机制控制风险,保持在此程度之内的过程。控制风险的方法:1 对动作进行优先排序,风险高的优先考虑2 评价风险评估过程中的建议,分析建议的可行性和有效性3 实施成本/效益分析4 结合技术、操作和管理类的控制元素,选择性价比最好的安全控制5 责任分配6 制定一套安全措施实施计划7 实现选择的安全控制
风险分析的方法与途径:定量分析和定性分析
项目风险管理应该包括:1 一个风险管理计划,应强调主要项目风险、潜在的影响、解决方案、降低风险的措施2 一个风险预防计划或应急计划,包括降低风险所必需的资源、时间及成本概算3 一个在整个项目周期内自始至终对风险进行测定,跟踪及报告的程序4 应急费用,并将其列入预算。
项目定义并说明项目管理三要素之间的关系:所谓项目,就是在既定的资源和要求的约束下,为实现某种目的而相互联系的一次性工作任务,这个定义包括三层意思:一定的资源约束、一定的目标、一次性任务。项目三角形是指项目管理中范围、时间、成本三个因素之间相互影响的关系;质量处于三角形的中心。它会影响三角形的每条边,对三条边的任何一个更改都会影响质量;质量不是三角形的要素;是时间、成本和范围协调的结果。
项目管理的四大核心领域:范围管理、成本管理、时间管理、质量管理
项目管理的九大知识领域:范围管理、成本管理、进度管理、质量管理、人力资源管理、沟通管理、采购管理、风险管理和综合管理。
五大项目过程:项目的启动过程,项目计划过程,项目执行过程,项目监控过程,项目收尾过程
何为项目管理及特点:项目管理就是项目的管理者,在有限的资源约束下,运用系统的观点、方法和理论对项目涉及的全部工作进行有效的管理,即从项目的投资决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价,以实现项目的目标;
项目管理特点:1 项目管理是一项复杂的工作2 项目管理具有创造性3 项目管理需要集权领导并建立专门的项目组织4 项目负责人在项目管理中起着非常重要的作用。
软件的质量特性包括功能性、可靠性、易用性、效率、可维护性、可移植性等六个方面,每个方面都包含若干个子特性:功能性:适合性、准确性、互操作性、依从性、安全性;
可靠性:成熟性、容错性、易恢复性;易用性:易理解性、易学性、易操作性;
效率:时间特性、资源特性;可维护性:易分析性、易改变性、稳定性、易测试性;
可移植性:适应性、易安装性、遵循性、易替换性;
质量管理:在质量方面指挥和控制组织的协调的活动,指对确定和达到质量所必须的全总职能和活动的管理,其管理职能主要包括制定质量方针和质量目标以及质量策划、质量控制、质量保证和质量改进。
软件开发质量管理,就是为了开发出符合质量要求的软件产品,贯穿于软件开发生存期过程的质量管理工作。软件开发质量管理层次初步划分如下:
1 、技术层次(数据、编程、文档)
2 、方法体系层次(措施、项目、过程)
3 、社会因素层次(质量环境、技术标准、业务标准、人员)
目前软件过程改进主要根据能力成熟度模型集成CMMI,其层次分为初始级、可重复级、已定义级、已管理级、优化级
编程质量管理层次可分为黑盒测试、灰盒测试、白盒测试、编译检查、编程规范、编程逻辑、编程优化。
系统分析、设计及实施
系统规格说明书应该达到的基本要求是:全面、系统、准确、详实、清晰地表达系统开发的目标、任务和系统功能。系统说明书内容如下:1 引言,说明项目的名称、目标、功能、背景、引用资料,文中所用的专业术语等2 项目的概述,(项目的主要工作内容;现行系统的调查情况;新系统的逻辑模型)3 实施计划(工作任务的分解;进度和预算)
欢迎分享,转载请注明来源:表白网
评论列表(0条)