第八章-系统开发方法的发展课件_第1页
第八章-系统开发方法的发展课件_第2页
第八章-系统开发方法的发展课件_第3页
第八章-系统开发方法的发展课件_第4页
第八章-系统开发方法的发展课件_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章系统开发方法的发展精18.1概述问题的提出:随着社会经济和科学技术的迅速发展,各类社会组织的生存环境愈加复杂,竞争日趋激烈,国际社会对信息化的需求日益高涨,传统的管理信息系统的建设方法已不能满足日益增长的社会需要。精2本节主要内容用户开发应用系统和原型法领会生命周期法存在的问题。了解用户进行应用开发的主要途径。掌握原型法的基本原理和建立原型系统的主要步骤。理解原型法与生命周期法的关系。精38.2用户开发系统和原型法结构生命周期法存在的问题整个系统的开发工作是劳动密集型的,虽然曾经有一些基于结构化生命周期法的计算机辅助开发工具,但往往只能在系统开发的个别环节上提供有限的支持,各阶段的工作从系统分析、系统设计到系统实施,绝大部分工作仍然依靠人工完成。系统开发的整个工作费时过长,难以适应环境的急剧变化。对用户需求的变更不能做出迅速的响应。一旦系统所处理的问题比较复杂,不确定因素较多,系统的逻辑方案、物理方案和实施工作需要反复探索,或者整个系统建设中的非结构化因素较多,结构生命周期法就很难适应。维护工作繁重,专门人才紧缺。精4硬件成本与软件成本的变化8.2用户开发系统和原型法费用年19791950硬件成本软件成本精58.2用户开发系统和原型法由于生命周期法存在的一些问题,自然的想法就是由用户直接承担部分或系统建设的任务,开发,维护和修改用户自己需用的应用软件。用户获得应用软件,通常下面三条途径:(1)用户可使用功能很强又容易使用的计算机软件开发工具来开发所需要的应用软件。(2)当某些用户感到第四代语言技术性太强,使用较困难时,可以聘请顾问或系统专职开发人员一起工作,共同开发合适的应用软件。(3)从外部购进用户所需的软件应用包。精68.2用户开发系统和原型法用户开发的主要手段:个人计算机工具(简记PC工具)。报表生成器。图形生成器。多媒体开发工具。决策支持与建模工具。应用软件生成器。上述软件特征:大大缩短系统开发时间。界面友好,方便学习。适用最终用户和系统开发专业人员。各类应用软件,数据库管理系统,集成化系统开发工具等等。可进行复杂的数据处理,生成各种格式的表格、报告。供用户根据需要用各种图形描述数据库中的数据。可对文字、数字、图形、图像、动画、影视、声音进行综合处理。可以支持各种决策和协助建立决策与计划模型。可以生成信息系统的某个应用软件。精78.2用户开发系统和原型法1.企业建设管理信息系统的三种方式当应用方面的需求可以明确提出并且预计某种需求有相当长的一段时间保持稳定时,可采用生命周期法来进行系统建设。采用原型法。用第四代工具开发整个应用软件,无需使用程序设计员。2.原型法的基本原理原型法是一种系统分析和设计的技术方法和手段,并由此生成一个系统或子系统的工作模型,原型法允许用户直接参与和定义系统需求分析,并决定系统将如何满足这些需求。在大多数情况下,原型法可以帮助定义那些在系统分析阶段较难确定的系统需求,原型的数量根据系统的规模可多可少,有时多达上百个。精88.2用户开发系统和原型法原型开发过程

屏幕原型I产品利润成本:___产量:__屏幕原型||产品利润部门:___月产量:___月成本:___屏幕原型

|||产品利润部门:___月产量:___月成本:___每月成本:________修改修改精98.2用户开发系统和原型法建立原型系统的基本步骤:明确用户基本信息需求。建立初始的原型系统。使用原型系统,进一步明确用户需求。修改和完善原型系统。精10建立原型系统的步骤建立初始原型用户和分析设计者满意吗?待加工的原型修改和提出原型修改后的原型N明确用户基本需求和应用规模,成本估计第一步初始原型第二步使用原型,进一明确用户需求第三步第四步可应用的原型Y使用此原型作为应用系统开发的依据直接将原型用作应用软件精11本节主要内容面向对象方法了解面向对象方法的基本概念。了解面向对象的分析、设计和编程的基本方法。精128.3面向对象的方法基本概念1.对象在面向对象方法中,对象是最基本的概念。在用户眼中,它相当于现实世界的某类事物。在系统分析员看来,对象则是描述该事物的一组属性数据和作用于这些属性数据之上的操作方法。在程序设计者看来,对象就是一个程序模块及其处理的相关数据的组合。对象把事物的属性和对属性数据的操作方法结合成一个整体。2.消息对象之间进行通信的数据叫做消息,当一个消息发给某个对象时,包含要求接受对象去执行某些活动的信息,接受到消息的对象经过解释,然后予以响应。精138.3面向对象的方法对象的分解图属性(数据)

服务(操作)消息到达消息发出对象注意两个问题:1.对象内部的属性(数据)和服务(操作)的关系如何;2.属性(数据)对于外界是否暴露?精148.3面向对象的方法3.类和类层次一个类定义了一组大体上相同的对象,以各类所包含的操作方法和属性数据描述了一组对象的共同行为和属性。类是在对象之上的抽象,对象是类的具体化,是类的实例。一个类的上层可以有超类,下层可以有子类,形成一种层次结构。且一个类可以有多个超类,也可以有多个子类。类的继承关系AB从A继承继承部分增加部分精158.3面向对象的方法4.继承性(OOP语言区别于其他语言的重要标志之一)继承性是类层次结构中的一个重要特点,是超类和子类之间共享数据和操作方法的机制。一个子类仅有一个父类,则是“单重继承”;如果一个子类有两个以上的父类,则是“多重继承”。5.封装性封装是一种信息隐蔽技术,其目的在于将对象的使用者和设计者分开,使用者不必知道对象行为实现的细节,只须用设计者提供的消息接口来访问对象。6.多态性在收到消息时,对象要予以响应,不同的对象收到同一消息可产生不同的结果,这一现象叫做多态,受继承性的支持。7.动态联编联编是指一个过程调用和响应调用而需执行的代码加以结合的过程。精168.3面向对象的方法面向对象分析(OOA)面向对象分析是面向对象方法在系统分析阶段的应用。面向对象分析应用面向对象中对象与类、属性与服务、继承与封装、基于消息的通信等等概念,在问题空间(问题域)建立以对象为基本单元的系统的逻辑模型。或可表示为:OOA=对象+分类+继承+基于消息的通信面向对象分析的步骤:1.标识对象从何入手确定对象?哪些可以确定为对象?应该考虑哪些内容?哪些对象不应该存在?如何为对象命名目的:为了使系统开发方法中对系统的描述方式同人们对现实世界的认识方式尽可能一致,并且能建立一个稳定的系统模型来反映用户需求和描述问题空间。对象表示图(对象名)(属性)(服务)精178.3面向对象的方法例子:车辆注册与发照管理系统的对象图管理部门办事员车主发照注册车辆精188.3面向对象的方法2.定义结构结构是一种组织方式,在面向对象的分析中,它是指多种对象的组织方式,用来反映问题空间中的复杂事物和复杂关系。分为两种:分类结构:针对的是事物的类别之间的组织关系。组装结构:对应事物的整体与部分之间的关系。交通工具汽车飞机火车分类结构示例(类)(成员)类与成员关系飞机发动机控制系统机身组装结构示例(整体)(部分)整体与部分关系精198.3面向对象的方法3.定义主题在面向对象分析中,主题是一个或者几个对象或类在系统中的共有特征的概要描述。定义主题之后,形成了系统模型的一个新的抽象层次:主题层。定义主题的一般方法:为每一个结构提炼出一个相应的主题。使每一个对象归属一个相应的主题。如果主题的个数超过了7个左右,则进一步提炼主题,即对已有的主题进行归并。主题在分析结果中是一个单独的层次。在这个层次中,每个主题都有一个序号,主题之间的联系是消息联系,它代表了两个主题对应的两组对象和结构之间的所有关联。精208.3面向对象的方法1.管理者2.车主3.法律事务4.车辆车辆注册与发照管理系统的主题层精218.3面向对象的方法4.定义属性与实例连接属性是描述对象或分类结构实例的数据单元。对属性的定义可以分为以下几个步骤:标识属性属性定位属性说明定义实例连接0:11:10:多1:多一个对象的一个实例可以对应于另一个对象的一个实例,也可以不发生连结。一个对象的一个实例必须对应于另一个对象的一个实例。一个对象的一个实例可以对应于另一个对象的多个实例,也可以不发生连结。一个对象的一个实例对应于另一个对象的多个实例。精221X总重注:X表示覆盖的共用属性车辆注册与发照系统的属性层234管理部门名称经理地址电话办事员用户名权限起始日期截止日期车主法定名地址电话法律事务发生的日期和时间车辆车号出产车制造者型号车体类型总重载客数发动机颜色成本里程数发照车号所有权的凭证旧执照发照费注册开始时间截止时间车牌标签注册费轿车卡车现重摩托车拖车X发动机X载客数标准拖车旅行拖车车身号长度精238.3面向对象的方法5.定义服务和消息连接定义服务,首先是定义每一种对象和分类结构所具有的行为(或操作);其次,还要定义对象实例之间必要的通信。通信的基本方式是消息传递,所以说定义通信就是定义实例之间的消息连接。在OOA模型中,对每一种对象或分类结构要考虑的基础服务有3类:发生:包括对实例的增加、变动、删除和选择。计算监控某些OOA模型所特有的。精24注1:消息连接线注2:发生类服务省略车辆注册与发照系统的服务层234管理部门办事员车主法律事务车辆发照注册轿车卡车摩托车拖车标准拖车旅行拖车车身号长度算发照费收发照费算注册费收注册费更新检查精258.3面向对象的方法面向对象设计(OOD)的任务与活动OOD的任务:是在系统分析的基础上,根据系统功能和用户操作使用方面的需求以及技术、经济和运行环境等方面的条件,继续运用面向对象的基本思想与概念,进一步细化、改进和扩展5个层次(主题层、对象层、结构层、属性层与服务层)的模型,以确立系统物理实现的技术方案,即建立系统的物理模型。OOD模型由4个部分和5个层次组成。如下图:主题层对象层结构层属性层服务层人机交互部分问题空间部分任务管理部分数据管理部分(HIC)(PDC)(TMC)(DMC)精268.3面向对象的方法问题空间部分(PDC)的设计PDC的设计策略:采用OOA的表示方法、分析方法和结果,以消除分析和设计的鸿沟,并对OOA的结果进行修改和增补。OOA中的结果加以改进是指:把OOA的结果直接放到PDC中,进行某些必要的修改,细化与扩充,也就是对OOA得出的表示用户需求的模型做必要的调整。人机交互(HIC)的设计人机交互部分突出人如何命令系统以及系统如何向用户提交信息。该部分策略的构成:分类和描述设计命令层设计详细的交互准则根据图形用户界面进行设计精278.3面向对象的方法任务管理部分(TMC)的设计任务是指系统为达到某一个设定目标而进行的一连串数据操作,设立一个任务,就是对一串数据操作进行定义和封装,确定其名称和代码。识别事件驱动任务识别时钟驱动任务识别优先任务和关键任务识别协调者审查任务数据管理部分的设计(DMC)提供了在数据管理系统中存储和检索对象的基本结构,旨在隔离数据管理方法的影响,不管该方法是文件方式、关系方式还是面向对象方式。数据存储设计相应服务的设计精288.3面向对象的方法概述面向对象的程序设计(OOP)的一个基本特征,就是对计算机的体系结构和支撑软件系统没有突的要求,因而它支持现有资源的重用,这样,从经济和社会因素来看,OOP有着明显的优势。例:雇员的定义ClassEmployee{private:char*Name;intAge;public:voidChange(char*name,intage);voidRetire();Employee(char*name,intage);~Employee();};定义了一个雇员类(名称为Employee),其中,Name和Age是数据成员,Change、Retire、Employee、~Employee等是成员函数。精298.3面向对象的方法继承性和类层次结构例:经理类的定义

classmanager:publicemployee{intLevel;public:voidChangelevel(intn);manager(char*name,intage,intlevel);~Manager();};

“经理”这个类是由“雇员”这个类继承而来。人雇员学生在职学习者经理类层次结构定义精308.3面向对象的方法

对象,消息传递和方法对象之间通过消息传递方式进行通信,而一般数据只能被动地由过程来加工,消息传递是一种与通信有关的概念,下面是发送一条消息的典型方式:

send<expression-list>to<destination-designator>

其中,send…to是消息传递通信原语,发送的消息在<expression-list>中,而<destination-designator>则指明了接受方。在两个实体之间通信,其必要条件是至少存在一条信道,并且遵循同一种通信协议。精31本节主要内容计算机辅助设计工程方法了解CASE的主要目标和功能。了解CASE软件平台的构成。了解CASE的硬件平台构成。精328.4计算机辅助软件工程(CASE)概述分析设计实施维护传统的系统开发方法:手工方法和单个工具结合单个工具手工工作精338.4计算机辅助软件工程(CASE)CASE技术是系统开发工具与方法的结合,它不同于以往的开发技术,因为它强调的是解决整个系统开发过程的效率问题,而不仅仅是实施阶段。它的主要目标是:使结构化方法可以全面实施通过自动检查提高软件的质量使原型的建立有了高效率的手段简化系统的维护工作加快系统的开发过程使系统开发人员的精力集中于开创性工作提高软件的可重用度CASE的作用:能实现一个具有快速响应、专用资源和早期查错功能的交互式开发环境。对系统的开发和维护过程中的各个环节实现自动化。通过一个强有力的图形接口,实现了直观的程序设计。精348.4计算机辅助软件工程(CASE)CASE软件平台概述CASE工作站是一个完整的环境,包括硬件和软件两部分,其目的是为软件系统的开发,维护和项目管理提供一个计算计划的辅助手段。CASE软件平台则是一组范围广泛的集成化软件工具,构成了工作站的“软环境”。1个完整的CASE软件平台必须具有以下的功能:图形功能查错功能中心信息库对软件生命周期的全面覆盖支持建立系统的原型代码的自动生成支持结构话的方法论精358.4计算机辅助软件工程(CASE)CASE软件平台图形功能图形功能是CASE软件平台一种非常重要的功能,图形接口的功能越强,用户的软件开发效率就越高。图形实际上是软件模型化的语言,它为软件的描述提供了一种简明的、没有歧义的方法。同时也是软件分析和设计的基础,使用图形建立模型,能够体现不同方法的特点。主要优点:大大加快绘图的过程;实现了标准化;实现了文档生成的自动化等等。查错功能

尽早查出错误是降低软件开发成本的一个行之有效的方法,自动错误检查能帮助开发人员在系统生命周期的较早阶段发现更多的错误。精368.4计算机辅助软件工程(CASE)CASE中心信息库中心信息库是CASE软件平台的核心,是下列功能的基础。系统规格说明的一致性和完整性控制系统信息的共享文档标准化系统文档的生成代码的生成软件的可重用性的控制项目的管理与控制数据元素处理数据记录函数数据存储外部实体数据模型实体模块数据流图商务规则结构图方法规则数据模型图实体关系图屏幕与报告数据图形处理规则CASE中心信息库示意图精378.4计算机辅助软件工程(CASE)对软件生命周期的全面覆盖传统的软件系统生命周期中,强调的是生命周期的后期阶段;而后,人们发现最严重的错误和代价都出现在开发的前期,即将60%的工作量用在分析和设计阶段。分析设计编码测试运行/维护开发阶段实施传统的软件生命周期精388.4计算机辅助软件工程(CASE)创建原型设计规格说明设计检查代码生成系统测试完成的系统自动进行CASE软件生命周期简图引入CASE技术后,更加强调生命周期的前期阶段,分析和设计任务的自动化以及自动的设计规格说明检查带来了更高的效率和更低的错误率。自动查错功能可以在系统开发的早期发现错误并加以纠正。自动代码生成则使编码阶段在生命周期中更加简短。精398.4计算机辅助软件工程(CASE)支持建立系统的原型建立原型的CASE工具屏幕绘图程序报告生成程序菜单建立程序第四代语言可执行的规格说明语言精408.4计算机辅助软件工程(CASE)代码自动生成自动生成的可能是一个框架,也可能是一个完整的程序。在生成1个完整程序的情况下,由设计规格说明自动生成完整的程序及其相关的文档,包括:可执行代码需要访问的数据库/文件(屏幕,映象,数据库/文件描述)屏幕求助信息出错信息用户和程序文挡生成的代码可能是源代码,也可能是目标代码。对结构化方法的支持精418.4计算机辅助软件工程(CASE)CASE硬件平台可供选择的硬件平台独立的工作站。包括一台主机和若干工作站组成的两层结构。包括一台中央主机,中型的部门级或项目级的主机和若干工作站的三层结构。通常,对工作站硬件的选择都要集中考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论