问题处理方案的正确而完整的描述称为算法。算法分析的目的是,分析算法的效率以求改进。算法的基本特征是可行性、确定性、有穷性和拥有足够情报。
算法的有穷性是指:算法程序的运行时间是有限的。
算法的复杂度是衡量算法好坏的度量,分为时间复杂度和空间复杂度。
时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度是指算法执行过程中所需的存储空间。
算法时间复杂度或空间复杂度中的一项的值,没有办法推出另一项的值。
2、数据结构
索引属于存储结构(物理结构)。循环队列属于存储结构。
数据的存储结构又称为物理结构,是数据的逻辑结构在计算机存储空间中的存放形式。
一个逻辑结构可以有多种存储结构,且各种存储结构影响数据处理的效率。程序执行的效率与数据的存储结构密切相关。
数据结构分为线性结构和非线性结构,带链的队列属于线性结构。
线性表的存储结构主要分为顺序存储结构和链式存储结构。顺序存储结构的存储一定是连续的,链式存储的存储空间不一定是连续的。
有序线性表既可以采用顺序存储结构,也可以采用链式存储结构。
队列是一种特殊的线性表,循环队列按照先进先出原则组织数据。循环队列是队列的顺序存储结构。
数据的独立性分为物理独立性和逻辑独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序可以不用修改,称为物理独立性。
3、栈和队列
栈是一种特殊的线性表,是只能在一端进行插入和删除的线性表,特点是先进后出
栈是先进后出的线性表;栈具有记忆作用;对栈的插入与删除 *** 作中,不需要改变栈底指针。假定让元素1、2、3、A、B依次入栈,则出栈的顺序是:B、A、3、2、1。
栈与队列都是线性结构,树是非线性结构。支持子程序调用的数据结构是栈。
栈与队列的共同点是,都只允许在端点处插入和删除元素。
栈只能顺序存储的描述是错误的。栈可以有顺序和链式两种存储方式。
队列是允许在一段插入,在另一端进行删除的线性表,其特点是先进先出。
循环队列中元素的个数是由队头指针和队尾指针共同决定。循环队列的头指针为front,尾指针为rear,容量为maxSize,则循环队列中元素的个数是 (rear-front+maxSize) mod maxSize。
4、线性链表
线性链表是线性表的链式存储结构。用链表表示线性表的优点是便于插入和删除 *** 作。
线性链表的存储空间不一定连续,且个元素的存储顺序是任意的。
5、树与二叉树
在树结构中,一个结点所拥有的后件(继)的个数称为该结点的度,所有结点中最大的度称为树的度。二叉树各结点的度只可能取值0、1、2,不可能是其它值。换言之,知道了度为1结点数量的前提下,叶子结点或度为2的结点中知道其一,就可以求出总的结点数。
上述的计算公式,关键要能够应用,例如,深度为7的满二叉树,度为2的结点数量是多少?既然是满二叉树,叶子结点的数量就是第7层的结点数量,也就是26,可以算出叶子结点为64,因此度为2的结点数是63(叶子结点数减去1)。
二叉树的前序遍历、中序遍历、后续遍历:前中后三个词是相对于根来讲的,前序是根-->左-->右,中序是左-->根-->右,后续是左-->右-->根。具体 *** 作为:
先序遍历(D L R): 访问根结点,按先序遍历左子树,按先序遍历右子树。
中序遍历(L D R): 按中序遍历左子树,访问根结点,按中序遍历右子树。
后序遍历(L R D): 按后序遍历左子树,按后序遍历右子树,访问根结点。
下面以中序遍历为例,来讲解实际的解题方法:对一棵树,将根结点下的左子树用一个椭圆圈起来,右子树也用一个椭圆圈起来。之后,在左子树上标记上1,在根结点标记上2,在右子树上标记上3。对在左边椭圆内的左子树,现在把它单独拿出来分析。把它的左子树圈起来标上11,根结点标记上12,右子树标上13。按照上述方法依次往下,直到树不能拆分,然后按照“左-->根--->右”的顺序写出结点的访问先后即可。
6、查找技术
对于长度为n的线性表,顺序查找最坏情况下需要比较n次。(对数据是否有序没有要求)。◆ 顺序查找最好情况下查询次数是1,最坏情况下是n,平均为(1+n)/2。
对于长度为n的有序线性表,二分法最坏情况下只需要比较log2n次。(数据必须有序)
能用二分法进行查找的是顺序存储的有序线性表。
7、排序技术
对于长度为n的线性表,冒泡排序、快速排序、简单插入排序、简单选择排序这四种排序方式在最坏情况下的比较次数相同,都是n(n-1)/2。堆排序的效率最高,是nlog2n。★★ 希尔排序最坏情况下需要次比较n15。希尔排序属于插入类排序法。
已知数据表A中每个元素距最终位置不远,为节省时间,应该采用的算法是直接插入排序。选择排序、插入排序、快速排序、归并排序中对内存要求最大的是归并排序。
第二部分 软件工程基础
1、软件工程基本概念
软件是包括程序、数据及相关文档的完整集合,软件是一种逻辑产品。软件工程三要素包括方法、工具和过程,其中过程支持软件开发的各个环节的控制和管理。
软件工程的核心思想:把软件产品当作是一个工程产品来处理,强调在软件开发过程中应用工程化原则。
从工程管理角度,软件设计一般分为两步完成,它们是概要设计和详细设计。
软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段,编码和测试属于开发阶段。
需求分析阶段产生的主要文档是软件需求规格说明书。软件需求的规格说明书应该有完整性、无歧义性、正确性、可验证性、可修改性等特征,其中最重要的是正确性。
2、结构化分析与设计
需求分析的分发有:结构化需求分析方法,面向对象的分析方法。DFD是需求分析阶段可以使用的工具之一。
结构化分析的常用工具:数据流图(DFD);数据字典;判定树;判定表。
在结构化分析使用数据流图(DFD)时候,利用数据字典对其中的图形元素进行确切的解释。数据字典是结构化分析的核心。
典型的数据流类型有两种,交换性和事务型。
常见的过程设计工具有:图形工具(程序流程图、N-S,PAD,HIPO)、表格工具(判定表)、语言工具(PDL伪码)。
内聚性是模块内部的联系,耦合性模块之间的相互联系的紧密程度。
追求目标是:模块的内聚程度要高,模块间的耦合程度要尽量弱。即高内聚低耦合。
程序流程图中带有箭头的线段表示的是控制流。平行四边形代表输入输出,矩形代表处理,菱形代表判断(注意,数据流图中的箭头,代表数据流)。
符合结构化原则的三种基本控制结构是:顺序结构,选择结构和循环结构。
3、软件测试与维护
软件测试的目的是尽可能多的发现程序中的错误,但是不包括改正错误。(软件调试的目的才是改正错误)
软件测试分为静态测试和动态测试,其中静态测试是指不执行程序,只对程序文本进行检查。软件的动态测试主要包括黑盒测试和白盒测试。
黑盒测试的方法有等价类划分法,边界值分析法,错误推测法,因果图;白盒测试主要方法有逻辑覆盖、基本路径测试。(考试时给出一种方法的名字,你要知道属于白盒还是黑盒)
白盒测试的原则之一是保证所测模块的每一个独立路径至少要执行一次。白盒测试将程序看做是路径的集合。
软件测试一般按照四个步骤进行:单元测试,集成测试,验收测试和系统测试。集成测试应该在单元测试之后进行。
在模块测试中,需要为每个被测试的模块设计驱动模块和承接模块。其中,驱动模块的作用是将测试的数据传给被测试的模块,并显示结果。
测试用例是为某个目标而编制的一组测试输入、执行条件及预期结果。测试用例包括输入值集和输出值集。
诊断和改正程序中的错误称为程序调试(或软件调试),通常也称为Debug。软件调试可分为静态调试和动态调试。
在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程称为软件维护。注意软件维护不属于软件生命周期开发阶段的任务。
第三部分 数据库设计基础 (历年比例24%)
1、数据库系统基本概念
数据库设计的根本目标是要解决数据共享问题。在数据库管理技术发展的三个阶段中,数据共享最好的是数据库系统阶段。数据独立性最高的阶段是数据库系统阶段。
数据库系统与文件系统的区别是前者具有特定的数据模型。
数据库系统常见的数据模型有层次模型,网络模型和关系模型。
数据库系统的核心是数据库管理系统。
DBS包括DB和DBMS。完整讲,数据库系统DBS由数据库DB、数据库管理系统DBMS、数据库管理员DBA、硬件平台和软件平台组成。
数据库应用系统的核心是数据库维护。
形式;概念模式处于中层,它放映了设计者的数据全局逻辑要求,与软硬件环境无关;
外模式处于最外层,它反映了用户对数据的要求。
在数据库系统中,用户所见的数据模式为外模式。
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和物理设计。将E-R图转换成关系数据模型属于逻辑设计阶段。
数据库管理系统提供的数据语言:数据定义语言DDL,数据 *** 纵语言DML,数据控制语言DCL。SQL的全称是Structured Query Language,中文意思是结构化查询语言。
2、数据模型
实体之间的联系用树形结构来表示的模型是层次模型。采用二维表来表示的是关系模型。在关系数据库中,把数据表示成二维表,每一个二维表称为关系。
在关系数据库中,用来表示实体之间联系的是关系。
将E-R图转化为关系模式时,实体和联系都可以表示为关系。
确定两个实体之间是一对一、一对多、还是多对多的方法是:选择实体A,看是否有多个实体B与之对应;选择实体B,看是否有多个实体A与之对应。例如在“学生学习课程”中的两个实体,学生与课程,一个学生可以学习多门课程,一门课程可以被多个学生学习,所以二者是一种多对多的关系。
在E-R 图中,用来表示实体的图形是矩形。用来表示属性的图形是椭圆。用菱形来表示联系。
一个关系表的行称为元组(或记录),列称为属性(或字段)。
在二维表中,元组的分量不能再分为更小的数据线。
为了建立一个关系,首先要构造数据的逻辑关系。
3、关系代数
在交、差、投影中,不改变关系表中的属性个数但是能减少元组个数的是交运算。
关系运算的规则(下面介绍的7种运算,考试的时候一般会考察一种,都要背)
(1)并运算R∪S:并运算是两个表行上的合并,重复的行只出现一次。
(2)交运算R∩S:交运算是选出两个表中的公共行。
(3)差运算R-S:差运算是从表R中,删除R与S中都出现过的行。
(4)选择运算:选出二维表部分的行称为选择运算。
(5)投影运算:选出二维表部分的列称为投影运算。
(6)连接运算:根据两个表的共同属性的值,将它们连接起来,无需去除共同属性。如果去掉了重复属性,就称为自然连接。
(7)笛卡尔乘积:将关系R中的每一行依次与关系S中的每一行进行排列组合。
注意:除了选择运算和投影运算 *** 作的是单个表之外,其余的元算都需要两个表(两个关系)。其中,并运算、交运算和差运算要求两个关系R与S要具有相同个数的属性。
第四部分 程序设计基础
程序设计总体原则:清晰第一、效率第二。
良好程序风格包括:源程序要文档化,数据说明的次序要规范化,避免滥用goto语句。
结构化程序设计的核心是算法,面向对象的核心是对象(类)。
结构化程序设计的基本原则是:自顶向下、逐步求精、模块化、限制使用Goto语句。
类是一组具有相同属性和相同 *** 作的对象的集合。面向对象模型中,最基本的概念是对象和类。在面向对象方法中,类的实例称为对象,实现信息隐藏是通过对象的封装。
继承提高了软件的可重用性。
对象是属性和方法的封装体,对象间的通讯靠消息传递, *** 作是对象的动态性属性。
第一套
(1) 下面叙述正确的是______。(C)
A 算法的执行效率与数据的存储结构无关
B 算法的空间复杂度是指算法程序中指令(或语句)的条数(指的是算法所占用的空间)
C 算法的有穷性是指算法必须能在执行有限个步骤之后终止
D 以上三种描述都不对
(2) 以下数据结构中不属于线性数据结构的是______。(C)
A 队列
B 线性表
C 二叉树
D 栈
(3) 在一棵二叉树上第5层的结点数最多是______。(B)2n-1
A 8
B 16
C 32
D 15
(4) 下面描述中,符合结构化程序设计风格的是______。(A)
A 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B 模块只有一个入口,可以有多个出口(可以有0个入口)
C 注重提高程序的执行效率
D 不使用goto语句(只是限制使用)
(5) 下面概念中,不属于面向对象方法的是______。(D)
A 对象
B 继承
C 类
D 过程调用
(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。(B)
A 可行性分析 B 需求分析C 详细设计D 程序编码
(7) 在软件开发中,下面任务不属于设计阶段的是______。(D)
A 数据结构设计
B 给出系统模块结构
C 定义模块算法
D 定义需求并建立系统模型
(8) 数据库系统的核心是______。(B)
A 数据模型
B 数据库管理系统
C 软件工具
D 数据库
(9) 下列叙述中正确的是______。(C)
A 数据库是一个独立的系统,不需要 *** 作系统的支持
B 数据库设计是指设计数据库管理系统
C 数据库技术的根本目标是要解决数据共享的问题
D 数据库系统中,数据的物理结构必须与逻辑结构一致
(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。(A)
A 内模式 B 外模式 C 概念模式D 逻辑模式
第二套
(1) 算法的时间复杂度是指______。(C)
A 执行算法程序所需要的时间
B 算法程序的长度
C 算法执行过程中所需要的基本运算次数
D 算法程序中的指令条数
(2) 下列叙述中正确的是______。(A)
A 线性表是线性结构
B 栈与队列是非线性结构
C 线性链表是非线性结构
D 二叉树是线性结构
(3) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为______。(B)
A 349
B 350
C 255
D 351
(4) 结构化程序设计主要强调的是______。(B)
A 程序的规模
B 程序的易读性
C 程序的执行效率
D 程序的可移植性
(5) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。(D)
A 概要设计
B 详细设计
C 可行性分析
D 需求分析
(6) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是______。(A)
A 控制流
B 加工
C 数据存储
D 源和潭
(7) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及______。(B)
A 阶段性报告
B 需求评审
C 总结
D 都不正确
(8) 下述关于数据库系统的叙述中正确的是______。(A)
A 数据库系统减少了数据冗余
B 数据库系统避免了一切冗余
C 数据库系统中数据的一致性是指数据类型的一致
D 数据库系统比文件系统能管理更多的数据
(9) 关系表中的每一横行称为一个______。(A)
A 元组
B 字段
C 属性
D 码
(10) 数据库设计包括两个方面的设计内容,它们是______。(A)
A 概念设计和逻辑设计
B 模式设计和内模式设计
C 内模式设计和物理设计
D 结构特性设计和行为特性设计图书馆管理信息系统分析、设计、实现与测试
11 系统分析
111 图书馆管理信息系统的基本任务
该“图书馆管理信息系统”是一个具有万人以上的员工,并地理位置分布在大型企的图
书馆理系统,图书馆藏书 100 多万册,每天的借阅量近万册。在手工 *** 作方式下,图书的编目和借阅等的工作量大,准确性低且不易修改维护,读者借书只能到图书馆手工方式查找书目,不能满足借阅需求。需要建立一套网络化的电子图书馆信息系统。
该图书馆管理信息系统服务对象有两部分人:注册用户和一般读者。一般读者经注册后成为注册用户,注册用户可以在图书馆借阅图书,其他人员只可查阅图书目录,但不能借阅图书。系统同时考虑提供电子读物服务,目前只提供电子读物的目录查询服务,不久的将来将提供电子读物全文服务。用户可通过网络方式访问读图书馆管理信息系统。
112 系统内部人员结构、组织及用户情况分析
为了对系统有一个全貌性的了解,首先要对系统内部人员结构、组织及用户情况有所了
解。图书馆系统的组织结构如图 1 - 1 所示。
图 1 - 1 图书馆管理信息系统的组织结构
图书馆由馆长负责全面工作,下设办公室、财务室、采编室、学术论文室、图书借阅室、电子阅览室、期刊阅览室和技术支持室。各部门的业务职责如下。
办公室:办公室协助馆长负责日常工作,了解客户需求,制定采购计划。
财务室:财务室负责财务方面的工作。
采编室:采编室负责图书的采购,入库和图书编目,编目后的图书粘贴标签,并送图书借阅室上架。
学术论文室:负责学术论文的收集整理。
图书借阅室:提供对读者的书目查询服务和图书借阅服务。
电子阅览室:收集整理电子读物,准备提供电子读物的借阅服务,目前可以提供目录查询和借阅。
期刊阅览室:负责情况的收集整理和借阅。
技术支持室:负责对图书馆的网络和计算机系统提供技术支持。
113 系统业务流程分析
系统的业务室系统要达到的业务目标,业务流程分析是系统分析的基础环节。图书馆管
理信息系统的业务流程如图 1 - 2 所示。
图 1 - 2 图书馆管理信息系统的业务流程
通过业务流程调查,理清图书馆管理系统的主要业务和业务的流程。
图书馆管理员编制图书采购计划,由采购员负责新书的采购工作。采购图书入库后,交采编室编目,粘贴标签,产生图书目录。图书交图书借阅室上架,供读者借阅。采编后的电子读物交电子阅览室。
读者分为注册读者和非注册读者,只有注册读者可以在本图书馆借书,非注册读者可查询目录但不能借书。读者填写注册登记表交图书馆的管理员审核后,记人读者登记表,成为注册读者,发给借书证。注册读者借书时,需填写借书单,连同借书证一起交给借阅室管理员,借阅管理员核对无误后,填写借阅登记表,修改图书登记表中该书的数量,上架取书交给读者。图书馆设读者信箱,读者需要但没有库存的图书,读者可以通过读者信箱反映。图书馆管理员定期处理读者信箱中的意见,将读者需要的图书编制成图书采购计划交采购员购买。
114 数据流程图
数据流程图时全面描述信息系统逻辑模型的工具,它抽象概括地把信息系统中各种业务
处理过程联系起来。以下时图书馆管理信息系统地数据流程图。
(1) 零层数据流程图 1 - 3
图 1 - 3 零层数据流程图
( 2 ) 1 层数据流程图 1 - 4
图 1 - 4 图书馆管理信息系统 1 层数据流程图
115 数据定义及数据字典
为了对数据流程图中各元素进行详细的说明,我们采用了数据字典的说明方法。图书馆
管理信息系统的数据字典如下:
(1) 数据流描述
数据流编号: D01
数据流名称:图书采编信息
简述:图书采编信息
数据流来源:图书购买后,由图书馆采编人员编码整理后,输入计算机。
数据流去向:采编管理模块。图书采编信息将采编数据存入数据库(图书表)
数据项组成: BookID (图书编码)+ BookType (图书类别)+ BookName (书名)+ Auth (作者)+ Publisher (出版社)+ Price (单价)+ PubDate (出版日期)+ Quantity (购买数量)
数据流量: 100 本 / 日
高峰流量: 500 本 / 日
数据流编号: D02
数据流名称:图书借阅单
简述:图书借阅单
数据流来源:用户填写图书借阅单交图书馆管理员,图书馆管理员审核后,输入计算机。
数据流去向: P2_11 检查读者身份。
数据项组成: OrderDate (借阅日期)+ BookName (书名)+ RederID (读者账号)+ ReaderName (读者姓名)+ O_Quantity (借阅数量)
数据流量: 1000 部 / 日
高峰流量: 5000 部 / 日
数据流编号: D03
数据流名称:填写借阅记录
简述:填入借阅表的记录
数据流来源: P2_13 检查合格的借阅图书信息录人到借阅库中
数据流去向:借阅库
数据项组成: OrderID (借阅号)+ OrderDate (借阅日期) BookName( 书名 ) + BookID( 图书编码 ) + ReaderName (读者姓名)+ ReaderID (读者账号)+ ReturnDate (还书日期)+ O_Quantity (借阅数量)+ state (状态)
数据流量: 1000 人 / 日
高峰流量: 2000 人 / 日
数据流编号: D04
数据流名称:借阅图书数量
简述:修改图书库中图书数量
数据流来源: P2_13 修改图书库中图书数量
数据流去向:图书库
数据项组成: BookID (图书编码)+ O_Quantity (借阅数量)
数据流量: 1000 人 / 日
高峰流量: 2000 人 / 日
数据流编号: D05
数据流名称:图书查询信息
简述:图书查询信息
数据流来源:读者
数据流去向: P3_11 检索处理模块
数据项组成: Book ID|BookName|Auth|Publisher
数据流量: 2000次/日
高峰流量: 4000次/日
数据流编号:D06
数据流名称:图书检索结果
简述:返回给读者的查询结果
数据流来源: P3 _11 检索条件处理模块,从图书库中返给读者的查询结果
数据流去向:读者
数据项组成:查无此书|符合条件的图书数量+{图书馆藏号+图书类别+书名+作者+出版社+出版日期+在库册数}
数据流量:2000次/日
高峰流量:4000次/日
数据流编号: D07
数据流名称:图书预定信息
简述:读者预定图书时填写的信息
数据流来源:用户填写图书预定信息,要求预定图书
数据流去向: P4 _11 预定信息输入
数据项组成: ReaderName + Password + BookID
数据流量: 50 次 / 日
高峰流量: 100 次 / 日
12 系统设计
121 系统功能设计
“图书馆管理信息系统”的主要功能有:图书目录检索、网上图书预定、图书借阅、电子出版物借阅、图书采编、读者留言和系统维护等。系统功能如图 1 - 13 所示。
图 1 - 13 图书馆管理信息系统功能
各子系统功能如下所述。
1 读者注册系统
读者访问系统时将检验读者账号和密码,经过注册的读者允许进入系统。
2 书目查询系统
读者进入图书馆管理信息系统后,可以根据需要检索书名或期刊。检索条件可以是书名称、图书编号、作者姓名或关键字等条件,如果读者拥有不充分还可以进行模糊查询。
3 图书预定系统
读者检索到需要的图书后,单击所需要图书条目,进入图书预定系统,读者也可以从图书馆管理信息系统主界面进入图书预定系统。系统查询图书库,如果书库中有此书,则将此书为该读者保留三天。读者应当在三天内到图书馆办理借阅手续,否则系统将自动取消保留。
4 图书借阅系统
读者查找到所需图书后,在图书保留期内到图书馆办理借阅手续。图书借阅系统处理图书借阅、还书、续借等手续。
5 图书采编系统
图书采购入库经过编目等处理后,将其目录存入数据库,提供给读者检索使用。目录信
息包括图书编号、图书类别、书名、作者、出版社、定价、出版日期和数量等。
6 电子读物系统
随着数字技术的发展,图书馆中的电子读物的数量越来越大。电子读物系统处理电子读物的阅览、版权与安全等事务。
7 读者留言板
通过留言板,读者将需要的图书、要求和建议等记录下来,与图书馆管理人员交流。
8 系统维护模块
系 统维护模块主要为图书馆管理人员提供图书统计信息和读者统计信息,以便于管理人
员从宏观上掌握图书馆运行的总体状况。
122 系统环境设计
1硬件环境设计
图书馆管理信息系统采用两台服务器构成双机备份结构,保证提供实时服务。为保证较快的响应时间,选用处理速度较高的计算机系统,内存大小对数据库系统的响应速度影响较大,选择内存较大的系统。网络通信速度选用100Mbit/s1000Mbit/s。为保证系统中心的信息安全,配置必要的数据备份设备(采用外部备份方式)。
2软件设计环境设计
图书馆管理信息系统采用先进的 Client ( Browser ) Server/Database Server 模式,服务器端采用 Web 方式进行系统开发,用户使用通用的浏览器访问该“图书馆管理信息系统”,服务器端采用应用逻辑服务和数据库服务两层,与客户端形成三级系统结构。采用这样的三层结构,具有结构清晰、维护简单、运行速度高等特点。软件结构如图 1 - 14 所示。
图 1 - 14 图书馆管理信息系统的三层体系结构
*** 作系统采用 Microsoft 公司的 NT 服务器, Web 站点发布系统选用 Microsoft 公司的 IIS ,数据库系统选用 Microsoft 公司的 SQL 。用户界面设计设计使用 Dreamweaver 、 Flash 和 FrontPage 等软件工具。
3 网络环境设计
图书馆的网络系统,由图书馆主交换机和部门交换机组成。用户可以在图书馆内部使用
图书馆网络系统访问该系统,也可以在图书馆外部使用互联网访问该图书馆管理信息系统。问题一:什么是系统流程图 系统流程图又叫事务流程图,是在计算机事务处理应用进行系统分析时常用的一种描述方法(另一个是数据流图),它描述了计算机事务处理中从数据输入开始到获得输出为止,各个处理工序的逻辑过程。
问题二:数据流图和系统流程图的区别和联系 数据流程图是以图形的方式表达在问题中信息的变换和传递过程。它把系统看成是由数据流联系的各种概念的组合,用分解及抽象手段来控制需求分析的复杂性,采用分层的数据流程图来表示一个复杂的系统。 很多资料上,数据流程图也叫数据流图,都指DFD:Data Flow Diagram。 需要注意的是数据流图和程序设计中的程序流程图(Flow Chat)是不同的,数据流图关心的是企业业务系统中的数据处理加工的客观过程,并不关心未来电子化处理的加工过程;数据流图中流动的只是数据,并没有控制过程,但在程序流程图当中,必须有控制逻辑。 结构化分析是面向数据流开展需求分析工作的一种有效方法。一般采用自顶向下,逐层分解的演义分析法来定义系统的需求,即先把分析对象抽象成一个系统,然后自顶向下的逐层分解,将复杂的系统分解成简单的、能够清楚地被理解和表达的若干个子系统,如图1(逐层分解的数据流程图)所示。这样就可以分别理解系统的每个细节、前后顺序和相互关系,找出各部分之间的数据接口。在结构化分析方法所采用的工具有数据流程图(DFD)、数据字典(DD)、结构化语言、判定树、判定表等。 数据字典(Data dictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由DBMS自动更新的数据字典。被动数据字典是指修改时必须手工更新其内容的数据字典。
问题三:数据流图和数据流程图有什么区别啊? 数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流图的基本符号的意思:
1矩形表示数据的外部实体;
2圆角的矩形表示变换数据的处理逻辑;
3少右面的边矩形表示数据的存储;
4箭头表示数据流。
数据流程图中有以下几种主要元素:
→:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份z号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
□:数据源(终点)。代表系统之外的实体,可以是人、物或其他软件系统。
○:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。
数据流程图 是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。
为了描述复杂的软件系统的信息流向和加工,可采用分层的DFD来描述,分层DFD有顶层,中间层、底层之分。
(1)顶层。决定系统的范围,决定输入输出数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层DFD只有一张。
(2)中间层。顶层之下是若干中间层,某一中间层既是它上一层加工的分解结果,又是它下一层若干加工的抽象,即它又可进一步分解。
(3)底层。若一张DFD的加工不能进一步分解,这张DFD就是底层的了。底层DFD的加工是由基本加工构成的,所谓基本加工是指不能再进行分解的加工。
数据流程图的基本成分
系统部件包括系统的外部实体、处理过程、数据存储和系统中的数据流四个组成部分
1,外部实体
外部实体指系统以外又和系统有联系的人或事物,它说明了数据的外部来源和去处,属于系统的外部和系统的界面。外部实体支持系统数据输入的实体称为源点,支持系统数据输出的实体称为终点。 通常外部实体在数据流程图中用正方形框表示,框中写上外部实体名称,为了区分不同的外部实体,可以在正方形的左上角用一个字符表示,同一外部实体可在一张数据流程图中出现多次,这时在该外部实体符号的右下角画上小斜线表示重复
2,处理过程
处理指对数据逻辑处理,也就是数据变换,它用来改变数据值。而每一种处理又包括数据输入、数据处理和数据输出等部分。在数据流程图中处理过程用带圆角的长方形表示处理,长方形分三个部分,标识部分用来标识一个功能,功能描述部门是必不可少的,功能执行部门表示功能由谁来完成。
3,数据流
数据流是指处理功能的输入或输出。它用来表示一中间数据流值,但不能用来改变数据值。数据流是模拟系统数据在系统中传递过程的工具。
在数据流程图中用一个水平箭头或垂直箭头表示,箭头指出数据的流动方向,箭线旁注明数据流名。
4,数据存储
数据存储表示数据保存的地方,它用来存储数据。系统处理从数据存储中提取数据,也将处理的数据返回数据存储。与数据流不同的是数据存储本身不产生任何 *** 作,它仅仅响应存储和访问数据的要求。
在数据流程图中数据存储用右边开口的长方条表示。在长方条内写上数据存储名字。为了区别和引用方便,左端加一小格,再标上一个标识,用字母D和数字组成
1,画数据流程图的基本原则:
①数据流程图上所有图形符号必须是>>
问题四:软件工程中系统数据流程图什么意思 通过数据流图,
软件设计师可以自顶而下的分析系统的信息流程、
在图上确定需要计算机处理的部分、
向数据库设计过渡、根据数据流向确定存取方式、能够确定一个处理过程。而在测试过程中,数据流
图可以方便、直接的帮助程序员查找到错误的发生位置。
1Viso 这也是微软旗下的一款信息流程软件,功能强大。只要你水平强大,基本能做出任何你想要的东西。
2Edraw(亿图)。也是一款网络图绘制软件,比Viso占用内存小,但是功能同VIsio更强大。
问题五:数据流图怎么画 数据流图的画法
数据流图也称为数据流程图date flow diagram , DFD,是一种便于用户理解和分析系统数据流程的图形工具,他摆脱了系统和具体内容,精确的在逻辑上描述系统的功能、输入、输出和数据存储等,是系统逻辑模型的重要组成部分。
数据流图的基本组成成分
数据流:是由一组固定成分的数据组成,表示数据的流向。值得注意的是,数据流图中描述的是数据流,而不是控制流。除了流向数据存储或从数据存储流出的数据不必命名外,每个数据流必须要有一个合适的名字,以反映该数据流的含义。
加工:加工描述了输入数据流到输出数据之间的变换,也就是输入数据流经过什么处理后变成了输出数据。每个加工都有一个名字和编号。编号能反映该加工位于分层的数据流图的哪个层次和哪张图中,能够看出它是由哪个加工分解出来的子加工。
数据存储:数据存储表示暂时存储的数据。每个数据存储都有一个名字。
外部实体:外部实体是存在于软件系统之外的人员或组织,他指出数据所需要的发源地或系统所产生的数据的归属地。
外部实体 加工 数据流
分层数据流图的设计方法
第一步,画子系统的输入输出
把整个系统视为一个大的加工,然后根据数据系统从哪些外部实体接收数据流,以及系统发送数据流到那些外部实体,就可以画出输入输出图。这张图称为顶层图。
第二步,画子系统的内部
把顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图的输入数据经过若干加工处理后,变成顶层图的输出数据流。这张图称为0层图。从一个加工画出一张数据流图的过程就是对加工的分解。
可以用下述方法来确定加工:
在数据流的组成或值发生变化的地方应该画出一个加工,这个加工的功能就是实现这一变化,也可以根据系统的功能决定加工。
确定数据流的方法
用户把若干数据当作一个单位来处理(这些数据一起到达、一起处理)时,可以把这些数据看成一个数据流。
关于数据存储
对于一些以后某个时间要使用的数据,可以组织成为一个数据存储来表示。
第三步,画加工的内部
把每个加工看作一个小系统,把加工的输入输出数据流看成小系统的输入输出流。于是可以象画0层图一样画出每个小系统的加工的DFD图。
第四步,画子加工的分解图
对第三步分解出来的DFD图中的每个加工,重复第三步的分解过程,直到图中尚未分解的加工都是足够简单的(即不可再分解)。至此,得到了一套分层数据流图。
第五步,对数据流图和加工编号
对于一个软件系统,其数据流图可能有许多层,每一层又有许多张图。为了区分不同的加工和不同的DFD子图,应该对每张图进行编号,以便于管理。
● 顶层图只有一张,图中的加工也只有一个,所以不必为其编号。
● 0层图只有一张,图中的加工号分别是01、02、…,或者1, 2 。
● 子图就是父图中被分解的加工号。
● 子图中的加工号是由图号、圆点和序号组成,如:112,13 等等。
应该注意的问题:
1 应适当的为数据流、加工、数据存储以及外部实体命名,名字应该反映该成分的实际含义,避免使用空洞的名字。
2 画数据流图,不是画控制流。
3 一个加工的输出数据流,不应与输入数据流同名,及时他们的组成完全相同。
4 允许一个加工有多条数据流流向另一个加工,也允许一个加工有两条相同的输出数据流流向不同的加工。
5 保持父图与子图的平衡。也就是说,父图中的某加工的输入输出流必须与他的子图的输入输出数据流在数量上和名字>>
问题六:什么叫无限流,系统流,随身流 小说的类型。
《无限流》起源于小说《无限恐怖》的火爆,以及大量跟风小说的问世。基本上是主角穿越到小说,,动漫等世界完成任务。
系统流:随身有个游戏系统,发布任务,抽奖,得经验,数据化世界之类的。
随身流:就是主角带个厉害的老爷爷,指点主角之类的。。如斗破苍穹
问题七:系统流程图怎么画 你好
应当使用统一符号绘制系统流程图
问题八:系统流程图,数据流图,数据字典各是描绘系统的什么模型 流程图可以用microsoft office里自带的microsoft office visio做,选择左侧的软件和数据库,然后在右侧“其他模板”里选择“数据流模型图”,就可以进入界面画数据流图了。左侧选择你想要的图形拖至右侧格子框中,大小可以调,双击可以在里面输入文字,一个小tip:“数据存储”框中输入文字双击时行不通的,先左键单击“数据存储”框,出现上下左右四个小箭头,左键单击右边的小箭头就可以出现一个框让你输,此时无需任何点击就可以输入了。有一本专门的书叫《全国计算机等级考试二级公共基础知识》,到一办的大学里的考试书店都有卖的,一般卖的是盗版的,我们这才7块钱一本,光看看总结的资料也行,我给你找了一份。第一章 数据结构与算法
11 算法
算法:是指解题方案的准确而完整的描述。
算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括:
(1)可行性;
(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;
(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;
(4)拥有足够的情报。
算法的基本要素:一是对数据对象的运算和 *** 作;二是算法的控制结构。
指令系统:一个计算机系统能执行的所有指令的集合。
基本运算包括:算术运算、逻辑运算、关系运算、数据传输。
算法的控制结构:顺序结构、选择结构、循环结构。
算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。算法时间复杂度是指执行算法所需要的计算工作量。算法空间复杂度是指执行这个算法所需要的内存空间。12 数据结构的基本基本概念
数据结构研究的三个方面:
(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;
(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;
(3)对各种数据结构进行的运算。
数据结构是指相互有关联的数据元素的集合。数据的逻辑结构包含:
(1)表示数据元素的信息;
(2)表示各数据元素之间的前后件关系。
数据的存储结构有顺序、链接、索引等。
线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构
线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
非空线性表的结构特征:
(1)且只有一个根结点a1,它无前件;
(2)有且只有一个终端结点an,它无后件;
(3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。
线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)k,,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。
顺序表的运算:插入、删除。(详见14--16页)
1.4 栈和队列
栈是限定在一端进行插入与删除的线性表,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。栈按照“先进后出”(FILO)或“后进先出”(LIFO)组织数据,栈具有记忆作用。用top表示栈顶位置,用bottom表示栈底。
栈的基本运算:(1)插入元素称为入栈运算;(2)删除元素称为退栈运算;(3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。
队列是指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。Rear指针指向队尾,front指针指向队头。队列是“先进行出”(FIFO)或“后进后出”(LILO)的线性表。
队列运算包括(1)入队运算:从队尾插入一个元素;(2)退队运算:从队头删除一个元素。
循环队列:s=0表示队列空,s=1且front=rear表示队列满
1.5 线性链表
数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。
结点由两部分组成:(1)用于存储数据元素值,称为数据域;(2)用于存放指针,称为指针域,用于指向前一个或后一个结点。
在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
链式存储方式即可用于表示线性结构,也可用于表示非线性结构。
线性链表,HEAD称为头指针,HEAD=NULL(或0)称为空表,如果是两指针:左指针(Llink)指向前件结点,右指针(Rlink)指向后件结点。
线性链表的基本运算:查找、插入、删除。
1.6 树与二叉树
树是一种简单的非线性结构,所有元素之间具有明显的层次特性。
在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。二叉树的特点:(1)非空二叉树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。二叉树的基本性质:(1)在二叉树的第k层上,最多有2k-1(k≥1)个结点;(2)深度为m的二叉树最多有2m-1个结点;(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;
(4)具有n个结点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分;
(5)具有n个结点的完全二叉树的深度为[log2n]+1;
(6)设完全二叉树共有n个结点。如果从根结点开始,按层序(每一层从左到右)用自然数1,2,…n给结点进行编号(k=1,2…n),有以下结论:
①若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点的父结点编号为INT(k/2);
②若2k≤n,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(也无右子结点);
③若2k+1≤n,则编号为k的结点的右子结点编号为2k+1;否则该结点无右子结点。
满二叉树是指除最后一层外,每一层上的所有结点有两个子结点,则k层上有2k-1个结点深度为m的满二叉树有2m-1个结点。完全二叉树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。二叉树存储结构采用链式存储结构,对于满二叉树与完全二叉树可以按层序进行顺序存储。二叉树的遍历:(1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树;(2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树;(3)后序遍历(LRD)首先遍历左子树,然后访问遍历右子树,最后访问根结点。1.7 查找技术
顺序查找的使用情况:
(1)线性表为无序表;
(2)表采用链式存储结构。
二分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,最坏情况只需比较log2n次。
1.8 排序技术
排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。
交换类排序法:(1)冒泡排序法,需要比较的次数为n(n-1)/2;(2)快速排序法。
插入类排序法:(1)简单插入排序法,最坏情况需要n(n-1)/2次比较;(2)希尔排序法,最坏情况需要O(n15)次比较。
选择类排序法:(1)简单选择排序法, 最坏情况需要n(n-1)/2次比较;(2)堆排序法,最坏情况需要O(nlog2n)次比较。
第二章程序设计基础
2.1 程序设计设计方法和风格
如何形成良好的程序设计风格
1、源程序文档化; 2、数据说明的方法;
3、语句的结构; 4、输入和输出。
注释分序言性注释和功能性注释,语句结构清晰第一、效率第二。
2.2 结构化程序设计
结构化程序设计方法的四条原则是:1 自顶向下;2 逐步求精;3模块化;4限制使用goto语句。
结构化程序的基本结构和特点:
(1)顺序结构:一种简单的程序设计,最基本、最常用的结构;
(2)选择结构:又称分支结构,包括简单选择和多分支选择结构,可根据条件,判断应该选择哪一条分支来执行相应的语句序列;
(3)循环结构:可根据给定条件,判断是否需要重复执行某一相同程序段。
2.3 面向对象的程序设计
面向对象的程序设计:以60年代末挪威奥斯陆大学和挪威计算机中心研制的SIMULA语言为标志。
面向对象方法的优点:
(1)与人类习惯的思维方法一致;
(2)稳定性好;
(3)可重用性好;
(4)易于开发大型软件产品;
(5)可维护性好。
对象是面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。
面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组 *** 作组成。
属性即对象所包含的信息, *** 作描述了对象执行的功能, *** 作也称为方法或服务。
对象的基本特点:(1)标识惟一性;(2)分类性;(3)多态性;(4)封装性;(5)模块独立性好。类是指具有共同属性、共同方法的对象的集合。所以类是对象的抽象,对象是对应类的一个实例。消息是一个实例与另一个实例之间传递的信息。消息的组成包括(1)接收消息的对象的名称;(2)消息标识符,也称消息名;(3)零个或多个参数。
继承是指能够直接获得已有的性质和特征,而不必重复定义他们。继承分单继承和多重继承。单继承指一个类只允许有一个父类,多重继承指一个类允许有多个父类。多态性是指同样的消息被不同的对象接受时可导致完全不同的行动的现象
第三章软件工程基础
3.1 软件工程基本概念
计算机软件是包括程序、数据及相关文档的完整集合。
软件的特点包括:
(1)软件是一种逻辑实体;
(2)软件的生产与硬件不同,它没有明显的制作过程;
(3)软件在运行、使用期间不存在磨损、老化问题;
(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;
(5)软件复杂性高,成本昂贵;
(6)软件开发涉及诸多的社会因素。
软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。
软件危机主要表现在成本、质量、生产率等问题。
软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程包括3个要素:方法、工具和过程。软件工程过程是把软件转化为输出的一组彼此相关的资源和活动,包含4种基本活动:
(1)P——软件规格说明;
(2)D——软件开发;
(3)C——软件确认;
(4)A——软件演进。
软件周期:软件产品从提出、实现、使用维护到停止使用退役的过程。软件生命周期三个阶段:软件定义、软件开发、运行维护,主要活动阶段是:
(1)可行性研究与计划制定;
(2)需求分析;
(3)软件设计;
(4)软件实现;
(5)软件测试;
(6)运行和维护。
软件工程的目标和与原则:
目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互 *** 作性且满足用户需求的产品。
基本目标:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发软件易于移植;需要较低的费用;能按时完成开发,及时交付使用。
基本原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境。软件工程管理包括:软件管理学、软件工程经济学、软件心理学等内容。软件管理学包括人员组织、进度安排、质量保证、配置管理、项目计划等。软件工程原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
3.2 结构化分析方法
结构化方法的核心和基础是结构化程序设计理论。需求分析方法有(1)结构化需求分析方法; (2)面向对象的分析的方法。从需求分析建立的模型的特性来分:静态分析和动态分析。结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。结构化分析的常用工具(1)数据流图; (2)数据字典; (3)判定树; (4)判定表。
数据流图:描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统功能建模。
数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。
判定树:从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。
判定表:与判定树相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。
数据字典是结构化分析的核心。
软件需求规格说明书的特点:
(1)正确性;
(2)无岐义性;
(3)完整性;
(4)可验证性;
(5)一致性;
(6)可理解性;
(7)可追踪性。
3.3 结构化设计方法
软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,软件设计是确定系统的物理模型。软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径。
从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。结构设计:定义软件系统各主要部件之间的关系。
数据设计:将分析时创建的模型转化为数据结构的定义。
接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信。
过程设计:把系统结构部件转换成软件的过程描述。
从工程管理角度来看:概要设计和详细设计。
软件设计的一般过程:软件设计是一个迭代的过程;先进行高层次的结构设计;后进行低层次的过程设计;穿插进行数据设计和接口设计。
衡量软件模块独立性使用耦合性和内聚性两个定性的度量标准。在程序结构中各模块的内聚性越强,则耦合性越弱。优秀软件应高内聚,低耦合。
软件概要设计的基本任务是:
(1)设计软件系统结构;(2)数据结构及数据库设计;
(3)编写概要设计文档;(4)概要设计文档评审。
模块用一个矩形表示,箭头表示模块间的调用关系。
在结构图中还可以用带注释的箭头表示模块调用过程中来回传递的信息。还可用带实心圆的箭头表示传递的是控制信息,空心圆箭心表示传递的是数据。
结构图的基本形式:基本形式、顺序形式、重复形式、选择形式。结构图有四种模块类型:传入模块、传出模块、变换模块和协调模块。典型的数据流类型有两种:变换型和事务型。变换型系统结构图由输入、中心变换、输出三部分组成。事务型数据流的特点是:接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。
详细设计:是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。
常见的过程设计工具有:图形工具(程序流程图)、表格工具(判定表)、语言工具(PDL)。
3.4 软件测试
软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。
软件测试的目的:发现错误而执行程序的过程。软件测试方法:静态测试和动态测试。静态测试包括代码检查、静态结构分析、代码质量度量。不实际运行软件,主要通过人工进行。
动态测试:是基本计算机的测试,主要包括白盒测试方法和黑盒测试方法。
白盒测试:在程序内部进行,主要用于完成软件内部CAO作的验证。主要方法有逻辑覆盖、基本基路径测试。
黑盒测试:主要诊断功能不对或遗漏、界面错误、数据结构或外部数据库访问错误、性能错误、初始化和终止条件错,用于软件确认。主要方法有等价类划分法、边界值分析法、错误推测法、因果图等。
软件测试过程一般按4个步骤进行:单元测试、集成测试、验收测试(确认测试)和系统测试。
3.5 程序的调试
程序调试的任务是诊断和改正程序中的错误,主要在开发阶段进行。
程序调试的基本步骤:
(1)错误定位;
(2)修改设计和代码,以排除错误;
(3)进行回归测试,防止引进新的错误。
软件调试可分表静态调试和动态调试。静态调试主要是指通过人的思维来分析源程序代码和排错,是主要的设计手段,而动态调试是辅助静态调试。主要调试方法有:
(1)强行排错法;
(2)回溯法;
(3)原因排除法。
第四章 数据库设计基础
4.1 数据库系统的基本概念
数据:实际上就是描述事物的符号记录。
数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。而数据的值给出了符合定型的值,如整型值15。
数据库:是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序共享。
数据库存放数据是按数据所提供的数据模式存放的,具有集成与共享的特点。
数据库管理系统:一种系统软件,负责数据库中的数据组织、数据 *** 纵、数据维护、控制及保护和数据服务等,是数据库的核心。
数据库管理系统功能:
(1)数据模式定义:即为数据库构建其数据框架;
(2)数据存取的物理构建:为数据模式的物理存取与构建提供有效的存取方法与手段;
(3)数据 *** 纵:为用户使用数据库的数据提供方便,如查询、插入、修改、删除等以及简单的算术运算及统计;
(4)数据的完整性、安生性定义与检查;
(5)数据库的并发控制与故障恢复;
(6)数据的服务:如拷贝、转存、重组、性能监测、分析等。
为完成以上六个功能,数据库管理系统提供以下的数据语言:
(1)数据定义语言:负责数据的模式定义与数据的物理存取构建;
(2)数据 *** 纵语言:负责数据的 *** 纵,如查询与增、删、改等;
(3)数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等。
数据语言按其使用方式具有两种结构形式:交互式命令(又称自含型或自主型语言)宿主型语言(一般可嵌入某些宿主语言中)。
数据库管理员:对数据库进行规划、设计、维护、监视等的专业管理人员。
数据库系统:由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。
数据库应用系统:由数据库系统、应用软件及应用界面三者组成。
文件系统阶段:提供了简单的数据共享与数据管理能力,但是它无法提供完整的、统一的、管理和数据共享的能力。
层次数据库与网状数据库系统阶段:为统一与共享数据提供了有力支撑。
关系数据库系统阶段
数据库系统的基本特点:数据的集成性、数据的高共享性与低冗余性、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。
数据库系统的三级模式:
(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;
(2)外模式:也称子模式与用户模式。是用户的数据视图,也就是用户所见到的数据模式;
(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。
数据库系统的两级映射:(1)概念模式到内模式的映射;(2)外模式到概念模式的映射。
42 数据模型
数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与 *** 作提供一个抽象的框架。描述了数据结构、数据 *** 作及数据约束。
E-R模型的基本概念(1)实体:现实世界中的事物;
(2)属性:事物的特性;
(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。
E-R模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性有属性域,每个实体可取属性域内的值。一个实体的所有属性值叫元组。E-R模型的图示法:(1)实体集表示法; (2)属性表法; (3)联系表示法。
层次模型的基本结构是树形结构,具有以下特点:
(1)每棵树有且仅有一个无双亲结点,称为根;
(2)树中除根外所有结点有且仅有一个双亲。
从图论上看,网状模型是一个不加任何条件限制的无向图。
关系模型采用二维表来表示,简称表,由表框架及表的元组组成。一个二维表就是一个关系。
在二维表中凡能唯一标识元组的最小属性称为键或码。从所有侯选健中选取一个作为用户使用的键称主键。表A中的某属性是某表B的键,则称该属性集为A的外键或外码。
关系中的数据约束:
(1)实体完整性约束:约束关系的主键中属性值不能为空值;
(2)参照完全性约束:是关系之间的基本约束;
(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。
43关系代数
关系数据库系统的特点之一是它建立在数据理论的基础之上,有很多数据理论可以表示关系模型的数据 *** 作,其中最为著名的是关系代数与关系演算。
关系模型的基本运算:(1)插入 (2)删除 (3)修改 (4)查询(包括投影、选择、笛卡尔积运算)
44 数据库设计与管理
数据库设计是数据应用的核心。
数据库设计的两种方法:
(1)面向数据:以信息需求为主,兼顾处理需求;
(2)面向过程:以处理需求为主,兼顾信息需求。
数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。需求分析常用结构析方法和面向对象的方法。结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统。用数据流图表达数据和处理过程的关系。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。
数据字典是各类数据描述的集合,包括5个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种(1)集中式模式设计法(适用于小型或并不复杂的单位或部门);(2)视图集成设计法。设计方法:E-R模型与视图集成。视图设计一般有三种设计次序:自顶向下、由底向上、由内向外。视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。关系视图设计:关系视图的设计又称外模式设计。
关系视图的主要作用:
(1)提供数据逻辑独立性;
(2)能适应用户对数据的不同需求;
(3)有一定数据保密功能。
数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理的存取路径,以提高数据库访问速度有效利用存储空间。一般RDBMS中留给用户参与物理设计的内容大致有索引设计、集成簇设计和分区设计。
数据库管理的内容:
(1)数据库的建立;
(2)数据库的调整;
(3)数据库的重组;
(4)数据库安全性与完整性控制;
(5)数据库的故障恢复;
(6)数据库监控。问题一:物联网专业的主要学习内容是什么? 这些课都与你的专业密切相关,但是物联网专业面很宽,其相关技术主要集中在通信网络、计算机和自动控制这三个大专业中。常人学好一个专业就很不容易,你需要学好三个专业的内容,这当然很难。因此,你感到无所适从也很正常。你想要有所突破,记得做好两件事:一是抽空参加思科或者微软的认证考试,增强通信网络或者计算机方面的实践能力,二是积极参加实践性课程或者课外实践活动,做一些简单的传感测控系统,通过实践理解自动控制原理。从具体应用的角度就比较容易理解啥是物联网。
问题二:物联网专业需要学习什么课程 不同院校的专业课程可能有差别。
参考:
物联网工程专业开设基础课程和专业核心课程两大类,学生主要学习研究信息流、物质流和能量流彼此作用、相互转换的方法和技术,有着很强的工程实践特点。
学生需要学习包括计算机系列课程、信息与通信工程、模拟电子技术、物联网技术及应用、物联网安全技术等几十门课程,同时还要打牢坚实的数学和物理基础。另外,优秀的外语能力也是必备条件,因为目前物联网的研发、应用主要集中在欧美等国家,学生需要阅读外文资料和应对国际交流。
北京科技大学招生就业处处长韩经说,该校的课程包括物联网工程导论、嵌入式系统与单片机、无线传感器网络与RFID技术、物联网技术及应用、云计算与物联网、物联网安全、物联网体系结构及综合实训、信号与系统概论、现代传感器技术、数据结构、计算机组成原理、计算机网络、现代通信技术、 *** 作系统等课程以及多种选修课。
物联网专业是一门交叉学科,涉及计算机、通信技术、电子技术、测控技术等专业基础知识,以及管理学、软件开发等多方面知识。作为一个处于摸索阶段的新兴专业,各校都专门制定了物联网专业人才培养方案。
问题三:物联网专业学什么 1什么是物联网?
(1)通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物品与互联网相连接,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络概念。“物联网概念”是在“互联网概念”的基础上,将其用户端延伸和扩展到任何物品与物品之间,进行信息交换和通信的一种网络概念。
( 2)物联网是新一代信息技术的重要组成部分。其英文名称是“The Internet of things”。由此,顾名思义,“物联网就是物物相连的互联网”。这有两层意思:第一,物联网的核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信。
(3)从某种意义说,物联网并不是指把所有的物体都实现联网,是一种局域性的网络,相对一个行业,或一个组织系统。举个简单例子,物联网在行业应用,实现了一个闭环的信息系统,物联网采集的数据,只对本行业有用,别的行业就不需要先关数据。也没有必要了解。
2物联网有多火?
物联网是继计算机、互联网和移动通信之后的又一次信息产业的革命性发展,目前被正式列为国家重点发展的战略性新兴产业之一。物联网产业具有产业链长、涉及多个产业群的特点,其应用范围几乎覆盖了各行各业。
在美国,以物联网应用为核心的智慧地球计划,得到奥巴马 的积极回应和支持,其经济 方案将投资110亿美元用于智能电网以及相关项目。另外,欧盟也在2009年6月制定并公布了涵盖标准化、研究项目、试点工程、管理机制和国际对话在内的14点行动计划。
近几年,我国物联网也举得了前所未有的重视,虽然,巨大的市场需求将为物联网带来难得的发展机遇和广阔的发展空间。然而不可否认的是,物联网的发展必然促使物联网相关产业交融,各产业各司所职、各取所需,最终形成一个强大不机械化的产业链,蕴含难以想象的能量。到2015年,我国物联网将攻克一批关键核心技术,初步构建较为完善的标准体系,将在核心技术研发与产业化、关键标准研究与制定、产业链条建立与完善、重大应用示范与推广等方面取得显著成效,建成一批物联网应用示范重大工程,培育和发展一批具有国际竞争力的物联网骨干企业,初步形成创新驱动、协同发展、辐射面宽、带动力强的物联网发展格局,努力抢占新一轮世界经济科技制高点。
3物联网专业学什么?
物联网专业是教育部允许高校增设新专业后,高校申请最多的学校,这也说明了国家对物联网经济的重视和人才培养的迫切性。在2012年最新颁布的普通高等学校本科专业目录中,物联网工程专业属于工学中的计算机大类,标准学制4年,毕业后授予工学学士学位。
物联网工程专业开设基础课程和专业核心课程两大类,学生主要学习研究信息流、物质流和能量流彼此作用、相互转换的方法和技术,有着很强的工程实践特点。
物联网专业是一门交叉学科,涉及计算机、通信技术、电子技术、测控技术等专业基础知识,以及管理学、软件开发等多方面知识。作为一个处于摸索阶段的新兴专业,各校都专门制定了物联网专业人才培养方案。学生需要学习包括计算机系列课程、信息与通信工程、模拟电子技术、物联网技术及应用、物联网安全技术等几十门课程,同时还要打牢坚实的数学和物理基础。另外,优秀的外语能力也是必备条件,因为目前物联网的研发、应用主要集中在欧美等国家,学生需要阅读外文资料和应对国际交流。
北京科技大学招生就业处处长韩经说,该校的课程包括物联网工程导论、嵌入式系统与单片机、无线传感器网络与RFID技术、物联网技术及应用、云计算与物联网、物联网安全、物联网体系>>
问题四:物联网专业必须要学哪些专业 目前 我正从事 这方面的 研发 和项目
总体来讲
计算机的软件编程,至少会两种,一种用于编写 软件(我用C#),一种用于底层通讯或嵌入式开发(我用C), 数据库技术(至少得熟练sql server)
计算机通信技术,要了解通讯协议(非常重要,目前比较流行的profibus,modbus等)
电子电路的知识 至少要知道 光电耦合器、继电器、三极管、二极管等元器件
了解 最基本的 电子、电路 控制原理
要了解 一定的 电磁技术 RFID 条码(现在国内主要为一维码,趋势是二维码,所以
不要把眼光只局限在条码扫描器上,视觉产品可能才是王道,推荐康耐视的产品)
大项目 还需要知道 一般的电气控制原理 (不要拿给你个传感器都不会接线)
如 PLC 、DCS等
目前 我所从事的 药品行业、食品行业 经常遇到的 也就这些
问题五:物联网应用技术应该要学习哪些课程 问题解答
各所院校侧重点不同,所开设的课程也有所不同,但是,骨干核心课程很相近。
课程1、 物联网产业与技术导论 使用电子工业出版社《物联网:技术、应用、标准、安全与商业模式》等等教材。 在学完高等数学,物理,化学,通信原理,数字电路,计算机原理,程序设计原理等课程后开设本课程,全面了解物联网之RFID、M2M、传感网、两化融合等技术与应用。
课程2、C语言程序设计 使用清华大学出版社《C语言程序设计》等教材。 物联网涉及底层编程,C语言为必修课,同时需要了解OSGi,OPC,Silverlight等技术标准。
课程3、Java程序设计 ,使用 机械工业出版社《Java语言程序设计教程》等教材。 物联网应用层,服务器端集成技术,开放Java技术也是必修课,同时需要了解Eclipse,SWT, Flash,HTML5,SaaS等技术
课程4、无线传感网络概论,使用 无线龙通讯科技出版社《现代无线传感器网络概论》、北京航空航天大学出版社《短距离无线通讯入门与实战》等教材。 学习各种无线RF通讯技术与标准,Zigbee, 蓝牙,WiFi,GPRS,CDMA,3G, 4G, 5G等等。
课程5、 TCP/IP网络与协议 ,《TCP/IP网络与协议》,清华大学出版社,等教材。 TCP/IP以及OSI网络分层协议标准是所有有线和无线网络协议的基础,Socket编程技术也是基础技能,为必修课
课程6、嵌入式系统技, 《嵌入式系统技术教程》,人民邮电出版社等教材。 嵌入式系统是物联网感知层和通讯层重要技术,为必修课
课程7、传感器技术概论 , 《传感器技术》,中国计量出版社,等教材。 物联网专业学生需要对传感器技术与发展,尤其是在应用中如何选用有所了解,但不一定需要了解传感器的设计与生产,对相关的材料科学,生物技术等有深入了解
课程8、RFID技术概论 ,《射频识别(RFID)技术原理与应用》,机械工业出版社,胆教材。 RFID作为物联网主要技术之一,需要了解,它本身(与智能卡技术融合)可以是一个细分专业或行业,也可以是研究生专业选题方向。
课程9、工业信息化及现场总线技术 ,《现场总线技术及应用教程》,机械工业出版社,等教材。 工业信息化也是物联网主要应用领域,需要了解,它本身也可以是一个细分专业或行业,也可作为研究生专业选题方向。
课程10、M2M技术概论, 《M2M: The Wireless Revolution》,TSTC Publishing,等教材。 本书是美国“Texas State Techinical College”推出的M2M专业教材,在美国首次提出了M2M专业教学大纲,M2M也是物联网主要领域,需要了解,建议直接用英文授课。课程11、物联网软件、标准、与中间件技术 ,《中间件技术原理与应用》,清华大学出版社,《物联网:技术、应用、标准、安全与商业模式》,电子工业出版社,等教材。 物联网产业发展的关键在于应用,软件是灵魂,中间件是产业化的基石,需要学习和了解,尤其是对毕业后有志于物联网技术发展的学生
问题六:物联网专业到底学什么? 物联网“概念”如火如荼,作为提 业有生力量的大学自然不甘寂寞,于是乎,各个学校都在筹建、设立物联网专业,可从各方面渠道的信息看,似乎所想传授的知识五花八门,有侧重传感的,有侧重通讯的,有侧重某项应用领域的,如智能电网、智能交通等,似乎不像以往的专业设置,有相对统一的方向。 出现这个局面,首先就说明一点:物联网不应是一个传统形式本科专业,至少不适合作为一个本科专业而存在! 现实中很多领域都有这个特征,它有广泛的需求,且孕育着极大的机会,但由于其所涉及的知识属于跨学科的,需要多方面的基础及专业知识作为铺垫,故作为本科专业有些勉为其难。 我很早就听过的一个说法:海洋学院不应该面向高中生招生,应该是从学过相关专业的本科毕业生中选拔,因为海洋研究要用到各方面的专业知识,它属于二级学科,需要一些基础性的专业知识背景,如生物、化学、流体力学等,而这些知识是高中生所不具备的,如果要他们在海洋学院的四年中学会这些,估计和海洋相关的知识几乎没有时间传授了,这样毕业的学生和普通院校有何差别? 对比今天的物联网,似乎也有“海洋学院”的影子。 如果把物联网提升到目前所宣传的那个高度,要培养一个能应对如此“宽泛”领域的人才,似乎也应该是作为一个二级学科而存在。 首先这些人应该在普通本科中学会一些基础性的专业知识,如测量、传感、通讯、大规模计算和统计等,然后再进入物联网专业,结合自己所具备的专业知识背景,侧重研究物联网的某一分支,如侧重于基于联网需求设计测量部分,或基于测量特征设计通讯链路和协议,或基于收集来的巨量信息研究如何用“云”来储存和分析,从而使其成为有效信息而非“字典”。 这些都不是一个高中生所能直接面对的,而把所需的专业知识作为物联网专业的基础知识来传授,时间不够,本来这些就是四年的本科课程,学完这些,留给物联网的相关知识传授时间有限了,只能培养出一个无特色的学生,这和设置此专业的初衷不是相悖吗? 所以,如果要培养一个真正意义上的物联网人才,靠本科四年的学习难以胜任! 所谓真正意义上的“物联网人才”,按我的理解应该是:能将目前的现实需求纳入物联网,从而产生有别于传统解决方案的革命性变化。 听起来有些“玄”,但目前的宣传就是如此,甚至有过之而无不及,腾“云”驾“物”是在媒体上看到的最经典的描述!何时能落地,似乎还欠火候。 那针对目前的物联网热,学校应该如何应对呢? 依本人愚见:暂时不去想培养那些“真正的物联网人才”,那些未来的并非本科教育所能造就,作为大量输送技术骨干进入社会的工科院校,着眼点应该是如何培养一个能在未来的工作中应对物联网需求的技术人员。 要做到这点,首先应该分析物联网到底衍生出那些新的东西? “物联网”三个字实际上表达了其含义: 第一:“物”,乃所关注的对象 第二:“联”,乃所采取的手段 第三:“网”,乃解决问题的工具 这三个部分中,“物”早已存在,最为悠久,人们对“物”可以说是“关怀备至”了,至今仍在不断深入,并非物联网所带来的新生事物。 而“网”虽较“年轻”,但由于技术手段的进步,人们也已将其功能发挥的“淋漓尽致”,“网”已经给人们生活带来了巨大变化。 唯一属于物联网带来的新生事物就是“联”,即将“物”连接到“网”上! 联网的设备已很多,为何此时将“物”连到网上就成了新东西? 先分析一下以往的联网设备有什么特征。目前联网的设备主要是计算机、手机、电视等,还有一些幕后设备,如交换机、路由器等,究其特征,无一例外是和人交互,或者是服务于与人交互。所以,以往的互联网也可以称之为“人联网”! 而如今“物联网”所指的“物”,多>>
问题七:哪个学院有物联网专业 学院有三十多家的。物联网专业是一门交叉学科,涉及计算机、通信技术、电子技术、测控技术等专业基础知识,以及管理学、软件开发等多方面知识。
参考:物联网工程专业大学竞争力排行榜分析iotofweek/0
问题八:学物联网专业的以后能干什么工作啊 新能源材料与器件 招生规模:约40人左右,按大类招生,约两年后进行专业方向分流。主修课程:电子科学与工程学
传感网技术专业招生规模:约40人左右,按大类招生,约两年后进行专业方向分流。
主修课程:传感网技术
就业方向:目前物联网概念下的企业数量非常多,社会需求量也大,但是人才供给量很少,远不成比例。且未来几年,物联网技术会在社会各领域中广泛普及,因此这个专业的就业前景非常好。
河海大学
新能源科学与工程
主修课程:主要课程有理论力学、材料力学,机械设计基础、电工技术基础、微型计算机原理及应用、 工程热力学、气象学、太阳能发电电气设备与系统、太阳能发电并网技术、项目及企业管理等。
就业方向:培养太阳能利用工程系统设计、研究、运行、施工管理等方面知识的高级工程技术人才。
物联网工程
主修课程:主要课程有计算机信息技术、程序设计语言C、数据库技术、模拟电子技术、数字逻辑与系统、HDL及系统设计、数字信号处理、无线传感器网络技术及应用、数据融合理论与技术等。
就业方向:培养目标为具有通信、计算机应用、信息网络专业知识并掌握物联网领域关键技术的高等工程技术与管理人才。
南京邮电大学
智能电网信息工程
主修课程:主要学习电子技术、电气技术、控制理论、计算机技术、网络通信等技术,具备较宽领域的基本理论和基本知识,受到电子、电气、通信、计算机和控制工程实践等基本训练,具备对网络化、 信息化、智能化电气系统进行分析、设计和运行管理等方面的基本能力。课程有:电路理论系列课程、计算机技术系列课等。
就业方向:本专业学生毕业后,可在电力、电气信息、科研院所、高等院校、相关行业或部门从事设计、开发、生产运行与管理、科学研究、技术支持等工作。
南京中医药大学
生物制药
主修课程:生物化学、生物技术基础、生物制药工程学、酶工程与发酵工程、细胞生物学、微生物学 、生物制药工艺学、生物药品分析等。
就业方向:毕业后能从事生物药物工艺设计与生产、生物药品分析、新药研制与开发及工业企业管理等方面工作的高级生物制药工程技术人才。
问题九:请问,物联网专业都要学习什么课程? 5分 基础科目:大学英语、大学物理、高等数学、C语言程序与设计、线性代数、概率统计等
专业科目:物联网导论、电子电路、传感器技术概论、rfid技术概论、TCP-IP协议、
嵌入式系鼎、物联网软件、标准与中间件技术、M2M概论、JAVA等
这些专业科目是物联网工程的主流学科,但是不同的学校以此为基础,所修的科目可能与以上所说的有所不同。
问题十:物联网专业的主要学习内容是什么? 这些课都与你的专业密切相关,但是物联网专业面很宽,其相关技术主要集中在通信网络、计算机和自动控制这三个大专业中。常人学好一个专业就很不容易,你需要学好三个专业的内容,这当然很难。因此,你感到无所适从也很正常。你想要有所突破,记得做好两件事:一是抽空参加思科或者微软的认证考试,增强通信网络或者计算机方面的实践能力,二是积极参加实践性课程或者课外实践活动,做一些简单的传感测控系统,通过实践理解自动控制原理。从具体应用的角度就比较容易理解啥是物联网。物联网“概念”如火如荼,作为提供产业有生力量的大学自然不甘寂寞,于是乎,各个学校都在筹建、设立物联网专业,可从各方面渠道的信息看,似乎所想传授的知识五花八门,有侧重传感的,有侧重通讯的,有侧重某项应用领域的,如智能电网、智能交通等,似乎不像以往的专业设置,有相对统一的方向。 出现这个局面,首先就说明一点:物联网不应是一个传统形式本科专业,至少不适合作为一个本科专业而存在! 现实中很多领域都有这个特征,它有广泛的需求,且孕育着极大的机会,但由于其所涉及的知识属于跨学科的,需要多方面的基础及专业知识作为铺垫,故作为本科专业有些勉为其难。 我很早就听过的一个说法:海洋学院不应该面向高中生招生,应该是从学过相关专业的本科毕业生中选拔,因为海洋研究要用到各方面的专业知识,它属于二级学科,需要一些基础性的专业知识背景,如生物、化学、流体力学等,而这些知识是高中生所不具备的,如果要他们在海洋学院的四年中学会这些,估计和海洋相关的知识几乎没有时间传授了,这样毕业的学生和普通院校有何差别? 对比今天的物联网,似乎也有“海洋学院”的影子。 如果把物联网提升到目前所宣传的那个高度,要培养一个能应对如此“宽泛”领域的人才,似乎也应该是作为一个二级学科而存在。 首先这些人应该在普通本科中学会一些基础性的专业知识,如测量、传感、通讯、大规模计算和统计等,然后再进入物联网专业,结合自己所具备的专业知识背景,侧重研究物联网的某一分支,如侧重于基于联网需求设计测量部分,或基于测量特征设计通讯链路和协议,或基于收集来的巨量信息研究如何用“云”来储存和分析,从而使其成为有效信息而非“字典”。 这些都不是一个高中生所能直接面对的,而把所需的专业知识作为物联网专业的基础知识来传授,时间不够,本来这些就是四年的本科课程,学完这些,留给物联网的相关知识传授时间有限了,只能培养出一个无特色的学生,这和设置此专业的初衷不是相悖吗? 所以,如果要培养一个真正意义上的物联网人才,靠本科四年的学习难以胜任! 所谓真正意义上的“物联网人才”,按我的理解应该是:能将目前的现实需求纳入物联网,从而产生有别于传统解决方案的革命性变化。 听起来有些“玄”,但目前的宣传就是如此,甚至有过之而无不及,腾“云”驾“物”是在媒体上看到的最经典的描述!何时能落地,似乎还欠火候。 那针对目前的物联网热,学校应该如何应对呢? 依本人愚见:暂时不去想培养那些“真正的物联网人才”,那些未来的****并非本科教育所能造就,作为大量输送技术骨干进入社会的工科院校,着眼点应该是如何培养一个能在未来的工作中应对物联网需求的技术人员。 要做到这点,首先应该分析物联网到底衍生出那些新的东西? “物联网”三个字实际上表达了其含义: 第一:“物”,乃所关注的对象 第二:“联”,乃所采取的手段 第三:“网”,乃解决问题的工具 这三个部分中,“物”早已存在,最为悠久,人们对“物”可以说是“关怀备至”了,至今仍在不断深入,并非物联网所带来的新生事物。 而“网”虽较“年轻”,但由于技术手段的进步,人们也已将其功能发挥的“淋漓尽致”,“网”已经给人们生活带来了巨大变化。 唯一属于物联网带来的新生事物就是“联”,即将“物”连接到“网”上! 联网的设备已很多,为何此时将“物”连到网上就成了新东西? 先分析一下以往的联网设备有什么特征。目前联网的设备主要是计算机、手机、电视等,还有一些幕后设备,如交换机、路由器等,究其特征,无一例外是和人交互,或者是服务于与人交互。所以,以往的互联网也可以称之为“人联网”! 而如今“物联网”所指的“物”,多为面向自然界的物,关注的是其生物、理化等特征,是一些不具备智能的物,即便是和人相关,此时所关注的也是人的生物特征而非智能,所以完全区别于现存的“互联网”所承载的内容。目前互联网的绝大多数信息是服务于智能的,属于“上层建筑”,而物联网要关注的则是“经济基础”。 因为这些“物”相对“低能”,以往联网的方式就要做相应改变,以适应其特征,这才是物联网的精髓所在。 “物”有千百种,均有相应的专业在探究,而“网”也有相应的分支在完善,至于数据分析、云计算、分布式运算、并行计算等早已是深入研究的课题。后两者近年来已不断融合、完善,有了长足的进步。只是前者和后两者似乎有些像平行线,暂无交点。 物联网则是要在这两条平行线间架起一座桥,使前者的信息能借助于后者得到升华! 但由于“物”的“低能”和“多样性”特征,使得原有的联网手段不再适合,正是这种缺位才催生了物联网教学的需求! 因此,探究各种“物”所适合的联网手段,应该是培养一个可以应对物联网需求的工程技术人员的重点。 虽说联网应该是通讯的范畴,但以往通讯的关注点是媒介、链路和协议,而作为物联网应用需求,应该是关注各种通讯方式的特征,结合所需联网的“物”之个性,选择合适的通讯方案,侧重点是“选择”。 要做出合适的选择,就要对各类通讯方式的特点予以准确的把握,扬长避短,并合理的加以组合,从而达到最可靠、经济的方案。 不要一提到物联网就是 ZigBee、Wifi,实际上每种通讯方式都有其利弊和适用的环境。智能电网上的检测用 ZigBee 就不一定比“载波”合适;智能家居的很多节点或许用简单的“485总线”集中后再由WiFi 或 ZigBee转接入网更加经济、可靠。 所以,准确地把握对象特征和应用场景,同时熟知各类通讯技术的优势、缺陷,是一个合格的物联网应用技术人员的核心素质。 至于物联网的高层次应用,即那些汇集了巨量数据的“云”该如何处置?如何产生效益?那是少数精英的事,需要大量技术人员的是这个金字塔的塔基。 具体而言,针对物联网应用需求,学习应该关注: 1、 理解最基本的通讯原理,尤其是串行通讯,因为只要距离略远,并行通讯基本无使用可能,而现实中的各类通讯,不论是有线的RS232、485、USB、以太网,还是红外、蓝牙、Wifi,其实质都是串行通讯,区别只在于介质和协议。 2、 通过最简单的UART通讯,理解握手、冲突、争抢、仲裁等通讯中常见的问题,以及丢帧、误码的可靠性问题,理解通讯协议的作用和含义。 3、 通过简单的实际应用,理解各种场景的需求,何时要速度?何时要可靠?何时要响应快?何时要低功耗? 4、 结合所面临的需求,尝试各类通讯,只要会用即可,因为随着MCU的无所不在,各类通讯模块使用越来越简单,看似神秘的3G通讯,也能用和古老的Modem一样的AT命令让其工作。对于多数人而言,只能做到会用即可,设计、生产这类模块的事情交给地球上少数人去 *** 心吧。就像 PC,全世界都在用,但只有Intel和AMD为此劳神,似乎也并未耽误PC的普及和使用啊! 5、 选择一个分支,系统地贯穿一下各个层面,从“物”开始,到“网”结束,无所谓实用,只要涵盖的物联网的要素即可,重要是通过实际的体验,感受将“物”连到“网”上后所遇到的问题。 总之,我觉得,如果是培养一个应用类的技术人员,不需要特别的传授什么“物联网”的专业知识,而是用已有的专业知识,围绕上述重点实践即可,重要的是体验和阅读理解,因为未来的应用是多种多样的,无法预知,所以培养把握对象特征的能力是非常重要的。 最后,推荐一本关于各类通讯的书: 《嵌入式网络通信开发应用》 怯肇乾著北京航空航天大学出版,ISBN978-7-5124-0179-2 面对如此众多的通讯方式,想要全面了解并非易事,很多书都是只描述一部分,此书却全面收集了各种现存的通讯方式,为选择合适的通讯提供了极大的便利。 详细目录见“好书交流”栏目。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)