📝 软件工程教程
90篇技术文档📅  最后修改于: 2021-01-09 15:14:43        🧑  作者: Mango
项目监控监视和控制是跟踪,审查和规范项目进度和绩效所需的过程。它还确定需要更改项目管理方法的任何区域,并启动所需的更改。监视和控制过程组包括十一个过程,它们是:监视和控制项目工作:属于所有其他监视和控制活动的通用步骤。执行集成的变更控制:变更项目计划所涉及的功能。当需要更改进度表,成本或项目管理计划的任何其他区域时,该计划将更改并由项目发起人重新批准。验证范围:涉及批准项目可交付成果的活动。控制范...
📅  最后修改于: 2021-01-09 15:15:38        🧑  作者: Mango
软件质量软件质量产品是根据其适用性定义的。也就是说,高质量的产品恰好可以满足用户的需求。对于软件产品,通常以满足SRS文档中规定的要求来说明使用的适用性。尽管“目的适应性”对于软件产品的许多设备(例如汽车,台式风扇,研磨机等)是令人满意的质量解释,但“目的适应性”并不是对质量的完全令人满意的定义。示例:考虑功能正确的软件产品。即,它执行SRS文档中指定的所有任务。但是,它具有几乎无法使用的用户界面...
📅  最后修改于: 2021-01-09 15:16:30        🧑  作者: Mango
ISO 9000认证ISO(国际标准组织)是由63个国家/地区组成的团体或财团,旨在规划和促进标准化。 ISO于1987年宣布其9000系列标准。它可作为独立方之间合同的参考。 ISO 9000标准确定了维持质量体系的准则。 ISO标准主要涉及操作方法和组织方法,例如职责,报告等。ISO9000为生产过程定义了一套准则,并不直接关注产品本身。ISO 9000质量标准的类型ISO 9000系列标准基...
📅  最后修改于: 2021-01-09 15:17:24        🧑  作者: Mango
软件工程学院能力成熟度模型(SEICMM)能力成熟度模型(CMM)是用于开发和完善组织的软件开发过程的过程。该模型定义了一个日益组织化和持续成熟的过程的五级演化阶段。CMM由软件工程学院(SEI)开发和推广,SEI是由美国国防部(DOD)推动的研发中心。能力成熟度模型用作衡量组织软件过程成熟度的基准。SEICMM方法SEICMM有两种方法:能力评估:能力评估提供了一种评估组织的软件过程能力的方法。...
📅  最后修改于: 2021-01-10 02:49:47        🧑  作者: Mango
人员能力成熟度模型(PCMM)PCMM是一种成熟度结构,其重点是不断改进组织的人力资产的管理和开发。它定义了从Adhoc,执行不一致的做法到成熟,纪律严明并不断改善员工知识,技能和动力的发展的改进路径,以增强战略业务绩效。人员能力成熟度模型(PCMM)是一个框架,可以帮助组织成功解决其关键的人员问题。基于在人力资源,知识管理和组织发展等领域的最新最佳研究,PCMM指导组织改进管理和发展员工队伍的步...
📅  最后修改于: 2021-01-10 02:50:51        🧑  作者: Mango
六个西格玛六西格码(Six Sigma)是通过识别和消除缺陷原因并减少制造和业务流程的可变性来提高输出质量的过程。制造过程的成熟度可以通过sigma等级来定义,该等级表示其制造的无缺陷产品的百分比。六西格玛方法是这样一种方法,其中统计出产生零件某些特征的所有机会中有99.99966%预计没有缺陷(百万分之3.4的缺陷特征)。六西格码的历史六西格玛是一套用于流程改进的方法和工具。它是由工程师Bill...
📅  最后修改于: 2021-01-10 02:51:43        🧑  作者: Mango
软件设计软件设计是一种将用户需求转换为适当形式的机制,可以帮助程序员进行软件编码和实现。如SRS(软件需求规范)文档中所述,它以一种形式表示代表客户的需求,即可以使用编程语言轻松实现。软件设计阶段是SDLC(软件设计生命周期)的第一步,它将注意力从问题领域转移到解决方案领域。在软件设计中,我们认为系统是一组具有明确定义的行为和边界的组件或模块。软件设计目标以下是软件设计的目的:正确性:软件设计应根...
📅  最后修改于: 2021-01-10 02:52:38        🧑  作者: Mango
软件设计原理软件设计原则涉及提供有效处理设计过程复杂性的方法。有效地管理复杂性不仅将减少设计所需的工作量,而且可以减少设计期间引入错误的范围。以下是软件设计的原则问题划分对于小问题,我们可以立即处理整个问题,但对于重大问题,则可以将问题分为若干部分并加以解决,这意味着将问题分成多个较小的部分,以便可以分别捕获每个部分。对于软件设计,目标是将问题分为可管理的部分。问题分区的好处软件易于理解软件变得简...
📅  最后修改于: 2021-01-10 02:53:33        🧑  作者: Mango
耦合与内聚模块联轴器在软件工程中,耦合是软件模块之间的相互依赖程度。紧密耦合的两个模块相互之间非常依赖。但是,松散耦合的两个模块彼此不依赖。未耦合的模块在它们内部完全没有相互依赖性。图中显示了各种类型的耦合技术:良好的设计是低耦合的设计。耦合通过模块之间的关系数来衡量。即,随着模块之间的调用数量增加或共享数据量大,耦合增加。因此,可以说具有高耦合的设计将具有更多的误差。模块联轴器的类型1.没有直接...
📅  最后修改于: 2021-01-10 02:54:28        🧑  作者: Mango
功能导向设计面向功能的设计是一种软件设计方法,其中将模型分解为一组交互的单元或模块,其中每个单元或模块都具有明确定义的函数。因此,从功能的角度设计该系统。设计符号设计符号主要用于设计过程中,并用于表示设计或设计决策。对于面向功能的设计,可以通过以下方式以图形或数学方式表示设计:数据流程图数据流设计与设计一系列将系统输入转换为所需输出的功能转换有关。该设计被描述为数据流程图。这些图显示了数据如何流经...
📅  最后修改于: 2021-01-10 02:55:20        🧑  作者: Mango
面向对象设计在面向对象的设计方法中,系统被视为对象(即实体)的集合。状态分布在对象之间,每个对象处理其状态数据。例如,在图书馆自动化软件中,每个图书馆代表可以是具有其数据和对这些数据进行操作的功能的单独对象。为一个目的定义的任务无法引用或更改其他对象的数据。对象具有代表其状态的内部数据。相似的对象创建一个类。换句话说,每个对象都是某个类的成员。类可以从超类继承特征。与对象设计有关的不同术语是:对象...
📅  最后修改于: 2021-01-10 02:56:15        🧑  作者: Mango
用户界面设计客户端通过其与计算机或软件进行交互的计算机应用程序或操作系统的可视部分。它确定如何将命令发送给计算机或程序,以及如何在屏幕上显示数据。用户界面类型用户界面有两种主要类型:基于文本的用户界面或命令行界面图形用户界面(GUI)基于文本的用户界面:此方法主要依赖于键盘。一个典型的例子是UNIX。优点多种自定义选项。通常能够执行更重要的任务。缺点在很大程度上依赖于召回而不是认可。导航通常更加困...
📅  最后修改于: 2021-01-10 02:57:10        🧑  作者: Mango
编码编码是将系统的设计转换为计算机语言格式的过程。软件开发的此编码阶段涉及将设计规范转换为源代码的软件。有必要编写源代码和内部文档,以便可以轻松验证代码是否符合其规范。编码由比设计者还独立的编码员或程序员完成。目的不是要减少编码阶段的工作量和成本,而是要减少后期阶段的成本。使用有效的编码可以大大降低测试和维护的成本。编码目标要将系统的设计转换为计算机语言格式:编码是将系统的设计转换为计算机语言格式...
📅  最后修改于: 2021-01-10 02:58:02        🧑  作者: Mango
程式风格编程风格是指用于编写计算机程序源代码的技术。大多数编程风格旨在帮助程序员快速阅读和理解程序,并避免出错。 (较早的编程风格也着重于节省屏幕空间。)良好的编码风格可以克服第一种编程语言的许多不足,而较差的风格可以破坏优质语言的意图。好的编程风格的目标是提供易于理解的,直接的,优雅的代码。可以从公司或其他计算组织的编码标准或代码约定以及实际程序员的偏好中得出各种程序中使用的编程样式。有关编程风...
📅  最后修改于: 2021-01-10 02:58:56        🧑  作者: Mango
结构化程序设计在结构化编程中,我们将整个程序细分为小模块,以便使程序易于理解。结构化编程的目的是使通过计算机程序的控制流线性化,以使执行顺序遵循编写代码的顺序。程序的动态结构不同于程序的静态结构。这样可以提高程序的可读性,可测试性和可修改性。可以通过将允许的应用程序构造的集合限制为单入口单出口格式来管理这种线性控制流。为什么我们使用结构化编程?我们使用结构化编程是因为它使程序员可以轻松地理解程序。...