自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 关于一个程序错误的归零想到的

挺简单的一个错误,也应该是很常见的错误,但在企业的内部单元测试、配置项测试、系统测试中居然都没有测出来(集成测试在体系中被裁剪掉了),一直到联调的时候才被发现。个人感觉这个错误,即使是进行人工走查,也不容易看出来,因为在调用时,5个数的排序也会下意识的写5,特别是如果A、B函数写在不同的位置,那么审查到B的时候很可能忘了A的实现细节了。我觉得在联试期间能发现这个错误,应该还是比较幸运的,毕竟这种指针问题,到底会导致什么不可知的错误,是非常难预测的,也可能会隐藏的很隐秘,直到关键的时候再爆发出来。

2023-04-02 20:07:17 537 3

原创 我的键盘的最终选择居然是薄膜

一切归于平凡

2022-07-24 09:25:47 571

原创 python绘图多坐标轴的处理

这两天写论文,其中有张图需要将三个属性连接到一个序列上,本来想用面积表达第二,颜色表达第三个属性,又尝试了用三维图,发现效果都不好。今天早上被一只蚊子弄的睡不着了,凌晨四点忽然想到干嘛不用单横坐标多纵坐标的形式解决呢。于是马上爬起来查阅相关文档完成了这一方面的内容,记录如下:直接上代码吧。最终效果如下:...

2022-06-28 07:35:42 1352 1

原创 想按照软件需求计算功能点,真的是件非常麻烦的事情

最近在做一个研究课题,其中的工作之一就是将需求分析文档中的功能点按照GJB8000中的要求进行标注,通过功能点来进行软件的规模预测和软件缺陷的预测。在没做之前,觉得这个工作应该不是很复杂,毕竟有很明确的方法,问题应该不大,而且功能点的计算相对还是比较成熟的,国内国际上也有很多案例。做过以后才发现,这东西是真TMD麻烦。1、一个软件的需求,哪怕是不大的软件(几万行),其软件需求也有上百条,如果来上十几个软件配置项,如果靠人工,真的能算死。2、软件功能点,最终的加权系数,人与人之间的衡量差距还是很大的,

2022-05-26 19:35:51 342

原创 IFPUG软件功能点计算方法

再次学习GJB8000的功能点计算方法,将笔记记一下什么是功能点估算方法功能点估算方法是从用户角度来估算软件规模,是基于客观的外部应用接口和主观的内部应用复杂度以及总体的系统性能特征,对软件功能规模进行间接定量估算。GJB8000的功能点是通过IFPUG功能点估算方法进行估计的。功能点估算步骤确定用户功能需求分解功能需求确定加权因子计算未调整功能点数确定调整因子计算交付功能点数流程图如下:#mermaid-svg-ODEfGibjMfLs4REE {font-family:"

2022-05-14 16:22:16 2966

原创 功能点规模预测方法

步骤计算每种类型的函数数量计算未调整函数点(UFP)找到所有影响角度(TDI)计算矫正因子值(VAF)找到功能点数量(FPC)计算下边所列出的各个类型的数量:外部输入:进入系统的与数据相关的功能外部输出: 从系统出去的数据有关的功能外部查询: 从系统中检索数据,但不改变系统状态的功能内部文件: 系统内部维护的逻辑文件,此处不包括日志文件外部界面文件:提供给我们系统内的其他程序使用的逻辑文件计算未调整的功能点 (UFP):根据其复杂性对五种功能类型中的每一种进行分类,例如简单、

2022-05-07 09:16:23 2061

翻译 软件工程预测模型之COCOMO

原文为GeeksforGeeks网站Link分类Cocomo(Constructive Cost Model)是基于代码行的回归模型。它是软件项目的程序成本估算模型,通常用作可靠地预测与项目相关的各种参数的过程,例如大小、工作量、成本、时间和质量。它由Barry Boehm在1981年提出,该研究基于63个工程,使他成为了记录最好的模型之一。模型的关键参数有两个,工作量和进度。工作量: 完成单个任务所需要的人工,通常用人月来表示。进度: 完成整个工程所需要的时间,和工作量成比例。通常用时间单位表

2022-05-05 20:43:43 4593

原创 对国内软件工程学术圈研究现状的一些吐槽

首先,在这里感谢浙大和华为的相关同仁,给予我这次学术交流的机会,在这里表示感谢。但是,这次交流我也有很多感触,就在这里对国内软件工程学术圈吐槽一番,仅仅是个人发牢骚,只陈述现象,不针对个人。首先,感觉学术圈很多老师的选题的目的有点太偏重于发论文了。这可能和现在高校的职称评定有关系。但是毕竟也是浪费很多人力物力的研究项目,咱们能不能与实际工程贴合更紧密一些?报告的议题中,与华为合作的题目我认为都还是很不错的。但是有些老师的题目却明显超出我的认知了。我是真不明白用AI分析代码,让其自动生成Commit里边的

2021-06-27 22:38:36 348 1

原创 win10中安装和使用TaLib的记录

下载与安装Talib不能直接用pip进行安装,需要先下载支持库。下载地址地址,在下边的下载中找到TA_Lib-0.4.19-cp39-cp39-win_amd64.whl然后下载它,将其放置到\windows\system32\中,然后用pip install TA_Lib-0.4.19-cp39-cp39-win_amd64.whl安装即可。需要注意的是,一定要弄清楚版本号,否则安装会出错。文件名中,cp后边的数字39表示需要3.9版本的python,amd64表示需要64位的windows

2021-03-30 20:17:47 674 1

原创 聊一聊软件配置项

我们在讨论软件工程化的时候经常会说起配置项这个名词,讨论软件测试时也经常说配置项测试,那到底什么叫配置项?配置项(CI)和软件配置项(CSCI)到底有什么关系?配置项到底应该怎么划分才是合理的?我们搞技术的,说话要有依据,让我们从国标的定义说起。首先搞清楚什么是配置项:在国标《GB/T 11457-2006 信息技术与软件工程术语》里,对这几个概念都有明确的定义:配置项(configuration item,缩写为CI),是为配置管理设计的硬件、软件或两者的集合。它在配置管理中作为单个实体来对待。

2021-03-25 16:42:01 11888 3

原创 在安全关键软件领域,架构师角色的意义作用

前段时间听丛斌博士的公开课,里边谈到了中国国内最缺的人才就是软件架构师。我们经常提到软件架构,但到底什么才是软件架构?软件架构和产品设计,需求分析和编码到底有什么关系?另一个近期发生在自己身边的真实案例:去年和一个朋友聊天,谈起来他负责的一个公共服务平台建设项目的进展,他说他聘请了一个架构师,已经把软件架构设计完毕了,然后要了一笔钱,说下边应该找个专业的需求分析把需求分析做一做,然后找个编码团队把代码编一下就可以交付了。我听后就觉得我朋友被骗了。很多人对架构师有些误解,认为架构师就应该高屋建瓴,设计一

2021-03-24 21:34:06 319

转载 (亲测可用)解决parallel desktop虚拟机在bigsur里无法联网的问题

参考链接刚试了一下,这个方法还是比较靠谱的,不用下载任何文件,只需要修改两个参数即可。

2021-03-14 18:33:58 1208

原创 ISO:31000-2018 Risk Management-Guideline读书笔记

概述标准的结构本标准是分成了三个相互联系的部分进行描述的,分别是principles(理论),framework(框架),process(过程).什么是风险标准里原文如下:risk - effect of uncertainty on objectives.风险就是对目标的不确定性的影响。影响是期望的偏离。它可能是正面的,负面的或者两者都有,它能被解决,创造,并导致机会或威胁。目标可以有不同的方面和类别,并可以应用于不同的级别。风险可以采用四个参数来表征:风险源、可能的事件、导致的

2021-02-15 11:02:46 1003

原创 把我以前翻译的《故障树手册》重新进行了修订

重新修改了《故障树手册》里的部分内容,对一些名词,句子和图进行了修订,并生成了PDF版,估计未来一段时间不会再去动它了,有兴趣的凑合着看吧,直接做成了PDF,方便大家使用。网盘链接密码: rquu...

2021-01-10 23:42:47 367 7

原创 在小组织里实现和保持CMMI的5级成熟度

赵星汉 译前几天和丛斌老师简单讨论了下小组织里贯彻执行高成熟度CMMI的可行性,丛斌老师发了这篇文章给我参考。我觉得挺好的,就翻译了一下,以供国内相关学者老师参考。研究人员和从业者都进行了多年的过程改进研究。由CMMI研究室提供的CMMI模型,它由许多指引产品和服务的改进活动组成。CMMI并没有告诉你如何将其应用到你的工程和服务中,但是它规定了通用和专用的实践需求。CMMI评定的成熟度等级范围从2到5,其中5表示一个组织被认为是“优化的” 因为它具有高度成熟的实践,可以利用其复杂性定量技术的测量策划并有

2021-01-04 19:58:51 445

原创 软件(定型)测试大纲检查单

摘录自前一篇文章中介绍的梅老师的书。1.软件定型测评大纲按照《军用软件产品定型管理办法》以及《GJB6921-2009《《军用软件定型测评大纲编制要求》的规定,列举一个具体的审查内容和要求参考示例如下:a)是否列出了文档的标识、标题、所适用的被测软件的名称与版本,以及文档中采用的术语和缩略语。b)是否概述了文档的主要内容和用途。c)是否描述了此次定型测评任务委托方、被测软件承研单位及定型测评机构的名称、地址、联系人及联系电话。d)是否概述了被测软件的等级、使命任务、结构组成、信息流程使用环境、安

2020-12-25 19:20:41 1289 3

原创 软件各项会议评审意见模版

读梅老师主编的书,觉得评审意见模板很有参考价值和实用价值,帮梅老师安利一波,顺便记一下笔记。《系统/子系统规格说明》评审意见模板20XX年XX月XX日,XXX(主管机关)在XXX(会议地点)主持召开了“《XXX(产品名称)系统规格说明》评审会”。参加会议的有XXX机关,XXX院校,XXX研究所共XX名代表(名单见附件1),会议成立了评审组(名单见附件2),听取了XXX(单位)做的《XXXX报告》。经讨论质询,形成评审意见如下:系统规格说明对系统的研制目标和范围、工作状态、运行方式以及所要满足的能力需

2020-12-23 21:07:45 9909 2

原创 减少琐事

这两天在读谷歌运维,感觉相关内容很有参考价值,在软件工程里也有很强的知道意义,所以在此记一下笔记。什么是琐事当前手动性的,重复性的,可以被自动化的,战术性的,没有持久价值的工作,琐事与代码(产品)规模呈线性关系。琐事的特性手动性:如脚本里的每一个步骤可以自动执行,但是执行脚本如果是手动的,那么就可以被认为是琐事。重复性的:不停反复做的工作。可以被自动化的:如果计算机可以很好的完成该任务,或者可以通过某种设计或流程优化彻底消除某项任务的需求,那么这项任务就可以被认为是琐事。战术性的:琐事是突然

2020-12-20 23:07:49 147

翻译 改进软件过程管理的分析能力

改进软件过程管理的分析能力原文《ANALYTIC CAPABILITIES FOR IMPROVED SOFTWARE PROGRAM MANAGEMENT》,卡耐基梅隆大学SEI实验室,发表于2020年10月。赵星汉翻译于2020年12月13日。问题软件与关键系统能力的联系不断扩大,这促使软件工程组织不得不采用更有效的技术来管理他们的系统和软件交付。国防部(DOD)系统和软件采购和开发正在进行转变。国防部软件适应性采购框架中的软件获取途径(下图)阐述了冲刺和交付是如何产生软件迭代并最终生成可用的基线

2020-12-13 22:00:36 289

原创 2020-12-07

软件测试大纲检查单 是否有项目负责人,测试人员,质量保证人员和配置管理人员 文中是否有必要、适用、明显等模糊性文字。 测试需求是否全面覆盖了软件需求规格说明 除显性需求外,是否还存在未包含的隐性需求,如强度测试、余量测试等 测试依据是否涵盖了软件测评任务书、合同、用户手册或其他等效文件 测试项的各个子类中,是否描述了测试的覆盖范围与程度(等价类、边界值、覆盖率等) 是否确定了测试的终止要求,包含正常和异常的终止 是否建立测试项与测试输入的追踪关系 若适用,是否包含了测试数据的生成与验证,

2020-12-07 22:25:52 94

原创 Scrum 2020 的学习笔记

Scrum 2020 的学习笔记scrum的基础知识Scrum 是一个用于开发和维护复杂产品的框架 ,是一个增量的、迭代的开发过程。在这个框架中,整个开发过程由若干个短的迭代周期组成,一个短的迭代周期称为一个Sprint,每个Sprint的建议长度是2到4周(互联网产品研发可以使用1周的Sprint)。在Scrum中,使用产品Backlog来管理产品的需求,产品backlog是一个按照商业价值排序的需求列表,列表条目的体现形式通常为用户故事。Scrum团队总是先开发对客户具有较高价值的需求。在Sprin

2020-12-07 22:24:24 304

原创 Latex 多行公式的标号问题

最近在用Latex写东西,遇到了多行对齐公式的输入与编号问题,尝试了网上的许多方法,最终的解决方法记录如下:方法一:前边\usepackage{amsmath},利用equation,内部嵌套split,则会在公式的最后一行进行编号;方法二:利用align环境,在不需要标号的行后添加\nonumber标记。BTW: 行间公式符号.........,以及带星号(*)的环境是不会进行自动编号的。%方法一:\begin{equation}\label{eq:eq19}\begin{split}f(x

2020-10-15 15:03:16 8923

原创 Git在添加目录时遇到了Fatal: unpopulated submodule的解决办法

Git在添加目录时遇到了Fatal: unpopulated submodule的解决办法今天,在把以前的一个目录整体拷贝到git的目录下时,在add的时候遇到了报错,提示unpopulated submodule的信息,无法添加。后来经过查证,可以采用如下的方法解决.针对提示的目录papersgit rm -rf --cached Papersgit add Papers/* 问题完美解决。...

2020-06-30 03:02:29 2301 1

原创 SpaceX Lessons Which Massively Speed Improvement of Products 翻译以及心得体会

本文翻译自NextBigFuture网站原文地址,作者Brian Wang,发表于2018年12月。肯特·内伯格(Kent Nebergall)在macroinvent.com上撰文。肯特在第21届国际火星学会年度大会上发表了有关逆向工程SpaceX的演讲,因此我们可以像埃隆一样加速前进。他首先关注Elon生成产品的一般过程。这是视频中肯特演讲的摘要。我建议您观看嵌入式视频并观看肯特的完整演讲。但是,这是我从肯特演讲中获得的主要收获。注意:Elon并未发明全新的方法。Elon确实从计算机软件开发或其

2020-06-04 06:32:48 524

原创 《ELC:SpaceX的经验教训》中文翻译与自己的一些见解

原文地址:英文版地址,作者作者Jake Edge,发表于2013年3月6日。文中灰色背景的是我的一些不成熟的看法,部分数据和资料来源于网络和相关论文,由于是非正式发表,也就不标注来源了,有兴趣的朋友可以自行查证,欢迎留言讨论。在2013年嵌入式Linux大会的第二天,SpaceX的罗伯特·罗斯(Robert Rose)谈到了“从经验中学到的航天器开发软件”。在演讲中,他讨论了SpaceX如何开发其基于Linux的软件,以完成将航天器送入轨道甚至最终超越轨道所需的各种任务。他说,Linux在SpaceX.

2020-06-03 02:55:48 1085

翻译 一种融合CMMI和敏捷的策略的前进路线

本文的英文版为CMMI官方推荐文章《The Way Forward A Strategy for Harmonizing Agile and CMMI》,发表于2016年的CrossTalk。赵星汉学习兼翻译于2020年5月摘要: 敏捷和CMMI就像是完全相反的两种范例——或许它们是否能互相融合或增强?敏捷和CMMI的临界点是什么?以及为什么是这样。在LinkedIn的博客里,敏捷或CMMI的支持者们都是如此的极力反对另一个学派的观点,以至于让两方理性的共存是一个不可能的任务,这种情形一直持续到如今。一种

2020-05-15 06:08:16 1013

原创 美国访学的一些心得体会与注意事项

来美国作访问学者已过半年,如果不涉及到意识形态,美国还是很不错的学习的地方。这里的环境比较单纯,没有那么多的杂事,很适合作学术研究。访问学者群里也有很多老师和同学在问各类问题,我把一些共性的问题在这里解答一下,以供大家参考。注意:现在是2020年5月,我目前所在地是达拉斯,我所说的一切,都是我当前时间地点我自己的有限认知,仅供参考。申请相关英语留学的英语要求一般不同学校差异较大,我也不专业...

2020-05-05 05:03:49 3276

原创 故障树手册(Fault Tree handbook)(6)

第十章 概率与统计分析1 概述在这章中,我们将试图去描述和故障树相关的概率与统计概念中的基本元素。这些知识也是故障树量化的基础。在这方面基础好的读者可以直接跳过本章去阅读第十一章,在后边需要的时候再来回顾对应的内容。我们现在先来讨论概率分布理论。我们首先会讲解二项分布,接着学习常规的分布原理,并重点学习一些在系统分析中常用到的特殊分布。然后我们将具备统计评估的基础知识。我们的表示法或许不是...

2020-04-13 02:32:10 2857

原创 故障树手册(Fault Tree handbook)(5)

第八章 压力罐的例子8.1 系统定义和故障树构建在本章和下一章里,我们将用两个简答的例子来定义非预期事件。读者将看到在第V章的帮助下,故障树是怎样一步一步的建立起来的。在故障树的建立过程中,可以得到一些比较浅显的结论,但是详细的评估过程将在第11章才会介绍。考虑图VIII-1的压力罐的例子,里边有一个管道马达装置和一些相关控制组件。首先我们先看系统功能,系统的功能模型如图VIII-2所示。...

2020-04-12 01:50:14 1403

原创 故障树手册(Fault Tree handbook)(4)

第六章 概率理论:关于事件的数学描述6.1 概述通过学习前边的内容我们已经奠定了故障树的基础,我么几乎已经可以开始进入一些真实的故障树案例教学。但是,因为我们在第八章和第九章的例子中不仅有故障树的构建,还有故障树的评估,所以我们必须在第六章和第七章先把评估涉及的数学概念讲清楚。第六章讲解了定量评估故障树所涉及的基础的数学知识:概率理论。概率论是故障树分析的基础,因为它提供了对事件的分析处理,...

2020-04-11 03:34:10 984

原创 故障树手册(Fault Tree handbook)(3)

第四章 故障树的基本元素4.1 故障树的模式故障树分析可以简单的描述为一项分析技术,凭借一个特定系统的非期望状态(通常是一个安全方面的关键状态),该系统会根据环境和操作的上下文信息来找到非期望事件发生的所有可信途径。故障树本身是一种图形描述方式,这种图形方式描述了各类导致预定义的非期望事件发生的故障的并行和串行组合。(The fault tree itself is a graphic mod...

2020-04-10 03:07:42 7139

原创 故障树手册(Fault Tree handbook)(2)

文章目录第二章 归纳法概论2.1 概述2.2 部件计数方法2.3 故障模式和效果分析(Failure Mode and Effect Analysis, FMEA)2.4 故障模式效果和关键性分析(Failure Mode Effect and Criticality Analysis, FMECA)2.5 预先危险性分析(Preliminary Hazard Analysis, PHA)2.6 ...

2020-04-09 11:17:07 1676

原创 故障树手册(Fault Tree handbook)(1)

文章目录前言第一章 系统分析的基础概念1.1 系统分析的目的1.2 系统的定义1.3 分析方法1.3.1 归纳法(Inductive Approaches)1.3.2 演绎法(Deductive Approaches)1.4 风险与陷阱1.4.1 子系统接口1.4.2 规程接口本文原书为Fault Tree Handbook,所有者为美国核管理委员会(NUREG-0492)。当时学习的时候感觉...

2020-04-09 10:59:14 2428

原创 Json文件读写技术

获取目录String dir = Environment.CurrentDirectory //当前应用程序的路径,最后不包含'\';读写JSON文件本程序利用Newtonsoft读写Json,下载地址如下:https://archive.codeplex.com/?p=json读取的示例代码:using Newtonsoft.Json;string json = @"{...

2019-01-03 16:39:58 434

原创 CMMI的过程文件自动化(一)

目的近期在学GJB 5000A和CMMI,里边涉及到大量的表单,手动整理太麻烦,打算借助json将word表单自动化实现。设计中想让文档与程序尽量分离,后期的变更尽量少变更代码,仅通过改变json和WORD模板就实现自动化出具表单。第一步先实现的是将json文件的内容填入word模板中,第一步实现后,后期只要实现不同的json文件与word模板就能出具相应额表单了。思路本软件涉及的技术主...

2019-01-03 16:32:42 326

原创 Django 2.1.1 使用笔记

文章目录配置相关python 3.7、mySQL的适配问题跨站点请求伪造保护PYTHON代码vim快速注释和删除Django的基础使用Django的工程生成运行工程在工程中创建一个应用path的四个参数Django数据库相关数据库配置Django的默认安装项模型定义模型使用模型字段外键激活模型配置相关python 3.7、mySQL的适配问题官网上这里没写的太清楚,解决办法如下:通过pi...

2018-09-26 11:44:35 734

原创 STPMS项目记录——涉及的mySQL8知识点

mySQL8的安装mysql使用的知识点建立用户服务断开授权所有权限授权基本的查询修改权限,按需求设置查看用户权限mySQL8的安装首先,将RAR文件解压到预设的目录中,在目录中创建my.ini文件,内容如下[mysqld]basedir = D:\ProgramFiles\mysql-8.0.11-winx64datadir = D:\Pr...

2018-08-28 17:12:59 235

原创 softmax函数的解释

softmax学习笔记定义维基上的解释和公式是: “softmax function is a generalization of the logistic function that maps a length-p vector of real values to a length-K vector of values” σ(z)j=ezj∑k=1Kezk(1)(1)σ(z)j=...

2018-03-28 17:43:55 1210

原创 软件测试中的组合策略

软件测试中的组合策略组合策略是一种测试用例的选取方法,该方法是采用将被测件的输入参数根据一些组合方式进行组合来生成测试用例。不同的组合策略,生成不同的测试用例生成技术。 软件测试用例的生成技术有如下两种形式:对测试输入进行建模分析,按照测试目标将测试输入分成不同的子集,同一个子集中的软件行为都是相似的。这种测试用例生成方式叫做分区测试(partition testing),软件测试中常...

2018-03-25 22:38:15 4689

原创 算法的学习笔记

算法设计数据结构前边的常规数据结构树树二叉树堆图蛮力法什么叫蛮力法冒泡排序递归与分治法树与图中的一些递归问题二叉树的遍历分治法的基本思想动态规划法基本思想贪心算法基本思想可解决的问题回溯与分支限界基本思想状态空间状态空间树迭代改进算法计算复杂性与NP理论近似算法参数化算法随机算法随机算法的含义设计的...

2018-03-02 12:01:11 303

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除