《第6章信息系统与数据库.ppt》由会员分享,可在线阅读,更多相关《第6章信息系统与数据库.ppt(103页珍藏版)》请在三一文库上搜索。
1、第6章 信息系统与数据库,6.1 计算机信息系统 什么是计算机信息系统 计算机信息系统 的类型,什么是计算机信息系统 (1),计算机信息系统(Computer_based Information System ,简称信息系统)是一类以提供信息服务为主要目的的数据密集型、人机交互的计算机应用系统。 4个主要技术特点:, 数据量大, 一般需存放在外存中 数据长久持续有效(持久性) 数据共享使用(共享性) 提供多种信息服务(功能多样性) (管理,检索,分析,决策等).,计算机信息系统 的类型 (1),从信息处理的深度来区分信息系统, 基本可分为3大类:,业务处理系统 信息检索系统 信息分析系统,管理
2、业务系统 辅助技术系统 办公信息系统,计算机信息系统 的类型 (2),业务处理系统,由于在企事业单位中,不同层次的业务处理系统服务对象不同,因而可以进一步将划分.,管理业务系统 辅助技术系统 办公信息系统,计算机信息系统 的类型 (3),管理业务系统 辅助技术系统 办公信息系统,面向操作层次 面向管理层次,业务处理自动化, 提高工效率和质量 . 划分:,按业务层次进一步划分,业务处理系统,计算机信息系统 的类型 (4),业务处理系统 管理业务系统 辅助技术系统 办公信息系统,又称OA,以先进设备与相关技术构成服务于办公事务的信息系统,按工作流技术充分利用信息资源,提高协同办公效率和质量,辅助技
3、术人员在特定应用领域(如工程设计、音乐制作、广告设计等)内完成相应的任务. 诸如:.CAD,CAM,CAPP等,计算机信息系统 的类型 (5),业务处理系统 信息检索系统 信息分析系统,一种高层次的信息系统,为管理决策人员掌握部门运行规律和 趋势,制订规划、进行决策的辅助系统。 例如: 决策支持系统(DSS),专家系统 等,将原始信息进一步处理并存储专门供检索用的DB中。用户检索匹配获得信息. 例如: 中国科技文献库、专利数据库、学位论文数据库,DIALOG、ORBIT以及WE检索系统等.,第6章 信息系统与数据库,6.2 关系数据库系统 数据库管理的发展 数据库系统的组成和特点 关系数据模型
4、(结构.完整性.操作) 关系数据库语言SQL 关系数据库系统以应用新技术,6.2.1 数据库系统概述,1.数据库管理技术的发展 人工管理阶段(50年代中期以前 ) 背景: 计算机主要用于科学计算 数据量小、结构简单,如高阶方程、曲线拟和等 外存为顺序存取设备 磁带、卡片、纸带,没有磁盘等直接存取设备 没有操作系统,没有数据管理软件 特点 数据依附应用程序 数据独立性差 数据不能共享,6.1.1数据库管理技术的发展,文件管理阶段(50年代后期-60年代中期),特点 数据独立性差 数据冗余度大 数据处理效率低 数据是孤立的,背景 计算机不但用于科学计算,还用于管理 外存有了磁盘、磁鼓等直接存取设备
5、 直接存取设备(DASD) 无须顺序存取 由地址直接访问所需记录,6.1.1数据库管理技术的发展,数据库管理管理阶段20世纪60年代以来,背景 计算机管理的数据量大,关系复杂,共享性要求强(多种应用、不同语言共享数据) 外存有了大容量磁盘,光盘软件价格上升,硬件价格下降,编制和维护软件及应用程序成本相对增加,其中维护的成本更高,力求降低,6.2.2数据库系统的特点,数据库系统的特点 数据结构化。 数据可共享 数据独立于程序 统一管理控制数据,DBMS管理控制数据功能: 安全性,完整性.并发控制,恢复.,从全局分析和描述数据,适应多个用户、多种应用共享数据的需求。可减少数据冗佘,节省存储空间,保
6、证数据的一致性.,数据面向全局应用,用数据模型描述数据和数据之间的联系。,逻辑独立性:应用程序与DB的逻辑结构相互独立. 物理独立性:应用程序与DB的存储结构相互独立.,6.2.3数据库系统组成,数据库系统组成 指具有管理和控制数据库功能的计算机系统,它一般由计算机支持系统、数据库、数据库管理系统和有关人员组成。 计算机支持系统(硬件、软件) 数据库(DB) 数据库管理系统(DBMS) 数据定义(DDL) 数据存取(DML) 数据库管理功能 应用程序 人员 数据库管理员(DBA) 系统分析设计员、系统程序员、用户,数据模型,数据模型的基本概念 数据模型是对现实世界数据特征的抽象,是用来描述数据
7、的一组概念和定义。 概念模型可以按用户观点准确地模拟应用单位对数据的描述及业务需求,即对应用数据和信息建模。目前,常用E-R方法来建立概念模型。 数据模型用严格的形式化定义来描述数据的结构特点和结构约束,包括数据静态特性和数据动态特性。,概念模型和E-R图,2.概念模型和E-R图 术语: 实体 属性 实体主键 联系 一对一 一对多 多对多,实体型1,联系名,实体型2,1,1,一对一,实体型1,联系名,实体型2,m,n,多对多,实体型1,联系名,实体型2,1,n,一对多,班级和班长的联系,班级和学生的联系,课程和学生的联系,概念模型和E-R图,概念模型和E-R图,2.概念模型和E-R图 E-R图
8、:,注:矩形表示实体,椭圆表示属性,数据模型 (续),在常见的数据库系统中,根据实体集之间的不同结构,通常把数据模型分为层次模型、网状模型、关系模型和面向对象模型4种。 关系模型:用二维表结构描述客观事物及其联系 层次模型:用树形结构描述客观事物及其联系 网状模型:用网状结构描述客观事物及其联系 面向对象模型:用更接近人的思维方式描述客观事物及其联系,国内DBS普遍采用关系模型(95%以上),课程介绍关系模型.,关系数据模型,关系数据模型描述数据的逻辑结构3要素: 数据结构 (重点介绍) 数据完整性 (参阅教学指导书) 数据的操作 (重点介绍),关系模型的数据结构,为什么当今大多数DBMS都支
9、持关系数据模型?,当今大多数DBMS都支持关系数据模型,关系数据模型建立在严 格的数学理论基础上: 集合论的“关系概念”,概念清晰,简洁,用统一 的结构表示数据对象和它们 之间的联系.,关系模型的数据结构 (续),关系数据模型的基本结构是关系。 在用户观点下,关系数据模型中数据的逻辑结构是一张二维表(Table),它由表名、行和列组成。 表的每一行称为一个元组(Tuple), 每一列称为一个属性(Attribute)。 例如,例表1.学生登记表(S):,关系模型的数据结构 (续),例表2 .课程开设表 (C):,关系模型的数据结构 (续),例表3. 学生选课成绩表 (SC):,关系数据模型(结
10、构) (续),学生登记表(S),课程开设表(C)与学生选课成绩表之间的联系:,关系数据模型(结构) (续),数据库中数据的逻辑结构(二维表)纵观示意图:,存储模式,关系数据模型(结构) (续),关系数据模式:,数据的关系模型结构就是二维表结构,3张二维表分别是数据对象 “学生(S)”、 “课程开设(C)” 和其联系“学生选课成绩(SC)” 的反映,这种用关系数据模型 对一个具体单位中 客观对象及其联系 的结构描述,称为 关系数据模式 (简称:关系模式),关系数据模型(结构) (续),关系模式的描述形式: 其中:R为关系模式名,即二维表名。 Ai(1in)是二维表中的列名。,或者: R =(A1
11、,A2,Ai,An),R(A1,A2,Ai,An),关系数据模型(结构) (续),.,上述数据对象(S和C)以及数据对象之间的联系(SC) 表示成关系模式分别为:,S (SNO,SNAME,DEPART,SEX,BDATE,HEIGHT) C (CNO,CNAME,LHOUR,SEMESTER) SC(SNO,CNO,GRADE),关系数据模型(结构) (续),这3个关系模式也可以用汉字定义为:,学生 (学号,姓名,系别,性别,出生日期,身高) 课程 ( 课程号,课程名,学时,开课时间) 选课成绩 (学号,课程号,成绩),关系数据模型(结构) (续),关系模式(即二维表)主键: 能够唯一标识二
12、维表中指定元组的属性或者属性组(这组属性的任何真子集无此性质),称为该二维表的候选键. 如果一个关系模式有多个候选键存在,则可从中选一个最常用的作为该关系模式主键,简称主键.,候选键: (学号) (姓名,出生年月) 主键: (学号),关系数据模型(结构) (续),例如: 学生登记表中的学生有下列属性(列):学号,姓名,系别,出生年月等,则学号可作为候选键,用它来标识一个学生。因学生可能有重名,因而姓名不能作为候选键;但若学生的出生年月不同,则也可用属性组(姓名,出生年月)作为候选键,必须再从这两个候选键中选其一(如学号)作为学生登记表的主键。,关系数据模型(结构) (续),基本术语的对照: 关
13、系模型中的术语来自关系数学,与程序员 和用户的习惯说法是相对应的.,关系模型的存储结构 在关系数据模型中,数据对象和数据对象之间的联系都用二维表来表示。在支持关系模型的数据库物理组织(即存储结构)中,二维表以文件形式存储。在大多数数据库中,二维表与操作系统中的文件相对应。,关系数据模型(结构) (续),DB,文件,文件,文件,关系数据模型(结构) (续),关系数据模型是1970年由(美)E.F.Codd首次提出的。关系数据库得以迅速发展和普遍应用,主要得力于关系数据模型所具有的下列特点: 关系模型建立在严格的数学理论基础上 关系数据模型的概念单一 对二维表的操作是“非过程性”,集合论的关系概念
14、,数据对象和联系都是二维表。对二维表的操作结果也是二维表。,存取路径对用户透明,简化了程序员的编程工作;数据独立性和安全性好,E.F.Codd-关系数据库之父亲,关系数据模型(结构) (续),特别提示: 严格地说明,关系是一种规范化二维表中行的集合。在关系数据模型中,对每个关系还作了如下限制: 每一个列对应一个域,列名不能相同.。 关系中所有的列是原子数据 (原子数据是不可再分的) 关系中不允许出现相同的行 (即不能出现重复的行) 关系是行的集合,行的次序可以交换。 (按集合的性质) 行中列的顺序可以任意交换。(按集合的性质,但使用按定义顺序),关系数据模型(结构) (续),特别提示: 数据模
15、型和模式是有区别的。 数据模型:用一组概念和定义描述数据的手段, 数据模式:用某种数据模型对具体情况下相关数据 结构的描述。 具体地说,关系模式是以关系数据模型为基础,综合考虑了用户的需求,并将这些需求抽象而得到的逻辑结构。因而不应将关系数据模型和关系模式相混淆, ( 正象不应把高级语言和用高级语言编写的程序模块混为一谈一样,应注意它们在概念上的差异 ),关系数据模型(结构) (续),特别提示: 关系模式:反映了二维表的静态结构,是相对稳定的。 关系:是关系模式在某一时刻的状态,它反映二维表 的内容,由于对关系的操作不断更新着二维表 中的数据,因此关系是随时间动态变化的。 但在一般表述中,人们
16、常常将关系模式和关系都称为关系,实际上对此二者应加以科学的区分。,关系数据模型(操作),在关系数据库中,通常可以定义一些操作来通过已知的关系(二维表)创建新的关系(二维表)。最常用的关系操作有: 并 插入 交 更新 差 删除 笛卡尔积 选择 除 连接 投影,专门的关系操作,传统集合的关系操作,关系数据模型(操作),举例用例(5张二维表):,SC1:60-80分成绩表,SC2:70-100分成绩表,关系数据模型 (传统集合的关系操作),并 并操作是一个二元操作。它要求参与操作的两个关系有相同的关系模式。其作用是将两个关系组合成一个新的关系。根据集合论的定义,并操作创建的新关系中的每一个元组或者属
17、于第一个关系、或者属于第二个关系,或者在两个关系中皆有。,结果关系表示选课程学生的“60100分成绩表”,关系数据模型 (传统集合的关系操作),交 交操作也是一个二元操作。它对两个具有相同关系模 式的关系进行操作,创建一个新关系。根据集合论的定义, 交操作所创建新关系中的每一个元组必须是两个原关系中 共有的成员。,结果表示选课学生“70分80分成绩表”。,关系数据模型 (传统集合的关系操作),.,差 差操作也是一个二元操作。它应用于具有相同关系模式的两 个关系。生成新关系中的元组是存在于第一个关系而不存在于 第二个关系中的元组。 例如,关系SC1与关系SC2进行差操作:,结果关系包括那些在SC
18、1表中而不在SC2表中的成绩信息,即“60 69分成绩表”,关系数据模型 (传统集合的关系操作),差 (续) 在集合操作中,“并”和“交”具有交换律的性质,而“差”操作没有 交换律的性质. 例如,关系SC2与关系SC1进行差操作:,结果关系包括那些在SC2表中而不在SC1表中的成绩信息,即“81 100分成绩表”,SC2,SC1,差,SC1SC2=SC2SC1 SC1SC2=SC2SC1 SC1SC2SC2SC1,关系数据模型 (专门的关系操作),插入 插入操作是一种一元操作。它应用于一个关系,其操作是在关系中插入新的元组(或另一个具有相同模式的关系). 例如:在课程开设表(C)中插入一个新的
19、课程信息 (CW101,论文写作,30,春)。,关系数据模型 (专门的关系操作),删除 删除操作为一元操作。它根据要求删去表中相应的元组。 例如:从课程表(C)中删除课程CC112。,关系数据模型 (专门的关系操作),更改 更改操作也是一种一元操作,它应用于一个关系。用来改变关系中指定元组中的部分属性值。 例如:课程开设表(C)中的课程ME234元组的LHOUR值由“40”改为“30”,SEMESTER值由“秋”改为“春”。,关系数据模型 (专门的关系操作),选择 选择操作是一元操作。它应用于一个关系并产生另一个新关系。新关系中的元组(行)是原关系中元组的子集。选择操作根据要求从原先关系中选择
20、部分元组。结果关系中的属性(列)与原关系相同(保持不变)。 例如:从学生登记表(S)中,选出性别为“男”的学生元组,组成一个新关系“男学生登记表”。,关系数据模型 (专门的关系操作),投影 是一元操作,它作用于一个关系并产生另一个新关系。新关系中的属性(列)是原关系中属性的子集。在一般情况下,虽然新关系中的元组属性减少了,但其元组(行)的数量与原关系保持不变。 例如:需要了解学生选课情况而不关心其成绩时,可对学生选课成绩表(SC)进行相关的投影操作. 。,其结果的每个元组仅包括学(SNO) 课程号(CNO) 两个属性,关系数据模型 (专门的关系操作),连接 是一个二元操作。它基于共有属性把两个
21、关系组合起来。连接操作比较复杂并有较多的变化。 例如:学生登记表(S)和学生选课成绩表(SC)的连接,生成一个信息更全面的关系.,对于已选课程的学生而言,结果关系包含SC表原来的信息,并增加了该学生选修课程号(CNO)和成绩(GRADE)。,关系数据模型 (关于“关系代数”的操作),对于以上所介绍的关系操作,在理论上均可用一种称之“关系代数”的逻辑运算来表示.,参阅第6章阅读材料6.5,设有关系R和关系S,关系代数的操作有:,关系数据库语言SQL,数据库语言 以上讨论的关系操作,比较直观地说明了其对二维表运算的含意(数学上对关系操作的抽象描述是“关系代数”)。在此基础上,关系数据库管理系统必须
22、配置与此相应的语言,使用户可以对数据库进行各式各样的操作,这就构成了用户和数据库的接口。由于DBMS所提供的语言一般局限于对数据库的操作,不同于计算机的程序设计语言,因而称它为数据库语言.,DB,数据库语言 程序,用户,关系数据库语言SQL,关系数据库语言SQL特点 是一种“非过程语言” 体现关系模型在结构,完整性和操作方面的特征 有命令和嵌入程序两种使用方式 功能齐全,简洁易学,使用方便 为主流DBMS产品所支持,用户只要指出“做什么”,而“如何做”的 过程由DBMS完成.,命令式:直接用语句操作 嵌入式:将语句嵌入程序,ORACLE,MS-SQL Server,Sybase DB2,(Ac
23、cess,VFP有接口),关系数据库语言SQL,关系数据库语言SQL 3级体系结构,用户看到的关系模式主要是视图,系统的全局关系模式是基本表,系统的存储结构是文件,关系数据库语言SQL,SQL数据定义语言DDL 作为建立数据库最重要的一步,根据关系模式定义所需的基本表,SQL语句表示为: 其中: 表示可含有该子句,也可为空. 基本表名字. 每个基本表可以由一个或多个列组成。 定义基本表时要指明每个列的类型和长度,同时还可 以定义与该表有关的完整性约束条件,,CREATE TABLE (列名数据类型完整性约束条件,),关系数据库语言SQL,DDL例: 按照关系模式S,定义学生基本表的SQL语句:
24、,执行语句后,在数据库建立一个学生表S的结构,CREATE TABLE S (SNO CHAR(4) , (类型为定长字符串) SNAME VARCHAR(8)(类型为变长字符串,串长为8) DEPART VARCHAR(12), SEX CHAR(2) BDATE DATE, (类型为日期型) HEIGHT DEC(5,2), (类型为5位十进制数,小数点后2位) PRIMARY KEY(SNO);(指明SNO为S的主键),关系数据库语言SQL,SQL的数据查询 查询是数据库的核心操作。SQL提供SELECT语句,具有灵活的使用方式和极强查询的功能。关系操作中最常用的是“投影、选择和连接”,
25、都体现在SELECT语句中: SELECT A1,A2,An FROM R1,R2,Rm WHERE F SELECT语句语义为:将FROM子句所指出的R(基本表或视图)进行连接,从中选取满足WHERE子句中条件F的行(元组),最后根据SELECT子句给出的A(列名)将查询结果表输出。,指出目标表的列名,相应于“投影”,指出基本表或视图,相应于“连接”,F为“选择”操作的条件,关系数据库语言SQL,单表查询 从指定的一个表中找出符合条件的元组. 例如,查询所有男学生名的情况.,SELECT * FROM S WHERE SEX男;,关系数据库语言SQL,连接查询 一个查询同时涉及两个以上的表,
26、称连接查询。是关系数据库中最主要的查询。例如,查询每个男学生及其选修课程的情况。要求列出学生名,系别,选修课程名及成绩。 SELECT SNANE,DEPART,CNAME,GRADE FROM S,C,SC WHERE S.SNOSC.SNO AND SC.CNOC.CNO AND S.SEX男;,查询涉及S、C和SC三个表, S和SC表通过SNO作连接 ,C和SC表通过CNO来实现连接,关系数据库语言SQL,SQL的数据更新 SQL提供了插入数据、更改数据和删除数据的3类语句。 (1) 插入语句 插入语句INSERT可将一个记录插入到指定的表中: 例如,将一个新的课程记录插入到课程开设表C
27、中:,INSERT INTO (,) VALUES(,),INSERT INTO S(CNO,CNAME,LHOUR,SEMESTER) VALUES(CW101,论文写作,30,春),关系数据库语言SQL,(2)更改语句 对指定表中已有数据进行修改。语句格式如下: 其功能是修改指定表中满足WHERE子句条件的记录,其中SET子句给出的值用于取代相应列的值. 例如 :将ME234课程的课时改为30,并改成春季开设:,UPDATE SET WHERE,UPDATE C SET LHOUR=30, SEMESTER春 WHERE CNOME234 ;,关系数据库语言SQL,(3)删除数据 SQL删
28、除语句的格式为: 其功能是从指定表中删除满足WHERE子句条件的记录。如果省略WHERE子句,则删除表中所有记录. 例如,从C表中删除课程号为CC112的记录:,DELETE FROM WHERE ,DELETE FROM C WHERE CNO=CC112;,关系数据库语言SQL,SQL的视图 视图是DBMS所提供的一种由用户观察数据库中数据的重要机制。视图可由基本表或其他视图导出。它与基本表不同,视图只是一个虚表,在数据字典中保留其逻辑定义,而不作为一个表实际存储数据。 SQL用CREATE VIEW语句建立视图,其格式为: CREATE VIEW 视图名列名, AS 子查询,关系数据库语
29、言SQL,SQL视图的例: 例如,若建立管理工程系学生的视图ME_S,语句为: 视图定义后,用户就可以象对基本表操作一样对视图进行查询。例如,在管理工程系的学生视图中找出年龄大于25岁的学生,其SQL语句为:,CREATE VIEW ME_s AS (SELECT SNO,SNAME,SEX,BDATE,HEIGHT FROM S WHERE DEPART管理工程) ;,SELECT SNANE 2008-YEAR(BDATE) FROM ME_S WHERE 2008YEAR(BDATE)25;,数据库系统及应用新技术,数据库体系结构的发展 DBS运行在计算机系统之上,其体系结构与计算机体系
30、结构密切相关。因此DBS的系统结构也随着它的硬件和软件支撑环境的变化而不断演变。 集中式数据库系统。早期的DBMS以分时操作系统作为运行环境,采用集中式的数据库系统结构,把数据库建立在本单位的主计算机上,且不与其他计算机系统进行数据交互。在这种系统中,不但数据是集中的,数据的管理也是集中的。,. .,终端,DB,数据库体系结构的发展, 客户/服务器结构(C/S) 是一种网络处理系统。有多台用作客户机的计算机和一至多台用作服务器的计算机。客户机直接面向用户,接收并处理任务,将需要DB操作的任务委托服务器执行;而服务器只接收这种委托,完成对DB的查询和更新,并把查询结果返回给客户机。C/S结构的D
31、BS虽然处理上是分布的,但数据却是集中的,还是属于集中式数据库系统。,客户机,计算机网络,DB,数据库服务器,数据库体系结构的发展, 浏览器/服务器结构(B/S) 由浏览器,Web服务器,数据库服务器3个层次组成.客户端使用一个通用的浏览器代替了各种应用软件.用户操作通过浏览器执行.,客户机,计算机网络,DB,浏览器,数据库服务器,数据库体系结构的发展, 分布式数据库系统 数据共享和数据集中管理是数据库的主要特征。但面对应用规模的扩大和用户地理位置分散的实际情况,如果一个单位的计算机仍用联网式的集中数据库系统,将会产生很多问题: 各个用户结点计算机要通过网络存取数据, 如何解决通信开销太大和延
32、迟的问题? 一旦数据库不能工作还将导致整个系统 的瘫痪,如何保证系统的可用性和可扩性?,?,数据库体系结构的发展,在分布式DBS中,把一个单位的数据按其来源和用途,合理分布在系统的多个地理位置不同的计算机结点上(局部数据库),使数据可以就近存取。数据在物理上分布后,由系统统一管理。系统中每个地理位置上的结点实际上是一个独立的DBS,它包括本地结点用户、本地DBMS和应用软件。每个结点上的用户都可以通过网络对其他结点数据库上的数据进行访问,就如同这些数据都存储在自己所在的结点数据库上一样。,计算机网络,DB,DB,DB,DDBMSn,DDBMS2,DDBMS1,DDBMS是分布式数据库管理系统,
33、数据库体系结构的发展, 并行数据库系统,随着应用领域DB规模的增长, 其运行负荷日益加重,对DBS 性能要求也越来越高.,需求:,计算机系统通过并行地使用多个 CPU和磁盘,可提高处理速度 和IO速度。,技术:,并行数据库系统,并行处理技术很适宜与关系DBS技术相结合,在关系 模型中,数据库二维表是元组的集合,DBS操作也是集合 操作;在许多情况下对集合的操作可分解为一系列对子集 的操作,这些子集操作存在很好的并行性,第6章 信息系统与数据库,6.3 信息系统开发与管理 软件工程与信息系统开发概述 系统规划与分析 系统设计 系统实施与运行维护,信息系统开发与管理,难度 复杂性 人员要求高,信息
34、系统 开发和管理,是一项系统工程 涉及多学科的综合技术.,开发周期长、投资大、风险大 比一般技术工程有更大复杂性,系统分析、设计和管理人员掌握多方面技术(软件工程,DBS设计,程序设计方法,领域业务知识)。了解应用环境,软件工程与信息系统开发概述,软件危机与软件工程 1960年代以来: 计算机性能不断提高 应用范围越来越广泛 软件系统开发越来越复杂。,大型软件系统开发成本高, 可靠性差,甚至有时人们无法 管理自身所创造出来的 复杂逻辑系统,致使软件生产 和维护出现了很大的困难, 当时人们称此为“软件危机”。,问题严重,软件工程与信息系统开发概述,软件危机与软件工程,软件危机, 正确理解和表达应
35、用需求是 艰巨的任务.但常常被忽略。 软件是逻辑产品。软件开发过 程是思考过程,很难进行质量 管理和进度控制。 随着问题复杂度的增加,处理问 题的效率随之下降,而所需 时间和费用则随之增加。,大型软件开发必须有严密完整的工程技术和科学的过程, 向“工程化”发展: “软件工程”,分析原因,解决途径,软件工程与信息系统开发概述,软件工程方法要点: 软件开发技术。软件开发规范化和工程化,对开 发中的策略、原则、步骤和文档做出规定. 软件工程管理。对软件生产中重要环节,按计 划、进度执行,实现预期的社会和经济效益. 软件开发方法。主要有:生命周期方法、原型 法以及面向对象的分析设计方法等。 软件开发工
36、具。采用软件开发工具和环境,保证 软件开发各个阶段任务的完成。,软件工程与信息系统开发概述,常用的信息系统开发方法(1)-结构化生命周期方法 信息系统从规划开始,经过分析设计、实施直到投入运行使用过程中,随其生存环境的变化而不断修改,当它不再适应需要时就要被淘汰,而由新的信息系统代替老的信息系统,这种循环称为信息系统的生命周期。 结构化方法将信息系统软件生命分为系统规划,系统分析,系统设计,系统实施和系统维护5个阶段。各阶段工作按顺序开展,形如自上而下的瀑布,所以又称瀑布模型方法。,软件工程与信息系统开发概述,常用的信息系统开发方法-结构化生命周期方法,每一个阶段都有明确的工程任务并产生规范的
37、文档资料, 且必须评审。用以及时发现错误,防止将错误蔓延到后续阶段,避免重大损失。,软件工程与信息系统开发概述,结构化生命周期法的分析和设计原则: 自顶向下,逐层分解求精,分析和设计整个系 统,减小和控制开发过程的复杂性。 图示工具(如数据流程图和E-R图等)描述 分析和设计的内容,便于各类人员交流。 明确阶段任务。例如,系统分析阶段明确系 统的结构和功能(做什么),系统设计阶段 确定其如何实现(怎么做)。 强调用户参予开发过程的作用。,软件工程与信息系统开发概述,常用的信息系统开发方法(2)-原型法 所谓原型,是指分析设计人员与用户合作,在短期内定义用户基本需求的基础上,首先开发出一个具备基
38、本功能、实验性的、简易的应用软件。运行这个原型,并在相应的辅助开发工具的支持下,按照不断求优的设计思想,通过反复的完善性实验而最终开发出符合用户要求的信息系统。,软件工程与信息系统开发概述,数据库系统设计概要 信息系统设计最重要的核心技术是软件工程和基于DBS的设计技术。 DBS设计任务:,应用部门 信息需求,计算机环境 硬件,OS, DBMS等,应用部门 处理需求,DBS设计,各类数据模式,应用程序,软件工程与信息系统开发概述,DBS 设计步骤,系统规划和分析,系统规划 系统规划任务: 调查应用部门的环境、目 标和现行系统. 根据其发展目标对新系统 的需求,进行分析和预测. 考虑新系统所受的
39、各种约束. 研究开发新系统的必要性 和可能性,提出方案和计划. 从管理、技术、经济和社会 等方面进行可行性分析.,系统规划过程:,系统规划和分析,系统分析 (1) 系统分析的任务 采用系统工程的思想和方法,把复杂的对象分解成简单的 组成部分,明确各部分用户的各种数据需求和处理需求. (2) 系统分析的方法 使用结构化分析方法(SA)。SA方法从最上层的组织机 构入手,采用自顶向下逐层分解的方法分析系统,并用 形式化或半形式化的描述(如数据流程图和数据字典)说 明数据和处理过程的关系。,系统规划和分析,系统分析 (3) 系统分析的工具,数据流程图(DFD): 使用直观的图形符号, 描述系统业务处
40、理过程、 信息流和数据要求的工具。 .,数据字典(DD): 数据流程图表达了数据和 处理的关系,数据字典则 是系统中各类数据定义和 描述的集合,是进行详细 的数据分析所获得的主要 成果。在数据字典中对数 据流程图中的数据项、数 据结构、数据流、处理逻 辑、数据存储和外部实体 等进行定义.,系统规划和分析,数据流程图实例-某大学教学管理信息系统数据流程图,系统设计,(1) 系统设计的任务和内容 系统设计任务:为实现系统目标具体规定数据结构和系统功能. 系统设计的内容: 概念结构设计和逻辑结构设计.,概念结构设计,逻辑结构设计,系统设计 (概念结构设计),(2) 概念结构设计 将需求分析得到的用户
41、需求转换为概念模型的 过程就是概念结构设计。 概念结构设计的方法和过程 开发一个全局性的信息系统,由于其问题的复 杂性,在系统规划和需求分析阶段一般采用自 顶向下的方法。而在概念结构设计中则采用自 底向上的方法,即首先定义各局部应用的概念 结构,然后将它集成起来得到全局的概念结构。,系统设计 (概念结构设计),概念结构设计,系统设计 (概念结构设计), 概念结构设计的工具(表示方式) E-R图 用表示“实体-联系概念”的E-R图,对一个单位信息状况进行直观说明,称为一个单位的E-R概念结构。 E-R图中: 矩形框表示实体集 菱形框表示联系 椭圆(或圆形)框表示属性 加斜杠线的属性组成相应实体集
42、的主键 联系与实体集相连的线上注明联系的语义类型。,系统设计 (概念结构设计),E-R图的实例:,系统设计 (逻辑结构设计),(3) 逻辑结构设计 面向系统的全局关系模式:把概念结构设 计产生全局E-R图中的实体和联系,转换 为关系DBMS 所支持的关系型数据的逻 辑结构,即面向系统的全局关系模式. 面向用户的视图:是全局关系模式的子集.,用定义视图实现,按转换规则 (见阅读材料6.3),物理结构设计,物理结构设计 反映数据关系模式的基本表对应于计算机外的存储文件. 物理设计的任务是选取相应的文件存储结构和文件存取路径.,目标:有效利用存储空间,提高性能.,物理结构设计,特别提示: DBS的物
43、理结构设计与多种因素有关: 应用处理需求(内容和频率)变化 数据特性(属性值分布,长度及个数)变化 处理需求随应用环境而变化 由此,数据特性因数据库状态的改变而变化,导致数据特性在DBS设计阶段很难准确估计。因而,数据库物理设计和一般产品设计有很大的区别: DBS设计往往只提供一种初始设计,在DBS运行过程中还应根据用户要求不断调整。过分强调所谓“精确设计”,企图一次成功,并不符合DBS的设计特点。,系统实施与运行维护,(1).系统实施 系统实施的任务: 实现系统设计阶段提出的数据逻辑结构、存储结构和软件结构,按实施方案完成一个可实际运行的信息系统,交付用户使用。 具体工作: 按系统逻辑结构和
44、物理物理结构,用关系DBMS- SQL语言编制源代码,调试产生目标模式,并将 数据载入DB中; 功能程序设计,按软件结构设计提出的模块要求 进行程序编码、编译、联接以及测试的工作。,系统实施与运行维护,(2).系统的运行和维护 在保证信息系统正常运行的前提下,为提高系统运行的有效性而对系统的硬件、软件和文档所做的修改和完善都称为系统维护。系统维护有3类: 纠正性维护。纠正应用软件设计中遗留的种种错误。 适应性维护。适应硬件/软件环境变更,对应用程序作 适当修改。 完善性维护。数据转储,为提高系统性能,对系统和应 用程序的修改等。,系统实施与运行维护,特别提示:,(1 )数据库维护是一项有一定技
45、术难度 的工作,实质上它是再分析、再设计 、再编程、再测试的过程,同时还 包括程序和各种文档的修改。,(2) 从时间上看,维护是DBS应用中 的最后一个阶段,但从工作性质来看, 维护实际上是与DBS管理和控制密切 相关的活动,是数据库应用的深化。,第6章 信息系统与数据库,6.4 典型信息系统 制造业信息系统 电子商务和电子政务 地理信息系统和数字地球 远程教育和远程医疗 数字图书馆,第6章 信息系统与数据库,6.5 信息化与信息社会 什么是信息系统 信息化推动工业化,什么是信息化?,什么是信息化? 是工业社会向信息社会前进的过程,亦即加快信息高科技发展及其产业化,提高信息技术在经济和社会各领
46、域的推广应用水平并推动经济和社会发展的过程. 信息化建设的主要目标 是在经济和社会活动中,通过普遍采用现代信息技术和有效地开展和利用信息资源,推动经济发展和社会进步,逐步使信息产业以及由于利用了信息技术和信息资源而创造的劳动价值在国民生产总值中的比重不断上升直至占主导地位.,什么是信息化?(续),信息化建设的主要内容 (3个层面,6个要素) 信息基础设施与信息资源的开发和建设 (基础) 3个层面 信息技术与信息资源的应用 (核心与关键) 信息产品制造业的不断发展 (重要支撑) 3个层面的发展过程 是 相互促进的过程, 也是工业社会向信息社会、 工业经济向信息经济演化的动态过程.,什么是信息化?
47、(续),信息化建设的6个要素 信息基础设施 信息资源 信息技术与应用 信息产业 信息化法规 信息科技人才,信息化建设 6个要素,又称信息高速公路. 由通信网,计算机,信息 资源,信息设备与人 成的互联互通,无所不在 的信息网络.不受时间 和地点的限制.可以获得各 种各样的信息资源和服务.,信息化推动工业化,党的十六大报告明确指出: “信息化是我国加快实现工业化和现代化的必然选择.坚持以信息化带动工业化,以工业化促进信息化,走出一条科技含量高、经济效益好、资源消耗低、环境污染少、人力资源优势得到充分发挥的新型工业化路子.”,信息化推动工业化,学习和理解党的十六大报告精神: 中国国情:是一个发展中的国家; 信息化和工业化是两个具有本质差别又有一定联系 的概念,是两个性质不同的社会发展过程; 从国际经验看,可以采取并行发展方针,实现工业化, 信息化的