精华内容
参与话题
问答
  • 实用软件工程张海藩)课后答案

    千次阅读 2019-12-22 21:17:03
    实用软件工程张海藩)课后答案

    实用软件工程(张海藩)课后答案
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 软件设计、测试和维护 ​ 面向数据流的软件设计模式可将 数据流 映射软件结构。 软件模块的独立性由内聚性和耦合性来衡量: 内聚性:模块的功能强度(模块内各元素之间彼此结合得紧密程度) 耦合性:模块间相连...

    软件工程复习

    (内容有出入,某些按自己理解简写)


    1-2章 软件工程概述,可行性研究及需求分析


    1. 软件工程三要素:方法、过程和工具

    2. 软件工程研究的内容:方法与技术、工具与环境、管理技术、标准与规范

    3. 软件危机的主要原因是:软件本身的特点以及开发方法

    4. 软件生命周期:可行性研究,需求分析,软件设计,编码,软件测试,软件维护

    5. 软件生命周期模型:

      瀑布模型 模型简单,执行容易,但无法适应变更
      快速原型模型 完成的功能往往是最终产品能完成的功能的子集
      增量模型 将待开发的软件系统模块化和组件化
      螺旋模型 每个阶段前增加一个风险分析
      喷泉模型 体现面向对象软件开发过程迭代和无缝的特性
    6. 软件过程是软件开发活动的集合。

    7. 数据流图(DFD)是进行软件需求分析的常用工具,基本的图形符号是加工、数据流、数据存储和外部实体。

    8. 在需求分析中建模方法:数据流图(DFD),状态转换图(STD),实体关系图(ER),控制流图(CFD)

    9. 需求分析中主要描述手段:DFD,数据字典,加工说明

    10. 软件工程需求分析阶段:分析系统的数据要求,确定系统的功能需求,确定软件系统的性能要求

    11. 需求分析的主要方法有结构化分析方法(SA),考虑数据和处理的需求分析。

    12. 软件需求规格说明书的内容包括:对重要功能的描述,对数据的要求,软件的性能

    13. 需求规格说明书可以作为软件可行性研究的依据。

    14. 软件危机的主要表现是软件需求增加,软件价格上升


    第3-5章   软件设计,编码实现,测试和维护


    1. 面向数据流的软件设计模式可将 数据流 映射软件结构。

    2. 软件模块的独立性由内聚性和耦合性来衡量:

      内聚性:模块的功能强度(模块内各元素之间彼此结合得紧密程度)

      耦合性:模块间相连程度的度量。

      ​ 在软件设计时,应该提高模块的内聚程度,高内聚低耦合

      耦合程度 小 —>大 : 数据,控制,公共,内容。

    3. Jackson方法是根据 数据结构 导出程序结构。

    4. 在面向数据流的软件设计方法中,一般将信息流分为变换流和事务流

    5. 软件实现软件设计的结构翻译成一种程序设计语言的代码。

    6. 软件测试的目的是为了发现软件的错误(找出软件中所有的错误是不可能的

    7. 白盒法又称为逻辑覆盖法,主要用于单元测试。

      ​ 白盒测试要对系统内部结构工作原理有一个清楚的了解。

      ​ 白盒测试有多种技术:代码检查法,基本路径测试,逻辑覆盖测试。

      ​ 白盒测试是根据程序的 内部逻辑 来设计测试用例的。

    8. 黑盒测试又称为功能测试,主要关注功能的实现。

      ​ 黑盒测试又分为:等价类划分法,边界值分析法,错误推断法,因果图法,决策表法,场景法等。

    9. 下面给出黑盒测试与白盒测试的差别。

      黑盒测试 白盒测试
      不涉及程序结构 考察程序逻辑结构
      软件规格说明书生成测试用例 程序结构信息生成测试用例
      可适用于从单元测试到系统验收测试 主要适用于单元测试和集成测试
      某些代码段得不到测试 对所有逻辑路径进行测试
      用户观点测试 管理者角度测试
    10. 成功的测试需要在运行测试用例发现程序的错误

    11. 软件集成测试交给不属于该软件开发组的软件设计人员承担,可以提高集成测试的效果。

    12. 集成测试的主要方法有:渐增式测试方法,非渐增式测试方法。

    13. 软件测试的目的是尽可能发现软件中的错误,通常单元测试是代码编写阶段可进行的测试,它是整个测试工作的基础

    14. 单元测试不能完成的测试是系统功能

    15. 软件维护的副作用—修改软件而造成的错误(Bug越改越多)

    16. 影响软件可维护性的主要因素:可修改性,可测试性,可理解性

    17. 测试用例由输入数据预期输出结构两部分组成。

    18. 功能测试系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。

    19. 划分模块虽然可以降低软件设计的复杂性和工作量,但是会增加软件成本。

    20. 软件设计说明书不是软件概要设计的主要成果。

    第6-7章   面向对象和UML,面向对象软件设计和实现


    1. 面向对象技术中,对象是类的实例,对象有三种成分:封装,属性,方法

    2. 面向对象特征:多态性,继承性,封装性,对象唯一性,抽象性。

    3. 面向对象模型主要包括: 对象模型(o)、动态模型(d)、功能模型(f)。

    4. 封装把对象的属性和操作结合在一起,构成一个独立的对象。

      内部信息对外界隐藏,外界只能通过接口与对象发生联系。

    5. 关联是建立 之间的关系。

    6. 所有的对象可以成为各种对象类,每个对象类都定义了一组方法

    7. 通过执行对象的操作可以改变独享的属性,但它必须通过消息的传递。

    8. UML是软件开发中的一个重要工具,它主要应用于基于对象的面向对象方法

    9. UML图:

      • 用例图
      • 静态图:类图,对象图
      • 行为图:状态图,活动图
      • 交互图:顺序图,协作图
      • 实现图:构件图,部署图
    UML 图 功能
    用例图 从用户使用系统的角度描述系统功能的图形表达方法
    类图 表达系统类及其相互联系的图(面向对象设计的核心)
    对象图 对象是类的实例,对象间连接是类之间关联的实例
    状态图 描述一个特定对象的所有可能状态和引起状态转换的事件
    顺序图 描述对象之间的动态交互关系,着重表现对象间消息传递的时间顺序
    活动图 活动图描动作及动作间关系
    协作图 描述相互协作的对象间的交互关系和链接关系
    构件图 描述软件构件间的依赖关系
    部署图 描述处理器、硬件设备和软件构件运行时的构架
    1. 面向对象分析首先要建立 问题的对象模型

    2. 面向对象分析阶段建立的模型中,核心是对象(生活中也是)。

    3. 面向对象的动态模型中,每张状态图表示某一个类的动态行为。

    4. 动态模型着重于系统的逻辑控制,它包括事件追踪图状态图

    5. 对象模型的描述工具是对象图

    6. 功能模型中的数据流图(DFD),往往形成一个层次结构。

    7. 面向对象设计阶段的主要任务是系统设计对象设计

    8. 只有类的共有界面的成员才能成为使用类的操作,这是软件设计的信息隐藏原则。

    9. 对象的属性集合是它的特征表示。

    10. 面向对象程序设计语言不同于其他语言的主要特点是继承性

    11. 面向对象的测试与传统测试方法的主要区别是测试对象不同

    12. 面向对象分析与设计活动是一个多次反复迭代的过程。


    第8章  软件工程管理


    1. 软件工程针对维护工作的主要目标是:提高软件的可维护性,降低维护的工作量。

    2. 度量的作用是为有效地、定量地进行软件工程过程管理。

    3. LOC和FP是两种不同的估算技术 ,两者对分解所需要的详细程度不同。

    4. 风险管理过程:规划,识别 ,评估

    5. 按照人家配置管理的原始指导思想,受控制的对象应该是软件配置项

    6. 常用的评估软件质量的因素:可理解性,可靠性,可维护性

    7. 基线是通过了正式复审软件配置项(基线形成前可以快速修改)。

    8. 使用软件时提出增加新功能就必须进行完善性维护。

    9. 软件文档不仅是软件开发各阶段的重要依据,也影响软件的可维护性。

    10. 影响软件维护的主要因素:可修改性,可测试性,可理解性

    11. CMM表示软件过程成熟度模型(Capability Maturity Model Integration)。

    12. 代码行技术是比较简单的估算软件规模的方法。

    前面没有提到的一些重点问题


    1. 敏捷软件开发过程的核心价值观:
    • 个体与交互胜于流程与工具

    • 可工作的软件胜于面面俱到的文档

    • 客户协作胜于合同谈判

    • 响应变化胜于遵循计划

    1. 如何理解需求分析的作用和重要性。 需求分析的难点在哪里?
    • 作用:避免需求中的错误,高效发开软件。

    • 重要性:能减少软件开发费用,提高软件质量,确保软件开发的正常进行。

    • 难点:

      • 用户和开发人员间存在交流障碍
      • 用户对需求的陈述不完整
    1. 简述结构化分析方法的基本思想,其建模方法有哪些?
    • 基本思想: 对于一个复杂的系统,按照其内部数据的流动和处理过程,采用“抽象”和“分解”的手段,首先“抽象”得到系统的高层逻辑模型,之后采用自顶向下逐步求精的方法,对系统逻辑模型逐层不断“分解”细化,直到不能再细化为止,即可得到系统最底层的详细逻辑模型。对系统结构化分析的成果通常采用数据流图和数据字典来表示。
    • 建模方法:数据流图(DFD),状态转换图(STD),实体关系图(ER),控制流图(CFD)。
    1. 简述软件设计的 7 条启发式规则?
    • 改进软件结构提高模块独立性
    • 模块规模应该适中
    • 深度、宽度、扇出和扇入应适当
    • 模块的作用域应该再控制域之内
    • 降低模块结构的复杂度
    • 设计单出入口的模块
    • 模块功能应能预测
    1. 要形成良好的编码风格可以从哪些方面做起?
    • 程序内部文档
    • 数据说明
    • 语句构造
    • I/O
    • 效率
    1. 在选择编程语言时,要考虑哪些因素?
    • 项目的应用范围
    • 用户的要求
    • 软件开发人员的爱好和能力
    • 系统的可移植性要求
    • 算法和数据结构的复杂性
    • 平台支持
    1. 面向对象设计的准则?
    • 模块化

    • 抽象

    • 信息隐藏

    • 弱耦合

    • 强内聚

    • 可重用

      1. 简述面向对象测试策略的特点。
      • 面向对象的单元测试
      • 面向对象的集成测试
      • 面向对象的确认测试
    1. 目前项目开发时常用的小组组织方法有哪些?
    • 民主制程序员组
    • 主程序员组
    • 现代程序员组。
    1. 简述软件文档的意义?合格的软件工程文档的特性?
    • 意义:在软件开发工作中具有突出的地位和相当的工作量。
    • 特性:
      • 及时性
      • 完整性
      • 实用性
      • 规范性
      • 结构化
      • 简洁性
    1. 什么是软件质量?软件质量保证措施有哪些?
    • 软件质量:软件与明确地和隐含地定义的需求相一致的程度。
    • 措施:
      • 正式技术复审
      • 程序正确性证明
    1. 什么是模块化?模块化有什么好处?
    • 模块化:开发具有独立功能而且和其他模块之间没有过多的相互作用的模块。
    • 好处:
      • 有效模块化的软件容易开发
      • 容易测试和维护

    一些习题


    • 旅行社把预订机票的旅客信息(姓名、年龄、单位、身份证号码、旅行时间及目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应付的账款)。旅客在飞机起飞的前一天凭取票通知单交款取票,系统检验无误,输出机票给旅客。
      请画出系统的顶层数据流图、0 层数据流图。

    在这里插入图片描述

    • 某高校学籍管理系统用于各个学院对每一位学生的入学、毕业、每学期考试成绩、升留级等事项进行处理,包括录入学生基本信息、存储学生基本情况例如,学生各科成绩等;查询学生各科成绩、单科成绩;打印学生名单、学生成绩单;统计班平均成绩、各科平均成绩;根据分数进行升留级处理等功能。 具体描述:

      学籍管理系统细分为录入、存储处理、查询处理,升留级处理和统计处理。

      (1)录入、存储处理首先对学生信息进行审查,如果是新生,则录入、存储新生的信息。并写入学生记录文件;否则,从学生成绩文件中读该学生的各科成绩,输出学生记录表及成绩单。

      (2)查询处理接收学生学号和课程号,并进行有效性检查,如无效,则拒绝接受;否则按照查询要求从学生成绩文件中读取成绩并打印成绩单。

      (3)升留级处理接收学生成绩,并从成绩标准文件中读取信息,判断该学生是否升级,形成升留级名单,并更新学生记录。

      (4)统计处理接收学生记录,根据统计选择进行班平均成绩和各科平均成绩的统计,形成相应的统计表。

      请画出该学籍管理系统的三层数据流图。

    在这里插入图片描述

    • 某高校学生档案管理系统的主要功能有:

      (1)对学生档案信息的增加、删除和修改;

      (2)对学生信息的查询和打印;

      (3)对学生信息的统计和打印;

      (4)此外,本系统还应该能与其它系统共享部分数据。

      请画出此系统的顶层数据流图、0 层数据流图。

    在这里插入图片描述

    • 某高校学生档案管理系统的主要功能有:

      (1)对学生档案信息的增加、删除和修改;

      (2)对学生信息的查询和打印;

      (3)对学生信息的统计和打印;

      (4)此外,本系统还应该能与其它系统共享部分数据。

      请设计出学生档案管理软件的系统结构图。

      在这里插入图片描述

    • 在自动饮料售货机中,除了买饮料的顾客,还有以下活动者:

      (1) 供应商,向自动饮料售货机添加饮料

      (2) 收银员,从自动饮料售货机收钱。

      后面两类人在使用自动饮料售货机时,都涉及打开和关闭该机器。请画出它们的用例图。

    在这里插入图片描述

    某校图书管理系统具有以下功能:

    (1)借书:先为读者办理借书证,借书证上记录读者姓名、学号、所属系和班级等信息。

    借书时根据读者的借书证查阅读者档案,若借书数目未超过规定数量,则办理借阅手续,修

    改库存记录及读者档案;若超过规定数量则不予借阅。

    (2)还书:根据读者书中的条形码,修改库存记录及读者档案,若借阅时间超过规定期限

    则罚款。

    (3)图书管理员还要定期生成订书清单,包括书名、图书代号、单价、数量等,根据需要

    向供应商订购图书。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gEepZtWk-1605532629335)(C:\Users\77010\AppData\Roaming\Typora\typora-user-images\image-20201116193252020.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-32C8dxet-1605532629335)(C:\Users\77010\AppData\Roaming\Typora\typora-user-images\image-20201116193310618.png)]

    展开全文
  • 2《软件项目投标书》 6 3《软件产品开发任务书》 7 4《软件开发计划书》 10 5《用户需求报告》 14 6《需求规格说明书》 18 7《需求报告 / 需求规格说明书评审记录表》 22 8“图书馆信息系统” 24 9《概要设计说明书...
  • 实用软件工程

    2011-09-11 22:46:54
    实用软件工程 教程 描述了软件工程的流程和具体实施
  • 实用软件工程 第2版 郑人杰

    热门讨论 2012-09-21 16:25:51
    本书是《实用软件工程》的第2版,本书第一版出版后,被许多学校和培训班作为软件工程课程的 教材而受到欢迎。第二版在保持第一版的易懂和实用的风格外,增加了软件工程近期发展的新资料。本书从软件的开发、维护和...
  • 《软件工程》— 实用软件工程——习题答案

    万次阅读 多人点赞 2017-06-18 17:45:09
    实用软件工程——课后习题答案 软件工程(英语:Software Engineering[1])1968年秋季,NATO(北约)的科技委员会召集了近50名一流的编程人员、计算机科学家和工业界巨头,讨论和制定摆脱“软件危机”的对策。在那...

    实用软件工程——课后习题答案

    软件工程英语:Software Engineering[1])1968年秋季,NATO(北约)的科技委员会召集了近50名一流的编程人员、计算机科学家和工业界巨头,讨论和制定摆脱“软件危机”的对策。在那次会议上第一次提出了软件工程(software engineering)这个概念,研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得最好的技术方法结合起来的学科。它涉及到程序设计语言数据库软件开发工具系统平台、标准、设计模式等方面。

     

     

     

    展开全文
  • 软件工程实用书籍,知识全面,适合于于软件设计师。字迹清晰,书签全面,阅读方便。
  • 实用软件工程-郑人杰

    2017-06-10 10:49:11
    实用软件工程
  • 本书从实践的角度详细介绍软件工程的方方面面。第一部分讨论软件生命周期、建模语言、工程工具、项目计划和过程管理等基础知识,后三个部分围绕案例分析介绍软件工程的实践过程与方法。本书内容由浅入深、逐层展开,...
  • 实用软件工程第二版 所有的ppt形式的文件以及相关的实验工具使用的ppt。
  • 本书是《实用软件工程》的第2版,本书第一版出版后,被许多学校和培训班作为软件工程课程的 教材而受到欢迎。第二版在保持第一版的易懂和实用的风格外,增加了软件工程近期发展的新资料。本书从软件的开发、维护和...
  • 软件工程师实用日语

    2014-01-21 08:55:20
    软件工程师实用日语》这本书共分为25课,囊括了软件工程师在日常开发过程当中所要用到的日语:从数据结构与算法到计算机系统,从系统应用到系统开发,再到项目管理,再到网络技术,再到计算机安全等常见开发用语,...
  • 实用软件工程(第4版)习题解答
  • 实用软件工程(第二版)课后习题答案

    热门讨论 2011-05-05 19:04:55
    实用软件工程(第二版)课后习题答案 希望改答案能帮你学习
  • 实用软件工程》 软件工程课后选择题判断题答案 张海潘 吕云翔
  • 张海潘 吕云翔
  • 参考书目:《实用软件工程》  出版社:人民邮电出版社 编著:张海藩 吕云翔 --------------- 很认真排版的期末模拟考试题,供大家参考!
  • 实用软件工程作业

    2008-06-10 21:10:18
    很希望能对您有用,谢谢。
  • 实用软件工程》导图总结

    千次阅读 热门讨论 2013-12-01 11:20:32
    因为写《机房收费系统》的开发文档的关系,同时也是这阶段学习所必须的,最近看了郑仁杰的《实用软件工程》。花了三四天的时间整理了一下自己都不想仔细看的笔记,当然现在看着还行;有花了两天的时间画了这张导图。...

             因为写《机房收费系统》的开发文档的关系,同时也是这阶段学习所必须的,最近看了郑仁杰的《实用软件工程》。花了三四天的时间整理了一下自己都不想仔细看的笔记,当然现在看着还行;有花了两天的时间画了这张导图。通过相关视频的学习我对软件工程有了初步的认识,理论知识是学了一些,但是还没有经过实践的检验关于“面向对象”这四个字也一直理解不够深刻。

             软件工程说的简单点就是因为软件而产生的一门工程学科,他服务于软件的开发与运行维护。知识点很多我就不一一罗列,下面的思维导图代表了我对有关这本书的学习视频的一些理解。(欢迎交流)


    展开全文
  • 软件立项与合同 可行性分析 1.经济可行性分析(成本、效益、货币的时间价值、投资回收期、纯收入) 2.技术可行性分析(风险分析、资源分析、技术分析) 3.法律可行性分析 软件需求分析 1.需求分析基本概念 ...
  • 软件工程实用教程

    2013-09-07 21:29:41
    本套教材是针对培养应用性人才的院校和高职高专院校的教学特点组织 编写的, 包括了计算机专业和非计算机专业的教材和参考书
  • 高质量全本答案,可以参照。实用软件工程第3版 赵池龙等编著
  • 参考书目:《实用软件工程》 出版社:人民邮电出版社 编著:张海藩吕云翔 --------------- 很认真写的期末考试总结,供大家参考! 目录 第一部分:概念 第二部分:试卷 第一部分:概念 · 软件包括程序、...
  • 实用软件工程课后答案 (张海潘 吕云翔)

    千次阅读 多人点赞 2019-06-30 13:24:07
  • 大连理工大学 软件工程课后答案
  •                                  
  • 一个完整的软件工程校园导游系统课程设计 学生可以直接下载使用 极为方便
  • 内容未完,待续。

空空如也

1 2 3 4 5 ... 20
收藏数 2,080
精华内容 832
关键字:

实用软件工程