精华内容
下载资源
问答
  • 软件复杂性分析

    千次阅读 2015-09-27 18:53:21
     降低由复杂性引发软件错误的可能性;  确保软件产品的质量;  减少由软件设计方法和技巧使用不当而带来的复杂性。 2,产生原因(共6条):需求复杂、应用要求高;开发环境复杂;软件应用框架、结构及模型复杂...

    1,目的:更好地对软件开发过程进行控制;

                   提高软件的可靠性和可维护性;

                   降低由复杂性引发软件错误的可能性;

                   确保软件产品的质量;

                   减少由软件设计方法和技巧使用不当而带来的复杂性。

    2,产生原因(共6条):需求复杂、应用要求高;开发环境复杂;软件应用框架、结构及模型复杂;软件开发过程复杂;涉及人的智力和管理复杂;项目设计与验证复杂

    3,模块复杂性:模块复杂性度量主要用来对模块中的数据流和控制流结构(或模块信息流结构)和模块之间互连的复杂程度等进行度量和评价。

            模块内部结构复杂性:主要有以上两种方法,McCabe度量和Halstead度量。

            模块接口复杂性:常用模块的扇入/扇出数量或信息的扇入/扇出数量来度量。

    4,复杂性控制:模块复杂性控制、模块结构复杂性控制和软件总体复杂性控制。

    5,规模度量元:规模度量元Line Count复杂度;难度度量元Halstead复杂度;结构度量元McCabe复杂度

             Halstead复杂度基本思想:根据程序中可执行代码行的操作符和操作数的数量计算程序复杂性。

            McCabe复杂度基本思想:程序的复杂性很大程度上取决于程序控制流的复杂性,单一的程序顺序结构最简单,循环和选择所构成的环路越多,程序就越复杂。

            McCabe复杂度计算方法:V=E-N+2P(E表示控制流图中边的数量;N表示控制流图中节点数;P表示连接组件数目,P1)V=判定节点数+1V=区域数。

           McCabe圈复杂度的应用(3点):指出在实际测试中检测的最少基本路径的数目;McCabe圈复杂度反映模块复杂性、软件缺陷数和发现它们并改正它们所需的时间之间的关系;V(G)可用做最大模块复杂性的定量指标,大量研究表明,V(G)10是最大上限,超过这个值会使测试变得更复杂,软件错误率增加。

    展开全文
  • 游戏数据分析框架

    万次阅读 多人点赞 2017-10-09 14:43:57
    游戏数据分析框架 游戏数据分析框架 用户 用户分析的维度 用户的统计 平台 时间 渠道 新增用户 游戏硬技术 新增用户的分析 活跃用户 AARRR模型 新老用户和留存 活跃用户数量分析 游戏时长分析 用户流失 生命...

    游戏数据分析框架

    用户

    用户是游戏的核心目标和服务对象。我们可以通过分析用户的特征找出用户对于游戏的期望,以便调整我们的游戏设计的想法。我们看待用户的种类主要有两个方向:

    • 新增用户(获取用户)
    • 活跃用户(经营用户)

    在用户的每一个阶段,我们都需要知道用户的价值,具体来说就是每一个用户整个生命周期为游戏厂商带来的价值。用户的价值来自于他们的消费行为,所以我们就是继续分析用户的购买行为,例如他们是什么样的用户,这样的玩家需要什么样的装备道具。

    用户分析的维度

    用户的统计

    一般来讲,我们可以用新增的账号数来统计新增的用户,但是这中间不免会出现一个小号的事情,即同一个自然人拥有多个账号。而我们在后面分析收入的时候,一般是基于人的消费能力而不是账号的消费能力。如果小号太多,那么实际的游戏人数就不可控,游戏活力实际上在下降而从账户代表的用户数量却无法观察到;另一个影响就是工作室的出现,会在一定程度上破坏游戏的平衡,导致其他玩家的体验下降。

    在一定程度上,我们可以统计设备ID来消除账户统计的不准确性。但是这样也无法进行全面地将工作室识别出来。如果这样进行统计的话,后续在收入的层面会有很多数据库的问题,所以在这方面影响不是很大的时候,可以适当忽略。

    平台

    针对游戏产品发布的平台进行比较和分析

    时间

    用户增长、下降的指标永远离不开时间这个维度,其本质上是时间序列的数据。我们可以比较各个不同时间点的用户量、增长率等等指标。

    渠道

    渠道是目前手游大部分用户的来源。我们可以通过用户质量、数量来评估渠道的推广效果。

    新增用户

    新老用户的不同来自于用户加入游戏的时间节点。当然我们也可以自定义一个时间段,例如过去的一天或者一周。

    游戏硬技术

    回顾一个普通人称为游戏用户的过程:

    下载APP –> 打开APP –> 开始界面 –> 注册/缓冲 –> 进入游戏

    可想而知,用户在注册进入游戏之前还有一些步骤不可忽略,这些步骤如果一旦发生问题,那么用户很有可能失去游戏的耐心。例如闪退或者缓冲界面卡死等等BUG,这些地方的品质如果不能严格把控,那么再谈之后的任何环节都没有什么意义了。那么我们就需要针对游戏除了游戏本身之外的体验也需要重视起来,做好优化,例如:

    • 游戏响应速度优化
      不是所有的手机都是旗舰高端机,我们在做产品的时候,对于硬件资源的消耗也要在一定的范围内,如果游戏时常出现卡顿,那么也会影响用户继续游戏的可能性。

    • 耗电量优化
      手机这个平台不仅仅是游戏,它还负载着很多其他的功能。如果耗电量过大的话,玩家进行游戏的时间无疑会被压缩。

    • 网络流量
      针对手机网游,我们对于游戏客户端和服务器之间通信产生的流量问题也需要关注

    新增用户的分析

    对于新增用户的分析有以下几个方面:

    • 新增用户+渠道分析

    新增用户结合渠道进行分析,可以得出渠道获客质量、效果等要素。

    • 新增用户+收入分析

    从新增用户的ARPU、ARPPU、付费转化率等指标切入,从最核心的收入方向对新增用户进行深度价值挖掘

    • 新增用户+游戏质量分析

    围绕着用户从下载APP到成功进行游戏之间的转化漏斗,分析那部分流失的用户是因为什么原因在体验游戏之前就放弃的

    活跃用户

    和新增用户一样,活跃用户的统计也离不开时间这个维度。我们同样可以用日、周、月来对活跃用户进行统计。“活跃”二字的普遍定义是在某一时间段有过登录的行为。但是不同的游戏也可以根据自身的游戏特点来自定义。在游戏生命周期中不同的时间点需要用不同的时间周期来衡量活跃用户的数量,例如在初期高速增长阶段,我们可以用日活(DAU)来做衡量,而在中后期稳定发展的阶段或者在分析中长期趋势的时候,用周活跃或者月活跃会更加方便。

    AARRR模型

    AARRR模型是由TalkingData提出了一套用户分析的模型。本质上是基于营销和运营在投入和产出方面的分析,分析的角度是用户和用户的转化层面。从传统的成本分析的思路转化成用户价值分析的思路,从而确立了一些新的数据指标体系。

    新老用户和留存

    在活跃的用户中,从注册时间的远近来看有新活跃用户和老活跃用户的区分,在用户策略上,由于他们不用的特征属性,所以在分析时,把他们区分开会更有利。

    活跃用户数量分析

    活跃用户的数量从整体上反映了游戏的规模。如果游戏的人气的持续是靠推广和短期用户,而不是靠用户积累和自然的效应,那么这款游戏的活跃用户很有可能不稳定。但是并非所有不稳定的活跃用户数据都是这样,很多其他时间因素,例如季节、节假日等等,所以在分析用户数量的时间序列数据的时候,想要看趋势就要去掉其他周期性因素的影响。我们在观察的时候,就需要建立标准差区间来抵消季节、开学等因素的影响,从而区别哪些是真正的活跃度趋势变化,而哪些又是周期性的变化。

    游戏时长分析

    大体上来说,不管是游戏还是其他,本质上都是在争夺用户的时间。用户在这款游戏上花的时间越多,他就越有可能称为付费用户,甚至持续地为游戏付费掏钱。每种类型的用户,由于其特点不同,游戏时长也不同,所以,游戏时长也是一个很好的分析用户特征的角度,对分析用户对游戏的黏性很有帮助。

    用户流失

    不论在一款游戏周期的什么阶段,流失用户都是无法避免的事情。我们需要做的就是尽可能的找出他们离开游戏的原因,优化游戏。或者建立用户的流失预测模型,在他们离开之前做一些运营动作尽可能的挽回他们。

    生命周期分析

    DAU经过对比、趋势和拆解分析,则会反映产品的生命周期状态。

    用户生命周期价值,LTV

    LTV用于计算用户在其生命周期内对游戏的平均价值.生命周期是指用户在给定的时间段内的活跃天数。游戏的平均价值是指用户对游戏的付费额。这是一个直接用收入来衡量的指标,也是另一个直接考察用户质量的指标。

    LTV计算

    其计算公式为:

    LTV = LT * ARPU

    LTV这个指标指的是一个用户的全生命周期贡献的价值,和中间一系列转换等都没有关系。其中,用户的生命周期可以从用户首次登录开始算起,每次的登录都要进行累加。而ARPU的计算可以取一段时期内的ARPU的平均值进行计算

    LTV分析

    对于大多数游戏而言,LTV的衰减速度并不是很有规律。一般都是前期衰减严重,后期衰减较小。采用一个函数来拟合分析并不是很有效,因此可以依据不同的时间段,采取分段函数进行分析。

    用户购买关联分析

    关联分析模型是从大量数据集中返现频繁出现的模式、关联和相关性。通过量化分析游戏中商品A的出现对商品B的出现有多大影响来发现关联规则。其中最经典也是最常用的算法是Apriori算法,其核心思想是通过链接产生候选项集及其支持度,然后通过剪枝生成频繁项集。


    留存

    留存的用户指的是在某一个时间段内在登录游戏,经过一段时间后还在登录游戏的客户,他们所占的比例就是留存率。而那些离开的用户所占的比例就是流失率,这两个指标都是值得重点关注的。

    如果细分下去的话,还有不同阶段用户的留存率。鉴于目前大部分用户的来源都是渠道,那么此时对于留存率的考察都是基于激活用户的;那么等到用户开始付费的时候,可以设计付费留存率来考察这批人的情况。

    研究留存的过程就是研究用户在生命周期中转化的过程。一个用户,从一开始的新增用户,到称为活跃用户,最终称为稳定用户的这个过程,反映在留存率的曲线上就会很直观。留存率的曲线会像log函数曲线一样,从高到底,从快到慢地下降。直到进入稳定运行的阶段。

    定义和计算

    定义留存率的时候还是脱离不开时间这个节点。一般来讲,可以分为1日,3日,7日,14日,月,季度,半年等。如果针对同一天的新增用户,不同的时间点的留存率表达的就是他们过了一段时间后,还有多少留了下来,不同时间的留存率可以组成一个转化图表,就可以直观地看出这批用户的大致情况。

    当不对用户的进入时间作区分的话,那么每日对于留存率的考察也就没有必要在不同时间周日留存率之间比较了,因为他们有不是同一批客户的可能性。

    留存分析

    留存率实际上只是一种表面上的工具,然而分析师在分析留存率的时候,需要了解留存率背后所折射的问题和影响因素。不管是留存率的根本影响因素还是在体验上,都涉及用户心理、产品机制和内容设计。简而言之就是尽可能的通过深层次的各方面的游戏设计将用户留在游戏中。对于留存率的分析可以有以下几个角度:

    用户

    既然留存分析的是用户的转化全过程,那么最终留下来的一定就是对游戏厂商价值最大的客户。这样就准确定位了哪些人是有效的用户。用户在获取之后才是整个流程的开始,后面还需要经历一整个转化的阶段。

    在用户的获取激活阶段,有激活留存率可以用来衡量用户在激活阶段的留存率,它实际上反映的是游戏内容以外的各种技术上的质量。

    在用户获取之后的转换阶段,也可以通过定义不同的留存率来衡量不同阶段,不同类型的用户的留存表现,也就是在衡量整个业务的表现。也可以结合用户的在游戏中产生的数据进行分析,甚至是对用户进行特征建模。例如用户时长的分析,除去一些极低的游戏时间,剩下的应该是一个正态分布,如果不是的话,就要结合游戏本身的特点进行进一步的分析了。

    产品和运营

    当留存率进入一个稳定的时期之后,随着后续不断地运营活动,留存率会存在在一定范围内小幅波动的特征,也不是持续走低。也就是一个用户在成为稳定用户之后,会时不时的登录游戏,也就是说我们进行运营活动的目的就是尽可能的把新增用户转化成为稳定用户,让用户在游戏上付出时间、精力甚至金钱,让他们舍不得离开。

    留存率优化

    留存率的分析是一个整体,只有整体留存率维持在一个较好的水平上时,用户量才有保证。而一般来说,留存率过低是由于游戏质量出了问题,用户在经历了某一个阶段后选择放弃了游戏。那么我们可以有以下几个思路来做品质方面的优化:

    1. 技术优化(进入游戏时长,硬件资源优化,网络优化等)
    2. 游戏关卡、难度等的设计(游戏是否过于简单或者过于复杂、是否缺乏友好的新手教程、初期是否太难)
    3. 游戏平衡优化(调整游戏平衡,是否某一职业优势过大)

    上面的优化都是针对游戏内容的,但是这种优化很有可能周期长,需要大量测试等等,我们还可以做一些运营活动作为短期暂时的补充优化:

    1. 新手礼包
    2. 每日签到
    3. 等级奖励
    4. 周末、节日活动等等

    还可以针对某些渠道进行优化,例如一个渠道上用户的留存率太低,就可以适当的停止这个渠道继续的投入,并且把有限的精力放在存量上。

    流失分析

    用户流失是指在一段时间内,用户离开游戏的情况。在时间维度上,普遍用周或者月这样的大范围时间进行衡量。针对流失的用户,我们希望能够知道:

    • 流失用户的特征(在游戏内容方面,例如游戏等级、游戏时长等等)
    • 流失原因(从流失用户的综合特征中找出普遍的规律)
    • 挽留策略(针对不同的原因的流失用户进行不同方式的挽留)
    • 挽留效果评估
    • 建立用户流失预测模型(通过用户流失前的种种行为特征进行建模,预测哪些用户即将成为流失用户,并有针对性的进行挽留)

    渠道

    渠道是用户获取的方式。渠道和用户的分析和总结是不可分离的,我们通过分析渠道来定位用户,通过分析用户来评价渠道。对于在各大厂商深耕存量的今天,在产品的推广营销领域,为了节约成本同时提高用户价值,粗犷的推广渐渐被精准的营销手法所替代。

    这就不可避免地需要不断地优化渠道,不外乎两个方向:

    1. 市场方向,通过在用户质量、收入等方面反过来量化渠道的效果和价值,从而对渠道有较为全面的了解。

    2. 运营方向,同样也是从用户的深度研究出发,对不同的渠道、产品、用户进行区分,最大化渠道的特点和价值,提高渠道的性价比。

    渠道追踪

    在移动游戏的时代,手机系统无非安卓(分包追踪)和iOS(短链接追踪)两种入口。有了这样的细分,我们在用户的入口方面又多了几个维度的细分了。

    渠道数据分析框架总结

    渠道特点分析

    我们在使用某种渠道之前,肯定需要通过直接或者间接的方式去了解渠道本身的特点。简单来讲,我们可以通过以下几个数据点来考察:

    1. 品牌力
      渠道的品牌不仅跟客户的数量、质量有关,还跟游戏的类型有关,也就是说我们还需要关注该渠道在哪种类型的游戏领域有品牌力,或者全领域都有。

    2. 体量
      渠道的大小决定了客户的基数,但是绝不等同于客户的质量。

    3. 客户的特征
      不同玩家的渠道有着不同的特征,也就有着不同的偏好,需要根据自身产品的特点谨慎选择。

    4. 出身
      根据渠道的来自于那些应用市场来辅助判定玩家的主要属性。

    产品、目标人群的渠道匹配

    我们开发一款游戏,总是有自己的目标人群,比如年龄段,主要性别,收入或者地域文化分布等等。这也就客观上决定了我们应该选择什么样的渠道进行推广。渠道的特点要和产品的特点进行适当的匹配,当然有时候不能完全匹配,但是至少要做到在主要因素方面没有冲突。游戏厂商可以通过多个维度来定义自己的游戏,简单举例,包括:

    1. 游戏主题
      策略,MOBA,卡牌,休息等等

    2. 客户年龄、性别
      和游戏的主题有紧密联系,不同主题的游戏有着不一样的受众

    3. 游戏时间

      1. 游戏时长
        由游戏本身的设计决定,不同的游戏对一天中进行游戏的次数,每次进行游戏的时长有着不同的要求,例如MOBA类游戏一局游戏的时间可能要十几分钟到一个小时,建造类游戏的时长很短,但是会经常由于各种游戏情景进行登录

      2. 游戏时间段
        不同的客户在当中不同的时间段的登录、游戏行为也会根据游戏性质的改变而改变。这一点又可以细分为年趋势和天趋势。

    4. 游戏设计
      这是一个很宽泛的方面,包括难度递进的速度,关卡设计的方式,不同任务和玩法的适应性等等

    以上面特征维度为代表的变量定义了一款游戏的性质,我们就需要根据这些性质去匹配渠道。

    渠道评价体系

    既然用户和渠道是分不开的,那么我们就需要从用户的各个方面反过来对渠道进行评价,来衡量渠道的匹配情况,价值和成本。

    对于渠道的评价数据指标可以参考用户评价的指标来建设,二者对于用户的评价体系是相同的。但是不同的地方在于我们最终是要对渠道商做一个反馈出来。基于这样的思路,可能每个公司对于最终的想要优化的结果的定义不同,但是无论怎样定义,其以用户和价值作为核心的框架都不会变。

    • 雷达图式

    我们可以把多个评价的指标作为评价一个渠道商的几个分项,渠道一定是各有特点的,每个渠道专精的地方和类型也有可能不同。我们可以根据我们的每一个产品的不同特点有针对性的设计不同的指标体系,比如有的某一款游戏对几个用户的特点都有要求,就可以同时把这几个指标作为衡量的标准。

    • 线性模型评分模型

    另外一种方式就是线性模型,其优点是我们可以自定义每个指标的重要程度作为评价的参数,这当然要求在前期我们要对这些参数有足够深的认识。在雷达图中,本质上我们对所有指标的重视程度是一样的。

    渠道的优化

    在我们完成了渠道的评价之后,自然就是根据评价对渠道进行优化了


    收入

    总体分析

    通常一款游戏的收入发生了变化(这里特质游戏的付费收入),如果是上升的话我们要知道哪里做对了,如果收入下降的话我们要知道哪些环节出了问题。

    而游戏付费的收入=日活跃用户数 * 付费转化率 * 平均每位付费用户的收入。也就是说,游戏的收入可以被细分成3个部分:

    • 日活跃用户数,DAU –> 有多少人在玩
    • 付费转化率 –> 玩的人有多少掏了钱
    • 平均每付费用户收入,ARPPU –> 掏了多少钱

    对于收入的变化,我们找出每个部门的贡献程度即可。

    日活跃用户已经在先前表述过,此处不再赘述

    付费转化率分析

    付费转化率 = 付费玩家/活跃玩家

    一个用户从免费的阶段转到付费的阶段是一个很重要的节点,这意味着这个用户肯为自己在游戏中的体验买单了。

    细分来看,付费玩家和活跃玩家的变化对于整体业务有着不同的意义:

    1. 付费玩家上升;活跃玩家下降
      有可能是一次性大量消费,例如运营活动等

    2. 付费玩家上升;活跃玩家上升
      有效提升,或者产品初期的大规模增长

    3. 付费玩家下降;活跃玩家下降
      产品品质出现问题,大量用户流失

    4. 付费玩家下降;活跃玩家上升
      付费转化率出现问题,需要进一步分析原因

    定义转化率

    • 时间
      首先在定义转化率的时候,不得不考虑的一个维度就是时间。不同的时间周期自然会衡量不同的转化率效果指标。

    • 付费动机
      付费用户是来源于免费用户,但是这个转化过程的动机却不同。距离来说,有些人是冲动消费,此后有可能他们就不再进行消费甚至不再进行游戏;有些人是理性消费,但是仅限于购买低级月卡会员或者某种特定道具等等。

    • 付费金额
      转化率衡量的只是一个比例,没有衡量付费金额。这是这个指标的一个缺点,在游戏行业尤其突出,因为游戏业的收入存在明显幂律趋势

    • 结构
      延续上一条的缺陷,我们可以通过先进一步将用户价值进行定义,在不同价值的用户下面再谈转化率,这样就合理多了。推而广之,这个结构化的转化率也可以从另一个时间角度分为新增用户,老用户等等。

    • 上限
      这个转化率是有明显上限的,在不同的阶段表现是不同的,例如在做了一个运营活动之后,转化率可能明显上升,但是后续的持续性却未必,我们用这些指标是想来对整个现状有一个精确的认识,所以这种上升一定要被识别出来。

    付费玩家,APA

    就像上面所说的,在转化率的分析中,付费玩家只以个数计,并不以他们付费金额来统计。这就导致了不论这个玩家付了多少费,在付费转化率的分析的眼里都是一样的。但是很明显他们是不同的,因此,我们就需要对这些玩家的质量做深度的分析。

    所以我们就需要针对付费玩家也进行分层分析。观察的维度在于:

    • 付费的频次
    • 付费的间隔
    • 付费的道具
      通过分析购买了什么样的游戏道具,通过建模,可以得到玩家使用道具的消费习惯,从而可以从这个维度展现用户分层的效果。

    在分层形成之后,把用户总结成金字塔的结构,从上到下价值依次减少。将用户结构化地分开,有助于后续精细化的运营操作。

    付费转化率的影响因素

    如果转化率出现问题,那么我们就需要分析其原因。一个有效的思路就是沿着玩家从免费到付费的路径进行分析:

    事件触发 –> 发现道具 –> 找到道具 –> 做出购买决策 –> 道具使用效果反馈

    1. 事件触发

    一般用户应该不会在什么都没有发生的情况下主要想到要去消费,一定是有一些事件对其产生了刺激,例如角色升级,被人攻打等等。为了获得下一步更好的体验,例如快速通过副本、或者获得周期性奖励等等,使得用户开始有了寻找解决方法的动机。

    1. 发现道具、找到道具

    道具的推广有两种场景:

    • 日常的推广,例如进入界面的推广广告等等
    • 事件触发时的推广,例如升级的之后,发生一个重要的游戏行为之后等

      1. 做出决策

    在做决定之前大部分人都会想的问题是值不值。所以在游戏道具,甚至整个流程的策划过程中,都要考虑这些问题。不断地优化用户的游戏体验。

    1. 售后

    玩家在购买之后,自己会对购买后对游戏的帮助有一个判断。这个判断很重要,足以影响到下一次的购买行为。同样地,这个和游戏的设计也有密不可分的关系。

    付费转化率深度分析

    付费转化率是一个单一的指标,如果我们结合其他指标同时进行分析的话,可能会得出不一样的结论来。

    • 首次购买和二次购买

    游戏中每一次的购买行为,我认为重要程度是不一样的。不只是首次购买值得分析,二次购买同样值得分析。

    首次购买

    首次购买是用户从一个免费用户到付费用户的一个重要的转换节点。说明玩家用真金白银在表达对产品的认可,玩家开始希望可以用钱来提升自己在游戏中的体验。一旦玩家在消费了一次过后,对于产品的黏性会比消费之前大大增加,毕竟为止花过钱的游戏不会轻易放弃。

    二次购买

    由于有一次性冲动消费的现象存在,会对首次购买这个行为衡量的效果打折。冲动过后,需要有持续不断的产品体验的提升来引导玩家进行第二次甚至更多次的消费。如果玩家在首次消费后没有得到自己想要的游戏体验,那么此时便会加速他流失的可能性。

    • 畅销付费

    一个游戏道具被多数人购买,从一定程度上可以反映玩家的某些特征和验证游戏设计点的好坏。

    • 促销效果

    ARPU

    这个指标指的是活跃用户的平均付费值,我们可以根据需要在上面加上各种条件进行细分。例如:

    • 加上日、周或者月的条件限制,可以看到不同趋势,不同周期的收入情况
    • 加上新旧用户的条件,可以观察到新用户和老用户分别的情况

    ARPPU

    因为免费游戏的收入趋势普遍呈现明显的幂律走势。所以在收入方面,任何以算数平均为算法的指标都变得不那么可靠。我们可以用百分位数来取代。

    RFM模型

    RFM是用来衡量用户的消费行为,从而为后续的决策提供依据。从三个维度对客户的价值进行划分,使得公司能更好地调配资源为有价值的客户提供服务。

    付费时间间隔(Recency, R)

    R表示客户上次付费距离现在的间隔,也就是这个值越小,说明客户的价值越高

    付费总次数(Frequency, F)

    F表示在自定义的一段时间内,用户发生购买的次数,当然这个数越大越好

    付费总金额(Monetary, M)

    M表示一段时间内,用户在游戏上消费的金额,这个数值同样也是越大越好

    付费客户分层

    通过RFM三个维度,我们就可以把客户分成几个层级。针对不同的层级,做有针对性的运营动作。


    产品

    数据驱动的思路不仅可以体现在产品运营阶段,也可以体现在产品设计阶段。玩家在游戏中的行为可以被记录下来当做研究的数据。

    游戏优化

    • 购买支付流程

    产品设计人员可以结合一些数据找到玩家的购买特征,从而通过反复体验模拟这种购买行为,找出有哪些不方便的地方,有哪些地方的体验还可以提升

    • 游戏设计和运营

    从用户的购买过程分析用户在不同游戏阶段的购买需求,从这个需求出发,从一定意义上可以辅助游戏的设计。另外一方面,也可以指导游戏运营的时机和进程。

    运营活动

    从数据分析的角度,运营活动主要可以收集玩家对于游戏的需求。

    我们可以从运营活动中的各个环节进行数据收集,有了数据才能做下一步的分析。一方面可以针对游戏内容进行改进,另一方面也可以对运营行为本身做出评价。

    展开全文
  • 全面教你如何建立数据分析的思维框架

    千次阅读 多人点赞 2017-07-07 09:10:04
    目前,还有一些人不会建立数据分析的思维框架,那么今天课课家,就一步一步的教大家怎么建立,大神路过还请绕道,当然还可以交流一下。有需要的小伙伴,可以参考一下。  曾经有人问过我,什么是数据分析思维?...

    目前,还有一些人不会建立数据分析的思维框架,那么今天课课家,就一步一步的教大家怎么建立,大神路过还请绕道,当然还可以交流一下。有需要的小伙伴,可以参考一下。
    全面教你如何建立数据分析的思维框架_大数据_指标体系_数据分析_数据分析思维_维度分析法_课课家教育

         曾经有人问过我,什么是数据分析思维?如果分析思维是一种结构化的体现,那么数据分析思维在它的基础上再加一个准则:

      不是我觉得,而是数据证明。

      这是一道分水岭,“我觉得”是一种直觉化经验化的思维,工作不可能处处依赖自己的直觉,公司发展更不可能依赖于此。数据证明则是数据分析的最直接体现,它依托于数据导向型的思维,而不是技巧,前者是指导,后者只是应用。

      作为个人,应该如何建立数据分析思维呢?

      一、建立你的指标体系

      在我们谈论指标之前,先将时间倒推几十年,现代管理学之父彼得·德鲁克说过一句很经典的话:

      如果你不能衡量它,那么你就不能有效增长它。

      所谓衡量,就是需要统一标准来定义和评价业务。这个标准就是指标。假设隔壁老王开了一家水果铺子,你问他每天生意怎么样,他可以回答卖的不错,很好,最近不景气。这些都是很虚的词,因为他认为卖的不错也许是卖了50个,而你认为的卖的不错,是卖了100。

      这就是“我觉得”造成的认知陷阱。将案例放到公司时,会遇到更多的问题:若有一位运营和你说,产品表现不错,因为每天都有很多人评价和称赞,还给你看了几个截图。而另外一位运营说,产品有些问题,推的活动商品卖的不好,你应该相信谁呢?

      其实谁都很难相信,这些众口异词的判断都是因为缺乏数据分析思维造成的。

      老王想要描述生意,他应该使用销量,这就是他的指标,互联网想要描述产品,也应该使用活跃率、使用率、转化率等指标。

      如果你不能用指标描述业务,那么你就不能有效增长它。

      了解和使用指标是数据分析思维的第一步,接下来你需要建立指标体系,孤立的指标发挥不出数据的价值。和分析思维一样,指标也能结构化,也应该用结构化。

      我们看一下互联网的产品,一个用户从开始使用到离开,都会经历这些环节步骤。电商app还是内容平台,都是雷同的。想一想,你会需要用到哪些指标?

    我们看一下互联网的产品,一个用户从开始使用到离开,都会经历这些环节步骤。电商APP还是内容平台,都是雷同的。想一想,你会需要用到哪些指标?

      而下面这张图,解释了什么是指标化,这就是有无数据分析思维的差异,也是典型的数据化运营,有空可以再深入讲这块。

    而下面这张图,解释了什么是指标化,这就是有无数据分析思维的差异,也是典型的数据化运营,有空可以再深入讲这块。

      标体系没有放之四海而皆准的模板,不同业务形态有不同的指标体系。移动APP和网站不一样,SaaS和电子商务不一样,低频消费和高频消费不一样。好比一款婚庆相关的APP,不需要考虑复购率指标;互联网金融,必须要风控指标;电子商务,卖家和买家的指标各不一样。

      这些需要不同行业经验和业务知识去学习掌握,那有没有通用的技巧和注意事项呢?

      二、明确好指标与坏指标

      不是所有的指标都是好的。这是初出茅庐者常犯的错误。我们继续回到老王的水果铺子,来思考一下,销量这个指标究竟是不是好的?

      最近物价上涨,老王顺应调高了水果价格,又不敢涨的提高,虽然水果销量没有大变化,但老王发现一个月下来没赚多少,私房钱都不够存。

      老王这个月的各类水果销量有2000,但最后还是亏本了,仔细研究后发现,虽然销量高,但是水果库存也高,每个月都有几百单位的水果滞销最后过期亏本。

      这两个例子都能说明只看销量是一件多不靠谱的事情。销量是一个衡量指标,但不是好指标。老王这种个体经营户,应该以水果铺子的利润为核心要素。

      好指标应该是核心驱动指标。虽然指标很重要,但是有些指标需要更重要。就像销量和利润,用户数和活跃用户数,后者都比前者重要。

      核心指标不只是写在周报的数字,而是整个运营团队、产品团队乃至研发团队都统一努力的目标。

      核心驱动指标和公司发展关联,是公司在一个阶段内的重点方向。记住是一个阶段,不同时期的核心驱动指标不一样。不同业务的核心驱动指标也不一样。

      互联网公司常见的核心指标是用户数和活跃率,用户数代表市场的体量和占有,活跃率代表产品的健康度,但这是发展阶段的核心指标。在产品1.0期间,我们应把注意力放到打磨产品上,在大推广前提高产品质量,这时留存率是一个核心指标。而在有一定用户基数的产品后期,商业化比活跃重要,我们会关注钱相关的指标,比如广告点击率、利润率等。

      核心驱动指标一般是公司整体的目标,若从个人的岗位职责看,也可以找到自己的核心指标。比如内容运营可以关注阅读数和阅读时长。

      核心驱动指标一定能给公司和个人带来最大优势和利益,记得二八法则么?20%的指标一定能带来80%的效果,这20%的指标就是核心。

      另外一方面,好的指标还有一个特性,它应该是比率或者比例。

      拿活跃用户数说明就懂了,我们活跃用户有10万,这能说明什么呢?这说明不了什么。如果产品本身有千万级别的注册用户,那么10万用户说明非常不健康,产品在衰退期。如果产品只拥有四五十万用户,那么说明产品的粘性很高。

      正因为单纯的活跃用户数没有多大意义,所以运营和产品会更关注活跃率。这个指标就是一个比率,将活跃用户数除以总用户数所得。所以在设立指标时,我们都尽量想它能不能是比率。

      认识和看待事物

      这类常见的提问方式包括了一个知名人物或历史事件如何评价?如何看待一个产品?你对某个事物是如何理解的?如何看待或分析一种行为或热点等?

      对于看待或分析事物类的思维,则是我们前面一篇思维的逻辑里面讲到的很多内容,即事物本身应该结合外部环境+时间线+事物核心维度进行全面的分析,事物的外在交互关系,事物的内部结构和衔接,事物本身动态展现的行为特征等。这些首先分析清楚,即对事物本身有一个全面和客观的认识。

      这类思维的一个核心即辩证思维,在这里我不太喜欢用批评性思维这个词,辩证思i维更加体现了这类思维的重点是全面,客观,以数据说话同时减少主观偏颇看法。对于这类问题你不一定要去表面自己的主观感受,而更加重要的是把事实和道理讲清楚,有理有据。

      在真正分析清楚后,后续才过渡到这类问题的演进,即如何评估或评价一个事物,其前提仍然是分析清楚客观数据,但是数据本身不是评价或评估指标,因此一谈到评估自然会想到需要建立或参考一个评估体系。一个历史帝王有政治,经济,外交,军事和民生各种评价体系。对一辆车可能有动力,舒适性,油耗,操控等各种评价体系。一个产品本身有功能满足度,易用性,性能,价格等各种评价体系等。对于任何评估,则首先是找到现成可用的科学评价体系,然后将对事物分析后的数据映射到具体的评价体系上,即任何评估指标值的得出一定有事物本身内在数据和运作机制进行支撑的。

      这些都想清楚后,即这类思维的重点是事物的分解和集成分析,事物的行为或活动分析,事物相关的内外环境因素分析,事物本身的关键属性维度分析和评估体系确定,事物各关键指标特性间的相互制约和促进力分析(类似系统思维中的正负循环)等。

      坏指标有哪些呢?

      其一是虚荣指标,它没有任何的实际意义。

      产品在应用商店有几十万的曝光量,有意义吗?没有,我需要的是实际下载。下载了意义大吗?也不大,我希望用户注册成功。曝光量和下载量都是虚荣指标,只是虚荣程度不一样。

      新媒体都追求微信公众号阅读数,如果靠阅读数做广告,那么阅读数有意义,如果靠图文卖商品,那么更应该关注转化率和商品销量,毕竟一个夸张的标题就能带来很高的阅读量,此时的阅读量是虚荣指标。可惜很多老板还是孜孜不倦的追求10W+,哪怕刷量。

      虚荣指标是没有意义的指标,往往它会很好看,能够粉饰运营和产品的工作绩效,但我们要避免使用。

      第二个坏指标是后验性指标,它往往只能反应已经发生的事情。

      比如我有一个流失用户的定义:三个月没有打开APP就算做流失。那么运营每天统计的流失用户数,都是很久没有打开过的,以时效性看,已经发生很久了,也很难通过措施挽回。我知道曾经因为某个不好的运营手段伤害了用户,可是还有用吗?

      活动运营的ROI(投资回报率)也是后验性指标,一个活动付出成本后才能知道其收益。可是成本已经支出,活动的好与坏也注定了。活动周期长,还能有调整余地。活动短期的话,这指标只能用作复盘,但不能驱动业务。

      第三个坏指标是复杂性指标,它将数据分析陷于一堆指标造成的陷阱中。

      指标能细分和拆解,比如活跃率可以细分成日活跃率、周活跃率、月活跃率、老用户活跃率等。数据分析应该根据具体的情况选择指标,如果是天气类工具,可以选择日活跃率,如果是社交APP,可以选择周活跃率,更低频的产品则是月活跃率。

      每个产品都有适合它的几个指标,不要一股脑的装一堆指标上去,当你准备了二三十个指标用于分析,会发现无从下手。

      三、建立正确的指标结构

      既然指标太多太复杂不好,那么应该如何正确的选择指标呢?

      和分析思维的金字塔结构一样,指标也有固有结构,呈现树状。指标结构的构建核心是以业务流程为思路,以结构为导向。

      假设你是内容运营,需要对现有的业务做一个分析,提高内容相关数据,你会怎么做呢?

      我们把金字塔思维转换一下,就成了数据分析方法了。

      从内容运营的流程开始,它是:内容收集—内容编辑发布—用户浏览—用户点击—用户阅读—用户评论或转发—继续下一篇浏览。

      这是一个标准的流程,每个流程都有指标可以建立。内容收集可以建立热点指数,看哪一篇内容比较火。用户浏览用户点击则是标准的PV和UV统计,用户阅读是阅读时长。

    这是一个标准的流程,每个流程都有指标可以建立。内容收集可以建立热点指数,看哪一篇内容比较火。用户浏览用户点击则是标准的PV和UV统计,用户阅读是阅读时长。

      从流程的角度搭建指标框架,可以全面的囊括用户相关数据,无有遗漏。

      这套框架列举的指标,依旧要遵循指标原则:需要有核心驱动指标。移除虚荣指标,适当的进行删减,不要为添加指标而添加指标。

      四、了解维度分析法

      当你有了指标,可以着手进行分析,数据分析大体可以分三类:

      利用维度分析数据

      使用统计学知识如数据分布假设检验

      使用机器学习

      我们先了解一下维度分析法。

      维度是描述对象的参数,在具体分析中,我们可以把它认为是分析事物的角度。销量是一种角度、活跃率是一种角度,时间也是一种角度,所以它们都能算维度。

      当我们有了维度后,就能够通过不同的维度组合,形成数据模型。数据模型不是一个高深的概念,它就是一个数据立方体。

    当我们有了维度后,就能够通过不同的维度组合,形成数据模型。数据模型不是一个高深的概念,它就是一个数据立方体。

      上图就是三个维度组成的数据模型/数据立方体。分别是产品类型、时间、地区。我们既能获得电子产品在上海地区的2010二季度的销量,也能知道书籍在江苏地区的2010一季度销量。

      数据模型将复杂的数据以结构化的形式有序的组织起来。我们之前谈到的指标,都可以作为维度使用。下面是范例:

      将用户类型、活跃度、时间三个维度组合,观察不同用户群体在产品上的使用情况,是否A群体使用的时长更明显?

      将商品类型、订单金额、地区三个维度组合,观察不同地区的不同商品是否存在销量差异?

      数据模型可以从不同的角度和层面来观察数据,这样提高了分析的灵活性,满足不同的分析需求、这个过程叫做OLAP(联机分析处理)。当然它涉及到更复杂的数据建模和数据仓库等,我们不用详细知道。

      数据模型还有几种常见的技巧、叫做钻取、上卷、切片。

      选取就是将维度继续细分。比如浙江省细分成杭州市、温州市、宁波市等,2010年一季度变成1月、2月、3月。上卷则是钻取的相反概念,将维度聚合,比如浙江、上海、江苏聚合成浙江沪维度。切片是选中特定的维度,比如只选上海维度、或者只选2010年一季度维度。因为数据立方体是多维的,但我们观察和比较数据只能在二维、即表格中进行。

    比如只选上海维度、或者只选2010年一季度维度。因为数据立方体是多维的,但我们观察和比较数据只能在二维、即表格中进行。

      上图的树状结构代表钻取(source和time的细分),然后通过对Route的air切片获得具体数据。

      聪明的你可能已经想到,我们常用的数据透视表就是一种维度分析,将需要分析的维度放到行列组合进行求和、计数、平均值等计算。放一张曾经用到的案例图片:用城市维度和工作年限维度,计算平均工资。

    聪明的你可能已经想到,我们常用的数据透视表就是一种维度分析,将需要分析的维度放到行列组合进行求和、计数、平均值等计算。放一张曾经用到的案例图片:用城市维度和工作年限维度,计算平均工资。

      除了Excel、BI、R、Python都能用维度分析法。BI是相对最简便的。

      谈到维度法,想要强调的是分析的核心思维之一:对比,不同维度的对比,这大概是对新人快速提高的最佳捷径之一。比如过去和现在的时间趋势对比,比如不同地区维度的对比,比如产品类型的区别对比,比如不同用户的群体对比。单一的数据没有分析意义,只有多个数据组合才能发挥出数据的最大价值。

      我想要分析公司的利润,利润 = 销售额 – 成本。那么找出销售额涉及的指标/维度,比如产品类型、地区、用户群体等,通过不断的组合和拆解,找出有问题或者表现良好的原因。成本也是同理。

      这就是正确的数据分析思维。总结一下吧:我们通过业务建立和筛选出指标,将指标作为维度,利用维度进行分析。

      很多人会问,指标和维度有什么区别?

      维度是说明和观察事物的角度,指标是衡量数据的标准。维度是一个更大的范围,不只是数据,比如时间维度和城市维度,我们就无法用指标表示,而指标(留存率、跳出率、浏览时间等)却可以成为维度。通俗理解:维度>指标。

      到这里,大家已经有一个数据分析的思维框架了。之所以是框架,因为还缺少具体的技巧,比如如何验证某一个维度是影响数据的关键,比如如何用机器学习提高业务,这些涉及到数据和统计学知识,以后再讲解。

      这里我想强调,数据分析并不是一个结果,只是过程。还记得“如果你不能衡量它,那么你就不能有效增长它”这句话吗?数据分析的最终目的就是增长业务。如果数据分析需要绩效指标,一定不会是分析的对错,而是最终数据提升的结果。

      数据分析是需要反馈的,当我分析出某项要素左右业务结果,那么就去验证它。告诉运营和产品人员,看看改进后的数据怎么样,一切以结果为准。如果结果并没有改善,那么就应该反思分析过程了。

      这也是数据分析的要素,结果作导向。分析若只是当一份报告呈现上去,后续没有任何跟进、改进的措施,那么数据分析等与零。

      业务指导数据,数据驱动业务。这才是不二法门。

    展开全文
  • 几种数据可视化框架分析

    万次阅读 2016-12-04 12:32:35
    可用作:探索数据分析,链接分析,社交网络分析,生物网络分析等。 Gephi是一款信息数据可视化利器 Gephi可以供大学研究项目数据分析使用,新闻工作者,统计研究,微博信息研究等。 Gephi是在Netbeans...

    根据下面各个框架本身的特性,以及各自的优缺点,推荐使用D3或者ECharts作为数据可视化的首选框架,某些小特性可以辅用其他小框架实现。具体每个框架的说明和分析如下:

    D3.js

    D3是指数据驱动文档(Data-Driven Documents)。D3.js是一个JavaScript库,它可以通过数据来操作文档。D3可以通过使用HTML、SVG和CSS把数据鲜活形象地展现出来。D3严格遵循Web标准,因而可以让你的程序轻松兼容现代主流浏览器并避免对特定框架的依赖。同时,它提供了强大的可视化组件,可以让使用者以数据驱动的方式去操作DOM。

    D3允许开发者将任意数据绑定在文档对象模型(DOM)之上,然后再应用数据驱动转换到文档中。例如,你可以使用D3从一个数组生成一个HTML表格。或者使用同样的数据来创建一个带有平滑过渡和互动功能的交互式SVG柱状图。

    D3并非一个旨在涵盖所有功能特征的整体框架,相反,D3解决的问题核心是:基于数据的高效文档操作。这避免了局限的数据展现,提供了非凡的灵活性,体现出诸如CSS3,HTML5和SVG等Web标准的全部功能。使用最小的开销,D3的速度非常快,支持大型数据集以及交互与动画的动态行为。D3的函数风格允许通过各种组件和插件的形式进行代码的重用。

    官网和学习资料
    https://github.com/mbostock/d3/wiki/Gallery
    http://www.ourd3js.com/
    示例


    点评

    d3js是所有列出来的这些框架里面数据可视化展示功能最强大的,尤其适合大数据量的展示和交互式动态效果的渲染。是一个很强大的框架,网上的资料也比较多,但是因为强大,上手相对于其他框架比较困难。在github上有源码和api手册,尤其是有中文文档和中文学习网站。

    Bonsaijs

    一个轻量级的免费开源的javascript图形库,可以方便地创建图形很动画。这个类库使用SVG作为输出方式来生成图形和动画效果,拥有非常完整的图形处理API,可以使得你更加方便的处理图形效果。

    有下面的一些特性:

    • 设计上分开了选择和运行器

    • 可以使用iFrame, Worker和Node来运行

    • 支持路径

    • 支持不同的资源(视频,图片,字体和小电影)

    • 基于Keyframe和时间的动画 (拥有easing功能)

    • 变形路线(Path morphing)

    官网
    http://bonsaijs.org/
    示例

    点评

    图形api的接口js,理论上应该能实现很多效果。根据官网demo中的效果来看,pie Chart和Blobs效果还是很不错的,尤其Blobs做得很炫。 并不完全建议用此框架来实现数据可视化,但是可以作为一个有力的补充框架。

    另外,网站上文档比较全面,写得也很易懂,易用性比较强,上手容易。

    Gephi

    Gephi是一款开源免费跨平台基于JVM的复杂网络分析软件, 其主要用于各种网络和复杂系统,动态和分层图的交互可视化与探测开源工具。可用作:探索性数据分析,链接分析,社交网络分析,生物网络分析等。

    Gephi是一款信息数据可视化利器

    Gephi可以供大学研究项目数据分析使用,新闻工作者,统计研究,微博信息研究等。

    Gephi是在Netbeans平台上开发,语言是JAVA,并且使用OpenGL作为它的可视化引擎。依赖于它的APIs,开发者可以编写自己感兴趣的插件,创建新的功能。

    开发者对它寄予的希望是:成为 “数据可视化领域的Photoshop” 。

    教程
    https://www.udemy.com/gephi/
    https://gephi.org
    ###示例

    点评

    看着也是很酷的一个工具,能实现一些很炫的效果,但是粗略看了一下,并不是一个前端工具,好像也是需要另外的后端支持的。可能并不适合用于页面开发,但是毋庸置疑是一个好的可视化工具。

    网上资料很多,有比较多的教程。

    arborjs

    Arbor.js是一个利用web workers和jQuery创建的数据图形可视化JavaScript框架。它为图形组织和屏幕刷新处理提供了一个高效、力导向布局算法。这个框架并没有强制使用哪一种方法来绘制屏幕,你可以使用Canvas、SVG、甚至是HTML的位置元素。

    官网
    arborjs.org
    示例

    点评

    上面的一张图很具有代表性,这样的网状图是arborjs擅长的,实际操作了一下性能也是可以接受的,看了一下基本上这个js框架的示例都是上面这样的网状图。对其他的饼状图或者更复杂的图像可能并不擅长。

    Raw

    Raw不是一个js的框架,而是基于d3的一个在线工具,通过直接在网站上导入数据,选择一种数据呈现方式,即可可视化地呈现数据。最终的效果可以用png图像格式下载或者生成svg源码嵌入到页面中。

    官网
    http://raw.densitydesign.org/
    https://github.com/densitydesign/raw/wiki/Developer-Guide
    示例

    点评

    并不是一个页面框架,也是一个工具,因为能快速生成效果图,可以用来作为一个原型工具使用,而且能直接生成可以嵌入页面中的svg代码,在一些场景下也是有用的。

    简单易用,但是网上资料并不很多

    Springy

    Springy是一个可拖拽的有向图算法javascript框架,很小巧,功能也简单单一。

    官网
    http://getspringy.com/#getting-started
    示例

    点评

    功能简单,并不能作为一个完整的框架来实现功能,但是因为易于上手,而且框架本身也有特点(基于物理法则布局,还没有搞太明白)。可以作为其他框架的补充,还是很不错的。

    HighCharts

    Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习、个人网站和非商业用途使用。HighCharts支持的图表类型有曲线图、区域图、柱状图、饼状图、散状点图和综合图表。

    官网
    http://www.hcharts.cn/
    示例

    点评

    商业用途需要授权,有大量的图形模板可以参考,基本上能涵盖常用的曲线图等图表,但是对于数据之间的联系和交互式的展示上不如d3这些专用的数据可视化框架。教程和资料较多,如果够用的前提下,可能highcharts更能好上手,用起来更方便一些。

    ECharts

    ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的 Canvas 类库 ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。

    ECharts 3 中更是加入了更多丰富的交互功能以及更多的可视化效果,并且对移动端做了深度的优化。

    ECharts 提供了常规的折线图,柱状图,散点图,饼图,K线图,用于统计的盒形图,用于地理数据可视化的地图,热力图,线图,用于关系数据可视化的关系图,treemap,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

    官网
    http://echarts.baidu.com/index.html
    https://github.com/ecomfe/echarts
    示例

    点评

    ECharts是百度团队开源的JS框架,只要加上版权申明之后可以免费使用。从效果看,比HighCharts要炫一些,支持各种图标,对大数据需要用到的关系图支持的也比较好。不过ECharts本身也不是专用于数据可视化的,专业性可能不如D3这样的框架,需要评估



    文/Endzzz(简书作者)
    原文链接:http://www.jianshu.com/p/1b6248c80936
    著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
    展开全文
  • 分析思维框架:66法则与SQVID原则

    千次阅读 2017-06-05 09:28:50
    “66法则”是指一种观察事物的方法。SQVID则是指导我们在用66法则观察完问题后,如何将每个问题都分析清楚,并采用可视化的方式表现出来...这两点可以有效帮助我们搭建分析思维框架。 本文选自《数据化运营速成手册》。
  • 作者:find goo ...来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。...什么ssh,orm,spring,struct,复杂,速度慢,最后把自已框进去了。 如果有有一百万种框架学一百万年后,知道了
  • 软件固有的复杂性

    千次阅读 2012-08-22 16:34:37
    软件固有的复杂性 一颗垂死的恒星正处在塌缩的边缘,一名儿童在学习如何阅读,白细胞向病毒发起进攻——这是真实事件的几个例子,它们包含着真正可怕的复杂性。软件也可能包含巨大复杂性的元素,但是这里的复杂性...
  • 主流插件框架分析

    千次阅读 2017-03-10 14:35:25
    前言目前移动端产品功能越来越复杂,模块不断增加,APK体积也不断增长。由于Android Dalvik最初设计的问题,单个.dex文件方法数最多是65536个。因此,APK难免会遇到64K方法数限制的问题。 Google官方提供了MultiDex...
  • 5W1h分析分析---play框架

    千次阅读 2017-09-23 18:46:41
    5W1h分析分析---play框架 5W1H(WWWWWH)分析法也叫六何分析法,是一种思考方法,也可以说是一种创造技法。 一、play框架是什么(What)  Play是一款开源、轻量、无状态、Web友好的架构,使用Java语言编写并...
  • mybatis源码分析1 - 框架

    万次阅读 2018-01-14 12:08:56
    我们分析的mybatis源码version为3.4.5,mybaits-spring源码version为2.0.0-SNAPSHOT。先看mybatis的源码目录结构,如下图所示。 我们只用看src/main/java下的目录即可。 annotations:注解定义,我们知道...
  • NET主流ORM框架分析

    千次阅读 2018-04-09 00:00:00
    接上文我们测试了各个ORM框架的性能,大家可以很直观的看到各个ORM框架与原生的ADO.NET在境删改查的性能差异。这里和大家分享下我对ORM框架的理解及一些使用经验。ORM框架工作原理所有的ORM框架的工作原理都离不开...
  • MINA框架源码分析(一)

    千次阅读 2016-08-09 16:30:14
    MINA框架大大的方便了我们开发高性能、高扩展应用程序的效率,他的底层实现是java NIO,众所周知NIO是同步非阻塞式IO,使用它我们可以开发高并发的java程序,但是使用起来过于复杂也让人望而却步,MINA对NIO进行了...
  • React源码分析1 -- 框架

    万次阅读 2017-02-18 18:42:01
    1 源码结构我们分析的React源码version为16.0.0-alpha.3,源码目录如下图所示。含义如下 addons:插件,一些比较有用的工具,如transition动画 isomorphic: 同构,服务端在页面初次加载时,将所有方法渲染好,一次...
  • 论文研究-复杂决策系统研究——框架及其方法.pdf, 界定了一种...我们对它的构成、主要特征和研究方法进行了详细分析 ,建立了复杂决策系统的一种面向对象的模型和研究框架.
  • 人工智能从学术理论研究到生产应用的产品化开发过程中通常会涉及到多个不同的步骤和工具,这使得人工智能开发依赖的环境安装、部署、测试以及不断迭代改进准确和性能调优的工作变得非常繁琐耗时也非常复杂。...
  • 如果重点关注的是第9个问题,则属于交互式分析框架。 本文下面分别讨论批处理、流计算、交互式分析三种类别的框架,然后简要介绍大数据计算框架的一些发展趋势。文章最后介绍这一领域的学习资料。 ...
  • 摘要 近年来随着CMMI、敏捷软件开发的推进,出现了多种...分析了分别在传统开发和敏捷开发下的典型需求评审情境,显示新框架能够适用于所有系统的和非系统的评审类型上。从分析中得到了15个有价值的启示。新需求评
  • 前端框架MVVM是什么(整理)

    千次阅读 多人点赞 2020-08-06 06:25:42
    它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。 外文名 Model-View-ViewModel 简 称 MVVM 例 如 Silverlight、音频 隶 属 微软 MVVM优点 低耦合 可重用 回到顶部 三、前后端...
  • 最近几篇文章,我会带大家一起设计一个流程编排框架,从项目的分析、设计、实现、重构、测试方面去了解整个编排框架,也会用到一些设计开发原则及设计模式,话不多说,我们先来看下编排框架的一个背景...
  • Spring框架设计模式分析

    千次阅读 2016-06-28 08:59:48
    本文通过阅读Spring的官方手册和源代码来分析Spring创建者的设计理念,主要梳理在使用Spring的过程中遇到的设计模式,以及Spring框架中各个核心组件之间的协同方式。1.Spring框架简介Spring框架是目前最流
  • hibernate框架的结构和分析

    千次阅读 2016-03-17 14:11:41
    在上篇博客中介绍了struts2框架的原理和流程分析,可以说struts框架一路走来,改变非常大,而且让我们开发人员变得更加轻松,里面的设计理念的改变也是让我们编程人员的思路得到更大的扩展。      可以说,...
  • Python复杂网络分析库networkx 看这一篇就够了

    千次阅读 多人点赞 2020-01-26 01:47:30
    networkx在2002年5月产生,是一个用Python语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进行复杂网络数据分析、仿真建模等工作。 networkx支持创建简单无向图、有向图和多重图...
  • 探索嵌入式应用框架(EAF)

    千次阅读 2018-03-18 00:00:00
    EAF是Embedded Application Framework 的缩写,即嵌入式应用框架。嵌入式应用框架是 Application framework的一种, 是在嵌入式领域的应用框架。Appl...
  • SSM框架浅谈

    万次阅读 多人点赞 2017-03-28 15:09:19
    背景 前段时间,忙这忙那的,又是专题分析,又是PMP培训,一直都没有办法闲下来。最近又换了班组,昨天才...此外,因为框架这种东西,内容很多,原理很复杂,不是三言两语能讲得明白的,因此也只能算是抛砖引玉了。
  • 几大主流的前端框架(UI/JS)框架

    千次阅读 2020-12-14 11:03:25
    如今的前端已经不再像以前一样就是简单的写写页面和调调样式而已,现在的前端越来越复杂,知识点越来越丰富。 要做WEB前端,就需要知道前端到底是什么,需要学习那些知识;前端至少要懂的三个部分:HTML,CSS,...
  • ORM框架分析

    千次阅读 2012-02-08 15:24:21
    如果让那位已经彻悟的同学舍弃ORM来实现复杂的业务功能,他当然无法接受。相反,如果让一位抱着《Thinking in Java》似懂非懂的同学用ORM来实现同样的功能,他也一样无法接受。其中的一些同学非常擅于“鸡蛋里挑骨头...
  • 大数据开源框架技术汇总

    千次阅读 2019-07-15 17:28:32
    主要基于对现阶段一些常用的大数据开源框架技术的整理,只是一些简单的介绍,并不是详细技术梳理。可能会有疏漏,发现再整理。参考的太多,就不一一列出来了。这只是作为一个梳理,对以后选型或者扩展的做个参考。 ...
  • 三大开发框架分析

    万次阅读 2016-04-08 19:21:46
    struts框架具有组件的模块化,灵活和重用的优点,同时简化了基于MVC的web应用程序的开发。 优点: Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部...
  • 复杂性应对之道 - 领域建模

    万次阅读 多人点赞 2018-03-19 17:39:07
    实际上,CQRS就是对事务脚本和领域模型两种模式的综合,因为对于Query和报表的场景,使用领域模型往往会把简单的事情弄复杂,此时完全可以用奥卡姆剃刀把领域层剃掉,直接访问Infrastructure。我个人也是坚...

空空如也

空空如也

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

复杂性分析框架