精华内容
下载资源
问答
  • 在讨论该随机LQ控制问题的解之后,给出投资组合动态数学模型对应的随机哈密顿-雅克比-贝尔曼方程的解,得出了有效边界和最佳策略,讨论了风险价值约束的影响.最后,针对某油田勘探开发项目的实际情况,应用上述结论求出该...
  • 在讨论该随机LQ控制问题的解之后,给出投资组合动态数学模型对应的随机哈密顿-雅克比-贝尔曼方程的解,得出了有效边界和最佳策略,讨论了风险价值约束的影响.最后,针对某油田勘探开发项目的实际情况,应用上述结论...
  • 敏捷的工作价值 ...在商业价值中,项目的安全性和合规性可以用商业风险和无法承担的影响来理解。所以,如果做项目的原因是创造价值,那么价值驱动的交付必须贯穿于整个项目规划、执行和监控工作中..

    敏捷的工作价值

       在Scrum的工作流程图中可以看到,PO的主要职责是排列用户故事的优先级,确保价值最优,不会落后于市场,所以敏捷讲的是价值驱动交付

    合理的项目是要保证产生商业价值,并去创造收益或提高服务品质。在每一个组织所选择的项目中,没有一个项目是不会带来价值的。价值可以是经济上的价值,也可以是提升了组织能力的价值,如品牌知名度等。在商业价值中,项目的安全性和合规性可以用商业风险和无法承担的影响来理解。所以,如果做项目的原因是创造价值,那么价值驱动的交付必须贯穿于整个项目规划、执行和监控工作中。如果在做选择时,是不考虑价值驱动开发的长远目标,未来可能会出现问题或导致反馈风险,甚至会在进度前期产生假象。因此,团队需要考虑这些将会影响项目的非功能性需求、风险和客户的建议。

       敏捷推崇尽早交付价值,这意味着团队更注重于尽快交付项目当中价值最高的部分(优先级最高)毕竟在一个长期运行的项目中,较长的工期会带来风险,如失败、收益减少、机会消失。因此,为了尽可能达到成功,应该更注重于在事情变化或者出现偏差之前,尽快交付高价值的部分。

       其次,相关方对项目的满意度成为一个项目成功的重要因素。支持项目的发起人或业务代表对排除障碍和定义成功起到了至关重要的作用。当前期交付了高价值的内容之后,团队给发起人演示了他们对需求的理解,展示了他们对项目关键部分的共识,并证明他们可以交付成果。有形的成果将会提高发起人的信心,并与他们建立融洽的关系,使他们尽早介入,创造良性循环。

       总之,价值驱动交付就是对项目中排列有附加价值的活动与减小风险的活动之间的优先级做抉择,然后按照这个优先级执行。

     

    经济价值评估方法

       商业价值通常是指金融方面的评估,有些项目是为了安全或法规遵从性目的和不易确定的货币价值。在这些情况下,组织可能会想不承担项目的财务影响。

      对于商业项目,价值估算的方法有净现值(NPV)、投资回报率(ROI)、内部收益率(IRR)等组合而成的经济模型得出的具体数值进行选择可以减少个人的偏见,在选择项目上也会更乐观。

     

    敏捷的价值产出

       传统项目所产生的价值一般都是在整体项目完成之后才能看到,但是敏捷使用增量的方式,每一个阶段都会有价值产生,这样就可以在第一时间获得客户的认可,这不仅减少了回收期,而且也降低了经济风险。

       传统项目管理范围是固定的,但是时间和成本是灵活的。而敏捷项目管理正好是相反的,时间和成本是固定的,但是范围是灵活的,如果工作按照时间完不成目标数量的工作,就砍掉低优先级的工作。

     

    小结

       价值驱动交付就是对项目中排列有附加价值的活动与减小风险的活动之间的优先级做抉择,然后按照这个优先级执行。

       商业价值通常是指金融方面的评估,使用经济指标组合成模型来进行评估。

       传统项目所产生的价值一般都是在整体项目完成之后才能看到,但是敏捷使用增量的方式,每一个阶段都会有价值产生。

     

    价值优先级排序方法

       优先级是敏捷流程的基础,即对需求进行优先级排序,把对客户重要的需求先研发出来。敏捷团队通常使用优先级的方法来确认他们正在交付的价值。

    在每一个迭代结束的时候,团队和客户都会评审待开发项,来确认下一个迭代需要改变哪些事情,以及下一个迭代要做的工作内容。在两个迭代的中间,可以重新对优先级进行排序,并在下一个迭代中规划相关的工作。

     

    基于客户价值的优先级排序

       客户价值的优先级方法关注尽快为客户产生高价值的工作。敏捷方法都是通过优先级的列表来识别客户所需的价值。

     

    简单方案

    基于主观经验,从高到低排序。

     

    MoSCoW方案

    在DSDM里使用到,将需求分为Must(必须做)、Should(应该做)、Could(可以做)、Would Not(不要做)。例如微信发送文字消息是必须做的需求;发送语音消息是应该做的需求;表情是可以做的需求;聊天时弹出广告是不可以做的需求。

     

    虚拟钱币

    经济价值估算,按照钱币得到最多的就是优先级最高的特性进行排序。

     

    100点方法

    每个成员都有100点来分配给多个需求,按照点数进行高低排序。

     

    Kano分析

    将需求分为基本需求、期望需求、兴奋需求。例如酒店的洗手间是必须有的基本需求;酒店还提供健身房这类期望需求,也叫线性需求,提供的产品或服务比较优秀,这类需求越多,客户越满意;酒店还有露天的无边界游泳池这种出人意料的附加价值,使得顾客产生惊喜,常常是一些未被客户了解的需求,用户在看到这些功能之前并不知道自己想要它们,这类需求可以提高客户忠诚度,也可以为产品增加额外价格。

     

    相对优先级排序

       就是一个简单的列表,从上到下的顺序依次是高中低。当增加新的特性时,可以和现有列表的特性进行比较,并为其设定优先级。

     

    小结

       基于客户价值的优先级排序方法:简单方案、MoSCoW方案、虚拟钱币、100点方法、Kano分析。

       相对价值排序就是从上到下的高中低排序。

     

    交付增量的价值

       如果交付的产品是在测试环境,而不是生产环境中,这种方法所看到的仅仅是产品总体的价值。但是对于增量交付来说也有其自身的问题,就是到了后期,对缺陷的修订成本很高。

     

    最小可行性产品(MVP)

       如果某个或多个功能已经足够代表这款产品了,而这些功能就叫做最小市场特性(MMF),进而投入到市场以最小的代价获得市场的反馈,而这反复试验的过程被称为最小可行性产品(MVP)。即增量规划符合需求的,由市场验证后期做调整。

     

    敏捷常用工具与价值衡量

       复杂的工具虽然可以产生大量记忆深刻的报告和图标,但是由于其复杂性,不是所有人都能掌握好的,所以敏捷团队更愿意选择易于掌握的工具,如任务版、用户故事索引卡片、规划扑克便于大家交流。

       低技术高感知的工具,这样的工具更贴近软件开发,当然这样的工具也并不意味着具有全部优点,只是相比较来说会更好。

     

    任务板与看板

    看板:一般用于看板团队是一种拉动式的管理方法比较看中团队生产力,看板是可以根据自己的生产能力选择添加任务的,并且看板是没有估算的,团队成员也不会对任务进行承诺。

    任务板:经常用于Scrum团队中,比起看板,任务版会有角色(PO、SM、Team),会有规定的时间限制,在迭代期间是拒绝增加任务的,并且任务是需要进行估算,团队成员对其任务进行承诺。开发团队适用任务板,运维团队适用看板。共同都是要有WIP(制品)限制,其次都是分阶段的。

     

    在制品(WIP)和在制品限制

    工作已经开始但还没有完全结束,WIP就是已安排的工作,在这些工作完成之前不接受其他工作。

    低限制的看板将会很容易识别出哪些事务阻碍了工作流,让人们可以更有效率的方式来降低制约和移除瓶颈。

    例如可能让其他团队成员去做一些预处理的工作。当第一个制约被移除时,可以重新执行这个过程去看看是否有其他事务再次导致工作流缓慢。反复的执行这个过程知道人员产生了闲置。这样用了绝大部分时间去完成工作任务,生产效率也提高了。

    WIP限制的目的是优化工作生产效率,不是优化资源利用。

     

    累计流量图(CFD)

    综合的价值流度量方法,通过它可以得到不同维度的信息,也可以跟踪和预测敏捷项目,帮助了解项目的问题,循环时间、可能的完成时间。

     

    小结

       最小市场特性(MMF)、最小可行性产品(MVP)。

       敏捷常用工具有任务板(开发团队)、看板(运维团队)、WIP、累积流量图(CFD)。

     

    利特尔定律

    如果WIP越多,循环时间越长,意味着当遇到问题的时候,潜在的浪费越多。

     

    核实和验证价值

       验证团队创造需要的东西是否跟刚开始描述的东西是一致的。

     

    频繁的验证和确认

       使用常规的测试、检查点和评审等技术来解决,这种实践称为频繁的验证和确认,如XP的结对编程。

     

    软件开发中的测试和验证

    探索性测试

    不断学习、探索,不断修正测试方法,强调灵活性的记录测试产物,而不必循规蹈矩,十分强调人的能动性是最大的亮点。实际上就是把戴明环的PDCA发挥到极致。

     

    可用性测试

    竞争对手比较,不同方案比较,易学性、易记性、容错性、交互效率和用户满意度。

     

    持续集成

    敏捷项目能够尽可能早的处理问题的一个例子。多人进行项目的多个独立部分的开发,然后把这些部分集成起来,以便创建一个兼备功能与价值的产品。尽早发现问题,在最短时间内解决问题,减少风险和浪费。

     

    测试驱动开发(TDD)

    要求编写某个功能代码之前,先编写测试用例,通过测试来推动整个开发的进行。这不是一种测试技术,而是一种分析技术、设计技术,更是一种组织所有开发活动的技术。优势有更符合后期开发的需求,因为关注用户反馈,可以及时响应需求变更,更快的适应变化。实现松耦合设计,提高系统的可廓形和抗变性。消除重复设计,优化设计结构,高代码的重用性。完整的测试会帮助团队持续的跟踪整个系统状态。提高团队对代码的信心及对代码重构的勇气,快速提高开发效率。

     

    验收测试驱动开发(ATDD)

    测试的焦点从代码本身转向业务需求。测试会在编码工作之前被创建。经历如下数个阶段:讨论需求、提炼测试、开发代码并链接测试和使用自动化验收测试脚本来进行探索性的测试,并演示软件。

     

    小结

       频繁的验证和确认开发出来的产品。

       软件开发中的测试与验证常用方法:探索性测试、可用性测试、持续集成、测试驱动开发(TDD)、验收测试驱动开发(ATDD)。

     

    敏捷需求拆解

       敏捷方法中,不必说明完整的需求。在最初的时候要保证需求的粗粒度,然后随着过程的进展,不断的细化它们。这样有助于保证产品设计的平衡,所以产品不会出现特定领域的过度设计。

       也不会出现匆忙开发导致新信息或突发的需求变更而知需要修改的模块。敏捷是拥抱变更,当建立不断扩大的系统时,更早的获得反馈。

     

    基于价值的分析

       敏捷规划是基于价值的分析,是对工作项的业务价值进行评估和排序的过程,然后对其进行规划。这个工作的业务价值是什么?应该如何得到最高的业务价值?

     

    基于价值的分解

       这是从相关方那里引出需求的过程,排列这些需求,然后按照优先级排列顺序放入开发过程中。

       开踢会议交流业务需要和见解来定义项目的边界和目的,进而获得项目愿景,从而匹配客户的使命、目标和成功标准。

       在通过特性工作坊将项目愿景拆分为系统潜在的特性,进行优先级排序,最后输出优先级特性列表,然后进入循环的冲刺开发过程中。

     

    建立用户故事

    用户故事(User Story)在软件开发过程中被作为描述需求的一种表达形式。是为了规范用户故事的表达,便于沟通与理解用户需求,包含:

    角色,谁要使用这个功能;

    活动,需要完成什么样的功能;

    商业价值,为什么需要这个功能,这个功能能带来什么样的价值;

     

    好的用户故事应该遵循INVEST原则

    独立的(Independent)

    用户故事之间具有独立性,不存在应该依赖于其他故事。一般可以组合用户故事或分割用户故事,来减少用户故事间的相互依赖性。

     

    可协商的(Negotiable)

    用户故事是由客户或者产品负责和开发小组的成员共同协商制定的,不是签订的商业合同,设定一堆的条条框框。

     

    有价值的(Valuable)

    用户故事站在用户的角度去编写,必须对最终用户是有价值的,描述的是一个个特性,而不是一个个任务。

     

    可估算的(Estimable)

    对一个用户故事的划分需要足够的领域知识,使得划分故事时就能大致了解故事的开发周期,为了减少估算的不确定性,故事本身不能太大。

     

    小的(Small)

    尽可能小,也不是说越小越好,最好的故事是能够在一个冲刺周期之内完成的。如果太大,就应该考虑拆分为颗粒度更小的用户故事。

     

    可测试的(Testable)

    如果一个用户故事无法进行测试,那么也就无法判断该故事是否完成。最后,必须在定义验收测试通过的标准后才能认为故事划分完毕。

     

    用户故事待开发项

       用户故事还可以基于不同的技术层次,对故事进行分割,从而撰写用户故事以提供更全面的功能。好处有减少架构的风险,更容易的排列优先级、特性的完成,软件可以加快发布、有利于自动化测试。

       在用户故事完成之后,需要将它们放入待开发项中,是对要完成工作的可视化展示。可以为团队需求优先级提供帮助。

     

    需求的层次

    在敏捷项目中可以通过冲刺计划达成这点。在项目需求层次中,用户故事处于中间位置。

       特性/史诗

          用户故事

             任务

     

    用户故事地图

       大级别的用户故事排在头排,根据优先级,描述用户需求。从而找到一条可以最大化投入产出的路子,可以让各种相关方对功能需求有相对一致的理解和整体的认识。

       最大的特点就是可以完整的讲述整个客户的体验,从用户体验的角度出发,可以验证用户体验的完整性。为敏捷团队提供了一种实现,即用户体验是一个完整的过程。

       更容易看清待开发项(Backlog)的全貌、为产品待开发项梳理(Product Backlog Grooming)和优先级排序(Prioritizing)、允许多维度进行项目规划,确保不同的想法都可以得到考虑和探讨、预防信息蒸发、帮助会议具体细节。

     

    梳理待开发项

       Backlog梳理活动,是在下个冲刺开始前,对可能要纳入冲刺中的故事进行细化、估算和优先级排序活动。这个活动中,PO、SM、Team都应该参加。

       PO讲解用户故事背景、业务目标、用户角色、用户场景、业务流程、业务规则,确保团队理解充分并且无异议。

       1、讨论交互流程,画出低保真和交互流程。

       2、讨论测试要点、技术实现方案、技术风险。

       3、估算用户故事规模(故事点数),过大的用户故事拆分成小故事并排列优先级。

     

    敏捷估算

       估算是为了确定哪些工作应该在一个版本或冲刺中完成。建立一个整体估算的过程,是对项目开发、上线和维护成本的分解。

       估算的结果应该使用一个范围,以便于管理项目的不确定性。毕竟客户何时改变需求是不知道的。

       做事前估算是必须的,但也是最不精确的,整个项目中需要的是持续的估算,并且最好的估算者是正在涉及工作的团队成员。

       估算是包括了对用户故事规模大小的估算,以及对用户故事完成速度的估算,从而选择适合本次迭代周期的故事数。

     

    宽频德尔菲(Delphi)

       基于团队的估算方法, 团队将项目或大问题分解为更多的可管理的模块,创建了一个问题说明书、识别出假设和约束条件,并且概述后续估算周期的过程。然后,一组专家匿名提交估算,进行多伦估算。

     

    计划扑克

       宽频德尔菲技术通常用计划扑克来实施,这是一个快速、合作的过程。能使团队快速的进行估算,更加准确和有意思。

       在敏捷中,更加看重的是团队的整体。正如约翰梅纳德凯恩斯说的:粗略的正确好过精确的错误。

       最好的估算的方法是:允许我们改变我们的想法、不要花太多时间、为后续工作提供可用的信息、包容估算的不精确、能够用于发布计划。

       注意点:团队将自己定义故事点;故事点估算应该是将所有时间都包括的,如测试时间;分解时,不需要整体匹配;规划是相对的,复杂性、工作量、风险都计算在内。

     

    亲和估算

       参与人包括PO、SM、Team,亲和估算可以快速和更容易估算大量用户故事的技术,是根据之前已经估算的结果,进行分类比较。

     

    理想时间和耗用时间

       估算理想时间要比估算耗用时间更加容易,因为耗用时间的不确定因素很多,可能做着做着要写邮件等,并且在实施过程中药避免在两个或多个任务之间切换,因为这会极大的损失效率。

     

    估算理想时间

    这个故事是唯一需要做的工作、所有需要的事情都准备好了、过程中没有干扰。

    步骤:

       决定项目的规划用何种粒度进行估算,是基于故事点还是理想时间。

       计算出结果,团队的产能和能力是按照工时还是人天数或人周数、人月数。

       转换成日程表,包括已经考虑了故事大小规模,需要的资源和依赖条件。

       计算成本,应用劳动生产率及其他涉及的项目花费成本。

     

    敏捷计划

       敏捷项目称其为自适应计划,这是一个不间断的过程,有很多种机制可以主动的更新计划。敏捷注重价值交付,所以敏捷认为要尽量稍作无价值的工作。

    敏捷是通过实验和示范的方法(原型法)来发现真正的需求,然后对其进行重新计划。

    当有不确定的范围和解决方案时,不是期望客户完全用语言来形容产品应该是什么样子,而是应该如何去做。

    敏捷项目是依靠建立原型以更好的进行理解,并以此原型为基础,进一步规划和阐述。

       敏捷计划前期投入少,而该计划会在整个项目中贯穿始终,风险和不确定性对前期工作会带来一些问题。所以敏捷方法建议将其分散在整个生命周期中,因此敏捷计划是贯穿整个项目的生命周期的。

    敏捷计划在执行过程中不断调整是正常的事情,所以在计划中很多都是渐进明细的,如计划、估算、风险评估、需求确认、架构设计、验收标准、测试用例。

     

    计划的过程

    PO根据需求层级,决定在每一个发布周期团队可以发布的需求,这是一个概要层次,很粗糙的整体的发布计划;

    然后在项目的全生命周期中制定出每个阶段的冲刺计划,这是一个很详细的计划;

    客户应该参与到团队中,不断反馈来管理期望,团队利用反馈来驱动项目计划的过程,如优先级调整、演示中产生的变更或新需求、回顾触发流程和技术的改变;

    在冲刺结束后,基于现有的信息,更新概要层级信息;

     

    发布计划

       敏捷比传统更看重计划,而且做计划的频率更高。按照规模大小排序依次是解决方案计划、发布计划、冲刺计划、每日计划。

    发布计划是一个高层级的概述性计划,时间覆盖周期是3~6个月,而根据冲刺周期的冲断可能包含3~12次冲刺。

    发布计划对于产品战略非常有帮助,可以帮助相关方了解在哪个阶段发布什么功能,也可以作为小组前进的路标。

    PO的职责:确定故事优先级,组织开发人员对用户故事、技术故事的规模和风险进行评估,根据结果在设定优先级。

    Scrum Master的职责:确定团队冲刺速率、准备好风险问题跟踪表、组织召开发布计划会议(制定里程碑计划,考虑各方的意见,达成共识,制定可达成的目标计划)。

     

    冲刺计划

       冲刺计划是在冲刺计划会议上制定的,参与人包括PO、分析师、测试、UI、开发等。

    在规划冲刺时,并不分配任务给具体的人。所以敏捷中,可以是个人一开始不承诺任务,而在冲刺开始之后承诺1~2项任务,在完成承诺任务之前,不安排新的任务。

    Scrum Master职责:明确本轮冲刺需要完成的项目范围;帮助提出项目风险并制定风险消解计划;安排实现的先后顺序,讨论用户故事、选择用户故事、定义验收标准和撰写验收测试、拆分用户故事为任务、估算任务。

     

    每日计划

    Scrum Master组织会议,实践中更主张各自轮流,并且无规矩不成方圆。这个计划的主要目的是沟通、检查和适应。会议在15分钟之内,每日人轮流发言。自上次站会到现在做了什么?计划到下次站会完成什么?遇到的问题。

     

    敏捷监控

    敏捷的监控在Scrum流程中可以通过冲刺评审与冲刺回顾会议这两个环节来作为组成部分。并且每日站会中也是识别问题的重要机制,在每日站会中还可以尽早发现表面问题或潜在问题。

    在工具上可以采用燃尽图和燃起图来可视化的监控项目。燃尽图是向下的,不断减少,可以感受到压力的;燃起图是向上的,不断增加的,需要不断需要鼓励去突破的。

     

    发现问题,解决问题

       小洞不补、大洞吃亏,问题解决技术是以在问题发展过于严重而超出变更成本曲线之前解决问题为目标的。

     

    过程分析与持续改进

       过程分析:评审和诊断敏捷方法的问题。阿利斯泰尔科伯恩提供了警惕反模式:所有项目用同一方法、无法忍受、厚重、修饰、未尝试、只使用一次。

       持续改进:收尾时期进行检验教训的捕捉,便于组织对那些有着类似的商业或技术领域有着相似团队动力的项目应用这些经验教训。经常性的考虑适应性和改进点。包括检查、适应、改进的经验学习,这些步骤贯穿于每个冲刺当中。

     

    风险管理和问题管理(问题发现与解决)

    风险管理

       很多项目有了风险管理过程和风险清单,但是并没有将风险管理的时间包含在项目计划中。

    其中风险燃尽图这个工具,可以将项目中的高风险工作放到冲刺早期,将可以降低风险的工作放到待开发项中。

    每一个发现的风险都需要在商业价值和风险之间进行平衡,研究究竟需要付出多少精力去管理发现的风险。其中风险价值分析技术方法有预期货币价值(EMV,风险发生可能性 X 2000元影响)。

       备注:探针是一种技术方法,是为了减少风险,并且探针会在整个发布中使用到。例如在学习新技术、评估、验收标准定义以及通过产品了解用户行为的流程中应用。

     

    风险的探针

       试图研究一个问题而进行简短的概念验证(PO)。采用简短的实验来测试不同选项而研究项目有风险部分的方式是基于风险的探针的关键所在。如果概念验证的执行是成果了,那么便排除这个风险,并减少项目整体风险。

     

    基于风险调整的待开发项

    消极风险行动包括了规避、缓解和转移。积极风险行动包括了开拓、提高和共享。

    积极的接受风险就是要建立风险储备,消极的接受风险就是什么都不做。

    风险优先级排序有基于特性分类,也有采用预期货币价值(EMV)。当问到客户代表或客户他们最需要的特性时什么,可以从中了解他们的动机、风险和验收的标准,没有参与客户价值优先级分析的项目很有可能成为错过成功的关键因素。

     

    风险的严重程度

    风险管理应该是工作进度一个驱动因素。敏捷认为首先要做的事情一定是价值高的事情,即使风险很大。风险优先级会基于两个维度,一个是风险的影响,另一个是风险的发生概率。敏捷中会将风险放在卡片上,而PMBOK指南中是有风险登记册,而敏捷中是没有的。

     

    问题管理

       问题往往是已发生的风险,敏捷不依赖于一种被动的问题解决方式。相反是每个冲刺结束时,会有评审和回顾,每个冲刺结束的时候都会捕获这些经验教训,知道自己的长处和短处,并确保这类问题不再发生,这是基于解决问题的基础之上的持续改进流程。

     

     

    持续改进式的解决问题方法

    Kaizen

    来自20世纪70年代的日本,意思是变得更好,意味着持续改进。是敏捷持续改进的基础,比较关注的是对团队的鼓励。讲究的是每日都会进行改进而不是在每个冲刺结束以后。

       多层级的改进:就像剥洋葱分层,在项目多个层次上发生。从外而内依次是产品发布、评审或回顾会议、每日立会、结对编程。

       持续改进的流程:计划会随着项目、环境和相关方的更多了解而发生变化一样,如系统性思考、过程分析、价值流程图等。

       价值流分析:优化每一个流程中值得的环节,消除浪费,为客户提供更有的价值,包括识别需要分析的产品或服务;创建目前流程的价值流,识别步骤、排序、延迟、信息流;评审找出流程中的延迟、浪费和约束;为未来创建新的价值流;创建路线图;规划流程进行再次访问,以持续优化。为价值流进行独立、计划及流程改进;为了解决问题,可以邀请客户一同参与选择故事卡片。

       团队参与:敏捷的解决问题方法是基于团队,并具有包容性,不是仅仅交给客户和经理,而是由敏捷团队参与识别、诊断、解决问题,绝对不是把问题交给团队以外的人解决。

     

    敏捷合同

       敏捷方法提供了很大的灵活性,但是敏捷协作方法提倡共担项目风险和共享项目奖励的关系,实现所有方共赢。设计这种动态特性的合同签署技术包括:多层结构、强调价值交付、总价增量。

    敏捷合同允许管理变更需求和优先级,当有一些工作需要外包并且定义合同验收标准时,这种适应性和范围的灵活性就会带来一些问题,所以敏捷也对合同提出了一定适应性的建议。

     

    费用变更合同

    插入变更费用选项,在新增特性时,也可以重新将特性进行优先级排序,并将优先级最低的特性砍掉,这样就不需要增加费用了。

     

    分级固定总价合同

    双方分享一些进度偏差相关的风险奖励,如提前、按时、延迟。

     

    固定价工作包

    为每一个工作包建立固定的价格,即细化工作包,每一个工作包分别计价。

     

    供应商管理

       将对于供应商的要求写在请求建议书(RFP)中,做所有决策时,都需要考虑成本、收益。如果供应商在这个项目是微不足道的,那么没有必要浪费精力去给其做敏捷课程的培训。

     

    展开全文
  • Part 1: Value at Risk (VaR) 第1部分:风险价值(VaR) VaR represents portfolio variance at one extreme (of the distribution). Portfolio risk is calculated as portfolio variance (equivalently standard ...

    算法组合 优化算法

    Image for post
    Photo by Markus Spiske (left) and Jamie Street (right) on Unsplash
    Markus Spiske (左)和Jamie Street(右)在 Unsplash上的 照片

    In the last post, we saw how actual algorithms are developed and tested. In this post, we will figure out the level of exposure so that can always protect our investments from significant downturns. And find the best performing portfolio given several assets.

    在上一篇文章中,我们看到了如何开发和测试实际算法。 在这篇文章中,我们将弄清风险敞口水平,从而始终可以保护我们的投资免受重大衰退的影响。 并根据几种资产找到表现最佳的投资组合。

    Why quantify the risk?

    为什么要量化风险?

    To invest or trade with confidence. Knowing Value at Risk (VaR) helps us to gauge the potential loss of equity, both in scale and frequency. Not managing this volatility can lead to significant (and avoidable) losses.

    有信心地进行投资或交易。 了解风险价值(VaR)帮助我们从规模和频率上衡量潜在的股权损失。 不控制这种波动会导致重大(和可避免)的损失。

    Why Optimize Portfolio?

    为什么要优化投资组合?

    We are all risk-averse and we want to maximize our profits. Diversification can potentially achieve both of these goals. We can select assets with the best returns that are less correlated with each other. Portfolio return and risk however depend upon final mix or weight allocation to each asset. Not getting allocation right will lead to lower returns/higher risks. We will use mean-variance optimization to find desired weights to construct the best performing portfolio(modern portfolio theory by Markowitz).

    我们都规避风险,我们希望最大限度地提高利润。 多样化可以潜在地实现这两个目标。 我们可以选择相互之间关联度较低的最佳收益资产。 但是,投资组合的回报和风险取决于最终组合或对每种资产的权重分配。 分配不正确将导致较低的回报/较高的风险。 我们将使用均值方差优化来找到所需的权重,以构建表现最佳的投资组合(Markowitz的现代投资组合理论)。

    Short explanation/definition of key terms

    简要解释/定义关键术语

    Value at Risk (VaR): Maximum dollar amount (or percentage) expected to be lost over a given time horizon, at a pre-defined confidence/probability level.

    风险价值(VaR) :在给定的时间范围内,在预定义的置信度/概率水平下,预期损失的最大金额(或百分比)。

    Portfolio optimization and efficient frontier: Finding best weights for selected assets such that the expected return is highest for a given risk or vice versa. An efficient frontier is simply a collection of all such dominant/optimized portfolios for all possible risk level.

    投资组合优化和有效边界 :找到选定资产的最佳权重,以使给定风险的预期收益最高,反之亦然。 有效边界只是针对所有可能的风险水平的所有此类主导/优化投资组合的集合。

    Sharpe ratio: Sharpe ratio is the measure of risk-adjusted return of a portfolio. Degree of excess return beyond risk-free asset for taking extra risk.

    夏普比率 :夏普比率是对投资组合进行风险调整后的收益的度量。 超出无风险资产的超额收益程度,以承担额外风险。

    Capital Market Line (CML): Theoretical concept that gives optimal combinations of a risk-free asset and the market portfolio (portfolio of risky assets).

    资本市场线(CML) :提供无风险资产和市场投资组合(风险资产组合)的最佳组合的理论概念。

    Convex optimization: Solving a mean-variance problem as convex functions, here with the help of Solvers.

    凸优化 :在此处借助求解器,将均方差问题解决为凸函数。

    Part 1: Value at Risk (VaR)

    第1部分:风险价值(VaR)

    VaR represents portfolio variance at one extreme (of the distribution). Portfolio risk is calculated as portfolio variance (equivalently standard deviation). Portfolio variance plays a major role in determining the risk characteristic of asset as a whole. Portfolio variance depends upon variance of each asset within the portfolio as well their covariance. Thus when assets are uncorrelated (do not tend to move together) portfolio risks are lower compared to portfolio of assets are highly positively correlated.

    VaR代表(分布中)一种极端的投资组合方差。 投资组合风险计算为投资组合方差(等同于标准差)。 投资组合方差在确定整个资产的风险特征中起着重要作用。 投资组合方差取决于投资组合中每个资产的方差及其协方差。 因此,与不高度相关的资产组合相比,当资产不相关(不倾向于一起移动)时,资产组合的风险较低。

    For a 2 asset portfolio, portfolio variance is given by following equation where w1, w2 are weights, sigma1, sigma2 are standard deviation of each asset and Cov12 denotes covariance between them.

    对于2个资产投资组合,投资组合方差由以下等式给出,其中w1,w2是权重,sigma1,sigma2是每种资产的标准差,Cov12表示它们之间的协方差。

    Image for post

    For multiple asset portfolio, position vector and covariance matrix make it much easier to express portfolio variance rather than writing a long summation.

    对于多资产投资组合,位置矢量和协方差矩阵使表达投资组合方差比编写长总和变得容易得多。

    Image for post
    W represents the position vector containing allocated weight to each asset. Sigma represents the covariance matrix.
    W代表位置向量,其中包含分配给每个资产的权重。 Sigma代表协方差矩阵。

    Following is an expanded view of the matrix operation.

    以下是矩阵运算的扩展视图。

    Image for post

    With python (Pandas/Numpy or other tools) it is straight forward to calculate the covariance matrix for the whole asset given the series of returns. Matrix multiplication is then used to get portfolio variance.For illustration, I have taken stocks from the Nepal Stock Exchange (NEPSE). 4 highly traded stocks from different sectors were selected. The process involves loading data, calculating return for each stock, computing covariance, and finally calculating portfolio variance as given below.

    使用python(Pandas / Numpy或其他工具),可以很容易地在给定一系列收益的情况下为整个资产计算协方差矩阵。 然后使用矩阵乘法获得投资组合方差。为说明起见,我从尼泊尔证券交易所(NEPSE)提取了股票。 选择了4个来自不同行业的高交易量股票。 该过程包括加载数据,计算每只股票的回报,计算协方差,最后计算投资组合方差,如下所示。

    Include code to calculate var
    包含代码以计算var

    While standard deviation tells how much asset can fluctuate every day on average, VaR represents how much asset can fall a single day during a highly volatile period. VaR is expressed as a potential loss of asset (e.g. 4% of the total asset) with a certain probability (e.g. 2% chance or 98% confidence) within a certain time frame (e.g. daily/weekly). Being aware of VaR allows us to keep the right-sized asset or the right mix of assets such that we can avoid unexpected and huge losses.The image below shows that return could be as worse as or worse than -1.64 standard deviation 1 out of 20 trading days (5% probability).

    标准差表示平均每天有多少资产波动,而VaR表示在高度波动的时期中一天会有多少资产下跌。 VaR表示为在特定时间范围(例如每天/每周)内具有一定概率(例如2%机会或98%的置信度)的潜在资产损失(例如总资产的4%)。 意识到VaR可以使我们保留适当大小的资产或正确的资产组合,从而避免出现意外的巨大损失。下图显示,收益可能比-1.64标准差1差或更差。 20个交易日(5%的概率)。

    Image for post
    Value at Risk lies at negative side of distribution. Events 1.64 SD away from the center occur with frequency of 5% in average assuming normal distribution.
    风险价值位于分配的不利方面。 假设正态分布,远离中心的事件1.64 SD的发生频率平均为5%。

    It is obvious that we would want a portfolio and with minimum VaR as possible for any given return. Next, we will find such a portfolio with an optimal combination of weights that has a minimum variance for a specific return. Alternatively, portfolio optimization will help us to maximize our return for any selected risk level.

    显然,我们希望有一个投资组合,并且对于任何给定的回报,都需要尽可能降低VaR。 接下来,我们将找到这样的投资组合,其权重的最佳组合对于特定收益具有最小的方差。 另外,投资组合优化将帮助我们针对任何选定的风险水平最大化收益。

    Image for post

    Example: For some random positions(weights) in 4 stocks [0.08, 0.2, 0.58, 0.14] calculated portfolio variance is 0.005, and standard deviation is 0.022 or 2.2% daily std. Assuming a normal distribution of returns, the worst 5% outcomes lie -1.64 SD away from the center. That is returns can be worse than -0.0367 or -3.67% (-1.645*0.022) in 1/20 trading days (5% chance). If we have $100000 invested, our Var at 5% probability is $3670. In other words, we tend to lose $3670 (or more) once in every 20 trading days.

    例如:对于4只股票中的一些随机头寸(权重)[0.08,0.2,0.58,0.14],计算出的投资组合方差为0.005,标准差为每日std的0.022或2.2%。 假设收益呈正态分布,则最差的5%收益位于远离中心的-1.64 SD。 也就是说,在1/20个交易日内(低于5%的机会)回报可能低于-0.0367或-3.67%(-1.645 * 0.022)。 如果我们投资了100000美元,则我们以5%概率出现的Var为3670美元。 换句话说,我们倾向于每20个交易日损失3670美元(或更多)。

    Part 2. Portfolio Optimization

    第2部分。投资组合优化

    We will gradually discover the portfolio we want in few steps. We shall start with completely random allocation (i.e. use random weights). Some of these random weight portfolios have better risk-return trade-off, hence are dominant portfolios. Those lying most upper/outer in the risk-return plot make the efficient frontier. Next, we shall find the Market portfolio by comparing the Sharpe ratio for each random portfolio. Needless to say, the Market portfolio lies on the efficient frontier and has the highest/maximum Sharpe ratio. The line tangent to this point and passing through risk-free asset is the Capital Market Line. The slope and intercept to this line are Sharpe ratio and risk-free rate respectively. Ideally, all investors select their portfolio somewhere on this line depending upon their risk/return preferences.

    我们将通过几个步骤逐步发现我们想要的产品组合。 我们将从完全随机的分配开始(即使用随机权重)。 这些随机权重投资组合中的一些具有更好的风险-收益权衡 ,因此是占主导地位的投资组合 。 那些在风险收益图上位于最上/最外的人成为有效的前沿 。 接下来,我们将通过比较每个随机投资组合的夏普比率来找到市场投资组合。 不用说,市场组合位于有效的边界上,并且具有最高/最大的夏普比率。 与此切线相交并穿过无风险资产的线资本市场线 。 这条线的斜率和截距分别是夏普比率和无风险利率。 理想情况下,所有投资者都根据风险/回报偏好选择投资组合。

    A. Random allocation of weights: We will visualize the effect of random allocation weights. 1000s of portfolios are taken with random weights, respective mean and variance are calculated (and scattered for visualization). Some combination weight has better risk-return characteristics and therefore are dominating/desirable portfolios.

    A.权重的随机分配:我们将可视化随机分配权重的效果。 以随机权重获取1000个投资组合,计算各自的均值和方差(并分散显示)。 一些组合权重具有更好的风险收益特性,因此是主导/理想的投资组合。

    Portfolio return:

    投资组合收益:

    Image for post
    Image for post

    Portfolio risk:

    投资组合风险:

    Image for post

    B. Market portfolio: Among all possible combinations of dominating portfolios in the efficient frontier, one which gives the highest return for taking additional risk beyond a risk-free rate is designated as a Market portfolio. we can calculate the Sharpe ratio for all portfolios given a risk-free rate and the winning portfolio with the highest Sharpe ratio is the Market Portfolio. All the rational investors gravitate towards to this best performing portfolio.This model of combining risk-free assets with the Market portfolio is known as the Capital asset pricing model (CAPM). All portfolios in CML is optimally compensated for risk above the risk-free rate. Mathematically CAPM is expressed as:

    B.市场投资组合:在有效边界中所有主导投资组合的可能组合中,将承担无风险利率以外的附加风险获得最高回报的投资组合指定为市场投资组合。 在无风险利率的情况下,我们可以计算所有投资组合的夏普比率,而夏普比率最高的获胜投资组合是市场投资组合。 所有理性投资者都倾向于使用这种表现最佳的投资组合。这种将无风险资产与市场投资组合在一起的模型被称为资本资产定价模型(CAPM)。 CML中的所有投资组合都能获得高于无风险利率的最佳风险补偿。 在数学上,CAPM表示为:

    Image for post
    Rp -portfolio return after combining risk free asset, Rm -market return , Rf -Risk free rate. Sigma_m -standard deviation of market returns, Sigma_p -standard deviation of portfolio returns. Note risk for Risk free asset is 0
    组合无风险资产,Rm市场收益,Rf无风险利率后的Rp投资组合收益。 Sigma_m-市场收益的标准偏差,Sigma_p-投资组合收益的标准偏差。 注意无风险资产的风险为0

    Rearranging, we have Sharpe ratio for combined portfolio :

    重新排列后,我们得到了组合资产组合的夏普比率:

    Image for post
    Sharpe ratio for combined portfolio is equal to market risk premium divided by market portfolio risk.
    组合组合的夏普比率等于市场风险溢价除以市场组合风险。

    Using Rm and Sigma_m calculated from stock return and covariance Sharpe ratio for each random portfolio is calculated, one with the highest Sharpe ratio is the market/optimal portfolio.C. Capital Market Line (CML): Capital Market line represents all combinations of the risk-free asset and the optimal market portfolio. It’s easy to see that the slope of this line is the Sharpe ratio itself and the intercept is a risk-free rate. Given this information, CML can be readily drawn as seen below.

    使用从股票收益率和协方差计算得出的Rm和Sigma_m,计算每个随机投资组合的Sharpe比率,夏普比率最高的是市场/最优投资组合。 资本市场线(CML):资本市场线代表无风险资产和最佳市场投资组合的所有组合。 不难看出,这条线的斜率就是夏普比率本身,截距是无风险比率。 有了这些信息,就可以很容易地绘制CML,如下所示。

    Image for post
    Using Sharpe Ratio (SR) and risk free rate (Rf), portfolio return (Y) for any portfolio risk (X) can be calculated.
    使用夏普比率(SR)和无风险利率(Rf),可以计算任何投资组合风险(X)的投资组合收益(Y)。
    Image for post
    CML in green passes trough optimal market portfolio (red dot) and risk free rate. This line is tangent to the efficient frontier.
    绿色的CML通过了最佳市场组合(红点)和无风险利率。 这条线与有效边界相切。

    Code for constructing random portfolios, finding a market portfolio, and drawing CML line.

    用于构建随机投资组合,查找市场投资组合和绘制CML线的代码。

    Part 3. Solvers

    第3部分。求解器

    Random initialization of weights can work for a portfolio with few assets but when assets grow large, the cost of computing and time it takes can be forbidding. However, solving for the best portfolio is an optimization problem with constraints. We can use Solvers from python either for getting single best return (or risk) or get the entire efficient frontier. These are solved as convex problems and the global optimum is always reached.

    权重的随机初始化可以用于资产很少的投资组合,但是当资产变大时,计算成本和花费的时间可能会被禁止。 但是,求解最佳投资组合是具有约束的优化问题。 我们可以使用python的Solvers来获得单个最佳回报(或风险)或获取整个有效边界。 这些问题解决为凸问题,并且始终可以达到全局最优。

    The optimization objective is expressed as:

    优化目标表示为:

    Image for post

    Here weights are represented by x and we are solving for optimal x. Objectives and constraints are written in matrix form. As a rule objective function is stated as a minimization problem. All the inequalities are similarly stated as lesser than some value.

    这里的权重用x表示,我们正在求解最优x。 目标和约束以矩阵形式编写。 通常将目标函数表示为最小化问题。 类似地,所有不平等程度均小于某个值。

    Inputs for Solvers:

    解算器的输入:

    The algorithm solves for ‘x’ with the help of inputs

    该算法借助输入来求解“ x”

    P or quadratic part (here it’s sigma or variance-covariance matrix, cov)

    P或二次部分(此处为sigma或方差-协方差矩阵,cov)

    q or linear part of the objective function (here represented by a vector of returns r or ER_stocks, above)

    q或目标函数的线性部分(此处由上面的收益r或ER_stocks的向量表示)

    G and h make the lower bound for weights i.e 0. We can input G as an identity matrix of size n x n (n: number of weights/stocks). Stated as matmul(G, x) < h, hence h is a vector of 0s of size n. while weights are non-negative, while solving they are stated as: -weights < 0.

    G和h为权重的下限,即0。我们可以输入G作为大小为nxn的单位矩阵(n:权重/库存数)。 表示为matmul(G,x)<h,因此h是大小为n的0s的向量。 权重为非负数,而求解时权重表示为:-weights <0。

    A and b make the equality part of the constraint. For our purpose the sum of all weights must equal 1. Hence A is a vector of 1s of size n. matmul(A, r_transpose) = 1, or b is simply 1.

    A和b使相等性成为约束的一部分。 为了我们的目的,所有权重的总和必须等于1。因此,A是大小为n的1s的向量。 matmul(A,r_transpose)= 1或b就是1。

    We can get the frontier and plot along with random portfolios:

    我们可以得到边界和情节以及随机投资组合:

    Image for post
    Efficient frontier plotted along with random portfolios and the Capital Market Line
    绘制有效边界,随机投资组合和资本市场线

    Code to solve using Solvers.

    使用求解器求解的代码。

    Limitations and Conclusion

    局限性和结论

    The biggest limitations of this model are the assumption of a normal distribution of returns and the validity of covariance. Actual returns are rarely normal and in fact, highly negative and positive returns are much more common giving rise to so-called fat-tailed distribution. As such the model underestimates the risks. Portfolio variance/risk is very sensitive to variance and covariance pairs i.e. the covariance matrix. Covariance rarely remains the same for a long time, hence finding a robust/valid covariance matrix is challenging.

    该模型的最大局限性是假设收益呈正态分布且协方差有效。 实际收益很少是正常的,实际上,高度负收益和正收益更为普遍,从而导致所谓的肥尾分布。 因此,该模型低估了风险。 投资组合方差/风险对方差和协方差对(即协方差矩阵)非常敏感。 协方差很少会长时间保持相同,因此要找到鲁棒/有效的协方差矩阵具有挑战性。

    Despite some limitations, risk modeling with VaR is a very helpful and probably most used indicator. Portfolio optimization leads to the most efficient use of our resources and any allocation decisions should be based upon these considerations. Solvers can be used to quickly find the efficient frontier or market portfolio has given return series for each stock.

    尽管有一些限制,但使用VaR进行风险建模是一个非常有用且可能是最常用的指标。 投资组合优化可最有效地利用我们的资源,任何分配决策均应基于这些考虑。 解算器可用于快速找到有效的前沿或市场投资组合,从而为每只股票提供收益系列。

    You can read the earlier post here:

    您可以在此处阅读之前的文章:

    翻译自: https://medium.com/@mnshonco/algorithmic-trading-simplified-value-at-risk-and-portfolio-optimization-ce8f0977d09

    算法组合 优化算法

    展开全文
  • 软件定义边界(SDP)简介

    千次阅读 2020-02-14 16:22:44
    软件定义边界(SDP),也被称为“黑云(Black Cloud)”,是一种新的计算机安全方法,它是由2007年左右DISA在全球信息网格(GIG)网络倡议下所做的工作内容演变而来,后来被云安全联盟(Cloud security Alliance)...

    软件定义边界(SDP),也被称为“黑云(Black Cloud)”,是一种新的计算机安全方法,它是由2007年左右DISA在全球信息网格(GIG)网络倡议下所做的工作内容演变而来,后来被云安全联盟(Cloud security Alliance)采纳并用于联盟成员。

    SDP要求在获得对受保护服务器的网络访问之前,先对端点进行身份验证和授权。然后,在请求系统和应用程序基础设施之间实时创建加密连接。SDP将用户的数据和基础设施等关键IT资产隐藏在用户自己的黑云里,无论这些资产位于公有云或者私有云,位于DMZ区或者数据中心,使得这些关键IT资产对外是不可见的。

    SDP对外提供零可见性和零连接,只有在端点证明他们可以被信任之后才可以建立连接,允许合法流量通过,这种方法基本上可以预防所有基于网络的攻击。

    软件定义边界(SDP)基于策略创建安全边界,用于将服务与不安全的网络隔离开。它的设计目的是提供按需、动态的气隙网络(安全隔离网络),在授权之前首先对用户和设备进行身份验证,以便于安全连接到被隔离的服务。未经授权的用户和设备无法连接到受保护的资源。SDP广泛使用加密,包括用于组件间通信的mutual TLS,以及SPA授权数据包内的HMAC,SDP被设计用来抵御基于网络的攻击。

    SDP包括三个主要部分:

    • SDP客户端(例如,笔记本电脑)
    • SDP控制器,用于认证和授权SDP客户端,配置到SDP网关的连接
    • SDP网关,终结SDP客户端访问流量,与SDP控制器通信并强制执行策略

    SDP架构包括5个安全保护组件:

    • 单数据包授权
    • mutual TLS
    • 设备校验
    • 动态防火墙
    • 应用绑定,用户仅被授权访问应用层的指定应用,不能访问一个广泛的网段或者一系列端口集合

    SDP基于已经被业界证明的标准组件构建,包括mutual TLS, SAML以及X.509 证书。

    SDP的主要特征是认证设备、认证和授权用户以访问动态配置的服务。对于mutual TLS,客户端和服务器之间要相互交换证书,这比传统的SSL访问更安全, 很多已经实现SSL访问的网站,比如电商平台,通常只是由客户端验证服务器端证书,而服务器端通常不验证客户端证书,仅实现了单向认证。要求所有客户端拥有数字证书将大大提高用户访问成本。

    SDP被设计用来提供5个层面的安全,包括:

    • 认证和校验设备
    • 认证和授权用户
    • 确保双向加密通信
    • 动态配置连接
    • 控制连接服务的同时对外隐藏服务

    SDP要求端点在对被保护的服务器进行网络访问前首先进行认证和授权,然后,在端点和应用基础设施之间建立起实时的加密连接访问通路。SDP可以是本地的,也可以基于云服务。

    SDP同样遵循“需要知道”以及“最小权限”原则,为特定的应用访问授权提供细粒度的基于角色的访问控制。

    SDP是零信任的一种网络层实现方式,只有被授权用户通过被授权设备才能访问受保护资源。

    软件定义边界(SDP),又可称为零信任网络架构(ZTNA),在应用程序或应用程序集合周围创建基于身份和上下文的逻辑访问边界。应用程序对外隐藏,被限制为只有通过可信代理才能访问 。在允许访问之前,代理将验证指定参与者的身份、上下文和策略遵守情况。这将应用程序资产从公共视野中删除,显著减少了攻击面。

    从下图可以看出,SDP网络中的几种角色:

    • initiating SDP Host,即SDP客户端
    • SDP Controller,SDP控制器
    • accepting SDP Host,即应用服务器

    客户端在进行数据访问前,首先要通过控制平面和SDP控制器、应用服务器建立认证、授权通道,在认证通过并获得访问授权后,才能够在数据平面建立起与应用服务器之间的数据访问通道,允许正常访问流量通过,因此这种访问控制模型天然具备抵御资源消耗性攻击的特性。

    (图2-1 SDP访问控制模型)

    CSA的介绍里提到可以用SDP来抵御DDoS攻击,通过将资源隐藏在SDP网关后面,所有希望发起访问的用户都要提供唯一ID、客户端证书和加密密钥,通过认证后才能发起访问,理论上这是一种防御DDoS攻击的有效手段,但对于以提供公共服务为主的用户(例如云服务商、或者门户网站),实际上这是有难度的,给所有公网用户发证书并不现实,实现成本将可能非常高。

    SDP架构1.0,基于CSA SDP Specification 1.0:

    (图2-2 SDP架构)

    SDP工作方式:

    • 将服务置于“拒绝所有”的SDP网关后方
    • 打开防火墙建立连接之前先认证设备上的用户
    • 使用动态防火墙机制,当DDoS攻击发生时允许SDP尽可能快的丢弃攻击数据包
    • SDP通过使目标服务器对未授权设备不可见来预防攻击

    SDP不能防止APT数据盗窃攻击,但是,如果只能通过SDP访问密钥管理系统,则可以使用SDP来确保只有在用户设备上才能访问加密数据。

    CSA统计表明,VPN、网络准入控制是用户部署SDP的最大障碍,VPN通常会在提供安全加密通信前对用户进行身份认证,包括双因素以及多因素认证;而网络准入控制则提供相对细粒度的内网安全控制,用户只有在满足组织安全策略要求后才被允许接入网络继续访问相应资源,因此这两种技术部分达到了SDP的实现效果,使得SDP部署不再是唯一的选项。

    用户一旦选择决定采用SDP,将对VPN产品形成一定程度的代替,SDP要求所有通信都基于加密的安全连接进行,当然VPN也可以和SDP结合起来,作为SDP的加密通信组件。而从SDP受益最大的将是IAM产品,所有用户、所有设备都需要认证和校验。

    CSA SDP架构指南V2提到:

    • 对于网络准入控制(NAC)解决方案,SDP是NAC的现代化方案,集成了用户和设备访问
    • 对于端点管理方案(EMM/MDM/UEM),这些方案是企业IT及安全的重要元素,可以通过部署SDP来增强方案价值

    CSA Software Defined Perimeter (SDP):Awareness and Adoption做了SDP部署相关调查,结果如下:

    (图2-3 您认为哪些现存技术是对SDP部署的最大障碍?)

    (图2-4 您认为那些现存技术将从SDP部署中受益最大?)

    (图2-5 您的组织为什么要部署SDP?)

    除了SDP,业界还有类似的新方案,包括Forrester的零信任方案,以及Google公司内部的 “BeyondCorp”方案。SDP架构是实现零信任概念的最佳方式。

    (图2-6 SDP访问模型)

    SDP可以有多种部署方式,可以根据实际业务访问模型来选择,包括:

    • 客户端-网关方式
    • 客户端-服务器方式
    • 服务器-服务器方式
    • 客户端-服务器-客户端方式

    CSA  SDP Specification 1.0还提到了其它部署方式,包括:

    • 客户端-网关-客户端方式
    • 网关-网关方式

    (图2-7 SDP业务模型)

    CSA详细介绍了以上各种部署方式,例如客户端-网关方式,如下图所示:

    (图2-8 客户端-网关部署方式)

    Kirk House在“Re-Think Security”一文介绍SDP带来的好处时提到,一栋房子着火总比整个城市都烧着了要好,这就是细粒度的隔离与分段带来的好处。下图更清晰的解释了SDP的架构,图中可以看到SDP Gateway的位置,部署在应用服务器前端,而应用服务器则隐藏在SDP网关后面的“黑云”里。

    (图2-9 SDP架构简介)

    结论:

    在零信任&S软件定义边界出现之前,用户在网络安全方面,通常没有集中的管理中心,或者仅有一个安全管理中心(SOC),安全管理中心可以集中管理用户的资产、威胁、弱点、风险、以及各种安全事件、安全日志,业界曾经对安全管理中心寄予很高的期望,但SOC的实际效果并不是非常理想,安全管理中心的“管理”主要体现在对安全设备、安全事件的管理上,不能深入业务和应用进行管理,也无法做到制定统一的安全策略并驱动执行策略,仍处于传统网络安全管理的范畴,安全和业务处于相对脱节的状态。

    零信任&软件定义边界则给用户内部增加了统一的身份管理中心,统一的授权与访问控制中心,能够进行集中全面的认证、授权与访问控制管理。使安全能够与应用、业务进行深度结合,提供全网统一的、非常细粒度的动态访问控制,这是传统的SOC安全解决方案做不到的。将SOC与零信&SDP结合起来,将有助于使用户更加清晰了解自身当前网络安全风险态势以及业务安全态势。

    零信任&S软件定义边界不是一种安全方案,而是一种安全理念或者安全体系框架,传统的安全方案是部分适配这个框架的;另外网络安全的核心围绕是基于风险评估得出的用户需求展开,有的用户以对外提供基础设施类服务为主,数据安全也并非核心,对于这些用户不需要ZT&SDP这种方案进行非常细粒度的认证、授权和访问控制。

    零信任&S软件定义边界虽然宣称“不信任任何人(trust no one)”,无论用户和资源位于何处,打破传统网络边界,代之以微分段、微边界,在实际部署上,还是以内部安全保护为主,以及远程安全连接通信为主,即便SDP宣称可以缓解大部分网络层攻击,对于对外提供服务的DMZ服务器、门户、网站,仍要以其他已有网络安全保护为主。

    无论何种安全方案,适合自身需求的方案才是最好的方案。

    参考资料:

    1. CSA SDP-glossary.pdf
    2. CSA SDP_Specification_1.0.pdf
    3. CSA sdp-for-iaas.pdf
    4. CSA Software Defined Perimeter,2013
    5. CSA, Software-Defined Perimeter as a DDoS Prevention Mechanism
    6. CSA Software Defined Perimeter (SDP):Awareness and Adoption
    7. Forrester-5-Steps-To-ZeroTrust-Security.pdf
    8. Forrester-zero-trust-wave-q4-2019-report.pdf
    9. forrester-zero-trust-wave-q4-2019-report.pdf
    10. Waverley labs,Software Defined Perimeter (SDP),A Primer for CIOs
    11. NIST SP800-207-draft-0信任安全.pdf
    展开全文
  • PMP第十一章:项目风险管理

    千次阅读 2021-05-11 22:19:45
    PMP第十一章:项目风险管理 目风险管理 一、项目风险管理核心概念 项目风险: 不确定的事件或条件,一旦发生,就会对一个或多个项目目标造成积极或消极的影响。风险的三要素:风险事件、概率、影响。积极和消极风险...

    PMP第十一章:项目风险管理

    识别风险——实施定性风险分析——实施定量风险分析——规划风险应对——实施风险应对——监督风险

    一、项目风险管理核心概念

    项目风险:

    • 不确定的事件或条件,一旦发生,就会对一个或多个项目目标造成积极或消极的影响。风险的三要素:风险事件、概率、影响积极和消极风险通常被称为机会和威胁

    两个层面的风险:

    • 单个项目风险:会对一个或多个项目目标产生正面或负面影响的不确定事件或条件。
    • 整体项目风险:不确定性对项目整体的影响,是相关方面临的项目结果正面和负面变异区间。
    • 整体项目风险大于项目中单个风险之和,整体风险源于包括单个风险在内的所有不确定性。

    三种性质的项目风险:

    • 已知-已知风险:已识别并分析过的风险,可对这些风险规划应对措施。(计入时间/成本)
    • 已知-未知风险:已识别,但又无法主动管理的风险,要分配一定的应急储备。(应急储备)</
    展开全文
  • mmr(市场风险度量)是用于计算市场风险度量(例如,风险价值和预期缺口)的软件包。 该方法的灵感来自Kevin Dowd的“衡量市场风险”(2002)和与此相关的Matlab代码。 安装 devtools :: install_github( " 1...
  • 信息安全风险评估

    千次阅读 2021-10-28 09:33:00
    自然灾害风险(地震、台风)、战争风险(台海、陈涉吴广)、金融风险(股票)…… 国际标准化组织对风险的定义: “风险是不确定性对目标的影响”。 何谓信息安全风险? ——人为或自然的威胁...
  • 友情提示:股市有风险,入市需谨慎。是否应该买点股票?这是一个严肃的金钱问题!充分发挥理工男的理性分析能力,杜绝拍脑袋做决定。买不买,买多少,要科学分析,先做好自我说服。一、总的印象注:长期看新闻论坛...
  • 项目管理和软件开发的边界

    千次阅读 2017-10-21 16:21:21
    程序员的人生就是和一个个的软件项目打交道的人生。 不能管理好项目过程的程序员不是好的开发人员。...所以如何区分好项目管理和软件开发的边界,统筹好二者才是一个好的互联网项目管理和软件开发过程。
  • 论文研究-会计师事务所风险管理策略: 高阶期望风险视角.pdf, 根据...该研究结果对我国会计师事务所的风险管理决策实务和现有的审计风险理论研究都有一定的借鉴和参考价值.
  • ​ 测试可以降低同类型产品开发遇到问题的风险 8、测试对象介绍 ​ 对于当前的测试行业来说我们最经常测试的主体就是 软件(主体功能),但是需要我们明白的是一个软件不仅仅只有功能需要测试。我们可以将软件分为三...
  • 如何理解风险,如何管理风险
  • 软件测试管理——测试的风险分析

    千次阅读 2016-07-14 13:43:54
    软件测试:是一项高风险的工作,它是不可避免的,总是存在的。作为一名测试管理人员必须在平时的工作中,分析这些风险的类别,并且想出对策尽最大程度的降低这些风险。1.软件需求的风险主要表现在以下的几个方面:■...
  • 基于状态控制,如因为互联网公司开放度比较高,可能为了方便在机器上装不安全的代理软件,这些代理软件通过另外一台机器可以通过代理软件进行PC透传,有风险有漏洞的进程会被无边界访问控制系统阻拦掉,无法通过无...
  • 软件测试的风险分析与解决办法

    万次阅读 2018-05-22 11:24:27
    软件测试是一项存在风险的工作,它是不可避免的,总是存在的。作为一名测试管理人员必须在平时的工作中,分析这些风险的类别,并且找出对策尽最大程度的降低这些风险。一:软件需求的风险主要表现在以下的几个...
  • 全面了解量化风险管理

    千次阅读 2020-04-17 09:03:21
    流动性风险 指无法在不增加成本或资产价值不发生损失的条件下及时满足客户的流动性需求,从而使银行遭受损失的可能性。流动性风险包括资产流动性风险和负债流动性风险: 资产流动性风险是指资产到期不能如期足额...
  • 在公共治理的许多领域中,风险管理的转变暗示着欧盟在外部边界的行动建立在移民资产证券化和边界管理外部化的政策结合之上。 在此理论背景下,本文重点介绍Frontex的外部能力或权力,特别是与第三方国家/地区当局...
  • 项目管理第十一章项目风险管理

    千次阅读 2020-09-21 12:08:51
    项目风险管理:项目风险管理的目的在于提高正面风险的概率和影响,降低负面风险的概率和影响,从而提高项目成功可能性。其过程包括: 规划风险管理:定义如何实施风险管理活动的过程。 识别风险:识别单个项目风险...
  • 【人工智能】人工智能的应用边界

    千次阅读 2018-01-10 00:00:00
    我们在做人工智能研究的时候,要看具体的博弈场景,有的场景下即便没有那么多的数据,只要我们搞清楚数据背后的原理,可以利用对抗性网络让系统自己生成数据,去在策略网络和价值网络上训练。 很多人都忽悠说大数据...
  • Java笔记 – 泛型 泛型方法 泛型接口 擦除 边界 通配符  Java中的泛型参考了C++的模板,Java的界限是Java泛型的局限。 2、简单泛型 促成泛型出现最引人注目的一个原因就是为了创造容器类。 首先看一个只能...
  • “很多事情,说出来很多人都在做,但是只有真正做到极致,技术的差异性才会体现出来”,蚂蚁金服技术风险部研究员陈亮(花名:俊义)在接受 InfoQ 采访时如是说道。在此前的支付宝技术嘉年华,InfoQ 对支付宝数次...
  • PMP 考点 第十一章 项目风险管理

    千次阅读 2020-12-04 09:19:41
    PMP第十一章项目风险管理 章节 序号 知识点 考点级别 备注  第十一章 项目风险管理         11.1 风险...
  • 我们使用刑事司法应用中风险评估的案例研究来激励我们的努力——描述在“公平”的旗帜下不同概念的混淆如何导致非生产性的混淆——并通过展示如何严谨来说明公平分析的价值它支持的分析可以帮助确定理论、政治和...
  • 一面是强监管与疫情的双重压力,另一面是鼓励金融科技发展的声音不断,下半场的金融科技似乎仍然要在有限的边界中行走。 其中,有太多人掉队。互联网金融和网络借贷风险专项整治工作电视电话会议上公布的数据显示,...
  • Python金融风险建模大纲

    千次阅读 多人点赞 2019-12-30 18:38:10
    一、Python基础篇,包括numpy、pandas、matplotlib、scipy等;二、Python应用篇:1、投资学部分;2、金融工程部分;3、风险管理部分;4、机器学习部分。
  • 比如他对业务和竞争的看法,他认为不要期望一家独大,也不要期望结束战争,所有人都要接受竞合才是新常态,同时,他认为太多思考边界和终局是错误的,“哪有什么真正的终局?”他说。 今年 5 月,美团点评 CEO 王兴...
  • 均值方差分析与风险资产组合

    千次阅读 2019-12-14 16:55:24
    在前面的文章中,初步介绍了债券和股票的价值评估方法,从中可以看见,用什么样的贴现率来估计未来现金流的现值,是资产定价的关键。 在引入不确定性后,贴现率的确定变得更加困难。解决这个问题的方法是通过均值-...
  • 风险评估(Risk Assessment)

    千次阅读 2020-05-11 23:23:11
     风险评估(Risk Assessment)是指在风险事件发生之后,对于风险事件给人们的生活、生命、财产等各个方面造成的影响和损失进行量化评估的工作。 风险评估的内容 (1)对风险本身的界定。包括风险发生的可能性;风险...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,899
精华内容 8,759
关键字:

风险价值边界