软件设计师--软件工程基础知识

  1. 松弛时间(slack time)不影响完工前提下可能被推迟完成的最大时间;

  2. 关键路线(Critical Path)是PERT网络中花费时间最长的事件和活动的序列。

    1.关键路径:从开始到结束得所有路径中,所话时间最长的一条为关键路径。

    最早开始时间:在关键路径上,从开始到该任务的最早执行的时间

    最晚开始时间:关键路径的总时间-反向得出该任务的时间

    2**.松弛时间**(最多延迟执行的时间)

    ·最晚开始时间-最早开始时间

    ·关键路径的总时间-包含该任务的关键路径花的时间

  3. 按照设计模式的目的可以分为创建新模式、结构型模式以及行为型模式三大类。行为模式涉及算法和对象间职责的分配。行为模式不仅描述对象或类的模式,还描述它们之间的通信模式。观察者模式、状态模式、策略模式和访问者模式均为行为设计模式。每种设计模式都有特定的意图和适用情况。

    1. 观察者(Observer)模式的主要意图是:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
    2. 状态(State)模式的主要意图是:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。
    3. 策略(Strategy)模式的主要意图是:定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。此模式使得算法可以独立于使用它们的客户而变化。 其中,Strategy (策略)定义所有支持的算法的公共接口。Context使用这个接口来调用某ConcreteStrategy定义的算法。
    4. 访问者(Visitor)模式的主要意图是:表示一个作用于某对象结构中的各元素的操作。它允许在不改变各元素的类的前提下定义作用于这些元素的新操作。 本题描述的自动售货机适合釆用状态模式,属于行为型对象模式。自动售货机根据库存、存放货币量、找零能力、所选项目等项目不同而具有不同状态,这些内部状态的改变会使自动售货机的行为也发生改变。在用户存入货币并选择购买时,自动售货机根据状态的不同会有以下几种不同行为:交付产品,不找零钱;交付产品并找零;因存入钱数不足而不交付产品;因库存不足而不交付产品。 题图所示的类图中,VendingMachineState接口定义了所有具体状态的公共接口handle(),封装与特定状态相关的所有行为。VendingDepositState、VendingStockState 和ChangeAvailableState是实现VendingMachineState接口的具体状态类,各自实现自己的handle()行为。当Buy发送请求并改变状态时,这些具体状态类中相关的那个进行响应。此模式中,状态的变化发生在运行时,而非由客户端来决定。客户程序感兴趣和使用的主要接口定义在Buy中,即对应于状态模式结构图中的Context,可用状态来对其进行配置。
    5. 时间内聚:把需要同时执行的动作组合在一起形成的模块。
    6. 过程内聚:指一个模块完成多个任务,这些任务必须按指定的过程执行。
    7. 信息内聚:指模块内的所有处理元素都在同一个数据结构上操作,或者各处理使用相同的输入数据或产生相同的输出数据。
    8. 功能内聚:指模块内的所有元素共同作用完成一个功能,缺一不可。
    9. 基于构件的软件开发,主要强调在构建软件系统时复用已有的软件“构件”,在检索到可以使用的构件后,需要针对新系统的需求对构件进行合格性检验适应性修改,然后集成到新系统中。
    10. 常见的软件生存周期模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。
      1. 瀑布模型是将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型,适合于软件需求很明确的软件项目。
      2. V模型是瀑布模型的一种演变模型,将测试和分析与设计关联进行,加强分析与设计的验证。
      3. 原型模型是一种演化模型,通过快速构建可运行的原型系统,然后根据运行过程中获取的用户反馈进行改进。演化模型特别适用于对软件需求缺乏准确认识的情况。
      4. 螺旋模型将瀑布模型和演化模型结合起来,加入了两种模型均忽略的风险分析。 本题中项目组具备了所开发系统的相关领域及类似规模系统的开发经验,即需求明确,瀑布模型最适合开发此项目
    11. 需求分析确定软件要完成的功能及非功能性要求;
    12. 概要设计将需求转化为软件的模块划分,确定模块之间的调用关系;
      1. 概要设计的内容可以包含系统构架、模块划分、系统接口、数据设计4个主要方面的内容。
    13. 详细设计将模块进行细化,得到详细的数据结构和算法;
    14. 编码根据详细设计进行代码的编写,得到可以运行的软件,并进行单元测试。
    15. 起始阶段专注于项目的初创活动。初启阶段的里程碑是生命周期目标
    16. 精化阶段理解了最初的领域范围之后,进行需求分析和架构演进。精化阶段的里程碑是生命周期架构
    17. 构建阶段关注系统的构建,产生实现模型。构建阶段的里程碑是初始运作功能
    18. 移交阶段关注于软件提交方面的工作,产生软件增量。移交阶段的里程碑是产品发布
    19. 产生阶段运行软件并监控软件的持续使用,提供运行环境的支持,提交并评估缺陷报告和变更请求。
    20. 软件工程是一种层次化的技术,从底向上分别为质量、过程、方法和工具。
    21. 高内聚低耦合
    22. 需求不清晰且规模不太大时采用原型化方法最合适,
    23. 而数据处理领域的不太复杂的软件,适于用结构化方法进行开发。
    24. RUP应用了角色活动制品工作流4种重要的模型元素,其中角色表述“谁做”制品表述“做什么”活动表述“怎么做”工作流表述“什么时候做”。
    25. 软件项目计划的一个重要内容是安排进度,常用的方法有Gantt图PERT图
      1. Gantt 图用水平条状图描述,它以日历为基准描述项目任务,可以清楚地表示任务的持续时间和任务之间的并行,但是不能清晰地描述各个任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分
      2. PERT图是一种网络模型,描述一个项目的各任务之间的关系。可以明确表达任务之间的依赖关系,即哪些任务完成后才能开始另一些任务,以及如期完成整个工程的关键路径,但是不能清晰地描述各个任务之间的并行关系
    26. 软件设计的任务是基于需求分析的结果建立各种设计模型,给出问题的解决方案。从工程管理的角度,可以将软件设计分为两个阶段:概要设计阶段和详细设计阶段。结构化设计方法中,概要设计阶段进行软件体系结构的设计、数据设计和接口设计;详细设计阶段进行数据结构和算法的设计
      1. 面向对象设计方法中,概要设计阶段进行体系结构设计、初步的类设计/数据设计、结构设计;
      2. 详细设计阶段进行构件设计。
    27. 结构化设计和面向对象设计是两种不同的设计方法,
      1. 结构化设计根据系统的数据流图进行设计,模块体现为函数、过程及子程序
      2. 面向对象设计基于面向对象的基本概念进行,模块体现为类、对象和构件等。
    28. 结构化分析模型包括数据流图实体联系图状态迁移图数据字典,因此这些模型是需求分析阶段的输出。而确定软件体系结构是在软件设计阶段进行的。
    29. 敏捷开发的总体目标是通过“尽可能早地、持续地对有价值的软件的交付”使客户满意。敏捷过程的典型方法很多,每一种方法基于一套原则,这些原则实现了敏捷方法所宣称的理念,即敏捷宣言。其中,
      1. 极限编程XP是一种轻量级的软件开发方式,由价值观、原则、实践和行为4个部分组成,彼此相互依赖、关联,并通过行为贯穿于整个生存周期。
        1. 极限编程是一种轻量级(敏捷)、高效、低风险、柔性、可预测的、科学的软件开发方式。
          1. • 4大价值观: 沟通、简单性、反馈和勇气
          2. • 5个原则:快速反馈、简单性假设、逐步修改、提倡更改和优质工作
          3. • 12个最佳实践:
            1. 计划游戏(快速制定计划、随着细节的不断变化而完善)、
            2. 小型发布(系统的设计要能够尽可能早地交付)、
            3. 隐喻(找到合适的比喻传达信息)、简单设计(只处理当前的需求,使设计保持简单)、
            4. 测试先行(先写测试代码,然后再编写程序)、
            5. 重构(重新审视需求和设计,重新明确地描述它们以符合新的和现有的需求)、
            6. 结队编程、集体代码所有制、持续集成(可以按日甚至按小时为客户提供可运行的版本)、每周工作40个小时现场客户和编码标准。
      2. 水晶法Crystal认为每一个不同的项目都需要一套不同的策略、约定和方法论。
      3. 并列争球法Scrum使用迭代的方法,其中把每30天一次的迭代成为一个冲刺,并按需求的优先级来实现产品。多个自组织和自治小组并行地递增实现产品,并通过简短的日常情况会议进行协调。
      4. 自适应软件开发 ASD有6个基本原则。
    30. 在对软件开发资源进行规划时,为了确定构建软件系统所需的人数,需要考虑软件系统的规模系统的技术复杂性项目计划开发人员的技术背景等方面,而与系统是否有市场前景无关。
    31. COCOMO用3个不同层次的模型来反映不同程度的复杂性,它们分别为:
      1. 基本模型(Basic Model):是一个静态单变量模型,它用一个以已估算出来的源代码行数(LOC)为自变量的函数来计算软件开发工作量。
      2. 中级模型(Intermediate Model):则在用LOC为自变量的函数计算软件开发工作量的基础上,再用涉及产品、硬件、人员、项目等方面属性的影响因素来调整工作量的估算。
      3. 详细模型(Detailed Model):包括中级COCOMO型的所有特性,但用上述各种影响因素调整工作量估算时,还要考虑对软件工程过程中分析、设计等各步骤的影响。
    32. COCOMO模型将规模视为成本的主要因素,考虑多个成本驱动因子。在后来的版本COCOMO II中,还考虑了软件开发的不同阶段,包含三个阶段性模型,即应用组装模型、早期设计阶段模型和体系结构阶段模型。
    33. COCOMOII模型也需要使用规模估算信息,在模型层次结构中有3种不同规模估算选择,即:对象点、功能点和代码行。
    34. 敏捷开发方法XP是一种轻量级、高效、低风险、柔性、可预测的、科学的软件开发方法,其特性包含在12个最佳实践中。
      1. 1.计划游戏:快速制定计划、随着细节的不断变化而完善;
      2. 2.小型发布:系统的设计要能够尽可能早地交付;
      3. 3.隐喻:找到合适的比喻传达信息;
      4. 4.简单设计:只处理当前的需求使设计保持简单; 5
      5. .测试先行:先写测试代码再编写程序;
      6. 6.重构:重新审视需求和设计,重新明确地描述它们,以符合新的和现有的需求;
      7. 7.结队编程;
      8. 8.集体代码所有制;
      9. 9.持续集成:可以按日甚至按小时为客户提供可运行的版本;
      10. 10.每周工作40个小时;
      11. 11.现场客户;
      12. 12.编码标准。
    35. 软件需求是软件系统必须完成的事以及必须具备的品质。软件需求包括功能需求非功能需求设计约束三个方面的内容。
      1. 功能需求是所开发的软件必须具备什么样的功能:
      2. 非功能需求是指产品必须具备的属性或品质,如可靠性、性能、响应时间和扩展性等等;
      3. 设计约束通常对解决方案的一些约束说明。
        1. “软件产品必须能够在3秒内对用户请求作出响应”主要表述软件的响应时间,属于非功能需求。
    36. 风险是一种具有负面后果的、人们不希望发生的事件。
      1. 风险管理是软件项目管理的一项重要任务。在进行风险管理时,根据风险的优先级来确定风险控制策略,而优先级是根据风险暴露来确定的风险暴露是一种量化风险影响的指标,等于风险影响乘以风险概率
        1. 风险影响是当风险发生时造成的损失。
        2. 风险概率是风险发生的可能性。风险控制是风险管理的一个重要活动。
    37. I/O软件隐藏了I/O操作实现的细节。I/O软件向用户提供的是逻辑接口I/O软件将硬件与较高层次的软件隔离开来,而最高层软件向应用提供一个友好的、清晰且统一的接口,方便用户使用。
    38. 敏捷开发方法scrum的步骤:
      1. Product Backlog 产品待办事项清单;
      2. Sprint Backlog,Sprint待办事项清单;
      3. Sprint,冲刺迭代。
    39. CMM(Capability Maturity Model)是能力成熟度模型的缩写,CMM是国际公认的对软件公司进行成熟度等级认证的重要标准。CMM共分五级。在每一级中,定义了达到该级过程管理水平所应解决的关键问题和关键过程。每一较低级别是达到较高级别的基础。
      1. 其中五级是最高级,即优化级,达到该级的软件公司过程可自发地不断改进,防止同类问题二次出现;
      2. 四级称为已管理级,达到该级的软件公司已实现过程的定量化;软件过程和产品质量有详细的度量标准。软件过程和产品质量得到了定量的认识和控制。
      3. 三级为已定义级,即过程实现标准化、文档化;并形成了整个软件组织的标准软件过程。全部项目均采用与实际情况相吻合的、适当修改后的标准软件过程来进行操作。
      4. 二级为可重复级,达到该级的软件公司过程已制度化,有纪律,可重复;
      5. 一级为初始级,过程无序,进度、预算、功能和质量等方面不可预测。
    40. 能力成熟度模型集成(CMMI)是若干过程模型的综合和改进,提供了连续式模型阶段式模型,
      1. 连续式模型包括6个过程域能力等级:
        1. **CL0(未完成的):过程域未执行或未得到CL1中定义的所有目标。 **
        2. **CL1(已执行的):其共性目标是过程将可标识的输入工作产品转换成可标识的输出工作产品,以实现支持过程域的特定目标。 **
        3. **CL2(已管理的):指过程作为已管理的过程制度化,针对单个过程实例的能力;。 **
        4. **CL3(已定义级的):指过程作为已定义的过程制度化,关注过程的组织级标准化和部署;。 **
        5. **CL4(定量管理的):指过程作为定量管理的过程制度化; **
        6. CL5(优化的):指过程作为优化的过程制度化,表明过程得到很好地执行且持续得到改进。
    41. I/O软件隐藏了I/O操作实现的细节。I/O软件向用户提供的是逻辑接口。I/O软件将硬件与较高层次的软件隔离开来,而最高层软件向应用提供一个友好的、清晰且统一的接口,方便用户使用。
    42. 软件变更控制是变更管理的重要内容,要有效进行变更控制,需要借助配置数据库和基线的概念。配置数据库一般包括开发库受控库产品库
    43. 软件过程是软件生命周期中的一系列相关活动,即用于开发和维护软件及相关产品的一系列活动。软件过程模型可以帮助开发团队理解开发过程,形成对开发中的活动、资源和约束的共同理解,可以根据具体情况对一个过程进行裁剪等。
      1. 瀑布模型从一种非常高层的角度描述了软件开发过程中进行的活动,并且提出了要求开发人员经过的事件序列。该模型适用于项目开始时需求已确定的情况。
        1. 瀑布模型将软件生存周期各个活动规定为线性顺序连接的若干阶段的模型,规定了由前至后,相互衔接的固定次序,如同瀑布流水,逐级下落。这种方法是一种理想的开发模式,缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题
      2. V模型是瀑布模型的变种,它说明测试活动是如何与分析和设计相联系的。
      3. 原型模型允许开发人员快速地构造整个系统或系统的一部分以理解或澄清问题。原型的用途是获知用户的真正需求,因此原型模型可以有效地引发系统需求。
        1. 原型模型从初始的原型逐步演化成最终软件产品,特别适用于对软件需求缺乏准确认识的情况,原型模型不适宜大规模软件开发。
      4. 螺旋模型把开发活动和风险管理结合起来,以将风险减到最小并控制风险。
        1. 螺旋将瀑布模型与快速原型模型结合起来,并且加入两种模型均忽略了的风险分析,适用于复杂的大型软件
      5. 喷泉模型是典型的面向对象生命周期模型,是一种以用户需求为动力,以对象作为驱动的模型。该模型克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。
        1. !!:“喷泉” 一词本身体现了迭代和无间隙特性。迭代意味着模型中的开发活动常常需要重复多次,在迭代过程中不断地完善软件系统;无间隙是指在开发活动之间不存在明显的边界。
      6. 增量模型是一种非整体开发的模型,该模型具有较大的灵活性,适合于软件需求不明确的一种模型。使用该模型开发产品,一般是尽快构造出可运行的产品,然后在该产品的基础上再增加需要的新的构建,使产品更趋于完善。
        1. 增量模型融合了瀑布模型的基本成分(重复应用)和原型实现的迭代特征,该模型采用随着日程时间的进展而交错的线性序列,每一个线性序列产生软件的一个可发布的“增量”。当使用增量模型时,第1个增量往往是核心的产品,即第1个增量实现了基本的需求,但很多补充的特征还没有发布。客户对每一个增量的使用和评估都作为下一个增量发布的新特征和功能,这个过程在每一个增量发布后不断重复,直到产生了最终的完善产品
      7. 项目规模大、开发小组对项目需求理解并了解相关领域,因此可以采用瀑布开发模型。演化模式适用于对软件需求缺乏准确认识的情况。螺旋模型在开发过程中加入风险分析。喷泉模型适合于面向对象的开发方法。
      8. UP (统一过程)模型是一种以用例和风险为驱动、以架构为中心、迭代并且增量的开发过程由UML方法和工具支持。
        1. UP过程定义了五个阶段,起始阶段、精化阶段、构建阶段、移交阶段和产生阶段。
        2. 开发过程中有多次迭代,每次迭代都包含计划、分析、 设计、构造、集成和测试,以及内部和外部发布。
        3. 每个迭代有五个核心工作流,捕获系统应该做什么的需求工作流、精化和结构化需求的分析工作流、在系统结构内实现需求的设计工作流、构造软件的实现工作流和验证是否如期望那样工作的测试工作流。
  4. 典型的演化(迭代)模型有原型模型和螺旋模型

  5. .系统原型:

    1. 原型方法适用于用户需求不清、需求经常变化的情况,可以帮助导出系统需求并验证需求的有效性;
  6. 探索型原型的目的是弄清目标的要求,确定所希望的特性,并探讨多种方案的可行性,可以用来探索特殊的软件解决方案;

  7. 原型法能够迅速地开发出一个让用户看得见的系统框架,可以用来支持用户界面设计。

  8. 原型法不能用来指导代码优化

  9. !!!ISO/IEC软件质量模型,三层结构,质量特性–质量子特性–度量指标

在这里插入图片描述

  1. 可维护性质量特性是指与软件维护的难易程度相关的一组软件属性,它包含了易分析性、稳定性、易测试性和易改变性4个子特性。其中:

    1. 易分析性是描述诊断缺陷或失效原因、判定待修改程度的难易程度的特性。
    2. 稳定性是描述修改造成难以预料的后果的风险程度,风险程度越低,稳定性越好。
    3. 易测试性是描述测试已修改软件的难易程度的特性。
    4. 易改变性是描述修改、排错或适应环境变化的难易程度。
  2. 软件复杂性度量是软件度量的一个重要分支。软件复杂性度量的参数有很多,主要包括:

    1. 1.规模,即指令数或者源程序行数;
    2. **2.难度,**通常由程序中出现的操作数所决定的量来表示;
    3. **3.结构,**通常用与程序结构有关的度量来表示;
    4. 4.智能度,即算法的难易程度
  3. 模块结构评审时,主要包括以下方面的评审:

    1. 1.控制流结构:规定了处理模块与处理模块之间的流程关系。检查处理模块之间的控制转移关系与控制转移形式(调用方式)。
    2. 2.数据流结构:规定了数据模块是如何被处理模块进行加工的流程关系。检查处理模块与数据模块之间的对应关系;处理模块与数据模块之间的存取关系,如建立、删除、查询、修改等。
    3. 3**.模块结构与功能结构之间的对应关系**:包括功能结构与控制流结构的对应关系;功能结构与数据流结构的对应关系;每个模块的定义(包括功能、输入与输出数据)。
  4. 容错技术是对某些无法避开的差错,使其影响减至最小的技术。通常冗余技术分为四类,结构冗余、信息冗余、时间冗余和冗余附加技术

    1. 其中冗余附加技术指为实现其他类型冗余技术所需要的资源和技术包括程序指令、数据、存放和调动它们的空间和通道等。
      1. 屏蔽硬件错误的容错技术中,冗余附加技术包括:关键程序和数据的冗余存储及调用:检测、表决、切换、重构、纠错和复算的实现。
      2. 在屏蔽软件错误的容错技术中,冗余附加技术包括:冗余备份程序的存储及调用;实现错误检测和错误恢复的程序;实现容错软件所需的固化程序。
  5. 软件配置管理SCM用于整个软件工程过程,

    1. 主要目标标识变更控制变更、确保变更正确的实现,报告变更
    2. 主要内容包括版本管理、配置支持、变更支持、过程支持、团队支持、变化报告和审计支持等。
  6. 三层C/S体系结构由逻辑上相互分离的表示层、业务层和数据层构成

    1. 其中表示层向客户提供数据业务层实施业务相数据规则数据层定义数据访问标准
    2. 该体系结构具有许多优点,如逻辑上相对独立,不同层可以用不同的平台、软件和开发语言,而系统的安装、修改和维护在各层都可能进行
  7. 为了使用户满意,软件应该满足两个必要条件:

    1. 设计的规格说明书符合用户的要求,这称为设计质量程序按照设计规格说明所规定的情况正确执行,这称为程序质量
    2. 设计质量评审的对象是在需求分析阶段产生的软件需求规格说明、数据需求规格说明、在软件概要设计阶段产生的软件概要设计说明书等
      1. 主要从以下方面进行评审:软件的规格说明是否合乎用户的要求;可靠性;保密措施实现情况等;操作特性实施情况等;性能实现情况;可修改性、可扩充性、可互换性和可移植性;可测试性;可复用性
  8. McCall软件质量模型从软件产品的运行、修正和转移三个方面确定了11个质量特性,

    1. 其中运行方面包含了正确性、可靠性、效率、完整性、使用性这些质量特性。
    2. 修正方面包含了维护性、测试性、灵活性这3个质量特性。
    3. 转移方面包含了维护性移植性、复用性、共运行性这3个质量特性。
  9. 系统开发人员与项目管理人员在项目期内进行沟通的文档主要有系统开发计划系统开发月报以及系统开发总结报告等项目管理文件。

    1. 系统开发计划包括工作任务分解表、PERT图、甘特图和预算分配表
    2. 总体规划和开发合同用于与系统分析人员在系统规划和系统分析阶段的沟通
    3. 测试计划用于系统测试人员与系统开发人员之间的沟通。
  10. 文档是指某种数据媒体和其中所记录的数据。在软件开发过程中,有大量的信息要记录和使用,因此文档具有重要的作用,如可以提高软件开发过程的能见度、提髙开发效率、作为开发人员在一定阶段的工作成果和结束标志、记录开发过程中的有关信息、提高对软件运行维护和培训的有关信息、便于用户了解软件功能和性能等各项指标。

    1. 髙质量的文档应该体现在几个方面:
      1. 针对性,文档编制应考虑读者。按不同的类型、不同层次的读者,决定怎样适应他们的需要;
      2. **精确性,**文档的行文应该十分确切,不能出现多义性的描述。同一项目几个文档的内容应该是协调一致,没有矛盾的;
      3. 清晰性, 文档编写应力求简明,如有可能,配以适当的图表,以增强其清晰性;
      4. 完整性,任何文 档都应当是完整的、独立的,应该自成体系;
      5. 灵活性,各个不同软件项目,其规模和复 杂程度有着许多实际差别,不能一律看待;
      6. 可追溯性,由于各开发阶段编制的文档与各个阶段完成的工作有密切的关系,前后两个阶段生成的文档,随着开发工作的逐步延伸, 具有一定的继承关系,在一个项目各开发阶段之间提供的文档必定存在着可追溯的关系。
  11. 软件评审的内容包括设计质量评审程序质量评审与运行环境接口的评审。评审的主要目标是为了发现软件中的错误。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算软件工程项目的关键路径需要以下步骤: 1. 绘制项目的网络图,包括所有的活动和它们之间的先后关系。 2. 计算每个活动的最早开始时间(Early Start,ES)和最早结束时间(Early Finish,EF)。最早开始时间是指在没有任何限制的情况下,该活动可以开始的最早时间;最早结束时间是指在没有任何限制的情况下,该活动可以完成的最早时间。计算方法为:ES = 前置活动的最早结束时间,EF = ES + 活动持续时间。 3. 计算每个活动的最晚开始时间(Late Start,LS)和最晚结束时间(Late Finish,LF)。最晚开始时间是指在不影响整个项目完成时间的前提下,该活动必须开始的最晚时间;最晚结束时间是指在不影响整个项目完成时间的前提下,该活动必须完成的最晚时间。计算方法为:LF = 后继活动的最晚开始时间,LS = LF - 活动持续时间。 4. 计算每个活动的总时差(Total Float,TF),即该活动可以延迟的最长时间。计算方法为:TF = LS – ES 或 TF = LF – EF。 5. 找到所有的关键路径,即总时差为0的路径。这些路径上的活动必须按照计划完成,否则将会影响整个项目的完成时间。 总之,计算关键路径需要通过绘制网络图、计算活动的起止时间和总时差等步骤,以确定项目中哪些活动是关键的,从而帮助项目管理者合理安排资源和时间,以确保项目按时完成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值