CMM模型,结构化开发方法和面向对象开发方法的比较,UML(统一建模语言),jackson开发方法

CMM模型

一、CMM简介

CMM,英文全称为Capability Maturity Model for Software,即:软件成熟度模型。

CMM的核心是把软件开发视为一个过程。它是对于软件在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。

根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好地实现商业目标。

分级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级

优点:

1、提高软件开发的管理能力,因为CMM可提供软件公司自我评估的方法和自我提高的手段;

2、提高软件开发效率;

3、提高软件质量;

4、提高软件竞争力;

https://www.cnblogs.com/imyalost/p/7859824.html

结构化开发方法和面向对象开发方法的比较

结构化方法的基本思想主要体现在三个方面。

(1)自顶向下,逐步求精:把程序看成是一个逐步演化的过程。把一个系统与程序看成是一层一层的。例如:户籍管理系统可以划分为:户籍迁入迁出,人员迁入迁出,户籍注销,人员注销等几个子系统,而每个子系统又划分为接收用户信息,实施处理,提供返回信息等等部分。

(2)模块化:即将几个系统分成几个模块,每个模块实现特定的功能,最终整个系统由这些模块组成。模块跟模块之间通过接口传递信息,模块最重要的特点就是独立性,模块之间还有上下层的关系,上层模块调用下层模块来实现一些功能。

(3)语句结构化:顺序结构、分支结构、循环结构,都是常用的语句结构。

2、1结构化分析方法的特点

(1)面向用户,用户自始至终参与系统的分析工作;

(2)强调调查工作的重要性;

(3)对管理业务中的各种数据进行分解;

(4)采用了层次分解的系统思想;

(5)用图形工具来分析和构建新方案。

2、2面向对象分析方法的特点

(1)强调系统开发的整体性和全局性

(2)侧重于数据转换的过程而不是数据本身

(3)系统的开发周期长

(4)封装性

(5)继承性

(6)多态性

(7)易维护性

https://www.cnblogs.com/myHenryS/p/6218680.html

UML(统一建模语言):

什么是模型:是对现实世界的简化

建模:能够更好的理解正在开发的系统

通过建模达到下面的目的
1、模型有助于按照实际情况或按照所需的样式对系统进行可视化
2、模型能够规约系统的结构或行为
3、模型给出了构造系统的模板
4、模型对做出的决策进行文档化
对于一个复杂的系统,如银行、电信系统建模的重要性就越大。如果不能很好的理解一个复杂系统,盲目开发,失败的可能性很大。

统一建模语言(Unified Modeling Language , UML) 是一种绘制软件蓝图的标准语言,可以用UML对软件密集的制品进行可视化、详述、构造和文档化
1、可视化:清晰的模型有利于交流
2、详述:可以使用uml对分析、设计、实现等决策进行详细描述
3、构造:把uml描述映射成编程语言
4、文档化:系统的所有细节都可以是uml进行描述。如:项目计划、发布活动等

https://blog.csdn.net/qq_35409640/article/details/76794993

jackson开发方法

一:简介编辑

1975年,M.A.Jackson提出了一类至今仍广泛使用的软件开发方法。这一方法从目标系统的输入、输出数据结构入手,导出程序框架结构,再补充其它细节,就可得到完整的程序结构图。这一方法对输入、输出数据结构明确的中小型系统特别有效,如商业应用中的文件表格处理。该方法也可与其它方法结合,用于模块的详细设计。杰克逊结构图是用来描述数据结构中的顺序,选择和重复。

二:使用说明编辑

一般通过以下五个步骤来完成设计: 
(1)分析并确定输入数据和输出数据的逻辑结构,并用Jackson结构图来表示这些数据结构。 
(2)找出输入数据结构和输出数据结构中有对应关系的数据单元。 
(3)按以下的规则由输入、输出的数据结构导出程序结构。 
1)为每一对在输入数据结构和输出数据结构中有对应关系的单元画一个处理框。 
2)为输入和输出数据结构中剩余的数据单元画一个处理框。 
3)所有处理框在程序结构图上的位置,应与由它处理的数据单元在数据结构Jackson图上的位置一致。 
4)必要时,可以对映射导出的程序结构图进行进一步的细化。 
(4)列出基本操作与条件,并把它们分配到程序结构图的适当位置。 
(5)用伪码写出程序。

原文地址:https://www.cnblogs.com/gdf456/p/9938754.html

时间: 2024-11-08 00:02:01

CMM模型,结构化开发方法和面向对象开发方法的比较,UML(统一建模语言),jackson开发方法的相关文章

结构化开发方法和面向对象开发方法的比较

1. 两者基本思想的比较 1.1结构化方法的基本思想 结构化方法是一种传统的软件开发方法,它是由结构化分析.结构化设计和结构化程序设计三部分有机组合而成的.结构化设计方法是以自顶向下,逐步求精,模块化为基点,以模块化,抽象,逐层分解求精,信息隐蔽化局部化和保持模块独立为准则的设计软件的数据架构和模块架构的方法学.它的要点是是把一个复杂问题的求解过程分阶段进行,而且这种分解是自顶向下,逐层分解,使得每个阶段处理的问题都控制在人们容易理解和处理的范围内. 结构化方法的基本思想主要体现在三个方面. (

专利:结构化大数据通信协议

发明专利技术 结构化大数据通信协议 发明人:樊永正 [email protected] 技术领域 结构化大数据通信协议是一种通信协议,也是一种让数据成为合格的结构化大数据的技术.结构化大数据通信协议也类似于ETL,ETL是处理现有的信息系统所产生的数据的问题,而结构化大数据通信协议是在设计信息系统之初就开始预防数据产生问题.ETL是为数据治病,结构化大数据通信协议是预防数据产生疾病.ETL是对现有技术所产生的问题进行小修小补,结构化大数据通信协议提出了新的数据处理方案.结构化大数据通信协议也是一

结构化系统开发和面向对象开发方法

结构化系统开发方法: 系统分析员.软件工程师.程序员以及最终用户按照用户至上的原则,自顶向下分析与设计和自底向上逐步实施的建立计算机信息系统的一个过程,是组织.管理和控制信息系统开发过程的一种基本框架. 三部分:管理策略部分:强调系统开发的规划.进程安排.评估.监控和反馈.开发策略部分:任务分解结构:WBS优先级结构.开发经验.开发标准. 开发过程分为:系统规划阶段.系统分析阶段.系统设计阶段.系统实施阶段.系统运行与维护阶段结构化开发早期的程序开发,如C语言,都是用结构化开发方法. 面向对象开

结构化开发方法v.s.面向对象开发方法

关于结构化和面向对象的程序设计方法的概念对比的讨论已经不是一个很新颖的话题,然而对于刚开始接触了解软件工程开发的新手,了解学习其不同的开发特点,参与其利弊的讨论,对于新的更好的编程范式的产生具有积极意义.而在在本文中,我们从该面向对象的程序和结构化程序的特征讨论区分. 结构化编程 Structured programming can be viewed as the pulling together, or synthesization of such ideas as program modu

结构化和面向对象之应用比较

---恢复内容开始--- 结构化和面向对象之应用比较 在无数程序设计人员的不断实践和理论改进中,软件工程程序设计中极其重要的指导性思路一直在发生着变革.在相对较长的时间里,不断有新的软件工程中的程序设计思路涌现,其中在生产实践中得到了十分广泛的应用的,当属结构化和面向对象的方法. 结构化程序设计在结构上将软件系统划分为若干功能模块或实体,分别采用模块化程序设计语言编程实现,再由各模块联结,组合成相应结构的软件系统. 而在面向对象的程序设计中,所谓对象是指具有一定结构.属性和功能的实体,采用对象和

结构化与面向对象方法的比较

计算机软件在现代科学技术中有着十分重要地位和作用,已成为信息社会高技术竞争的关键领域之一.我在这篇文章中针对计算机软件两大开发方法:结构化方法与面向对象方法进行了梳理.对比,剖析了结构化方法和面向对象方法这两种软件开发方法具体的分析设计过程,讨论了各自在不同软件开发中的应用及局限性,并在最后提出了一点自己的看法. 1结构化方法 结构化方法(Structured Methodology)是编程领域的一种典型的系统开发方法. 它采用了系统科学的思想方法,从层次的角度,自顶向下地分析和设计系统. 结构

【转】移动Web单页应用开发实践——页面结构化

1. 前言 在开发面向现代智能手机的移动Web应用的时候,无法避免一个事实,就是需要开发单页应用(Single Page WebApp).对于不同的系统需求,单页应用的粒度会不同,可能是整个系统都使用一个页面装载,也可能是按模块分为独立页面装载.在开发单页应用时第一个要处理的问题就是页面结构化,由于多个功能集中在一个页面呈现,就必然需要考虑如何实现多个视图布局?如何实现视图之间动画切换?等问题. 下面我就来讲述下手机搜狐前端团队在单页应用开发的页面结构化上做过的一些尝试与努力. 2. 页面视图

结构化TensorFlow模型代码

译自http://danijar.com/structuring-your-tensorflow-models/ 使用TensorFlow构建神经网络模型很容易导致较大的代码量,那么如何以可读和可复用的方式构建代码?(没耐心的可直接参考可直接参考源代码https://gist.github.com/danijar/8663d3bbfd586bffecf6a0094cd116f2) 定义计算图 在每一个模型里面定义一个类是一个较好的选择. 那么,如何定义该类的接口呢? 通常,每个模型会连接到一些输

移动Web单页应用开发实践——页面结构化

1. 前言 在开发面向现代智能手机的移动Web应用的时候,无法避免一个事实,就是需要开发单页应用(Single Page WebApp).对于不同的系统需求,单页应用的粒度会不同,可能是整个系统都使用一个页面装载,也可能是按模块分为独立页面装载.在开发单页应用时第一个要处理的问题就是页面结构化,由于多个功能集中在一个页面呈现,就必然需要考虑如何实现多个视图布局?如何实现视图之间动画切换?等问题. 下面我就来讲述下手机搜狐前端团队在单页应用开发的页面结构化上做过的一些尝试与努力. 2. 页面视图