UML是一种通用建模语言,它本身具有的可扩展性使其不仅可以用于软件系统开发各个阶段的建模,也可以用于商业和其他几乎所有类型的建模。总体来说,UML由以下几个部分构成。模型元素UML中的模型元素包括事物以及事物之间的联系。通用机制UML提供的通用机制可以为模型元素提供额外的注释、信息或语义。UML的组成结构如图6-1所示。图6-1 UML结构图用例图和类图是面向对象系统开发的重点内容。......
2023-11-23
要使程序可读性好,总的要求是使程序简单、清晰。20世纪70年代以来,人们总结出了使程序简单、清晰的种种技巧和方法,包括:
●结构化程序设计。
●面向对象的程序设计。
●可视化编程技术。
●程序的内部文档。
1.结构化程序设计
结构化程序设计被称为软件发展中的第三个里程碑,其影响比前两个里程碑(子程序、高级语言)更为深远。结构化程序设计的概念和方法以及支持这些方法的一整套软件工具,构成了“结构化革命”。这是存储程序自计算机问世以来,对计算机界影响最大的一个软件概念。
对于什么是“结构化程序设计”,至今还没有通用的定义。通常认为结构化程序设计应包括以下三个方面:
(1)限制使用GO TO语句
从理论上讲,只用顺序结构、选择结构、循环结构这三种基本结构就能表达任何只有一个入口和一个出口的程序逻辑。程序中完全可以不用GO TO语句。这种程序易于阅读和验证。但在某些情况下,例如从循环体中跳出,使用GO TO语句更为直截了当。但是无限制使用该语句,将会使程序结构杂乱无章,难以阅读、理解,容易隐含一些错误。
(2)逐步求精的设计方法
在一个程序模块内,先从该模块功能描述出发,一层层逐步细化,直到最后分解,细化成语句为止。
(3)自顶向下的设计、编码和调试
这是把逐步求精的方法由程序模块内的设计推广到一个系统的设计与实现,这正是本书介绍的结构化方法的来源。
2.面向对象的程序设计
传统的过程式程序设计随着软件危机和应用系统的不断膨胀越来越显得力不从心,随着20世纪70年代Smalltalk及Modula-2等面向对象的编程语言OOPL(Object Oriented Pro- gramming Language)的出现,以及C++的发展成熟,面向对象程序设计OOP(Object Orien-ted Programming)思想得到广泛的认同和普及。直至20世纪90年代,各种程序语言或工具都引入了这一思想,其优越性是有目共睹的,它已成为这一时代软件产业的主体技术。
在OOP方法中,一个对象即是一个独立存在的实体,对象有各自的属性和行为,彼此以消息进行通信,对象的属性只能通过自己的行为来改变,实现了数据封装。相关对象合并分类后,有可能共享某些性质,通过抽象后使多种相关对象表现为一定的组织层次,低层次的对象继承高层次对象的特性,这便是对象的继承性。另外,对象的某一种操作在不同的环境下可以实现不同的处理,产生不同的结果,这就是对象的多态性。现有的OOPL中都不同程度地实现了对象的以上三个性质。
(1)封装性(www.chuimin.cn)
一般以类(Class)来创建一个对象。类表现为一种数据结构,对外提供的界面包括一组数据以及操作这些数据的方法,而隐藏了内部操作的细节,对象操作者只需了解对象的界面即可。这样大大增强了模块化程度,很好地实现了软件重用和信息隐藏。
为了更好地保持安全性和独立性,类有部分数据可以定义为私有数据,其他类的对象或过程都不能直接访问私有数据。而一般情况下利用消息机制向对象发送消息,对象所有类就需要定义对应的消息响应函数,主动接受消息并作处理,这也是OOPL的一大特点。
(2)继承性
类通过继承定义成不同的层次结构,将相关类的特点抽象出来作为父类。子类继承父类的结构和方法后,再定义各自特定的数据和操作,或者还可以通过重载将父类的某些特殊操作进行重新定义。继承一个单一的父类被称为单继承,如果有两个或两个以上的父类则是多继承。这样做的目的不仅体现了软件重用技术,同时又可最大限度地精简程序,减少冗余代码,极大地提高了程序开发和运行效率。
(3)多态性
类的某些操作允许同一名称具有多种语义。OOPL的这些特点使程序员进行面向对象程序设计时与进行结构化的程序设计有很大的不同,主要体现在设计程序不采用顺序性的结构,而是采用对象本身的属性与方法来解决问题。
3.可视化编程技术
虽然OOPL提高了程序的可靠性、可重用性、可扩充性和可维护性,但应用软件为了适应Windows界面环境,使用户界面的开发工作变得越来越复杂,有关这部分代码所占比例越来越大。因此Microsoft公司推出Visual Basic以后,可视化编程技术受到极大的欢迎。编程人员不用受Windows编程的困扰,就能够所见即所得地设计标准的Windows界面。
可视化编程技术的主要思想是用图形工具和可重用部件来交互地编制程序。它把现有的或新建的模块代码封装于标准接口封包中,作为可视化编辑工具中的一个对象,用图符来表示和控制。可视化技术中的封包可能由某种语言的一个语句、功能模块或数据库程序组成,由此获得的是高度的平台独立性和可移植性。在可视化编程环境中,用户还可以自己构造可视控制部件,或引用其他环境构造的符合封包接口规范的可视控制部件,增加了编程的效率和灵活性。
另外,一般可视化编程工具还有应用专家或向导来提供模板,按照步骤对使用者进行交互式指导,让用户定制自己的应用,然后就可以生成应用程序的框架代码,用户再在适当的地方添加或修改以适应自身需求。
面向对象编程技术和可视化编程开发环境的结合,改变了应用软件只有经过专门技术训练的专业编程人员才能开发的状况。它使软件开发变得容易,从而扩大了软件开发队伍。由于大量软件模块的重用和可视控件的引入,技术人员在掌握这些技术之后,就能有效提高应用软件的开发效率,缩短开发周期,降低了开发成本,并且使应用软件界面风格统一,有很好的易用性。
4.程序的内部文档
程序的“内部文档”是指程序内部带有的说明材料。内部文档可以用注释语句书写,程序适当注释后,阅读时就不必再看其他说明材料了。因此,这是提高程序可读性的有力手段。注释可以出现在程序的任何位置,但要与程序结构配合起来效果才好而且需要注意以下几点:
1)注释必须与程序一致,否则它毫无价值,甚至使人感到莫名其妙。所以修改程序时,需要同时修改相应的注释。
2)注释不是重复程序语句,而是提供从程序本身难以得到的信息。
3)对程序段作注释,而不是对每个语句作注释。
有关信息系统开发方法与实践教程的文章
UML是一种通用建模语言,它本身具有的可扩展性使其不仅可以用于软件系统开发各个阶段的建模,也可以用于商业和其他几乎所有类型的建模。总体来说,UML由以下几个部分构成。模型元素UML中的模型元素包括事物以及事物之间的联系。通用机制UML提供的通用机制可以为模型元素提供额外的注释、信息或语义。UML的组成结构如图6-1所示。图6-1 UML结构图用例图和类图是面向对象系统开发的重点内容。......
2023-11-23
信息系统的开发具有长期性、复杂性和风险性,需要科学的方法论作指导。常用的信息系统开发方法有结构化系统开发方法、面向对象系统开发方法和原型法三种。像决策支持系统这种具有开发性而无固定需求范围的系统,更适合用原型法进行开发。图1-15 原型法的开发过程本书的第2~5章主要讲述的是结构化的系统开发方法;第6~15章,主要介绍的是面向对象的系统开发方法。......
2023-11-23
用例是一组动作序列的描述,系统执行这些动作,并产生传递参与者意愿的可观察结果。用例的名字是一个字符串,分为简单名和路径名两种方式。用例Mainte nance是属于包Business的。基于这些参与者及其需求,通过回答前面的问题,可以建立如下用例:●记录成绩。......
2023-11-23
继承是指子类可以自动拥有父类的全部属性和操作。另外如图7-2所示,表示出了几种类之间的继承关系,位于上层的类是下层类的直接或间接父类,最下层是几种类实例化成的对象。图7-1 继承的描述图7-2 继承的例子继承性又分为单重继承和多重继承两类。单重继承时一个子类只能有一个父类,多重继承时一个子类可以有多于一个的父类。单重继承构成的类之间关系是一棵树,多重继承构成的类之间的关系是一个图。继承具有传递性。......
2023-11-23
这一阶段的任务主要由系统分析员来完成。系统分析阶段是系统详细开发的关键性阶段,关键在于“理解”和“表达”。这是对系统进行概要描述的工具,是系统分析的核心内容。......
2023-11-23
本节首先介绍用例图的基本概念。理解这些概念是正确绘制用例图的基础。用例使用系统与一个或多个参与者之间的一系列消息来描述系统间的交互。用例图由以下元素组成:●参与者:也称为角色,它代表系统的用户。画用例图时,有时并不画出系统边界,但边界却是存在的。用例图可以包含注释和约束,还可以包含包,用于将模型中的元素组合成更大的模块。图8-1 用例图示例在需求分析中,用例图只说明系统具有哪些功能,不必说明如何实现。......
2023-11-23
系统实施是开发信息系统的最后一个阶段。系统设计说明书详细规定了系统的结构和各个模块的功能、输入和输出,还规定了数据库的物理结构,这是系统实施的出发点。而系统实施则是调集各种人员、设备、材料在盖楼的现场,根据图样按实施方案的要求把大楼盖起来。系统实施的主要工作有:程序编码、质量保证与控制、数据准备、组织系统测试、项目管理与实施进度控制。......
2023-11-23
相关推荐