管理信息系统实验报告答案要点.docx
《管理信息系统实验报告答案要点.docx》由会员分享,可在线阅读,更多相关《管理信息系统实验报告答案要点.docx(29页珍藏版)》请在冰豆网上搜索。
管理信息系统实验报告答案要点
实验一:
实验名称
认识管理信息系统及其开发工具
实验目的
1、初步认识管理信息系统,建立对管理信息系统的感性认识。
2、认识管理信息系统给组织和个人带来的影响。
3、能够正确运用数据库的基本理论和方法,熟悉常用关系型数据库的设计
和基本操作。
4、熟悉常用的系统开发工具,如Visual C#.NET、C语言、Visual FoxPro、Visual Basic等。
实验步骤
1、通过网络搜索和社会调查等手段,寻找信息系统。
例如:
学校教学管理部门使用的教务管理系统,学生使用的考试成绩查询系统、学生选课系统,图书馆使用的图书管理系统,宾馆使用的客房管理信息系统等。
⑴详细了解这些信息系统实现了哪些功能?
答:
客房管理信息系统:
1、客户信息系统:
添加删除客房信息和设置客房标准。
2、客房管理:
查询客房信息、登记入住、退房结算、超期提醒、预订客房、修改订房信息、换房服务。
⑵具体描述实现每个功能的操作步骤。
答:
1、添加删除客房信息是指可以手动添加或者删除客房,这个功能一般在系统第一次使用时使用或者在酒店宾馆扩建或调整后使用,应该将所有客房的信息都添加至数据库中。
设置客房标准是指可以手动设置不同标准的客房,如双人间、单人间、套房等,并且可以将指定的客房关联到该标准上。
客房信息管理主要是设置客房的基本属性,客房管理功能使用客房信息管理功能提供的数据管理客房。
2、查询客房信息是指本系统提供查询客房信息的界面,通过一系列关键字查询客房状态,如提供查询所有一定标准下的空闲客房,通过姓名或手机号查询已使用或预定的客房等。
总之,本功能的目的在于以尽可能友好的界面提供常用查询功能。
登记入住功能指客户登记入住的过程,需要把对应客房的状态修改为已入住并关联对应的客户信息,如客人姓名、身份证号、押金数额、入住日期、预定使用日期等信息,完成此项操作后,客人即可入住。
退房结算是指客人退房时进行消费结算,该结算需要将客人在酒店所有消费进行
统计,并打印发票,完成退房后,需要将客人入住的信息保存到历史信息数据表中,以供日后的查询和统计。
超期提醒是指客人入住时间超过预定时间后对客人的提醒,提示的信息包括客人使用的房号、客人姓名、入住日期、预定使用日期等。
预定客房是指客人可以预定某一时间段某几个标准的客房,已预定的客房状态显示为已预定,在没有释放之前不能被使用,并且在达到预定时间时自动释放对应客房,当然可以手动强制释放客房。
修改订房信息提供了对预定客房信息的修改功能。
换房服务是指当客户需要换房间时可以自动退房并登记新房,并将原有住房信息与新登记客房信息关联到同一客户名下。
⑶从系统建设的角度出发,了解系统的开发过程、开发环境、开发工具、系统建设中所需的人员等问题。
答:
管理信息系统,是一个以人为主导,利用计算机硬件、软件及其他办公设备进行信息的收集、传递、存贮、加工、维护和使用的系统。
第一个变革期是大型主机和小型机数据处理,第二变革期是个人电脑,第三个是服务器和用户端,第四个变革期企业计算,第五个变革期期是云计算。
完整的MIS应包括:
决策支持系统(DSS)、工业控制系统(CCS)、办公自动化系统(OA)以及数据库、模型库、方法库、知识库和与上级机关及外界交换信息的接口。
办公自动化系统(OA)、与上级机关及外界交换信息等都离不开Intranet(企业内部网)的应用。
所需人员:
软件工程师:
负责软件的编写数据库工程师:
后台数据库的管理和组织架构工程师:
整个系统的架构设计工程师/美工:
界面的设计各种图标图片的设计等测试工程师:
对开发的系统进行测试维护支持工程师:
系统开发完后对系统进行长期的支持与维护产品经理:
对整个系统的需求进行分析,与客户联系
⑷从应用的角度出发,了解这些信息系统给你的生活、学习、工作带来什么影响,分析这些系统是否还有不完善之处,应该在哪些方面加以改进。
答:
信息系统渗透到人们的生活与工作中,广泛地影响着人们的生活方式,计算机通信网络交流成为主流方式,各地之间的联系紧密程度已不取决于地域距离,世界各处的事件能在极短的时间里传遍全球,文娱与新闻的获取由被动接受变为主动搜选电子商务方便生活消费,改变消费习惯,可在家里参加单位工作,突出了家庭中心观念.信息系统也给社会造成一些不利的影响,全球文化交流使民族文化受到冲击人们间接交流将淡薄感情色彩,将改变人们生活与工作的格局,对人们的习惯、习俗和心理产生深远影响.
2、安装教学演示软件,并练习。
3、分组讨论并确定小组管理信息系统的题目,并给出题目的具体功能和要求。
心得体会:
(可以从以下几个方面来总结:
你在上机过程中遇到了哪些难题?
你是怎么克服的?
你的收获有哪些?
你有什么没有解决的问题等)
实验二:
实验名称
数据库设计实验
实验目的
实验目的:
了解数据库设计在管理信息系统中的地位,掌握数据库设计的方法,并把数据库运用于编程,巩固课堂理论知识,并培养我们作为未来软件开发、测试者应该具有的合作精神,主动学习运用新知识。
实验要求:
根据以下教材订购系统的数据库需求画出E-R图(参见下图,请增加联系类型),并把E-R图转换成对应的关系模式。
在SQLServer(或Access)中建立数据库和表。
实验步骤
教材订购系统的需求如下:
学生通过选课系统,进行选课,学生可选择多门课程,一门课程对应了一本教材,学生可以选择是否愿意购买该课程的教材,选课完成后,对需要订购的教材及其数量进行统计,得出订购信息,根据该信息向书商订购教材。
由于订购教材时种类较多,一般根据教材的不同会向多个书商订购,如果某门教材在一个书商处库存数不够,书商反馈信息,则剩余不够的部分还须向其他书商订购,同时
在订购信息中添加该教材在另一个书商中订购的信息。
1、请画出上述内容的E-R图。
2、把E-R图转换成合理的关系模式:
学生(学号,姓名,性别,院系,年龄) 主键为学号
教材(书号,书名,出版社,出版日期,主编) 主键为书号
书商(商号,电话,联系人,商名) 主键为商号
3、在SQLServer(或Access)中建立数据库和表(截图):
建立数据库:
建立学生表
建立教材表
建立书商表
实验三:
实验名称
管理信息系统的系统分析
实验目的
1、能够正确运用系统分析的过程与方法,结合一个课题,复习、巩固管理
信息系统的系统分析知识,提高系统分析的实践能力。
2、熟悉业务流程图、数据流程图、数据字典等的绘制。
3、树立正确的系统分析思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。
实验步骤
1.试述结构化系统开发方法、原型法的优缺点和适用场合?
答:
优点:
从系统整体出发,强调在整体优化的条件下“自上而下”地分析和设计,保证了系统的整体性和目标的一致性;遵循用户至上原则;严格区分系统开发的阶段性;每一阶段的工作成果是下一阶段的依据,便于系统开发的管理和控制;文档规范化,按工程标准建立标准化的文档资料。
缺点:
用户素质或系统分析员和管理者之间的沟通问题;开发周期长,难于适应环境变化;结构化程度较低的系统,在开发初期难以锁定功能要求。
适用场合:
主要适用于规模较大、结构化程度较高的系统的开发
2、什么是数据流图?
其作用是什么?
其中的基本符号各表示什么含义?
答:
数据流图简称DFD,是SA方法中用于表示系统逻辑模型的一种工具。
它以图形的方式描述数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
数据流图有四种基本图形符号:
“→”箭头表示数据流;“○”圆或椭圆表外部实体;“=”双杠表示数据存储;“”方框表示数据的源点或终点
3、某工厂成品库管理的业务过程如下:
成品库保管员按车间送来的入库单登记库存台帐。
发货时,发货员根据销售科送来的发货通知单将成品出库,并发货,同时填写三份出库单,其中一份交给成品库保管员,由他按此出库单登记库存台帐,出库单的另外两联分别送销售科和财务科。
试按以上业务过程画出业务流程图。
4、某银行的计算机储蓄系统功能是:
将储户填写的存款单或取款单输入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;如果是取款,系统计算利息清单给储户。
请用DFD(数据流程图)描绘该功能的需求。
5、某单位医务室要对药品管理从手工过渡到计算机管理,管理项目包括:
(1)药品入库登记,输入流是购入的药品信息,输出流是药品入库登记表;
(2)药品出库登记,输入流是销售的药品信息,输出流是药品出库登记表;
(3)结存的药品自动更新,输入流是购入的药品信息或销售的药品信息,输出流是药品库存登记表;
(4)药库管理员筛选和打印入库、出库及库存清单
请根据以上描述画出数据流程图。
6、某公司给一次购货在100万元以上的客户以不同折扣率。
如果这样的客户最近3个月无欠款,则折扣率为15‰;虽然有欠款但与公司已经有10年以上的贸易关系,则折扣率为10‰,否则折扣率为5‰。
请将公司的折扣率政策用判断树、判断表和结构英语的形式分别加以表示。
实验四:
实验名称
管理信息系统的系统设计
实验目的
1、能够正确运用系统设计的过程与方法,结合所选的管理信息系统,复习、巩固管理信息系统中系统设计知识,提高系统设计能力。
2、熟悉代码设计、数据存储设计、界面设计、输入输出设计、网络设计、
安全保密设计等环节,并编制相应的文档及程序编写。
3、进一步树立正确的系统设计思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力
实验步骤
1、系统设计阶段的基本任务是什么?
2、软件设计的基本原则包括哪些内容?
3、用几何级数法设计代码校验位:
原代码共5位,从左到右取权,2、4、8、16、32,以11为模,把模11减余
数作为检验位。
试求出17382的校验位,写出计算过程。
4、代码校验位的作用是什么?
5、系统设计中,为什么要写做输出设计,再做输入设计?
6、画出实验一中你选定题目的功能结构图。
7、画出实验一中选定的题目得ER图,并转换为合理的关系模式,并进行规范化处理。
8、输入设计的原则和目标是什么?
9、数据出错的校验方法有哪些?
实验五:
实验名称
管理信息系统的系统实施
实验目的
1、能够正确运用系统实施的过程与方法,结合所选的管理信息系统,复习、巩固、管理信息系统中系统实施知识,提高系统实施能力。
2、熟悉物理系统的实施、程序设计等环节,并编制相应的文档及程序编写。
3、熟悉软件开发工具、程序和系统调试、系统切换、系统评价等环节,并编制相应的文档及程序编写。
4、进一步树立正确的系统实施思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。
实验步骤
1.系统实施的主要内容是什么?
答:
系统实施的主要内容包括物理系统的实施,程序设计与调试,人员培训, 数据准备预录入,系统切换和评价等。
2.简述结构化程序设计方法的思想。
答:
在具体编程中,应采用结构化设计方法。
其特点是采用以下三种基本逻辑结构来编写程序:
顺序结构,循环结构和选择结构。
1. 顺序结构是一种线性有序结构,由一系列依次执行的语句或模块构成。
2. 循环结构是由一个或几个模块构成,程序运行时重复执行,知道满足某一条
件为止。
3. 选择结构是根据条件成立与否选择程序执行路径的结构。
3、查阅资料,简述统一建模语言(UML)的主要内容和应用领域。
答:
UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。
其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。
总之,UML建模语言是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。
此外,UML适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。
在需求分析阶段,可以用用例来捕获用户需求。
通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。
分析阶段主要关心问题域中的主要概念(如抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系,并用UML类图来描述。
为实现用例,类之间需要协作,这可以用UML动态模型来描述。
在分析阶段,只对问题域的对象(现实世界的概念)建模,而不考虑定义软件系统中技术细节的类(如处理用户接口、数据库、通讯和并行性等问题的类)。
这些技术细节将在设计阶段引入,因此设计阶段为构造阶段提供更详细的规格说明。
编程(构造)是一个独立的阶段,其任务是用面向对象编程语言将来自设计阶段的类转换成实际的代码。
在用UML建立分析和设计模型时,应尽量避免考虑把模型转换成某种特定的编程语言。
因为在早期阶段,模型仅仅是理解和分析系统结构的工具,过早考虑编码问题十分不利于建立简单正确的模型。
UML模型还可作为测试阶段的依
据。
系统通常需要经过单元测试、集成测试、系统测试和验收测试。
不同的测试小组使用不同的UML图作为测试依据:
单元测试使用类图和类规格说明;集成测试使用部件图和合作图;系统测试使用用例图来验证系统的行为,验收测试由用户进行,以验证系统测试的结果是否满足在分析阶段确定的需求。
总之,UML建模语言适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。
5、请使用程序流程图或PAD图或PDL语言描述下列程序的算法。
(1)在数据A
(1)-A(10)中求最大数和次大数。
(2)输入三个正整数作为边长、判断该三条边构成的三角形是等边、等腰或一般三角形。
(1)PDL语言 定义 n1=n2=0
输入A
(1).......A(10)
n1=n2=A
(1)
while i>10
if A(i)>=n1
n2=n1
n1=A(i)
end while
(2)GET(a,b,c)
IF (a+b>c and b+c>a and c+a>b)
IF (a=b)
IF (a=c)
PUT("等边三角形")
ELSE
PUT("等腰三角形")
ENDIF
ELSE
IF(a=c)
PUT("等腰三角形")
ELSE
IF (b=c)
PUT("等腰三角形")
ELSE
实验六:
实验名称
综合性系统开发
实验目的
根据教师给定的选题要求,综合应用系统分析、系统设计、系统实施的理论进行系统开发,使学生具备独立开发信息系统的能力。
实验步骤
1、在项目开发时选择程序设计语言通常考虑哪些因素?
答:
一般来说,选择程序设计语言优先考虑高级语言。
在选择高级语言时以下因素是需要考虑的:
系统用户的要求:
用户比较熟悉的语言。
可使用的编译程序:
运行的目标系统提供的编译程序是哪一种,回**所选的语言。
可以得到的软件工具:
某种语言支持程序开发的软件工具是否可用。
工程规模:
如果工程规模很庞大,现有的语言又不完全适用,提供设计专用的程序设计语言,可能是一个正确的选择。
程序员的知识:
选择一种程序员熟悉的语言。
软件可移植性要求:
如果目标系统将在几台计算机上运行,或者预期的使用寿命很长,那么选择一种标准化程度高、程序可移植性好的语言就很重要。
软件的应用领域:
所谓的通用程序设计语言实际上并不是对所有应用领域都同样适用,选择语言时应该充分考虑目标系统的应用范围。
2、举例说明各种程序设计语言的特点及适用范围?
答:
一、C语言C语言是CombinedLanguage(组合语言)的中英混合简称。
是一种计算机程序设计语言。
它既具有高级语言的特点,又具有汇编语言的特点。
它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。
实验步骤、心得体会归纳起来C语言具有下列特点:
1.C是中级语言。
它把高级语言的基本结构和语句与低级语言的实用性结合起来。
C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
2.C是结构式语言。
结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。
这种结构化方式可使程序层次清晰,便于使用、维护以及调试。
C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
3.C语言功能齐全。
具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。
另外C语言也具有强大的图形功能,支持多种显示器和驱动器。
而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。
4.C语言适用范围大。
适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型
二、Java语言
Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
1、Java语言是简单的。
Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
另一方面,Java丢弃了C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2、Java语言是一个面向对象的。
Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
Java语言全面支持动态绑定,而C++ 语言只对虚函数使用动态绑定。
总之,Java语言是一个纯的面向对象程序设计语言。
3、Java语言是分布式的。
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。
Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4、Java语言是健壮的。
Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。
对指针的丢弃是Java的明智选择。
Java的安全检查机制使得Java更具健壮性。
5、Java语言是安全的。
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。
除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
6、Java语言是体系结构中立的。
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。
这种途径适合于异构的网络环境和软件的分发。
7、Java语言是可移植的。
这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。
Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。
8、Java语言是解释型的。
如前所述,Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。
在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
9、Java是高性能的。
与那些解释型的高级脚本语言相比,Java的确是高性能的。
事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。
10、Java语言是多线程的。
在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
通常有两种方法来创建线程:
其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。
值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。
线程的活动由一组方法来控制。
Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
11、Java语言是动态的。
Java语言的设计目标之一是适应于动态变化的环境。
Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。
这也有利于软件的升级。
另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。
Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。
Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。
特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。
3、软件测试的目的是?
测试中要注意那些原则?
答:
软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测
试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。
执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。
软件测试的几大原则:
1.软件开发人员即程序员应当避免测试自己的程序
不管是程序员还是开发小组都应当避免测试自己的程序或者本组开发的功能模块。
若条件允许,应当由独立于开发组和客户的第三方测试组或测试机构来进行软件测试。
但这并不是说程序员不能测试自己的程序,而且更加鼓励程序员进行调试,因为测试由别人来进行会更加有效、客观,并且容易成功,而允许程序员自己调试也会更加有效和针对性。
2. 应尽早地和不断地进行软件测试
应当把软件测试贯穿到整个软件开发的过程中,而不应该把软件测试看作是其过程中的一个独立阶段。
因为在软件开发的每一环节都有可能产生意想不到的问题,其影响因素有很多,比如软件本身的抽象性和复杂性、软件所涉及问题的复杂性、软件开发各个阶段工作的多样性,以及各层次工作人员的配合关系等。
所以要坚持软件开发各阶段的技术评审,把错误克服在早期,从而减少成本,提高软件质量。
3.对测试用例要有正确的态度:
第一,测试用例应当由测试输入数据和预期输出结果这两部分组成;第二,在设计测试用例时,不仅要考虑合理的输入条件,更要注意不合理的输入条件。
因为软件投入实际运行中,往往不遵守正常的使用方法,却进行了一些甚至大量的意外输入导致软件一时半时不能做出适当的反应,