![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件工程
文章平均质量分 60
Arsoning
咱就是说,哎,就是那个
展开
-
我以为的软件项目管理
我以为的软件项目管理古人有言以小可见大,为了初步了解什么是软件项目管理,我们以“成功烹调一道豆瓣鱼”为此次项目标题进行模拟。所谓项目就是为了创造一个唯一的产品或者提供一个唯一的服务而进行的临时性的努力,在这里我的项目就是为了创造一个唯一的豆瓣鱼菜产品。软件项目管理包括:启动过程组,计划过程组,执行过程组,控制过程组,收尾过程组。1启动过程组,确定“成功烹调一道豆瓣鱼”项目开始,并要求着手实行;定义此次项目是一项课程作业,项目由课程教师全权授权于本人完成。2计划过程组,为完成项目所要达到的商业要求是项原创 2022-03-01 11:20:00 · 93 阅读 · 0 评论 -
什么是MTTF、MTTR、MTBF?
MTTFMTTF (Mean Time To Failure ,修复前平均时间)是指某个元件预计的可运作平均时间。硬体元件故障通常是永久的,因此通常修复或替换该元件所需的时间也很重要,也就是修复前平均时间,即寿命均值。计算MTTRMTTR ( mean time to restoration,平均恢复前时间), 源自于IEC 61508中的平均维护时间(mean time to repair), 目的是为了清楚界定术语中的时间的概念, MTTR是随机变量恢复时间得期望值。它包括确认失效发生所必需的转载 2021-11-16 11:51:42 · 2815 阅读 · 0 评论 -
论对形式化方法解析。
形式化方法大神E.W.Dijkstra曾提出一个著名论断:程序测试只能证明错误的存在,但不能证明错误不存在。起源及发展是的,错误无法被避免,但可以尽可能减少。时间进程20世纪50年代后期J.Backus提出BNF描述Algol60语言的语法,出现了各种语法分析程序自动生成器以及语法制导的编译方法。20世纪60年代后期针对当时所谓“软件危机”。深入探讨程 序和程序开发过程的规律,建立严密的理论,以其用来指导软件开发实践——这一解决方法推动进一步发展往后的研转载 2021-04-19 22:57:24 · 196 阅读 · 0 评论 -
什么是WBS?
什么是WBS?工作分解结构(Work Breakdown Structure, WBS)以可交付成果为导向对项目要素进行的分组,它归纳和定义了项目的整个工作范围每下降一层代表对项目工作的更详细定义。分解原则1、将主体目标逐步细化分解,最底层的日常活动可直接分派到个人去完成;2、每个任务原则上要求分解到不能再细分为止;3、日常活动要对应到人、时间和资金投入。任务分解的方法1、采用树状结构进行分解;2、以团队为中心,自上而下与自下而上的充分沟通,一对一分别交流与讨论,分解单项工作。任务分解转载 2021-05-06 18:32:01 · 682 阅读 · 0 评论 -
软件测试过程的V、W、H模型,
软件测试过程的V、W、H模型H模型相对于V模型和W模型,H模型将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备活动和测试执行活动清晰地体现出来。这个示意图仅仅演示了在整个生产周期中某个层次上的一次测试“微循环”。图中标注的其他流程可以是任意的开发流程。例如,设计流程或编码流程。也就是说,只要测试条件成熟了,测试准备活动完成了,测试执行活动就可以(或者说需要)进行了。H模型揭示了一个原理:软件测试是一个独立的流程,以独立完整“微循环”流程,参与产品生命周期的各个阶段,与其他流程并发地进行。转载 2021-05-03 00:09:11 · 327 阅读 · 0 评论 -
决策表/决策树
决策表决策表又称判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多,各条件又相互组合、有多种决策方案的情况。项目项目定义用表格的方式描述决策问题一种方法,这种表格也被称为决策矩阵。所谓决策表是指一个以行、列形式来描述和表示决策规则和知识信息的表,如果决策问题的后果是用损失的费用表示,这个表也被称为损失矩阵。表现形式在决策表中, 表示可供选择的决策行为, ; 表示决策行为实施之后的自然状态, 而 表示实施选择决策 ai 后,自然状态是 θi的决策后果,人们有时喜欢使用这个转载 2021-06-27 16:22:44 · 659 阅读 · 0 评论 -
JAVA的反射机制
JAVA的反射机制定义在JAVA运行时的环境中,对于任意一个类,如何知道这个类的属性和方法?对于任意一个对象,如何调用它的任意一个方法?----答案是Java语言的反射(Reflection)机制----即动态获取类的信息以及动态调用对象的方法的功能。功能提供在运行时构造任意一个类的对象在运行时判断任意一个对象所属的类在运行时判断任意一个类所具有的成员变量和方法在运行时调用任意一个对象的方法;生成动态代理三个动态性质1.运行时生成对象实例2.运行期间掉用方法3.运行时更改转载 2021-04-22 00:20:33 · 89 阅读 · 0 评论 -
软件开发模式的变迁史
进程通信Linux进程通信命名管道(1)建立如下两个C 源文件,并编译链接成可执行文件,文件名可自己设置。(2) 打开两个命令窗口,分别运行以上两个程序,观察分析程序运行结果。运行截图:分析:两端运行时,在write端输入数据后回车,可将数据传输给read端,read端读取并显示write端传输过来的数据和数据长度(n)。(3) 在以上代码的基础上,增加如下功能:fifo_read.c程序中,输出"对方已关闭!"信息之前,输出一共从fifo_write.c程序中接收了多少行信息。修改后转载 2021-05-09 22:25:30 · 319 阅读 · 0 评论 -
对于软件工程的看法
软件工程是不是教会怎么写程序的人开发软件?你的观点在我看来确实如此,会写程序和会开发软件可分为两回事。编写程序主要涉及到计算机语言的运用,而编写程序后对于如何更有效地开发与维护软件就需要软件工程这一门课程的学习。那么软件开发具体是什么软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程,是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以...原创 2021-03-18 22:53:21 · 273 阅读 · 0 评论 -
什么是分而治之方法?
什么是分而治之方法?“分而治之”( Divide and conquer)方法(又称“分治术”) ,是有效算法设计中普遍采用的一种技术。定义所谓“分而治之” 就是把一个复杂的算法问题按一定的“分解”方法分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的解,把各部分的解组成整个问题的解,这种朴素的思想来源于人们生活与工作的经验,也完全适合于技术领域。诸如软件的体系结构设计、模块化设计都是分而治之的具体表现。模式 :为了解决一个大的问题①把它分成两个或多个更小的转载 2021-06-27 16:09:37 · 144 阅读 · 0 评论 -
为什么软件开发方法很糟糕
为什么软件开发方法很糟糕Daniel Kahneman 在Thinking Fast and Slow 中所说,“获得一项技能有两个基本条件:①一个足够有规律可预测的环境;②通过长期练习学习这些规律的机会。”但是传统的软件项目与常规的、可预测的环境相反。项目成功的唯一衡量标准—— 最终结果是否在其生命周期内创造了预期价值? 这与导致成功或失败的关键决策相距甚远,以至于原始团队中的任何人都很少出现以获得反馈。实际上不可能确定哪些决定导致了成功或失败。这些因素使 IT 专业人员很难获得成功的产品和转载 2021-06-27 15:58:54 · 81 阅读 · 0 评论 -
为什么软件开发的周期总是预估的2~3倍?
为什么软件开发的周期总是预估的2~3倍?有一句话说得好计划永远赶不上变化。你以为的以为,也只是你以为的以为。https://www.sohu.com/a/132411358_355123浏览这段链接内的文章,文章是列举了一段从旧金山出发,沿着西海岸徒步旅行,到洛杉矶的纽波特沙滩面基的路程记录。原计划预定十天走完的路程,但当碰见真实实际情况却又预估70天才可完成。让我们来列举下这期间发生了什么:发现实际行走路程多100英里,原定10天变12天行走速度只有原来预计的一半睡觉睡过头耗费时间转载 2021-05-06 15:21:44 · 85 阅读 · 0 评论 -
CMM与CMMI的关系
CMM与CMMI的关系CMM即"能力成熟度模型"它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。此外还是化妆品的名字。CMM是一种用于评价软件承包能力以改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。CMM即转载 2021-11-16 11:30:28 · 333 阅读 · 0 评论