软件工程结构化建模的方法和工具_软件工程导论知识点梳理之概念题

b76ab254ba1016e89cd28f3f7a96d681.png

1. 软件的定义:软件是程序、数据及开发、使用和维护程序需要的所有文档的完整集合。

例:在信息处理和计算机领域内,一般认为软件是程序、文档数据

2.软件的分类:

  • 按照应用场景:系统/应用软件
  • 按照功能:服务类/维护类/操作管理类软件

3. 软件危机:计算机软件在开发和维护过程中遇到的一系列的严重的问题

4. 软件工程的定义:

软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

5. 软件生存周期:

是指某一项软件项目从被提出并着手实现开始,知道该软件报废或停止使用为止所经历的时间。

6. 模型:

是为了理解事物而对事物做出的一种抽象。

7. 可行性研究目的:

用最小的代价在尽可能短时间内确定问题能否得到解决;任务完成可行性研究报告;

方面:

  • 技术可行性(当前的技术研究是否支持)
  • 经济可行性(预算,成本,有形无形)
  • 操作可行性
  • 法律可行性

8. 系统流程图:

是描述物理系统的工具。数据流图是系统逻辑模型。

9. 成本效益分析通过货币的时间价值、投资回报期、纯收入三个方面进行分析。(是从经济角度评价开发项目是否可行)

10. 需求分析

确定系统必须完成哪些工作

具体任务:

  • 确定对系统的综合需求
  • 分析系统的数据需求
  • 建立软件的逻辑模型
  • 编写软件需求规格说明书
  • 需求分析评审。

常用方法:

  • 功能分解方法
  • 结构化分析方法
  • 信息建模方法
  • 面向对象方法

11. 结构化分析方法:

  • 数据流图
  • 数据字典
  • 结构化语言
  • 判定树和判定表
  • 运用自顶向下逐层分解的分析策略

12. 数据字典:

是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。给人提供数据描述,对数据存储和加工等名字命名。

数据流图和数据字典共同构成了系统的 逻辑模型,是需求规格说明书的主要组成部分。

13. 数据流图作用

作为交流信息的工具、作为分析和设计的工具

数据流图的基本组成部分有 数据的源点与终点、数据流、加工、数据文件

14. 软件结构中的一些概念:

深度:是指软件结构中模块的层次数;

宽度:是指同一层次中最大的模块个数;

扇出:一个模块直接调用的模块数目;

扇入:有多少个上级模块直接调用它。

如果一个模块被 n 个模块调用,其中直接的上级模块的个数是 m 个( m<=n )那么该模块的扇入数是 m 个。

15. 模块:

是软件的结构基础,是软件元素,是能够单独命名、独立完成一定功能的程序语句的集合。

特征:抽象,信息隐蔽。

模块化:是使得软件能够对付复杂问题所应具备的属性。

划分模块时尽量做到高内聚、低耦合,保持模块的独立性,尽量使用公共模块。

16. 软件模块独立性的度量标准:耦合和内聚

耦合:衡量不同模块彼此间互相依赖的紧密程度。

分类:a.无直接耦合,b.数据耦合,c.标记耦合,d.控制耦合,e.公共环境耦合,f.内容耦合。

内聚:模块内部各个元素之间的联系

分类:a.偶然内聚,b.逻辑内聚,c.时间内聚,d.通信内聚,e.顺序内聚,f.功能内聚

17. 软件结构设计的图形工具:软件结构图、层次图、hipo图。

结构化设计方法:数据流图

详细设计工具:图形(程序流程图、盒图NS、pad图)、表格、语言(过程设计语言pdl)

结构化设计以 数据流图为基础,按一定的步骤映射成软件结构。

18. 人机界面设计问题:系统响应时间、用户帮助设施、出错信息处理、命令交互

19. 程序设计风格方面:

  • 程序内部文档(标识符的选取、程序的注解:序言性,功能性、程序的布局)
  • 数据说明
  • 语句构造
  • 输入输出
  • 效率

20. 软件测试方法:

  • 动态测试(黑盒、白盒)
  • 静态测试(人工测试、计算机辅助静态分析)

21. 白盒技术:

  • 逻辑覆盖(a.语句覆盖,b.判定覆盖,c.条件覆盖,d.判定条件覆盖,e.条件组合覆盖,f.路径覆盖)
  • 循环覆盖(单循环和嵌套循环)
  • 基本路径测试

22. 黑盒技术:

  • 等价类划分
  • 边界值分析
  • 错误推测
  • 因果图

23. 软件测试过程:

单元测试-->集成测试-->确认测试-->系统测试

单元测试:软件基本组成单元的测试

集成测试:用于组装软件的一种系统化的技术,要把在模块按照设计要求组装起来的同时进行测试,用以发现和接口相联系的问题。(非渐增式/渐增式测试)

确认测试:检查所开发的软件是否满足需求规格说明书中所确定的功能和性能需求。

21. 调试:

测试发现错误之后排除错误的过程。

测试的目的是为了找出软件中存在的错误,调试的目的是为了存在的错误。

常用的调试技术:简单的调试技术、消去原因法(归纳法、演绎法)

22. 软件维护:

在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程.

分类:改正性、适应性、完善性、预防性维护

软件维护工作的生产性活动包括 分析评价、修改设计和编写程序代码

23. 软件可维护性特性:

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

维护的副作用:修改代码/数据/文档的副作用

软件维护工作量模型:M=P+k*e^(C-D)

适应性维护:

为了使应用软件适应计算机环境的变化而修改软件的过程称为适应性维护。

24. 面向对象分析方法的概念:

类:对具有相同数据和相同操作的一组相似对象的定义。

类的实例化是对象

对象:是问题域中客观存在的事物的抽象,是一组属性和在这些属性上的操作的封装体。

消息:消息是面向对象系统中对象之间交互的途径,是向另外一个对象发出的服务请求。

封装:是指把对象的属性和操作结合成一个独立的系统单位,并尽可能隐藏对象的内部细节。

面向对象分析的目的是对客观世界的系统进行 建模

26. 类和类关系:继承、多态性、关联、依赖、实现、聚集和组合

面向对象开发方法:Booch、Coad、OMT、OOSE

27. UML:

一种编制软件蓝图的标志化语言

RUP:初始、细化、构造、交付阶段

28. 软件工程的四种模型:用例模型、对象模型、动态模型、物理模型

对象模型是必须建立的,是核心模型之一,用例模型指明系统应该做什么

29. 用例之间的关系:包含、使用、扩展和泛化(包含和扩展)

30. 投资回收期:

就是使累计的经济效果等于 最初投资费用 所需要的时间。

31. 结构化分析方法:

就是面向数据流自顶向下、逐步求精进行需求分析的方法。

32. 软件的生命周期:一个软件从定义、开发、使用和维护,直到最终被废弃所经历的一系列时期。

软件生存周期是指一个软件从提出开发要求开始直到软件废弃为止的整个时期。

33. 投资回收期:就是使累计的经济效果等于最初投资的需要的时间。

34. 结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。

35. 事务流:

数据沿输入通路到达一个处理,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行。这类数据流应该划分为一类特殊的数据流,称为事务流。

36. 事件:

是某个特定时刻所发生的事情,它是对引起对象从一种状态转换到另一种状态的现实世界中的事件的抽象。

37. 函数重载:

指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。

38. 存根模块:

用以模拟被测模块运行过程中所调用模块或是被测模块下层模块的替代程序。

38. 存根模块:

用以模拟被测模块运行过程中所调用模块或是被测模块下层模块的替代程序。

39. 变换流:

信息沿输入通道进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统,当数据流图具有这些特征时,这种信息流就叫变换流。

40. 多态性:

子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。

41. 驱动模块:

用以模拟被测模块的上级调用模埠,或向被测模块输以数据输出一些必要信息,调用被测模块。

42. 可靠性的两个指标成功地运行的概率 平均无故障时间

人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将它们加起来

43. 成本估算方法

就方法论而言,有两种基本的成本估算方法:自顶向下和自底向上。 自顶向下法是对整个工程项目的总开发时间和总工作量做出估算,然后将它们按阶段、步骤和任务进行分配。 自底向上法则正好相反,先分别估算各个任务所需要的工作量和开发时间,再相加,从而得到总的工作量和总的开发时间。这两种方法都要求采用某种方法做出估算。 有许多估算方法可以利用,大致划分为三类:专家估算法、类推估算法、算式估算法

先分别估算各个任务所需要的工作量和开发时间,再相加,从而得到总的工作量和总的开发时间 这种成本估算方法称为 自底向上

44. 软件的风险分析可包括 风险识别、风险预测和风险驾驭(或风险管理)等3项活动。

45. 软件著作权登记的3种主要类型:

  • 著作权登记
  • 著作权延续登记
  • 权利转移备案登记

46. 软件工程管理的主要内容有:

  • 项目经费管理
  • 软件质量管理
  • 项目进度管理
  • 人员管理

47. 模块的内聚性

顺序内聚指一个模块中各个处理元素都密切相关于同一功能且必须 顺序执行 ,前一功能元素的输出就是下一功能元素的输入。

一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是 顺序内聚
在用程序流程图设计模块时,若将程序流程图中的一部分划出各自组成模块,便形成过程内聚。

48. 曾被誉为“程序设计方法的革命”的 结构化程序设计,使程序设计从主要依赖于程序员个人的自由活动变成为有章可循的一门科学。

从 结构化程序设计 到 面向对象程序设计,是程序设计方法的又一次飞跃。

49. 在单元测试时,需要为被测模块设计 测试用例

50. 人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/559613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

xcode w情ndows版,xcode Windows版安装使用介绍

在Windows安装xcode进行开发iOS应用可以省去昂贵的苹果机、体验虽然没那么好&#xff0c;但也能用。现在也有很多APP跨平台开发工具&#xff0c;在Windows就能完成开发测试&#xff0c;但上架iOS APP还是得要Mac苹果电脑去申请iOS证书和上传IPA到App Store。苹果电脑价格昂贵&a…

esp mounter pro_对比 | 以大欺小?剑指宋Pro和哈弗H6,欧尚X7的黑马潜质从何而来?...

随着近几年国内SUV市场的火爆&#xff0c;各个品牌也都先后推出并持续更新着自家的紧凑型SUV产品&#xff0c;目前在该细分领域里&#xff0c;哈弗H6一直都是稳居榜首的存在&#xff0c;作为后起之秀的比亚迪宋Pro则紧随其后。但在长安发力战略布局后&#xff0c;长安欧尚X7便以…

randomized algorithms 有哪些_毛毯分类有哪些 毛毯的种类

毛毯分类有哪些 毛毯的种类毛毯分类有哪些 毛毯的种类 a)毛毯分为双人毛毯、单人毛毯、童毯等多种规格。 b)按用途还可以床毯、膝毯、沙滩毯等。 c)毛毯还可以进行特殊整理:阻燃毛毯、防菌整理、负离子整理等等。 d)下面我按织造方式进行介绍: 一.机织毛毯 1.按原料分 羊毛毛毯…

floodlight ovs 更改拓扑_淘宝更改类目降权多久?被降权了怎么办?_推广运营(淘宝天猫)...

现在淘宝 (淘宝论坛)店主在经营店铺的过程中&#xff0c;会考虑将自己特别店铺进行类目的更改&#xff0c;那么也有一点店主会担心到如果淘宝更改类目会被降权吗?如果被降权了怎么办呢?那就一起了解具体的内容吧!跟大家分享一些淘宝宝贝被降权的处理方式&#xff1a;1、虚假销…

android 事务管理软件,安卓 Android基于安卓移动终端的个人事务管理系统

摘 要随着移动平台的崛起&#xff0c;越来越多的传统PC软件被移植到移动平台&#xff0c;比如ipad&#xff0c;iphone&#xff0c;Android等智能终端设备&#xff0c;在这些平台中&#xff0c;Android占领着最大的市场份额&#xff0c;所以为Android用户开发满足日常使用的软件…

word无法打开请去应用商店_word软件是什么?word文档是什么?可以用来干什么?...

1、为什么需要Microsoft Word&#xff1f;仅在计算机上安装操作系统不足以提高生产力。无论是创建电子表格&#xff0c;演示文稿&#xff0c;电子邮件还是文档&#xff0c;您都需要软件来执行所需的任何活动。Microsoft Word用于创建文档或您需要存储文本的任何内容。如果您购买…

android四个按钮平分,android 水平平分两个按钮

项目中需要显示水平两个按钮&#xff0c;且都要有间距&#xff0c;如下图所示&#xff1a;首先我想到的是使用权重&#xff0c;然后利用水平布局&#xff0c;这样应该可以实现&#xff0c;但真实的情况是这样的&#xff0c;代码如下&#xff1a;android:layout_width"fill…

iPhone清理喇叭灰尘_iphone正确清理扬声器灰尘的方法

夏天来临各种各样的手机问题就都出现了&#xff0c;手机发热已经成为了热议话题&#xff0c;网上的妙招也是层出不穷甚至有销售水冷装置风扇手柄的&#xff0c;或者diy给手机加铜钹&#xff0c;又或者使用石墨烯等等的方法&#xff0c;但还是避免不了发热&#xff0c;除手机发热…

Android搭建web,Android手机搭建WEB环境

原文&#xff1a;http://yangshare.com/Y-BLOG/?p246#more-246准备1、下载Android处理器对应的jdk包&#xff0c;类似树莓派archandroidlocalhost:~$ archarmv7l下载地址&#xff1a;jdk-8u152-linux-arm32-vfp-hflt.tar.gz2、安装一个xftp或者宝塔面板这样的文件操作工具xftp…

qq浏览器网页版_QQ邮箱回应部分用户登录异常:系后台服务波动,问题已解决...

5月6日消息&#xff0c;针对用户反映QQ邮箱登录异常情况&#xff0c;腾讯QQ邮箱官方回应称&#xff0c;因后台服务波动&#xff0c;部分用户出现登录异常情况&#xff0c;目前问题已解决。5月6日上午&#xff0c;有网友反映QQ邮箱崩溃&#xff0c;换浏览器依然无法登录&#xf…

android nfc ndef mifareclassic,Android NFC开发-实践篇

Android NFC开发-实践篇https://blog..net/_GYG/article/details/72899417在Android NFC开发-理论篇中&#xff0c;我们了解了在Android中开发NFC的一些理论知识&#xff0c;这篇我们继续应用我们上一篇学到的知识&#xff0c;实现对NDEF格式标签和MifareClassic格式标签的读写…

苹果6换屏多钱_苹果手机屏幕碎了怎么办?维修更换要多少钱

手机在使用过程中最容易发生的意外就是手滑摔碎屏幕了&#xff0c;那么苹果手机屏幕碎了碎了&#xff0c;维修更换要多少钱&#xff1f;大家都知道&#xff0c;苹果手机摔坏&#xff0c;进水均属于人为损坏&#xff0c;人为损坏不属保修范围&#xff0c;接下来针对苹果手机屏幕…

harmonyos sdk,HarmonyOS SDK对应的API版本跃迁引发的历史工程适配问题解决方案

历史工程自动适配由于最新版本的HarmonyOS SDK对应的API Version发生了跃迁&#xff0c;原有的API Version 3变成了当前的API Version 4&#xff0c;原有的API Version 4变成了当前的API Version 5。因此&#xff0c;使用最新版本的DevEco Studio打开历史工程&#xff0c;需要对…

dataframe 拼接_拼接关系图在石材生产过程中的重要性

石材生产加工中应用许多图&#xff0c;石材纹理图、平面面置图、平面图、立面图、剖面图&#xff0c;这些图对石材生产加工都有很大的帮助&#xff0c;发挥着各自的作用&#xff0c;担负着各自的角色。除了这些图外&#xff0c;石材生产加工中还有一种图—拼接关系图&#xff0…

app名字变为android+api,一起来做个app吧 wanandroid开放API

由于早期开放的一些API页码为0开始&#xff0c;后期接口修改为从1开始&#xff0c;为了兼顾之前的开放API&#xff0c;故无法统一。对于POST接口建议使用postman模拟在编写过程中如果遇到一些问题&#xff0c;也有一些参考项目&#xff0c;这里针对Java和Kotlin各自选择了一款&…

php 武汉海关对接_“双11”临近 海口海关全力备战跨境电商监管高峰

中新网海南新闻11月6日电(李佳臣)海口海关6日发布消息称&#xff0c;面对“双11”这一中国电商行业的年度盛事&#xff0c;海口马村港海关已做好准备&#xff0c;确保“双11”期间跨境电商业务24小时即时通关&#xff0c;包裹通关、出区“零等待”。为迎接即将到来的“双11”网…

嵌入式全栈工程师_我花了半个月,整理出了这篇嵌入式开发学习指南(学习路线+知识点梳理)...

不好意思久等了这篇文章让小伙伴们久等了。一年多以来&#xff0c;关于嵌入式开发学习路线、规划、看什么书等问题&#xff0c;被问得没有一百&#xff0c;也有大几十次了。但是无奈自己对这方面了解有限&#xff0c;所以每次都没法交代&#xff0c;搞得实在不好意思。但是办法…

java面试题_1000道Java工程师面试题+答案PDF485页

说实话&#xff0c;作为一名 Java 程序员&#xff0c;不论你需不需要面试都应该好好看下这份资料。我大概撸了一遍&#xff0c;真的是堪称典范。就目前国内的面试模式来讲&#xff0c;在面试前积极的准备面试&#xff0c;复习整个 Java 知识体系将变得非常重要&#xff0c;可以…

html5小游戏是用js做的吗,谁说做H5动画和游戏一定要canvas?

2021.05.06-更新了底层&#xff0c;使用起来更加方便&#xff0c;还可以使用oop的继承&#xff0c;增加了一个新demo/----------------------------------------以下原文内容------------------------------------------/记得上上个礼拜&#xff0c;我在createjs的技术群里说了…

单变量和多变量财务预警模型_SPSS数据分析,基于判别分析上市公司财务危机预警分析...

研究概述财务危机(Financial crisis)又称财务困境(Financial distress)&#xff0c;是指企业由于营销、决策或不可抗拒因素的影响&#xff0c;使经营循环和财务循环无法正常持续或陷于停滞的状态&#xff0c;具体表现包括持续性亏损、无偿付能力、违约和破产等。研究意义财务危…