信息系统分析与设计第四章讲课稿_第1页
信息系统分析与设计第四章讲课稿_第2页
信息系统分析与设计第四章讲课稿_第3页
信息系统分析与设计第四章讲课稿_第4页
信息系统分析与设计第四章讲课稿_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

第4章系统(xìtǒng)设计第一页,共48页。2第四章系统(xìtǒng)设计理解(lǐjiě)系统设计的基本概念掌握架构设计掌握持久化设计掌握功能设计掌握界面设计第二页,共48页。面向对象的技术特征该环节为系统实现(shíxiàn)设计出图纸,关注系统实现(shíxiàn)的所有细节细逻辑模,要更多地结合物理实现(shíxiàn)系统(xìtǒng)设计做什么第三页,共48页。4.1.1面向对象的系统设计过程信息系统开发过程主要包括(bāokuò)瀑布式(Waterfall)、迭代式(Iterative)和综合了前两者特点的阶段交付(StagedDelivery)式三种开发模型。4.1系统(xìtǒng)设计概述第四页,共48页。1、瀑布(pùbù)式开发自上而下,环环相扣避免逆向(nìxiànɡ)过程第五页,共48页。2、迭代(diédài)式开发首先,进行子系统划分各子系统过程,力求每一个系统直接进入运行(yùnxíng)状态最后,完成集成。第六页,共48页。3、阶段(jiēduàn)交付式开发瀑布式和迭代式的结合按照瀑布式做系统分析和高层(ɡāocénɡ)系统设计按迭代式完成子系统设计,实施和测试。第七页,共48页。瀑布式:过于理想化,越来越少迭代式:便于分工,便于纠错,频繁的沟通和联系致使既懂沟通,又懂系统分析的人员紧缺(jǐnquē)。阶段交付式:折中策略,由于上述人员紧缺(jǐnquē),就将需求调查和系统分析外包,导致了此种方式的出现。三种方式(fāngshì)的比较第八页,共48页。值得注意的是要避免实际开发过程中的一种“伪迭代式”开发模型。两种最常见的伪迭代症状:①整个开发过程经历了若干次系统分析迭代,若干次系统设计迭代,……,。②经过(jīngguò)多次迭代,得到了接近完工的产品,只差最后的测试。第九页,共48页。两种伪迭代(diédài)式的开发模型第十页,共48页。P994.1.2标题下的一段1、类的物理结构,类间联系(核心是上一章(yīzhānɡ)的那个模型?)2、数据库的物理设计、输入输出设计3、方案评价4.1.2功能设计的基本(jīběn)任务第十一页,共48页。具备计算机知识和软件开发经营(jīngyíng)能力,又懂系统分析和系统设计知识。系统分析员在系统设计中不承担主要任务,但是负责对设计结果的评审和修正。4关于(guānyú)系统设计员第十二页,共48页。系统功能设计需要考虑以下几个方面的问题1、寻找到合适的对象(P100第二段)2、决定对象的粒度(P100小标题)同样一个(yīɡè)系统,两个设计师给出两种设计。第一个设计有5个类,第二个25个类。这样平均起来每个类所含有的代码行数就有很大的区别,第一种设计中的代码行数平均是第二种设计的5倍。第一种设计是粗粒度的,第二种设计是细粒度的。3、确定对象的接口4.1.2功能设计的基本(jīběn)任务第十三页,共48页。总体的原则是出了问题不要滞留,尽早解决。1、正确性(原分析阶段的业务逻辑是否(shìfǒu)可以正确执行)2、完整性(结构完整和组成部分)3、可靠性(可靠的系统设计工具)4、类设计的合理性5、接口定义严谨(能私有的不要公有)6、图表文档完备4.1.3功能设计的评价(píngjià)标准第十四页,共48页。4.1.4系统设计的步骤及工作(gōngzuò)产品第十五页,共48页。4.2.1系统架构简介1、系统架构的概念系统架构一般特指系统的软件架构(SoftwareArchitecture),也被称作软件体系结构,是有关软件整体结构与组件的抽象(chōuxiàng)描述,用于指导大型软件系统各个方面的设计。但是实际是一种比较形象的描述系统组成的直观图。4.2系统(xìtǒng)架构设计第十六页,共48页。系统(xìtǒng)架构的变迁应用程序和数据(shùjù)的分离表述层和业务逻辑的分离第十七页,共48页。P103表述层:提供人机交互界面(GUI)业务(yèwù)逻辑层:实现各种业务(yèwù)逻辑(比如身份验证)数据库:提供数据第十八页,共48页。2、物理(wùlǐ)分层和逻辑分层P(104)硬件分层系统(xìtǒng)逻辑分层第十九页,共48页。3、软件分层的特征①层与层之间应该存在且只能够存在自上而下的依赖关系②每层只对上层公开接口,把实现细节封装起来,不为外界所知(suǒzhī),即所谓的“透明”③同层组成部分之间应该存在内在的逻辑联系,不要把与本层业务关系较弱的程序包含进来第二十页,共48页。4、分层的优缺点①易维护(当需求发生变化时,只做较小的修改甚至是不修改,就能适应)②可扩展性(增加新的功能,层数越少调整越大)③可重用性(系统中一个模块的重用性)⑤高安全性(层间设立安全机制)④可伸缩性(实际是建立和维持(wéichí)的关系)第二十一页,共48页。建立一个数据库连接是一件非常耗时(消耗时间)耗力(消耗资源)的事情。之所以会这样,是因为连接到数据库服务器需要经历几个漫长的过程:建立物理通道(例如套接字或命名管道),与服务器进行初次握手,分析连接字符串信息,由服务器对连接进行身份验证,运行检查以便在当前事务中登记等等。

连接池就是这样一个容器:它存放了一定数量的与数据库服务器的物理连接。因此(yīncǐ),当我们需要连接数据库服务器的时候,只需去池(容器)中取出一条空闲的连接,而不是新建一条连接。这样的话,我们就可以大大减少连接数据库的开销,从而提高了应用程序的性能。数据(shùjù)池原理第二十二页,共48页。软件分层并非百利而无一害,分层的缺点主要(zhǔyào)包括①过度分层将导致系统运行效率下降(用空间换时间)②分层导致系统设计愈发复杂③运行调试困难④不适合小系统第二十三页,共48页。24逻辑(luójí)架构软件系统中元件之间的关系,比如用户界面(yònɡhùjièmiàn),数据库,外部系统接口,商业逻辑元件等等。第二十四页,共48页。25逻辑(luójí)架构第二十五页,共48页。26逻辑(luójí)架构问题,本书的会员卡管理系统,如果设计逻辑(luójí)模型应该是怎样的?第二十六页,共48页。27物理(wùlǐ)架构软件元件是怎样放到硬件(yìnɡjiàn)上的下图是一个蓝电变电站信息管理系统解决方案中,就使用了C/S与B/S混合结构的方式,其物理构架如下。第二十七页,共48页。28物理(wùlǐ)架构第二十八页,共48页。第二十九页,共48页。双层架构的典型代表是C/S架构三层架构的典型代表是B/S架构基于B/S架构的信息系统开发中最常采用的是MVC(Model-View-Controller,模型—视图(shìtú)—控制器)架构模式模型:数据提取和处理(并不是数据持久层)试图:以恰当的形式呈现数据,与用户交互。控制器:控制应用程序流程,协调模型的切换。4.2.2系统(xìtǒng)架构的选择第三十页,共48页。书的107页(1)-(5)。不要与三层构架混淆,不适合小型(xiǎoxíng)系统第三十一页,共48页。第三十二页,共48页。系统架构的配置应在系统总体架构确定后应尽快加以明确。系统架构的配置决定了后续开发过程中软硬件资源的分布和配比(pèibǐ),也可能根据给定的软硬件资源确定具体采用哪种架构。B/S架构的配置(一般至少两台服务器,数据服务器和web服务器)C/S架构的配置(至少一台数据服务器)4.2.3系统(xìtǒng)架构的配置第三十三页,共48页。系统I/O设计包括两方面内容:一是与用户交互与界面设计,二是业务数据(shùjù)的存储设计,后者在面向对象开发中集中体现为对象的持久化问题。4.3系统(xìtǒng)I/O设计第三十四页,共48页。C/S架构的界面设计比较简单,比如使用VisualStudio拖拽和可视化控件结合少量代码实现(shíxiàn)。将数据库和数据库管理系统置于服务器,在局域网客户端安装应用程序即可。B/S架构必须借助于web浏览器,把信息系统设置在服务其上打开,客户端可以在浏览器中输入特定网址,来访问信息系统。借助一些特定的语言,比如Asp,Jsp等等。第三十五页,共48页。显示:在用户界面上画出按钮图形(túxíng)。事件的触发:生成按钮点击事件。事件的响应:响应按钮点击事件并且做出某种操作。业务处理:进行实际的计算。第三十六页,共48页。对象持久化考虑如何将运行系统中的业务数据永久保存。业务对象在内在中无法永久保存,要么导出数据文件,要么存入数据库,否则就会丢失。并非所有对象都需要(xūyào)保存,保存什么主要取决于你的数据建模。4.3.2对象(duìxiàng)的持久化(❤P113❤)第三十七页,共48页。系统功能设计包括系统实体对象设计、系统流程(liúchéng)对象设计和系统交互设计三部分。4.4系统(xìtǒng)功能设计第三十八页,共48页。实体对象设计的基本思路是在关系(guānxì)数据库表字段和实体对象属性之间建立映射关系(guānxì)。关于数据冗余:冗余的好处的是可以实现一定程度的备份,缺点却是可能会导致插入、删除和更新存在异常。4.4.1系统实体对象(duìxiàng)设计第三十九页,共48页。一个实体对象可以(kěyǐ)对应一个数据库表,也可以(kěyǐ)对应数据库表的一部分,还可以(kěyǐ)是几个数据库表连接查询后返回的数据集合,即实体对象应该是整个数据模型的某个子集。具体参见(p117,1-4)4.4.1系统实体(shítǐ)对象设计第四十页,共48页。实体类的合并,大类可以包含小类,但是如果两个类逻辑比较远可以不合并,制造必要的冗余。某些实体类可能是在流程对象和交互对象设计中发现的,这时需要检查其是否能映射回数据表。所有实体类放在同一(tóngyī)包中,命名遵守一定规则。4.4.1系统(xìtǒng)实体对象设计第四十一页,共48页。系统流程指的是系统的业务流程,系统流程设计是对系统分析阶段成果的进一步完善和补充,也是按照整个系统架构设计思路,从物理实现的角度对系统设计进行新的分解和拓展。系统流程对象设计按照以下两个步骤进行:第一步:换名。第二步:对类中的方法进行处理(chǔlǐ)。这一步远比第一步复杂得多,包括以下内容:4.4.2系统流程对象(duìxiàng)设计第四十二页,共48页。①去除不可实现的方法。②增加功能实现必须(bìxū)的方法。③改变方法作用域。④为方法增加参数。⑤改名。第四十三页,共48页。①去除不可实现的方法。②增加(zēngjiā)功能实现必须的方法。③改变方法作用域。④为方法增加(zēngjiā)参数。⑤改名。第四十四页,共48页。P112图4-12——会员开管理功能页面P122调整之后发生的变动流程减少和代码(dàimǎ)重用(P121第三段)消息参数举例(j

温馨提示

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

评论

0/150

提交评论