精华内容
下载资源
问答
  • http://wenku.baidu.com/view/ec535808763231126edb1198.html http://www.scseoer.com/page-speed.html YSlow http://liudaoru.iteye.com/blog/354886 SEO相关 ...
    http://wenku.baidu.com/view/ec535808763231126edb1198.html

    http://www.scseoer.com/page-speed.html

    YSlow
    http://liudaoru.iteye.com/blog/354886

    SEO相关
    http://www.scseoer.com/seo-tools/page/2
    展开全文
  • 蓝屏原因分析

    2013-06-24 20:07:28
    蓝屏原因分析工具,分析win7蓝屏原因 蓝屏原因分析工具,分析win7蓝屏原因
  • 2.2 不同的根原因分析工具 2.2.1 问题理解 流程图 用于梳理过程,展示问题发生的地方 常用流程图如:常规流程图、跨职能流程图、多层流程图等等 步骤: 收集并记录; 定义角色,如顾客、输出、输入以及输入的供方...

    第二章 根原因分析的定义

     根原因分析是一种结构化的调查活动,其目的是识别问题的真正原因和消除它所必需的措施。

    第三章 问题理解的工具

    3.1 流程图

    1. 用于梳理过程,展示问题发生的地方
    2. 常用流程图如:常规流程图、跨职能流程图、多层流程图等等
    3. 步骤:
      收集并记录;
      定义角色,如顾客、输出、输入以及输入的供方;
      识别主要活动或任务,最好倒推方式进行;
      不同颜色代表不同活动,产品,文件和其他元素;
      使用可随时调整的方式绘制。

    3.2 关键事件

    避免主观思考,不要按照内心认定的问题去想办法;
    在这里插入图片描述

    3.3 雷达图

    一种标杆分析方法,绘制每个变量的绩效,并与目标作比较;
    在这里插入图片描述

    3.4 绩效矩阵

    绩效矩阵用来同事阐明当前绩效和重要性,帮助达成对优先事项的统一认识。比如:

    1. 问题的哪一方面对解决问题最重要;
    2. 哪些原因被消除之后将给以问题最多的缓解。
      在这里插入图片描述

    在这里插入图片描述

    第四章 问题原因头脑风暴

    4.1 头脑风暴

    可以尽可能多地产生号想法;
    有两类不同的头脑风暴活动:
    一、结构化的头脑风暴:每位参与者轮流提出一个想法;
    二、非结构化的头脑风暴:自由提出想法,可能一个或多个主导讨论活动;

    注意:不要讨论、批评或评价任何想法,保持可持续性直到当前的想法是以前的变换说法,或没有新想法时,才终止过程。

    4.1.1 书面头脑风暴

    可以保持活动的连贯性,避免敏感问题,有较大机会获得复杂的想法

    4.2 是一非矩阵

    目的在于理解似是而非的问题原因,识别与所讨论问题毫无关系的想法。
    在这里插入图片描述

    4.3 名义群组技术

    进行匿名收集想法,给每个想法评分后汇总分数,选出总分最高的方案。

    4.4 配对比较

    第五章 问题原因的数据收集

    取样、调查、检查表

    第六章 问题原因数据分析

    6.1 柱状图

    1. 用来表示数据的分布和变化,如长度、直径、期限、成本、态度等。
    2. 组距 = 极差/组数
    3. 柱状图注意点
      在这里插入图片描述

    6.2 帕累托图

     “关键的少数”,强调大多数的结果(约80%)都是由一部分少数原因(约20%)引起的,简单地揭示出需要解决的问题的顺序;

    坐标轴表示:
     横轴上按照原因的相对重要性高低顺序从左到右排序;
     左纵轴标出数值,右纵轴标出百分比;
    在这里插入图片描述

    6.3 散点图:

    表示两个原因或者其他变量之间得关系;
    当不同层面之间得原因(必须可数值表示)总是互相影响时,散点图可以反映各种原因之间的关系。
    他们之间的相关类型如下:
    在这里插入图片描述

    6.4 问题集中图:

    帮助将记录的问题和物理位置联系起来,揭示问题发生的方式,尤其是发生在物理系统或设施上的问题。
    常用于识别问题发生的模式
    一般通过绘制地图的方式发现问题和原因;
    问题集中图实例

    6.5 关联图:

     主要用于在复杂、混乱的问题情境下识别出逻辑关系,从而帮助识别那些不易被发现的关系;
     在根原因分析中,它的主要应用是:

    1. 理解不同层面的问题如何联系在一起的;
    2. 洞悉问题和需要进一步分析的可能原因之间的关系;
      关联图示例

    6.6 亲和图(KJ图)

    适用于定性数据;
    先将数据分组,然后找到结果群之间的潜在关系;;
    其应用:

    1. 探求不同原因之间的关系,更多的是不同层级的原因之间的关系;
    2. 将相关的原因组合成一类,这些类别将在以后的分析中被集体用到;
      亲和图示例

    第七章 根原因识别工具

    本章介绍了四种独立的工具和技巧。

    7.1 因果图:

    7.1.1 课本内容

    • 传统的鱼骨图包括分散分析法和原因枚举法;
    • 其中分散分析法把要分析的问题画在图形的右侧,大箭头的末端。将不同类别的可能原因作为箭头的分支画在上面。对于每个分支,要将所有的可能原因都标识出来。
      在这里插入图片描述

    7.1.2 拓展:

    鱼骨图的类型包括:
    ① 整理问题型鱼骨图
    (各要素与特性值间不存在原因关系,而是结构构成关系);
    ② 原因型鱼骨图
    (鱼头在右);
    ③ 对策型鱼骨图
    (鱼头在左,特性值通常以“如何提高/改善……”来写);

    7.2 矩阵图:

    主要目的是分析可能原因和问题之间的因果关系;
    能用于以下方面:

    1. 描绘出问题的不同原因的总体影响;
    2. 确定哪些因素是最显著的,其往往就是根原因;
      在这里插入图片描述
      矩阵示例—出租车公司:
      在这里插入图片描述

    7.3 五问法:

    更深入地探究多层次的原因;
    目的是在找到一个原因时就不断地问”why“,通过各层次的原因直至找到问题的根原因;

    注意:
    别转牛角尖,很可能坚持争论事情背后还有其他原因。
    五问法示例---网页设计公司

    7.4 故障树分析

    该工具偏向于分析有关联的或者属于类似问题的群组;
    故障树分析是建立在五问法结果之上的。其目的是:

    1. 对识别的可能原因产生一个清晰的总体看法;
    2. 寻找原因之间的联系或识别关联原因的群组;
      可用于预测,也可用于事后分析(本书偏向于事后分析);
    • ▲代表独立作用
    • ◖代表共同作用
      故障树分析示例—网页设计公司
      故障树分析示例---网页设计公司

    第八章 根原因消除

    在寻找新的问题解决方案时可以选择一种激发创造力的方法—六项思考帽,以及两种开发方案的工具—创造性解决问题理论(TRIZ)和系统发明思想(SIT)。

    8.1 六项思考帽:

    六项思考帽可以帮助人们认清自己所使用的思考方法,并鼓励对问题采用不同的思考方式,从不同的视角发现解决问题的方案;
    适用于:

    • 从不同视角观察问题,并发现问题的解决方案;
    • 在作出决策前,确保进行严密的审查;

    在这里插入图片描述

    8.2 创造性解决问题理论(TRIZ)

    应对不能简单地将周知的解决方案应用于类似问题;
    目的是允许问题解决者把问题分解为一些核心成分,将他们自己从已知的解决方案中解放出来,从而进入真正全新的解决方案领域;
    适用于:

    • 激发分析团队的创造性;
    • 发现问题的解决方案;

    8.3 系统创新思考方法(SIT)

     SIT是TRIZ的发展,是基于”封闭世界“原理,强调问题的创造性解决方案主要取决于这些问题的自然成分或者它临近的环境;
     适用于:

    • 发现问题的创造性解决方案;
    • 确保这些解决方案可用,而且属于该问题的环境,这样就使方案更容易实施;

    SIT5个原理:

    1. 属性依赖,使用最为广泛的模板,考虑改变产品的关键变量。
    2. 成分控制关注产品与它的环境相联系的方式。
    3. 替代就是用产品临近环境的东西来替换产品的某个部分。
    4. 移置就是通过去掉一个固有的成分来改进产品的表现。
    5. 分开就是简单地把一种产品的属性分成两种,如洗浴用品中分理处洗发水。

    总结这五点原理:
     从产品自身出发,优先考虑自己关键点,然后是身处环境,替换,分离和去除。

    第九章 解决方案实施

    解决方案的实施必须受到重点关注的阶段

    该阶段包括:

    • 组织实施活动;
    • 建立所需变革的可接受程度和创造一种便于实施的良好氛围;
    • 执行该计划;

    同样地,我们应该坚持到底,以一种彻底的方式实施解决方案,彻底完成根原因分析的循环。
    实施角色可以有三种选择:

    1. 由原来的改进团队实施;
    2. 由指定的实施团队实施;
    3. 在直线集权型组织中实施;

    9.1 树图:

    树图是易于使用的工具,适合把较大任务分解成可控制规模的活动。

    其用途是:

    • 把复杂任务组织成符合逻辑的活动;
    • 策划解决方案的实施过程;

    在这里插入图片描述

    9.2 立场分析:

    有助于建立一个关于环境和改进措施的总体认识。
    可用于:

    • 深入理解实施的变革氛围;
    • 策划有效的实施活动;
      在这里插入图片描述
      使用立场分析的示例

    总结:

    工具汇总:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 代码静态分析工具的误报原因分析

    千次阅读 2016-10-10 09:30:11
    本篇文章分析了代码静态分析的基本原理以产生误报的根本原因,并介绍了形式化方法在LDRA工具套件中的应用情况。文章从实际工程应用的角度阐述了这些形式化方法的局限性,在参考文献1《Formal Methods Implemented in...
    

    1. 引言

    本篇文章分析了代码静态分析的基本原理以产生误报的根本原因,并介绍了形式化方法在LDRA工具套件中的应用情况。文章从实际工程应用的角度阐述了这些形式化方法的局限性,在参考文献1《Formal Methods Implemented in the LDRA Tool Suite》中我们详细描述了形式化方法是如何在LDRA工具套件中被实现的,了解到实现这些形式化方法的算法都被内化在了LDRA工具套件的静态分析组件之中,使用工具的用户不需要具备这方面的知识。在工具中所有被分析的源代码文件,无论是文件内函数的分析还是文件与文件之间的关联分析,都是采用的这些形式化方法。

    2. 应用环境

    目前主流的开发语言如C/C++、JAVA、ADA等都缺乏完整并严格的定义。JAVA和ADA都存在一些缺陷。更糟糕的是这些编程语言都受限于编译器非形式化的扩展性描述。这样就造成了即使一个程序满足C/C++的所有语法和限制,但它仍然不可能是一个形式化的程序。

     

    在LDRA工具套件中所采用的形式化方法基本都是基于路径分析技术,而路径分析技术关键在于控制流图(control flow graph)。控制流图的生成是基于将对应语言的语法和语义应用到被分析的程序文件之中。控制流图所用到的底层数学算法是能够被精确定义和理解的(也可以被称之为是健全的)。由此我们可以得出结论,从理论上讲在LDRA工具套件中所采用的形式化方法能够使自己满足健全的标准(criteria of soundness)。

     

    但是在生成控制流图方面我们仍然面临一些挑战,由于生成控制流图所需素材的不确定性,造成生成的控制流图可能会有偏差,这些不确定性包括:弱类型检查、使用函数指针、未定义的行为、指针的使用以及算术运算。

     

    还有一个难点就是为了检测特定的属性,控制流图往往需要特殊的活动作为注解。但是往往这些活动不容易被识别,比如I/O数据访问就有多种表现方式,大部分表现方式都是以指针的形式。

     

    某些语言的标准都会允许编译器对代码进行一定程度的优化,这些优化都会对代码产生影响和改变,而往往这些影响和改变都不容易被静态分析器检测到,这就造成了虽然采用了形式化方法,但是由于编译器的影响,导致分析结果出现偏差。

     

    3. 应用结果

    综上所述,控制流图以及活动检测的不确定性导致采用形式化方法进行编码规则检查会带来不确定性。这种不确定性产生的根源是由于采用非动态运行的方式进行分析从而生成形式化方法需要的控制流图,但是这种静态的方式无法生成确定的控制流图。

     

    因此,这种分析所得出的控制流图要么只会包含部分控制流,要么会衍生出一些在实际运行中根据外界输入根本不可能被执行的程序路径。在这种基础上做编码规则检查会产生一定的误报。

     

    4. 检查工具 

    一般来说,采用形式化方法的工具的提供者会通过采用经过良好定义(well-defined)的程序作为输入,来检查工具的分析行为。而如果采用未经过良好定义的程序则会产生不确定性的结果。通过用各种程序的方式来检查工具的行为是一个复杂的活动,并且不同工具检查的方式也会不一样。 

     

    5.  结论 

    综上所述,尽管形式化方法本身所采用的数学方法是严格的,但是在实际工程应用当中面临的最大问题是由于编程语言本身的缺陷带来的不确定性,导致利用形式化方法对这些语言进行的分析出现偏差。

     

    为了应对这些问题,编程人员开始通过采用各种手段来减少他们程序的不确定性。程序的确定性越高,那么通过静态分析出来的结果就越接近真实情况。

     

    即使工具的分析存在着这些不确定性,但仍然在世界范围内得到了广泛的应用,因为这些工具可以利用形式化方法发现大部分的问题,并且基本的问题是保证零误报和提供零缺陷证明并不容易。

     

    MISRA委员会已经开始编制相关的编码规则集来约束并保证程序具备最大可能的确定性。有了这样的保证,采用了形式化方法的工具就能发现更多的错误并减少误报。同样MISRA委员会也试图向各个技术社区的解释,目前造成工具分析结果不确定的根本原因并非是由于工具本身的缺陷。

    展开全文
  • 核电站根本原因分析方法
  • ANR产生原因: 只有当应用程序的UI线程响应超时才会引起ANR,超时原因: 当前事件没有机会得到处理 当前的事件正在处理,但是由于耗时太长没能及时完成 引发ANR的原因; View的按键事件或者触摸事件在5s内无法...

    ANR产生原因:

    • 只有当应用程序的UI线程响应超时才会引起ANR,超时原因:
      • 当前事件没有机会得到处理
      • 当前的事件正在处理,但是由于耗时太长没能及时完成
    • 引发ANR的原因;
      • View的按键事件或者触摸事件在5s内无法得到响应
      • BroadcastReceiver的onReceive()函数在10s内没有得到处理
      • Service各个生米周期函数在20s内没有得到处理

    典型的ANR场景分析:

    • 应用程序UI线程存在耗时任务,例如在UI线程中进行网络请求(Android4.0之前,4.0之后会报错),数据库操作或者文件操作等,可能会导致UI线程无法及时处理用户的输入。
    • UI线程等待子线程释放某个锁,从而用户无法输入
    • 耗动画可能需要大量的计算工作,可能导致CPU负载过重

    ANR的避免和检测:

    StrictMode: 是AndroidSDk提供的一个用来检测代码中是否存在违规操作的工具类,它主要检测两大类问题:
    • 线程策略ThreadPolicy

      • detectCustomSlowCalls:检测自定义耗时操作
      • detectDiskReads:检测是否存在磁盘读取操作
      • detectDiskWrites:检测是否存在磁盘写入操作
      • detectNetwork:检测是否存在网络操作
    • 虚拟机策略VmPolicy

      • detectActivityLeaks:检测是否存在Activity泄漏
      • detectLeakedClosableObjects:检测是否存在未关闭的Closable对象泄漏
      • detectLeakedSqlLiteObjects:检测是否存在Sqlite的对象泄漏
      • setClassInstanceLimit:检测类实例个数是否超过限制
    • StrictMode的使用: 在应用初始化的地方Application或者MainActivity类的onCreate方法中执行:

    if(BuildConfig.DEBUG){
        //开启线程策略
        StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectAll().penaltyLog().build());
        //开启虚拟机模式 
        StrictMode.setVmPolicy(new VmPolicy.Builder().detectAll().penaltyLog().build());
    }
    super.onCreate(savedInstanceState);
    
    BlockCanary:是一个非侵入式的性能监控函数库,用法和LeakCanary类似,BlockCanary主要用来监控应用主线程的卡顿,基本原理就是利用主线程的消息队列处理机制,通过对比消息分发开始和结束的时间点来判断是否超过设定的时间,如果是,则判断主线程卡顿,下面是使用的方法
    • 首先在app下的build.gradle中的dependencies中添加如下代码:
    dependencies {
        ...
        implementation 'com.github.markzhai:blockcanary-android:1.5.0'
         // 仅在debug包启用BlockCanary进行卡顿监控和提示的话,可以这么用
        debugCompile 'com.github.markzhai:blockcanary-android:1.5.0'
        releaseCompile 'com.github.markzhai:blockcanary-no-op:1.5.0'
    }
    
    • 在Application中:
    public class DemoApplication extends Application {
        @Override
        public void onCreate() {
            // 在主进程初始化调用哈
            BlockCanary.install(this, new AppBlockCanaryContext()).start();
        }
    }
    
    展开全文
  • 本书全面介绍了挖掘问题根原因及解决问题的思路、方法和技巧,为读者提供了根原因分析的实用工具箱,包括:  ◎理解问题的工具  ◎查找问题原因的工具  ◎收集问题原因数据的工具  ◎分析问题原因数据的工具  ...
  • javascript 内存泄漏 检测 解决 检测工具 原因分析 资源很多,打包上传 内存泄漏检测工具 分析方法
  • 能够看到代码第几行错:内存快照分析工具,MAT,JProfiler Debug,一行行分析代码 MAT,JProfiler作用: 分析Dump内存文件,快速定位内存泄露 获得堆中的数据 获得大的对象 JVM参数: -Xms:设置初始化内存分配...
  • 蓝屏代码分析工具

    2014-12-09 20:19:06
    蓝屏代码分析工具,分析蓝屏原因,查找故障所在
  • perf 是Linux的一款性能分析工具,能够进行函数级和指令级的热点查找,可以用来分析程序中热点函数的CPU占用率,从而定位性能瓶颈。Performance analysis tools for Linux.系统性能优化通常可以分为两个阶段:性能...
  • 能够看到代码第几行出错:内存快照分析工具,MAT,Jprofile Debug,一行行分析代码 MAT,Jprofile作用: 分析Dump内存文件,快速定位内存泄漏 获得堆中数据 获得大的对象 。。。 下载jprofiler之后,,在idea的...
  • 蓝屏分析工具

    2018-10-18 14:59:20
    BlueScreenView可分析发生蓝屏的原因,从而找到有效的解决方法,以帮助常为蓝屏后束手无策而苦恼的朋友们更快地解决蓝屏问题!
  • WINDBG蓝屏分析工具

    2013-05-16 13:57:03
    WINDOWS 蓝屏分析工具,让你瞬间找出蓝屏的原因
  • 首先,在分析网络攻击并设计应对措施时,深入数据包的细节可显示出其巨大的价值。 例如,如果发生了拒绝服务攻击,就可以用Wireshark来确认特定的攻击类型。然后,此工具就可以精确地构建能够阻止非法数据通信的...
  • 能够看到代码第几行出错:内存快照分析工具——MAT,JProfiler Debug,一行行分析代码 MAT,JProfiler作用: 分析Dump内存文件,快速定位内存泄漏 获得堆中的数据 获得大的数据 … -Xms1m -Xmx8m -XX:+...
  • IBMHeapAnalyzer是一个非常重要的JAVA程序bug分析工具。它可以帮助我们分析哪些原因可能导致了程序的内存溢出。IBM heapAnalyzer是通过分析OOM后的Java heap dump文件的,通过对dump文件的分析找到内存可能泄露的点...
  • 我们都知道查询优化器,知道在查询优化器中会经历逻辑查询优化和物理查询优化。...性能分析来入手分析,定位导致 SQL 执行慢的原因。 前面已经更新了总结核心的主要三点 如何使用慢查询日志查找执行慢的 SQL 语..
  • 一、【内存dump】jmap –dump:live,format=b,file=heap.bin 二、【线程dump】jstack是java虚拟机自带的一种堆栈跟踪工具。基本介绍:jstack用于生成java虚拟机当前时刻的线程快照。线程快照是当前java虚拟机内每一条...
  • 系统蓝屏分析工具

    2013-05-20 22:29:43
    一款可以查看系统蓝屏详细信息的工具,很方便的进行系统蓝屏原因分析
  • 这段时间觉得很有必要对java的内存分析工具进行熟悉,这样以后出现机器负载较高,或者反应很慢的时候,我就可以查找原因了。上网搜了搜,发现下面这些是比较常用的,然后我在机器上试试了,把结果也贴出来哈。1.jps...
  • 故障现象描述 1、故障现象描述 某运营商为3G用户提供访问的web portal系统,在...事后查看各设备的日志,也找不到故障的原因。 2、基本环境描述 用户基本网络拓扑如下图所示,3G手机用户经过无线网络后,通...
  • 内存占用分析工具

    2015-05-07 11:30:57
    内存占用太高,招不到原因,分享两个超给力的工具。 RAMMap 和 VMMap 大名鼎鼎,结合起来用能分析所有的内存问题。
  • JVM内存dump分析工具MAT独立安装包,分析内存溢出利器,可以准确定位内存异常原因,解决问题,MemoryAnalyzer-1.10.0.20200225.zip
  • 【python】python的打包工具pyinstaller生成exe非常大的原因分析(openpyxl)openpyxl  -F 打包出来 一个一个都有200多M from tkinter import * from tkinter.font import Font from email.mime.text import ...
  • 本次源码已放在Github:https://github.com/nateshao/jvm-tuning个人博客https://nateshao.gitee.iohttp://www.nateshao.cnjava性能分析常用工具作为一个java程序员,最基本的要求就是用java语言编写程序,并能够在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,066
精华内容 2,426
关键字:

原因分析工具