软件工程复习资料全

合集下载

软件工程复习资料精选全文完整版

软件工程复习资料精选全文完整版

可编辑修改精选全文完整版一、单选题(共20题,40分)1、使用数据流图,并不断细化的需求获取方法是()。

(2.0)A、简易的应用规格说明B、面向数据流自顶向下逐步求精C、访谈D、快速原型法正确答案: B2、Z语言是以()为基础的形式化规格说明语言。

(2.0)A、微积分B、概率C、图形D、一阶谓词演算正确答案: D3、HIPO是指(2.0)A、层次输入处理输出图或表B、层次功能结构图C、功能结构图D、输入处理输出图或表正确答案: A4、高铁调用系统最适宜采用()方法。

(2.0)A、有穷状态机B、 Petri网C、 Z语言D、一阶线性时态逻辑正确答案: B5、假设学生年龄的成绩输入范围为18-25,则根据等价类划分技术,下列划分正确的是()。

(2.0)A、可划分为2个有效等价类,2个无效等价类B、可划分为1个有效等价类,2个无效等价类C、可划分为2个有效等价类,1个无效等价类D、可划分为1个有效等价类,1个无效等价类正确答案: B6、用于并发系统,解决定时问题的形式化方法是()。

(2.0)A、 VDMB、 Z语言C、 Petri网D、一阶线性时态逻辑正确答案: C7、软件生命周期中所花费费用最多的阶段是(2.0)A、需求分析B、软件总体设计C、软件维护D、软件实现正确答案: C8、软件质量保证措施SQA不包括:(2.0)A、复审或评审B、软件测试C、程序正确性证明D、软件代码编写正确答案: D9、希望确定软件实现的功能是否与需求规格说明书一致,需进行()。

(2.0)A、单元测试B、有效性测试C、确认测试D、集成测试正确答案: C10、总体设计不包括:(2.0)A、体系结构设计B、数据库设计C、模块内算法设计D、逻辑数据结构设计正确答案: C11、关于类和对象的说法,正确的是(2.0)A、一个类只能有一个角色B、类的命名必须用动词C、类的所有对象都具有相同的属性和操作D、类是对象的实例,对象是类的抽象正确答案: C12、数据字典的基本功能是(2.0)A、数据库设计B、数据通信C、数据定义D、数据维护正确答案: C13、软件需求规格说明的内容不应该包括(2.0)A、主要功能B、算法的描述C、用户界面及其运行环境D、软件性能正确答案: B14、增量模型在添加新的模块时,有一个要求是()(2.0)A、需要更多的测试B、有足够的开发人员C、软件体系结构开放D、各个模块都要进行评审正确答案: C15、在软件详细设计过程中不采用的工具是(2.0)A、判定表B、PDLC、程序流程图D、DFD正确答案: D16、软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试(2.0)A、结构合理性B、软件外部功能C、程序正确性D、程序内部逻辑正确答案: B17、耦合是模块之间的相对独立性的度量。

软件工程复习资料

软件工程复习资料

第一章绪论什么是软件工程?软件=程序+数据+文档什么是软件危机?软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件,从而导致软件开发与维护过程中出现一系列严重问题的现象。

什么是软件工程?采用工程化的原理和方法对软件进行计划开发和维护。

软件工程三范型:1.过程式编程范型2.面向对象编程范型3.基于构件技术的编程范型软件工程的发展时期:(1)传统软件工程或者经典软件工程:开发过程:结构化分析一>结构化设计一>面向过程的编码一>软件测试(2)面向对象软件工程开发过程:OO分析与对象抽取一》对象详细设计一》面向对象编码与测试(3)基于构件的软件工程:以软件复用为目标、领域工程为基础,其开发过程一般包括包括以下阶段:领域分析和测试计划定制一一》领域设计一一》建立可复用构件库一一》按“构件集成模型,,查找与集成构件第二章生存周期什么是软件生存周期?计划阶段:需求分析,软件分析开发阶段:软件设计,编码(测试)软件测试维护阶段:运行维护模型特点和使用场合可行性研究1.经济可行性2.技术可行性3.运行可行性4.法律可行性第三章结构化分析与设计结构化程序设计的特点以及论述(1)整个程序的模块化(2)每个模块只有一个入口和出口(3)每个模块都应能单独执行,且无死循环(4)采用自顶向下,逐步细化的方法SA结构化分析设计(结构化)从内容分:1.系统结构设计2.接口设计3.数据设计4.过程设计按照步骤分:1.概要设计2.详细设计第四章OO与面向对象+UML OO的特征1.抽象2.封装3.继承4.多态为什么用面向对象1.符合人类习惯的思维方式2.提高软件系统的可复用性3.提高软件系统的可扩展性4.提高软件系统的可维护性UML相关知识静态图1.用例图:描述系统功能2.类图:描述系统的静态结构3.对象图:描述系统在某个时期的静态结构4.构件图:描述实现系统的元素的组织5.部署图:描述系统环境元素的配置动态图1.状态图:描述系统元素的状态条件和相应2.时序图:按照时间顺序描述系统元素间的交互3.协作图:按照连接关系描述系统元素间的交互4.活动图:描述系统元素的活动流程第五章需求建模需求分析的步骤1.需求获取2.需求建模3.需求描述4.需求验证面向对象需求建模1.画用例图2.写用例规约3.描述补充规约4.编写术语表第六章需求分析面向对象的需求分析1.边界类:边界类提供了对参与者或外部系统交互协议的接口。

软件工程自考复习资料-全

软件工程自考复习资料-全

软件工程自考复习资料-全第一章绪论一、软件的基本概念1.软件是计算机系统中的程序及其文档。

3.文档一般主要面向管理人员、开发人员、用户、使用维护人员。

4.文档在软件工程中的作用:(1)提高软件开发过程的能见度。

(2)提高开发效率。

(3)某程序设计时代:生产方式是个体手工劳动,使用工具是机器、汇编语言,主要通过汇编来实现,不注重程序设计方法。

某程序系统时代:生产方式是作坊式小集团合作生产,生产工具是高级语言,开始提出结构化方法。

某软件工程时代:生产方式是工程化生产,使用数据库、网络、先进的开发技术和方法。

6.软件既是知识性(逻辑性)工业产品,具有一些独特的特性是:某软件是逻辑产品,具无形性,通过计算机的执行才能体现它的功能和作用。

某软件只会退化,不存在磨损和消耗问题。

某成本主要体现在软件的开发和研制上,可进行大量的复制。

某主要靠脑力劳动生产,开发和维护成本高。

7.软件的主要结构和功能是在分析设计阶段决定的。

8.软件的复杂性主要体现在程序的复杂性,即模块内程序的复杂性。

直接关联到软件的简单和可理解性、开发费用多少、开发周期长短和软件潜伏错误的多少。

二、软件危机1.软件危机是指在软件开发和维护时遇到的一系列难以控制的问题导致的供需矛盾。

出现在软件发展的第二阶段末期,随着第三代计算机的诞生之际。

2.软件危机主要体现在:某软件发展速度跟不上硬件的发展和用户需求。

某软件成本和开发进度不能预先预算,用户不满意。

某软件产品质量差,成本高,可靠性没有保证。

某软件可维护性差,产品没有配套文档。

3.软件危机产生原因:(1)软件规模变大,结构更加复杂。

(2)软件开发管理困难。

(3)软件开发技术和工具落后。

(4)软件开发费用增加。

(5)采用落后的个体手工生产方式开发。

4.解决途径:(1)纠正对软件开发的错误观念。

(2)提高软件工程管理水平,重视文档重要性。

(3)使用好的软件开发工具,研究软件开发技术,规范软件开发流程,提高开发效率。

软件工程期末复习资料非常全

软件工程期末复习资料非常全

1、下列哪一模型是软件的基础模型A.瀑布模型B.快速原型C.增量模型D.螺旋模型2、划分软件生存周期的阶段时所应遵循的基本原则是A.各阶段的任务尽可能相对独立B.各阶段的任务在时间上连续C.各阶段的任务尽可能相关性D.各阶段的任务在时间上相对独立3、下列哪个办法不属于解决软件危机的途径之一A.采用软件工程的解决途径B.研制新一代智能计算机C.采用面向对象的软件设计方法D.大力扶持软件企业4、下列哪个不属于软件工程的内涵之一A.扶持培养软件高手的学院B.开发既可靠又能有效运行的软件C.应用完善的科学与工程原理D.经济地开发软件5.造成大型软件开发困难的根本原因在于A.开发人员缺乏足够的开发经验B.项目开发进度不合理C.软件系统的复杂性D.对软件开发的资金投入不足6.软件会逐渐退化而不会磨损,其原因在于A.软件备件很难订购B.不断的变更使组件接口之间引起错误C.软件错误在经常使用之后会逐渐增加D.软件通常暴露在恶劣的环境下7.下面说法正确的是A.大多数软件系统是不容易修改的,除非它们在设计时考虑了变化B.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产C.一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功D.购买大多数计算机系统所需的硬件比软件更昂贵8.Ariane 5火箭发射失败的事例告诉我们A.(2)软件后备系统可以通过复制生成B.(3)软件重用必须重新进行系统论证和系统测试C. 选项(1)和(3)D.(1)系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制9.软件危机的主要原因是A.软件本身的特点及开发方法。

B.软件工具落后。

C.软件生产能力不足。

D.对软件的认识不够。

10.下面的描述正确的是A.软件质量是在开发过程中逐渐构建起来的。

B.软件质量是由产品的功能、性能、易用性等外在特性决定的。

C.运行正确的软件就是高质量的软件。

D.软件产品质量越高越好,最理想的情况是达到“零缺陷”。

软件工程复习资料

软件工程复习资料

软件⼯程复习资料软件⼯程第⼀章⼀、什么是软件?软件(Software)是计算机系统中与硬件相互依存的另⼀部分,它是包括程序(Program),数据(Data)及其相关⽂档(Document)的完整集合。

程序是按事先设计的功能和性能要求执⾏的指令序列数据是使程序能正常操纵信息的数据结构⽂档是与程序开发,维护和使⽤有关的图⽂材料⼆、软件危机原因:与软件本⾝的特点有关(难于维护, 逻辑复杂)与软件开发与维护的⽅法不正确有关:软件≠程序急于求成=拔苗助长各⾃为阵⽆⽅法/学现象:1.成本⾼2.计算机软件和硬件费⽤⽐3.软件质量得不到保证4.由于软件质量问题导致失败的软件项⽬⾮常多5.进度难以控制6.维护⾮常困难办法:软件⼯程(学)三、软件⼯程软件⼯程是应⽤计算机科学、数学及管理科学等原理开发软件的⼯程。

它借鉴传统⼯程的原则、⽅法,以提⾼质量,降低成本为⽬的。

开发、运⾏和维护软件的系统⽅法四、软件⼯程三要素软件⼯程⽅法学包含3个要素:⽅法、⼯具和过程。

五、软件⽣命周期六、软件过程模型瀑布模型瀑布模型适合于⽤户需求明确、完整、⽆重⼤变化的软件项⽬开发。

瀑布模型的成功在很⼤程度上是由于它基本上是⼀种⽂档驱动的模型。

“瀑布模型是由⽂档驱动的”这个事实也是它的⼀个主要缺点。

在项⽬开始的时候,⽤户常常难以清楚地给出所有需求;⽤户与开发⼈员对需求理解存在差异。

实际的项⽬很少按照顺序模型进⾏。

⽤户必须有耐⼼,等到系统开发完成。

缺乏灵活性:因为瀑布模型确定了需求分析的绝对重要性,但是在实践中要想获得完善的需求说明是⾮常困难的,导致“阻塞状态”。

反馈信息慢,开发周期长。

虽然存在不少缺陷,瀑布模型经常被嘲笑为“旧式的”,但是在需求被很好地理解的情况下,仍然是⼀种合理的⽅法。

快速原型模型增量模型增量模型是迭代和演进的过程。

增量模型把软件产品分解成⼀系列的增量构件,在增量开发迭代中逐步加⼊。

每个构件由多个相互作⽤的模块构成,并且能够完成特定的功能。

软件工程基础期末复习资料完整版

软件工程基础期末复习资料完整版

2.文档有何作用?程序代码属不属于文档?答:文档指的是在软件开发和维护过程中形成的文字记录。

从软件计划、分析、设计、实现(编码和测试)、维护等开发活动中形成的各种文件。

文档属于软件的一部分,是软件维护和升级的重要依据,并且文档内容要与代码同步更新。

没有文档的软件维护不但不能延长反而会缩短软件寿命。

文档包括需求规格说明书、设计说明书、用户使用说明书、在线帮助等,当然程序代码是必不可少的一种软件文档。

3.什么是软件危机?什么原因产生了软件危机?答:软件危机指的是在计算机软件的开发和维护过程中所遇到的一系列严重问题。

产生的原因是主客观不相适应。

见书图1-2。

●客观上:软件规模增大、功能要求越来越复杂,需求不断变化等;●主观上:传统的个体化开发观念和方法,无开发过程指导,无开发过程管理;由于主客观矛盾,必然产生软件质量差、开发超期、超预算、维护困难等现象。

5.软件工程三要素是什么?答:软件工程三要素是从计算机科学观点看软件工程,即从软件开发的技术层面应该有过程、方法和工具。

见图1-4。

(2)“过程”是软件产品加工所经历的一系列有组织的活动,保证能够合理、高质量和及时地开发出软件。

过程定义的活动集合及其序列见第2章。

(3)“方法”为软件开发提供“如何做”的技术,它涵盖了项目计划、需求分析、系统设计、程序实现、测试与维护等一系列活动的做法。

如经常说的面向结构、面向对象、面向组件等开发方法,项目管理中估算、度量、计划等管理方法。

软件工程以介绍方法为主,本书从第3章开始逐步介绍开发过程所用到的方法。

(4)“工具”为过程和方法提供自动的或半自动的支持。

这些工具既包括软件也有硬件。

软件工具包括编程、建模、管理等开发工具。

通过网络环境把这些软件工具集成起来搭建一个支持团队开发的平台,称之为计算机辅助软件工程 (Computer Aided Software Engineering,CASE)。

CASE集成了软件、硬件和一个存放开发过程信息的软件工程数据库,形成了一个软件工程环境。

软件工程复习资料

软件工程复习资料
8. 关于白盒法覆盖程度的论述中正确的是()
A、语句覆盖:选择测试用例使程序中每条语句至少被执行一次 B、判定覆盖:选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值 C、条件覆盖:选择测试用例使每个条件都满足 D、条件组合覆盖:将所有的判定条件都组合起来执行 答案: A B
9. 以下()不属于结构化流程图
A、运行程序并分析运行结果 B、桌前检查与代码会审 C、数据流分析图 D、调用图
答案: B C D
15. 下面()属于可复用的软件级别。
A、代码的复用 B、设计结果的复用 C、分析结果的复用 D、测试信息的复用
答案: A B C D
16. 黑盒测试着重测试软件功能,下列测试法中属于黑盒测试技术的有()。
3. 面向对象方法学的出发点和基本原则是什么?
答案: 面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世 界解决问题的方法与过程,也就是使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一 致。
3. 软件原型
答案: 软件原型是在软件系统开发过程中,可快速建立的,旨在演示目标系统主要功能的可运行的程序。
4. 继承
答案: 广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。在面向对象的软件技术中,继承是子类自动 地共享基类中定义的数据和方法的机制。
5. 有穷状态机
答案: 在软件工程领域,有穷状态机可以准确地描述一个系统,它是表达规格说明的一种形式化说明方法。一个有穷状态机包含5 个部分:状态集、输入集、由当前状态和当前输入确定下一个状态的转换函数、初始态和终态集。
A、等价划分法 B、平行运行法 C、边界值分析法 D、错误推测法

软件工程复习资料

软件工程复习资料

一、单选题1. 为了提高测试的效率,应该( D )A、随机地选取测试数据B、取一切可能的输入数据作为测试数据C、在完成编码后制定软件的测试计划D、选择发现错误可能性大的数据作为测试数据2. 与设计测试数据无关的文档是( D ) A、需求说明书B、设计说明书C、源程序D、项目开发设计3. 结构设计是一种应用最广泛的系统设计方法,是以( B )为基础、自顶向下、逐步求精和模块化的过程A、数据流B、数据流图C、数据库D、数据结构4. 概要设计的结果是提供一份( A ) A、模块说明书B、框图C、程序D、数据结构5. 需求分析是由分析员经了解用户的要求,认真细致地调研、分析,最终应建立目标系统的逻辑模型并写出( B )A、模块说明书B、软件规格说明书C、项目开发计划D、合同文档6. 注释是提高程序可读性的有效手段,好的程序注释占到程序总量的( D )A、1/6 B、1/5 C、1/4 D、1/37. PAD(Problem Analysis Diagram)图是一种( B )工具。

A、系统描述B、详细设计C、测试D、编程辅助8. 排错一般是在测试发现错误后进行,其中找到错误位置占排错总工作量的( A )。

A、95%B、5%C、50%D、20%9.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的( A ) 。

A、总貌B、细节C、抽象D、软件的作者10. 分析员是( B )。

A、用户中系统的直接使用者B、用户和软件人员的中间人C、软件的编程人员D、用户和软件人员的领导11.在软件开发中,有利于发挥集体智慧的一种做法是( A )。

A、设计评审B、模块化C、主程序员制D、进度控制12.在开发软件时,( A )可用来提高程序员的工作效率。

A、程序开发环境B、操作系统的作业管理功能C、编译程序的优化功能D、并行运算的大型计算机二、多选题1. 数据流图的3种成分为①、②和③,②是数据流中①的变换,③用来存储信息,④对①、②、③进行详细说明,用⑤对③进行详细描述。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件工程复习材料一、考试复习围:1、软件工程基本概念、基本原理2、需求分析,结构化分析、面向对象分析,结构化分析建模、面向对象分析建模3、软件设计,结构化程序设计,概要设计、详细设计4、软件测试二、考试题型:单项选择题、简答题、综合应用题(要求会画:数据流图、软件结构图、用例图、类图、N-S盒图、PAD图)三、复习容:1、什么是软件危机?人们把软件开发和维护中的各种问题称为“软件危机”。

2、软件危机主要包含哪两方面的问题?①如何开发软件以满足软件日益增长的需求。

②如何维护数量不断增长的已有软件。

3、软件危机的表现有哪些?①对软件开发成本和进度的估算很不准确。

②用户对完成的软件很不满意。

③软件产品的质量很不可靠。

④没有完整的文档。

⑤软件成本比重上升。

⑥软件开发生产效率低下,软件开发技术进步落后与需求的增长,造成“供不应求”的局面。

4、什么是软件工程?软件工程的定义:采用工程的概念、原理和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,这就是软件工程。

5、.软件工程包括3个要素有哪些?方法、工具和过程。

6、软件生命周期各阶段有哪些?软件生命周期包括:软件定义、软件开发、软件维护三个时期。

其中:软件定义包括:问题定义、可行性研究、需求分析阶段;软件开发包括:总体设计、详细设计、编码、软件测试阶段。

7、需求分析的任务有哪些?需求分析的任务主要有两个方面:①通过对问题及环境的理解、分析和综合,建立分析模型。

②在完全弄清用户对软件系统的确切要求的基础上,用“软件需求规格说明书”把用户的需求表达出来。

8、软件系统需求分类是哪些?软件系统需求可以分为功能需求、非功能需求和领域需求:1)功能需求描述系统所预期提供的功能或服务。

即定义系统应该做什么,系统要求输入什么信息,输出什么信息,以及如何将输入变换为输出。

它由开发的软件类型、软件未来的用户以及开发的系统类型决定。

2)非功能需指那些不直接与系统具体工作相关的一类需求。

主要涉及系统的总体特性,如可靠性、反映时间和储存空间等。

3)领域需来自系统的应用领域的需求,反映了该领域的特点,它可能是一个新的特有的功能需求,对已存在的功能需求的约束或者是需要实现的一个特别计算。

9、获取需求的方法有哪些?1.通过系统调查获取需求2.通过快速原型获取和验证需求10、需求开发包括哪些容?需求开发又分为可行性研究、需求导出和分析(包括需求的获取与建模)、编写规格说明书和需求验证。

11、传统的需求分析方法建立什么模型?分别画什么图?(或问:结构化分析模型包括哪些?)包括:数据模型(ER图),功能模型(数据流图)、动态(行为)模型(状态转化图)。

12、如何建立数据流模型?[要有根据业务处理建立数据流图的能力]例如:工资管理系统的数据流图13、面向对象的分析模型包括哪些?OOA模型的3种模型:1)类-对象模型,描述系统所涉及的全部类-对象,每一个类-对象都通过属性、操作和协作者来进行进一步描述;2)对象-关系模型,描述对象之间的静态关系,同时定义了系统中所有重要的消息路径,它也可以具体化到对象的属性、操作和协作者;3)对象-行为模型描述了系统的动态行为,即对象在特定的状态下如何反映外界的事件。

3种模型分别起到描述数据模型、功能模型与行为模型的作用。

14、结构化建模的基本特点有哪些?1)结构化方法是面向数据流分析方法之一,它采用图形描述方式来建立分析模型,把软件系统描绘成一个可见模型,为系统的审查和评价提供了有利的条件,也为软件开发人员和用户提供了交换信息的方便,为设计阶段提供了依据。

2)结构化方法的分析过程实际上是一个建模的活动,把系统自上向下逐层分解,逐步细化,从而获得一个分析模型。

3)结构化方法比较适用数据处理的领域。

为了适合用于实时控制系统,可以在数据流图中加入控制流,这是结构化方法的一种扩充。

4)用数据流图不适合描绘人机界面。

而且对大型软件项目,数据字典的规模相当庞大,人工管理非常困难,因此需要借助于软件开发工具。

5)用结构化方法建立的分析模型,只是提供人们阅读的书面文档,不能被机器阅读和运行。

15、请说说原型开发的一般过程。

原型开发的软件开发过程一般包括四个阶段:1)提出基本需求,建立原型目标。

2)定义原型功能,建造快速原型。

3)对模型进行检验,补充、细化需求。

4)按照改进的需求对模型进行改进、扩充,评估原型。

5)通过第3)、4)步骤的反复循环,最终形成完整、准确的需求,模型也就成为了符合要求的目标系统。

16、软件质量保证有哪些方法?评审测试17、人类对客观事物的认知过程主要有两种:1)从一般到特殊的演绎方法,2)从特殊到一般的归纳方法,18、面向对象分析方法的要点是什么?面向对象方法的主要优点是什么?利用“对象”的概念模型建立一个针对于问题域的模型,用户和软件工程师通过该模型进行交流。

通过在这么一个基于“对象”的问题域模型的基础上形成需求规格说明书。

面向对象分析方法使得软件工程师能够通过对象、属性和操作(作为主要的建模成分)的表示来对问题建模。

1)符合人类习惯的思维方法。

2)稳定性好。

3)可重用性好。

4)可维护性好。

5)可伸缩性。

19、用面向对象的用例方法进行需求分析根本要点是什么?面向对象方法中,需求导出和分析目的用例方法,其要点是:1)用例的重要功能是通过画用例图来鉴别和划分系统功能。

它把系统分成角色(actor)和用例(用例)。

2)角色(actor)表示系统用户能扮演的角色。

3)用例描述了当角色给系统特定的刺激时系统的活动,即一个用例描述了系统和一个角色(actor)的交互顺序。

4)用例被定义成系统执行的一系列动作,动作执行的结果能被指定角色察觉到。

20、使用用例开发系统的一般过程有哪些?1)识别角色来识别系统与外界交互的实体。

2)识别用例。

用例具有不同层次,对较为概括的用例,需要细化。

3)当用例细化到可以被理解的层次,需要基于用例进行下一步的开发。

用例主要用来描述交互,因此存在交互的实体和交互的细节。

交互的实体采用类图来描述;而交互的细节,采用顺序图来描述。

4)当系统复杂到一定层次时,类图和顺序图可能不能足以描述其复杂程度。

在该情况下,需要使用状态图来辅助阐述。

21、UML的定义及UML图的构成成份是哪些?1、UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。

UML适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。

2. UML 图的构成成分,UML的定义了5类10种模型图1)用例图:这是一种用户模型视图,用例图是系统功能的描述。

它从用户的角度描述系统的功能,并指出各个功能的操作者。

2)静态图:这是一种结构模型视图,这种图描述系统的静态结构。

有类图、对象图、包图。

3)行为图:这是一种行为(动态)模型视图,这种图描述系统的动态行为和组成系统的对象之间的交互关系。

行为图有状态图和活动图。

4)实现图:这是一种实现模型视图,这种图描述系统实现的信息,有构件图和配件图。

5)交互图:这是一种环境模型视图,表示系统的环境结构和行为,这种图描述系统对象之间的交互关系,有顺序图和合作图。

3.完整需求分析主要用五种图:用例图、类图、状态图、协作图和顺序图。

22、面向对象的分析模型主要有哪些子模型构成?它们分别是哪些图?由3类子模型构成,即:对象模型、动态模型和功能模型。

对象模型(Object Model)用于描述系统部对象的静态结构;动态模型描述软件系统的控制结构;功能模型描述软件系统必须要完成的功能。

对象模型由一组类图构成。

动态模型由一组状态图、顺序图等构成。

功能模型由一组数据流图构成。

23、如何建立用例图、类图?建立类图的工作步骤是:首先确定对象类和关联,对于大型复杂问题还要进一步划分若干个主题,然后给类和关联增添属性,以进一步描述它们,接下来利用适当的继承关系进一步合并和组织类。

而对类中操作的最后确定,则需要等到建立了动态模型和功能模型之后。

例如:学生管理系统用例图例[要有根据业务处理建立用例图、类图的能力]教师学生管理类图例:24、软件设计原则: 模块的独立性原则:所谓模块的独立性,是指软件系统中每个模块只涉及软件要求的具体子功能,而与软件系统中其他的模块的接口是简单的。

例如,若一个模块只具有单一的功能且与其他模块没有太多的联系,则称此模块具有模块独立性。

模块的耦合性,聚合性的概念,它们是对模块独立性的度量。

在进行软件设计过程中,力争松散(低)耦合,高聚。

25、软件设计种类传统的软件设计方法(结构化软件设计方法)、面向对象设计方法。

26、结构化程序设计有哪些设计类型?有:概要设计、详细设计27、面向对象软件设计有哪些设计类型?有:系统设计、对象设计28、面向数据流的软件设计方法是概要设计的一种方法,是基于分析模型,到设计模型的过程。

具体的就是通过数据流图到软件(模块)结构图。

[同学们应有该方法进行软件设计的能力]29、详细设计工具程序流程图、N-S图(合图)、PAD图(问题分析图)、PDL(伪代码)[同学们应有建立这些图,并这些图进行转换的能力]30、软件测试软件测试是在软件正式投入运行前,对软件的需求分析、设计规格说明和编码的最终复审,是质量保证工作最为关键的一个环节。

软件测试过程包括4个步骤进行:单元测试、集成测试(组装测试)、验收测试(确认测试)、系统测试软件测试方法有:白盒测试方法、黑盒测试方法31、测试和调试测试是为了发现错误而运行程序的过程调试是为了改正错误而对错误进行定位与修改程序,从而排除该错误。

32、(详细设计例)设计使用筛选法获取1~100之间素数的程序(可以根据下面的参考程序代码),要求使用PDL描述程序执行的各步骤,并画出N-S图或PAD图。

参考程序代码:素数也称为质数,是不能被从2开始到比自己小1的任何正整数整除的自然数,解决的算法描述如下:(1)构造外循环得到一个1~100之间的数i,为了减少循环次数,可跳过所有偶数;(2)构造循环得到一个2~m之间的数j, 令m=sqrt(i);(3)循环结束后判断j是否大于等于m+1,若是,则i必为素数,打印输出;否则再次进行外循环。

Java程序如下:public class sushu {public static void main(String[] args) {int n=0, m, i, j;for(i=3; i<=100; i+=2){m=(int)Math.sqrt((double)i) ;for(j=2; j<=m; j++){if((i%j)==0) break;}if(j>=m+1){System.out.print(i+" "); n++;}}//wai xun huan}}33、概要设计例:学生管理系统软件结构设计。

相关文档
最新文档