首页 > 其他分享 >《需求分析与系统设计》阅读笔记03

《需求分析与系统设计》阅读笔记03

时间:2023-12-24 19:44:07浏览次数:27  
标签:03 阅读 映射 对象 数据库 笔记 测试 类型 模型

 从第八章《数据库设计》中总结了一下知识内容:类模型和BCED类包反映了应用类,而不是存储数据库结构,实体类表示了应用中的永久数据库对象,但不是数据库中的永久类;永久数据库层可以是关系数据库,对象关系数据库或者对象数据库;数据库模型是表示数据库结构的这种抽象,包含三种抽象,分别是:外部数据模型,逻辑数据模型和物理数据模型;数据库包并不能导出数据库模型,它是由数据库建模导出来的。应用和数据库之间的映射,由数据库包负责,可能是错综复杂的问题,映射的困难有两个:数据库的存储结构对面向对象范例做不了什么,其次数据库几乎都不是为单个应用设计的。对象数据库管理系统的最大目的是进行数据库与应用程序设计语言的透明式集成,其建模语言是对象和文字,每个对象都有一个OID,文字没有OID,其值是它的标识符;ODB一个主要的好处是在于对文字和对象类型的内部支持,这使得ODB成为面向对象IS开发的自然的实现平台,其支持关联和泛化关系(聚合通过强制关联来支持);ODMG对象模型定义了两种泛化关系:即ISA(相当于对接口的继承)和EXTENDS关系(相当于实现继承);ODBMS配有内部操作来支持文字和对象类型;ODB的任务是为面向对象模型建立一个面向对象实现,可以映射实体类,关联,聚合和泛化。对象关系数据库组合了老式关系模型和新式对象模型,其表中的列可以取内部或用户定义类型作为它的值;对象表是具有一列或多列的列的集合;行类型允许表可以甚至不需要使用结构化类型或集合就有相对复杂的内部结构;结构化类型可以用来定义引用类型;映射不是针对抽象的SQL标准来做的,而是针对实际的ORDB来做的;RDB模型中主要建模语言是由列组成的关系表,其不支持对象类型,结构化类型,集合和引用;关系数据库用一个列或行的表来定义数据;一个关系表用其列的固定的集合来定义;RDB模型利用引用完整性约束来维护表之间的关系;规则和描述性引用完整性约束支持在数据库中定义简单的业务规则;关系视图是一个被存储和命名的SQL查询;关联到RDB的映射涉及表之间使用引用完整性约束;触发器可以用来对从隐含在UML类模型中的业务规则中捕捉出来的语义进行编程,范式化会进一步影响这个映射。

      从第九章《程序和事务设计》中学到了以下内容:设计良好的程序要最大化类的内聚同时要最小化类的耦合;遵循Demeter法则就是在类方法内用于指向对象的消息,那么耦合和内聚的原理就可以实现;存取程序方法的过度使用会产生不用思考的类;混合实例的内聚,虽然不是想要的,可能偶尔还是需要的,因为程序设计环境不支持动态分类;当设计C/S合作时,需要考虑SQL接口的五个层次,第五层SQL允许用户直接对数据库编程;存储过程和触发器严重影响了程序设计的服务器方面;程序导航图扩展了窗口导航图以包含数据库方面的考虑。事务是数据库工作的逻辑单元,它开始于一个一致的数据库状态,并保证它在结束时也是一个一致的状态;事务保证数据库并发和数据库恢复;传统的数据库应用要求短事务,一些新的数据库应用则用长事务来工作。双向工程是设计模型和程序处于同步的过程,但它们可以各自进化;双向工程组合了从设计模型出发的前向工程和从程序出发的逆向工程;双向工程一般独立适用于客户机程序和数据库程序。

     从第十章《测试和变化管理》讲述了以下主要内容:测试分为系统服务测试和系统约束测试两种;系统服务测试可以是基于非执行的或基于执行的;基于非执行的测试包括走查和检查;而基于执行的测试可以是针对规格说明的测试或针对代码的测试。系统约束的测试包括大量完全不同的测试,它们关系到像用户界面,数据库,授权,性能,压力,故障。配置以及安装等,它是与系统服务测试并行进行的,另外一些则是独立完成的。测试和变化管理要求特定的文档,如测试计划,测试用例文档,故障和改进项目文档等;测试需求在测试文档中标识,并且被链接到用例文档中的用例需求。变化请求一般要么是故障要么是改进;一个变化管理工具用于变化请求的提交并保存它的轨迹,就跟开发者对待它一样;变化管理工具的关键部分关系到建立变化请求和其他系统制品,特别是测试需求和用例需求之间的可跟踪路径。

标签:03,阅读,映射,对象,数据库,笔记,测试,类型,模型
From: https://www.cnblogs.com/2351920019xin/p/17924767.html

相关文章

  • 【阅读笔记】图像增强-《Efficientcontrast enhancement using adaptive gamma correc
    2013年发表在TIP上的对比度增强算法AGCWD(Efficientcontrastenhancementusingadaptivegammacorrectionwithweightingdistribution)提出了一种自动映射技术,通过亮度像素的伽马校正和概率分布来提高调暗图像的亮度。为了增强视频,所提出的图像增强方法使用关于每帧之间差异的时......
  • 读书笔记
    第一章概述一.软件工程概念的提出1968年NATO(NorthAtlanticTreatyOrganization,北大西洋公约组织)会议首次提出“软件工程”概念。软件工程是为了解决开发成本效益和软件质量的问题而产生。二.软件1.什么是软件?《IEEEStandardGlossaryofSoftwareEngineeringTerminol......
  • 阅读习惯2
    在本学期,我的阅读时间增加了97小时,读完了3本书,做了57条笔记。通过阅读,我对各个领域的知识有了更广泛的涉猎,这有助于拓宽我的视野,提升综合素养。每本书都是一个新的世界,通过阅读可以接触到不同的思想、文化、历史和各种主题。我发现在阅读过程中,标注陌生词语并提出对于一些......
  • 讲解'utf-8' codec can't decode byte 0xb6 in position 34: invalid start byte
    讲解'utf-8'codeccan'tdecodebyte0xb6inposition34:invalidstartbyte在编程过程中,我们经常会遇到各种编码和解码的问题。其中一个常见的错误是'utf-8'codeccan'tdecodebyte0xb6inposition34:invalidstartbyte。这个错误表示在使用utf-8编码解码时,无法解......
  • Linux课程笔记
    Linux基础命令Linux的目录结构/,根目录是最顶级的目录了Linux只有一个顶级目录:/路径描述的层次关系同样适用/来表示/home/itheima/a.txt,表示根目录下的home文件夹内有itheima文件夹,内有a.txtls命令功能:列出文件夹信息语法:ls[-l-h-a][参数]参数:被查看的文件夹,不提......
  • 阅读习惯2
    请补全这个体会本学期开始时我的阅读量大约在50小时左右,通过这一学期读电子书,我的阅读时长为200小时,大约增加了150小时,在这150小时中,我每天会抽出半个小时来读书,这其中包括课外书和娄老师推荐的书目,比方说《这才是心理学》,目前在书架上的书有四本,在每天坚持读书后,我发现我可以更......
  • 需求分析与系统设计阅读笔记
    软件过程一个过程模型:声明了所执行活动的次序详细说明要交付哪些开发的人工制品,以及什么时候交付将活动和人工制品分配给开发者提供用来监控项目进展、评估结果和规划未来项目的标准软件过程不易被标准化。现代软件开发过程总是迭代和增量的。迭代:在连续的迭代中增加细......
  • 阅读笔记10
    《代码大全》(作者:SteveMcConnell)书籍概要:SteveMcConnell的《代码大全》是一本致力于软件构建过程中的实际编码技术的经典之作。从代码的命名规范到代码布局,再到重构和调试技巧,书中提供了许多实用的编程建议。阅读笔记:有意义的命名:书中强调了良好的命名规范对于代码可读性的重......
  • 阅读习惯
    一、目前的读书数据微信读书截至2021年12月24日,本学期微信读书共50小时6分钟。实体书阅读截至2021年12月24日,本学期共读完6本实体书。二、阅读收获及感悟       本学期是我第一次接触电子书,在此之前,我一直是实体书阅读,并一直保有阅读习惯,每年大约可读完三十本(长......
  • iic学习笔记
    一、简介由飞利浦主导开发的片间互联协议。iic通信使用三线(sdascl以及gnd,不包括电源线),极大程度上减少了对ic的io口的占用。同时iic支持多主机以及多从机,方便了程序的设计。二、协议层简介在iic总线上scl的电平决定了整条iic总线的有效性。当scl出于高电平时,主机与从机可以侦......