4.2 搭建信息系统(学案(含答案) 课件)

资源下载
  1. 二一教育资源

4.2 搭建信息系统(学案(含答案) 课件)

资源简介

(共116张PPT)
4.2 搭建信息系统
第四章 信息系统的搭建实例
1.掌握信息系统搭建的基本过程,主要包括硬件搭建和软件模块编写两方面。2.硬件搭建包括服务器、网络设备、传感设备、智能终端等。3.软件开发一般包括数据管理设计、服务器端程序、客户端程序几个部分。
目 录
CONTENTS
知识梳理
01
例题精析
02
随堂检测
03
课时作业
04
知识梳理
1
1.信息系统的硬件组成主要包括服务器、网络设备、传感设备、智能终端等。
(1)服务器为信息系统中的用户提供各种服务,如应用程序的处理、访问数据库管理系统、打印服务等。
(2)网络设备主要包括________、________、______、________、______等。
(3)传感设备(传感器)是信息系统中重要的输入设备,主要负责检测,将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出。
(4)智能终端包括______、______、______和______四个部分。智能终端的大部分功能需要依靠各种传感器来实现。
交换机
路由器
网卡
双绞线
光缆
输入
处理
存储
输出
2.信息系统的搭建主要包括__________和______________两方面。硬件是信息系统建立的基础,它的技术指标决定了信息系统的运行速度、可靠性、适用范围、可维护性等;软件是控制信息系统运行的中枢,主要包括__________、________________和在这些系统基础上开发出来的__________。
(1)JSON基于HTTP传送。JSON 是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,易于阅读和编写,同时也易于机器解析和生成。
(2)在Python中使用开源数据库SQLite。
在Python中,使用SQLite数据库的基本操作有:
①连接SQLite数据库
连接SQLite数据库的语句是connect()
如conn=sqlite3.connect('test.db')
硬件搭建
软件模块编写
操作系统
数据库管理系统
应用软件
这行代码用于连接到一个现有的数据库”test.db”.如果数据库不存在,将新创建一个数据库,最后返回一个数据库对象。
②创建SQLite表
创建新SQLite表的语句是create table。
如create table students(name text,area text,id int)
这行代码用于创建一个名为”students”的SQLite表,该表中包括三个字段:
字段名 数据类型
name text
area text
id int
③插入记录
插入记录的语句是insert into。
如insert into students(name,area,id)values
('Lisi',Hangzhou',18)
这行代码用于在”students”表中插入一条如表所示的新记录:
字段名 name area id
值 Lisi Hangzhou 18
在Python中,对SQLite的操作还有查询记录(select)、删除记录(delete)、更新记录(update)等,方法与“插入记录”类似。
(3)服务器端程序基于Python的Flask Web框架编写。
3.信息系统的软件开发一般包括_____________、_____________、____________三个部分。
数据管理设计主要负责与具体数据管理系统相衔接,包括数据采集、传输、存储、呈现等方面,为系统中需要长久存储的数据对象提供数据存储的方案。
软件开发涉及服务器端程序和客户端程序。一个服务器端程序,往往面向众多客户端提供数据服务。具体程序要看架构模式。B/S结构一般只写服务器端程序,如网站,只需完成服务器端程序,不用开发客户端程序,使得部署、更新更加容易;C/S结构服务器端程序和客户端程序都要写,类似QQ、网游等。
数据管理设计
服务器端程序
客户端程序
例题精析
2
例1 小明为家庭小菜园搭建了环境温湿度监测系统,该系统结构示意图如图所示。Web服务器端程序采用Flask Web框架开发。传感器采集的数据由智能终端经IoT模块发送到Web服务器,执行器用于实现温湿度的控制。请回答下列问题:
(1)下列选项标注了图中虚线框内的智能终端与传感器执行器之间的数据传输关系,其中合理的是________(单选,填字母)。
(2)该系统网络应用软件的实现架构是________(单选,填字母:A.B/S架构/B.C/S架构)。
(3)若传感器的编号id为1,湿度值h为60提交数据到Web服务器的URL为http:∥192.168.1.6:5000/toserv?h=60&id=1,则服务器端应用实例app中与该URL关联的路由设置语句是@app.route('________')。
(4)菜园里的蔬菜适宜生长的空气温度范围是tmin~tmax。现要求当温度t正常、偏低、偏高时,将sta的值对应设为0、1、2。下列Python程序段中符合要求的有________(多选,填字母)。(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
A.if tsta=1
if t>tmax:
sta=2
else:
sta=0
B.if tsta=1
elif t>tmax:
sta=2
else:
sta=0
C.sta=0
if tsta=1
else:
sta=2
D.sta=0
if tsta=1
if t>tmax:
sta=2
(5)小明设定采集并上传数据的时间间隔为1分钟。他用浏览器查看温湿度页面,页面动态显示最新的温度、湿度及其采集时间。系统正常工作一段时间后,他发现该页面不再变化,刷新后仍不变。结合图,简要说明系统中可能造成上述问题的原因_________________________________________________________ (本系统中,传感器损坏、传感器和智能终端连接异常,不会造成上述问题)。(注:回答2项,1项正确得1分)
答案 (1)A (2)A (3)/toserv (4)BD (5)①连接物联网模块与Web服务器的无线路由器无法正常工作;②物联网模块损坏;③数据表对记录数有数量限制,当记录数达到一定程度时,数据表不再更新;④Web服务器中数据库管理系统无法正常运行。
解析 (1)智能终端通过传感器获取数据,控制器经过处理后,再通过执行器对外部进行控制,故A项正确。(2)浏览器与服务器交换数据,故需采用B/S架构。(3)由“http:∥192.168.1.6:5000/toserv?h=60&id=1”可知,路由为“/toserv”。(4)当t在[tmin,tmax]之间时返回0,小于min返回1,大于tmax返回2,A项由两个分支构成,一个分支结束后,还需执行第二个分支,程序段返回值只能是2或者是0,1无法取到;C项的返回值只能是1或者2,0无法取到;故只有B项与D项正确。(5)可能造成上述问题的原因:一是服务器服务中断(服务器断电或服务器系统故障),二是互联网网络服务出现故障浏览器无法更新获取新的采集数据。
变式训练1 某“有机蔬菜种植基地实时监测系统”的结构如图所示。Web服务器端程序采用FlaskWeb框架开发,利用与智能终端连接的传感器采集大棚内的温度、光照强度数据,每隔一段时间由智能终端经IoT模块发送到Web服务器。如果环境监测温度值超过系统设置的阈值,触发通风、喷水或加热设备调节至适宜温度,同时根据环境光照强度自动打开或关闭补光灯。请回答下列问题:
(1)根据该系统的功能要求,图中的①②处的设备分别为________、________。(选填字母,A.执行器/B.路由器/C.传感器)
(2)该系统服务端程序采用FlaskWeb框架编写,服务器的IP地址是192.168.1.10,端口号为8080,网站功能页面规划如表所示:
序号 访问地址 功能说明
1 / 实时显示最新数据
2 /input?tem=20&light=40 提交传感器数据
3 /search 查看显示某一天的历史数据
若要查看某一天的数据记录,在浏览器应输入的URL为__________。
(3)该系统每隔一定时间采集大棚内的温度数据,如果超过适宜温度的范围会进行降温或升温的调节(适宜温度为tmin~tmax),计算一段时间内超过适宜温度的次数,列表变量s存储采集到的温度数据,下列程序正确的是__________(多选,填字母)。
A.c=0
for i in s:
if s[i]<tmin or s[i]>tmax:
c+=1
print(“超过适宜温度的次数”,c)
B.c=0
for i in range(len(s)):
if tmin<=s[i]<=tmax:
continue
c+=1
print(“超过适宜温度的次数”,c)
C.c=0;i=1
while i<=len(s):
if not(tmin<=s[i]<=tmax):
c+=1
i+=1
print(“超过适宜温度的次数”,c)
D.c=[0]*len(s)
for i in range(len(s)):
if not(s[i]>=tmin and s[i]<=tmax):
c[i]=1
print(“超过适宜温度的次数”,sum(c))
(4)在系统调试过程中,发现系统一直提示光线不足,简要说明系统中可能造成上述问题的原因____________________________________________________
___________________________________________________________________
(本系统中,通信网络、传感器与智能终端的功能均不存在问题。注:回答2项,1项正确得1分)
解析 本题考查信息系统的搭建。(1)图中①为输入设备,对应的是传感器。②处为输出设备,对应为执行器。(2)IP地址是192.168.1.10,端口号为8080,查看某一天(历史记录)的路由为search,可以得到相应的URL。(3)A选项i是列表中元素值,B选项正常数据continue跳过本次循环,不执行计数语句,统计非正常数据。C选项i的终值应为len(s)-1。D选项用列表c记录是否正常,若是非正常数据,c[i]值为1,并对c列数进行求和。(4)系统一直提示光线不足,说明网络访问正常,但数据上传有问题,Web服务器的输入端均有可能出现问题。
答案 (1)C A (2)http:∥192.168.1.10:8080/search (3)BD (4)执行器(补光灯)损坏;阈值设置不合理等
例2 某停车场使用停车引导系统,为车主提供车位信息。该停车场在每个车位上方安装了车位探测装置,通过传感器实时监测车位占用情况。车位探测装置将监测数据上传至服务器后,系统每隔一段时间进行一次数据汇总,统计当前空余车位数量,最后在停车场入口处显示屏上显示各区的空余车位数。系统架构如图a所示:
图a
(1)以下适用于车位探测的传感器有________(多选,填字母:A.地磁传感器/B.温度传感器/C.声音传感器/D.超声波传感器)。
(3)基于Flask框架编写该系统Web服务器端程序。其中,实现查看历史数据功能的路由与视图函数部分代码如下:
#导入Flask框架模块及其相关模块,代码略
@app.route('/history',methods=['GET'])
def list():
#从数据库读取车位情况的历史数据,并返回页面,代码略
测试系统时,发现通过访问主页:http:∥192.168.0.101:8080/能正常查看实时数据,但访问URL:http:∥192.168.0.101:8080/list查看历史数据时,出现如图b所示内容。为解决该问题,查看历史数据时所访问的URL应修改为________。
图b
(4)系统运行后,在浏览器访问页面中,查看到的各区空余车位数与实际不符,可能的原因是_______________________________________________________
____________________________________________________________________。
(注:回答2项,1项正确得1分)
答案 (1)AD (2)C (3)http:∥192.168.0.101:8080/history (4)传感器故障;网络传输故障;服务器端统计数量代码有误;统计时间间隔设置过长等其他合理答案
解析 本题考查信息系统的搭建。(1)地磁传感器是利用车辆通过道路时对地球磁场的影响来检测是否有车辆,超声波传感器是利用超声波的发射与接收来确认是否有车辆。(2)服务器加工处理数据并对用户的请求作出回应。(3)路由为history,list为视图函数。(4)在浏览器访问页面中,查看到的各区空余车位数与实际不符,说明系统连接和访问正常,但数据的输入、传输和存储以及计算可能出现问题。
变式训练2 小峰做了一个“搭建学生寝室管理系统”的实验,该系统可通过人脸识别、指纹识别、校园卡等方式模拟进出寝室管理,并将进出数据发送给服务器。通过浏览器可以查看学生在寝、离寝情况。小峰选择的硬件有:智能终端、IoT模块、摄像头、指纹采集仪、射频识别设备、进出口闸机、服务器等。该系统结构示意图如图所示,其中Web服务器端程序采用FlaskWeb框架开发。
(1)下列硬件设备中,属于执行器的有________(单选,填字母:A.摄像头/B.指纹采集仪/C.射频识别设备/D.进出口闸机)。
(2)下列关于该系统应用软件的网络架构,说法正确的是________(单选,填字母:A.客户端无需安装专用软件,升级维护方便/B.对服务器要求较低/C.能够降低系统通信开销)。
(3)下列功能需要在服务器端程序中实现的是________(多选,填字母:A.原始指纹数据的采集/B.在数据库中查找指纹特征数据/C.闸机的开关/D.根据浏览器的请求返回数据)。
(4)小峰基于FlaskWeb框架编写服务器端程序,部分代码如下。编写完后,若要通过浏览器获取视图函数entry()返回的页面,则访问的URL是http:∥________________。
#导入Flask框架模块及其他相关模块,代码略
app=Flask(_ _name_ _)
@app.route('/')
def index():
#在模板文件上显示从数据库读取的入寝、离寝学生数据,代码略
@app.route('/dorm',methods=['GET','POST'])
def entry():
#从数据库读取对应班级学生的在寝、离寝数据,并返回页面,代码略
#服务器其他功能,代码略
if _ _name_ _=='_ _main_ _':
app.run(host='10.16.1.18',port=8080)
(5)小峰对系统进行动态测试,使用校园卡刷卡,闸机能正常打开,在浏览器中查看系统首页,页面中标题、表格等内容能正常显示,但却未显示刷卡数据,刷新后仍不变(Web服务器数据库的数据读写功能正常)。从程序角度说明造成上述问题的原因有_____________________________________________________、
___________________________________________________________________。
(注:回答2项,1项正确得1分)
答案 (1)D (2)A (3)BD (4)10.16.1.18:8080/dorm (5)①index模块中从数据库中读取数据代码有误;②index模块中将参数传递给模板文件的代码有误;③主页模板文件中,显示服务器传递的数据代码有误。
解析 本题考查信息系统的搭建。(1)ABC均为输入设备。(2)B/S模式只需用浏览器连接服务器,对服务器的要求比较高,通信开销比较大。(3)A选项指纹数据由指纹采集器采集,智能终端传输到服务器;B选项服务器端连接数据并查询数据库中指纹特征数据;C选项闸机作为执行器进行工作;D选项浏览器向服务器发起请求,服务器接收请求之后并进行反馈。(4)由下方代码app.run(host='10.16.1.18',port=8080)可知服务器ip和端口号,视图函数entry()对应的路由是“/dorm”。(5)根据题干描述,刷卡之后闸机能正常打开,说明执行器、传感器、智能终端、IoT模块、WiFi这些设备和连接都没有问题,并且智能终端通过IoT与Web服务器的数据传输也没有问题;在根据题干描述的浏览器查看系统首页,首页中标题表格等内容都能正常显示,用户端通过互联网与Web服务器的连接也没有问题;并且说明了数据库读写功能正常,也排除了数据库本身的问题,因此问题只能集中在与数据库相关的程序代码上。
例3 小李设计了一个会员管理系统,用户通过浏览器在相应页面可进行会员注册、在线充值、线上查询消费记录等操作。该系统服务器端程序采用FlaskWeb框架编写,框架结构如图a所示。
图a
其中会员注册子页面如图b所示。存储会员信息的users表中共3个字段,依次保存序号、用户名和密码,如图c所示。会员注册时需满足以下条件:①用户名不重复;②密码长度大于5。服务器端部分代码如下。
from flask import Flask,render_template,request
import sqlite3
def check(name,pwd):
conn=sqlite3.connect("account.db")
cur=conn.cursor()
cur.execute("select*from users where name='%s' "%name)
val=cur.fetchall()
flag=True
if len(val)==0 and ①____:
sql="insert into users(name,password) values('%s','%s') "%(name,pwd)
cur.execute(sql)
conn.commit()
else:
flag=False
cur.close();conn.close()
return flag
app=Flask(_ _name_ _)
@app.route("/reg")
def reg():
name=request.args.get("xm")
pwd=request.args.get("psd")
if ②____:
return "注册成功!"
else:
return "请重新注册!"
#其它代码略
if __name__=="__main__":
app.run(host=”192.168.1.10”,port=80,debug=True)
(1)在搭建“会员管理系统”的前期准备过程中,选定系统物理配置的过程属于________(单选,填字母:A.需求分析/B.概要设计/C.详细设计)。
(2)该系统网络应用软件的实现架构是________(单选,填字母:A.B/S架构/B.C/S架构)。
(3)分析程序可知,该系统中存储会员用户名和密码数据的数据库文件名为________。
(4)分析程序,①处应填写的代码为________,②处应填写的代码为________。
(5)下列关于该信息系统的描述正确的是________(多选,填字母)。
A.服务器采用GET方式接收用户名和密码数据
B.程序代码中debug=True语句的作用是打开调试功能,在实际的网站应用环境中,也可以打开该功能,方便调试程序。
C.注册新会员时,用户名为admin03,密码为123abc,提交数据到Web服务器的URL为
http:∥192.168.1.10/check?xm=admin03&psd=123abc
D.对users表中的密码进行加密,可以提高该信息系统的安全性
(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
答案 (1)B (2)A (3)account.db (4)①len(pwd)>5 ②check(name,pwd) (5)AD
解析 本题考查信息系统的搭建。(1)概要设计中的系统物理配置包括硬件设备配置、应用软件的选择和通信网络的选择和设计等。(2)用浏览器访问服务器属于B/S模式。(3)由语句conn=sqlite3.connect("account.db"),系统中存储会员用户名和密码数据的数据库文件名为account.db。(4)①会员注册时需满足以下条件,用户名不重复且密码长度大于5。②调用函数检测会员注册条件。(5)B选项为了安全,在网站应用环境中将关闭该功能。C选项从图a注册子页面路由视图为reg。
变式训练3 小朱是校图书馆的一名志愿者,他与同学们计划搭建一个智慧校内图书管理系统。该系统服务器端程序采用FlaskWeb框架编写。所有图书已经设置了相应的电子标签,当学生借阅图书时,系统识别图书上的电子标签,采集的数据发送到Web服务器。
(1)搭建智慧图书借阅管理系统前正确的准备步骤是________(单选,填字母)。
①确定系统应具备的功能模块、系统物理配置和数据库管理系统选择;
②调查所有师生和管理员对图书管理系统的需求;
③明确系统“先干什么,后干什么”,进行输入、输出设计,人机界面设计等;
④分析学校的经济、技术、环境等方面的可行性;
⑤选择图书管理系统的开发模式。
A.②①⑤④③ B.①④⑤②③ C.②④⑤①③ D.①②⑤④③
(2)系统读取电子标签信息的过程采用________技术。(单选,填字母:A.红外线识别/B.射频识别/C.图像识别)
(3)小朱在图书管理系统中设计了一个查询剩余天数的功能,网页部分效果如图所示。
实现上述功能部分代码如下:
def getbook(bh): #查询并返回数据库中的指定编号的记录
conn=sqlite3.connect('library.db') #连接数据库
cur=conn.cursor() #生成一个游标
cur.execute('select*from books where book_no=%s'%bh)
book=cur.fetchall()
cur.close() #关闭游标
conn.close() #关闭数据库连接
return book
def daydelta(a,b): #计算两个日期间隔的天数
代码略
@app.route('①________',methods=['GET','POST'])
def cal():
if request.method=='POST':
bh=request.form.get('bh') #获取图书编号
book=②________ #查询该编号的图书记录
today=datetime.now().strftime('%Y-%m-%d')#将时间转成字符型数据并保存
passdays=daydelta(book[0][4],today)
#计算出借日至今的天数
ds=14-passdays
#渲染模板,代码略
else:
return redirect('/')
观察上述代码可知,存储相关数据的数据表名称是________,服务器端采用________(选填:GET/POST)方式获取图书编号。
(4)结合上述代码,通过http:∥192.168.1.7:5000/cal_days访问服务器能实现查询剩余天数的功能,请在划线处填入合适的代码。
(5)学校图书馆借阅规定:前14天为正常借阅期,第15天起为逾期。上述程序加框处的功能为“正常借阅期内输出剩余天数,逾期后输出逾期天数”,已知passdays为借出天数,则加框处代码为________(多选,填字母)。
A.if ds<0:
tips=“图书已逾期,逾期天数为”+str(ds)
else:
tips=“图书已逾期,逾期天数为”+str(ds)
B.if ds<0:
ds=-ds
tips=“图书已逾期,逾期天数为”+str(ds)
else:
tips=“图书已逾期,逾期天数为”+str(ds)
C.if ds>=0:
tips=“图书已逾期,逾期天数为”+str(ds)
if ds<0:
ds=-ds
tips=“图书已逾期,逾期天数为”+str(ds)
D.if ds<0:
ds=-ds
tips=“图书已逾期,逾期天数为”+str(ds)
if ds>0:
tips=“图书已逾期,逾期天数为”+str(ds)
答案 (1)C (2)B (3)books POST
(4)①/cal_days ②getbook(bh) (5)BC
解析 本题考查信息系统搭建和前期准备。(1)前期准备分为需求分析、可行性分析、开发模式选择、概要设计、详细设计。(2)读取电子标签信息的过程采用射频识别技术。(3)从查询语句获得查询的数据表名为books,从语句bh=request.form.get('bh')#获取图书编号可以看出,变量bh的值通过POST方式获取。(4)从URL看出实现查询功能的路由是/cal_days,bh的图书记录可以通过getbook(bh)函数获取。(5)若ds<0说明已逾期,逾期天数为-ds,若ds>=0,还剩下ds天。
随堂检测
3
1.小明搭建智慧教室环境管理系统,智能终端通过传感器获取教室的光线、温度等信息,并上传至服务器;智能终端根据阈值自动控制教室的灯、空调等设备的开关;用户可以通过手机浏览器或PC浏览器来访问服务器上的数据,并远程控制教室的灯、空调等设备的开关。该系统的架构如图a所示。
(1)该信息系统的架构是________(选填:B/S或C/S)模式,智能终端和服务器的通信采用______________________(选填:有线或无线)方式。
(2)智能终端上传温度数据的部分代码如下。
while True:
temp=round(pin2.read_analog()/1024*3000/10.24,1)
errno,resp=Obloq.get("input?id=1&val="+str(temp),10000) #智能终端向服务器发送温度信息,若在10000毫秒内发送成功,返回发送成功errno的值为200和服务器的处理结果。
if errno==200: #发送成功
if resp=='1': #返回值为1时,打开蜂鸣器
pin8.write_digital(1)
else:
pin8.write_digital(0)
else:
display.scroll(str(errno))
sleep(1000*300)
则温度传感器连接智能终端的端口是________,温度传感器采集温度的时间间隔为________(填整数)分钟。
(3)若服务器地址为192.168.1.100,端口为5000,温度传感器某时刻采集的温度值为23.5,则终端上传数据的URL为________(单选,填字母)。
A.http:∥192.168.1.100:5000/input?id=1&val=23.5
B.http:∥192.168.1.100:5000/id=1&val=23.5
C.http:∥192.168.1.100/input?id=1&val=23.5
D.http:∥192.168.1.100/id=1&val=23.5
(4)某一天小明访问Web服务器查询数据,发现教室的温度值超过28 ℃,他通过服务器远程控制打开教室的空调,一个小时后,通过服务器再次查询教室的实时温度,发现温度仍然超过28 ℃。他去教室实地检查,发现教室温度超过28 ℃,而空调并未启动。分析可能的原因有___________________________________。
(注:回答2项,1项正确得1分)
答案 (1)B/S 无线 (2)pin2 5 (3)A (4)执行器故障、执行器与智能终端的连接有问题、空调插座没电了、空调故障、控制模块代码有缺陷、其他合理原因(回答温度传感器、智能终端、IoT模块、服务器、无线信号故障都不正确)
解析 (1)搭建Web服务器属于B/S模式,通过WiFi连接。(2)①由语句pin2.read_analog()可以得到接口。②sleep(1000*300)表示每隔300秒即5分钟采集一次数据。(3)略。(4)能够查询教室的实时温度且温度有变化,说明数据的采集、传输和存储没有问题,但执行器可以出现问题。
2.某智能停车场门口设立剩余车位电子屏幕,上面显示停车场的空余车位数量。该提示功能每隔一定的时间会实时更新,其自动更新的实现过程如下:
ⅰ.每个车位上都设置有车位识别器(带有显示灯,红灯表示车位有车,绿灯表示无车),同时实时检测所在车位是否有车停驻,更新时会将所有车位的状态传输给管理终端。
ⅱ.管理终端根据收到的某个时刻所有车位状态的感应信息更新各个车位识别器显示灯颜色并统计停车场中空余车位的数量。
ⅲ.将实时统计的结果显示在停车场门口的电子屏幕上。
管理终端经IoT模块连接停车场WiFi,将接收到的车位信息同步到服务器数据库中,用户和管理员通过计算机或移动终端打开浏览器登录相关网站进行车辆查询、管理等操作。该系统结构如图所示。请回答下列问题:
(1)下列选项描述了图中①②③处所缺失的设备,对应关系合理的是________(单选,填字母)。
A.①路由器 ②服务器 ③调制解调器
B.①服务器 ②调制解调器 ③路由器
C.①服务器 ②路由器 ③调制解调器
D.①调制解调器 ②服务器 ③路由器
(2)该信息系统网络应用软件的实现架构是________(单选,填字母:A.B/S架构/B.C/S架构)。
(3)该系统网站功能页面规划如表所示,服务器端应用实例app中与管理员通过浏览器登陆系统进行车辆查询时页面关联的路由设置语句是@app.route(”__________”)。
序号 访问地址 功能说明
1 /type?select="manage" select="manage"表示选择管理员身份登陆
select="user"表示选择用户身份登陆
2 /login 注册与登陆页面
3 /admin?p="check" p="check"表示管理员查询车辆信息p="delete"表示管理员删除车辆信息
... ... ...
(4)管理员通过移动终端在相关网页上查看车位实况,页面正常运行一段时间后不再发生变化,刷新页面后仍不变,但门口电子屏幕能实时显示正确信息,则造成此结果的原因可能是________。(多选,填字母)。(注:全部选对得2分,选对但不全得1分,不选或有选错得0分)
A.管理终端损坏 B.车位识别器与管理终端连接异常
C.IoT模块损坏 D.停车场WiFi信号异常
(5)根据题干描述,请补充下图管理终端与车位识别器、电子屏幕之间的数据传输关系。数据传输关系示例:
A→B:表示数据从A传输到B。
答案 (1)C (2)A (3)/admin (4)CD
解析 (1)通过调制解调器将光信号转换为电信号,再用路由器连接两个不同的网线,接连接到服务器。(2)搭建web服务器属于B/S模式。(3)admin路由中,参数p为”check”表示管理员查询车辆信息。(4)运行一段时间后不再发生变化,刷新页面后仍不变说明数据不再更新了。(5)略。
(5)
(2个车位识别器连接线各0.5分,电子屏幕)
3.校园一卡通系统是数字化校园必备的系统之一。学生凭借一张校园卡,可以在校内完成食堂就餐、超市购物、图书借阅等应用,家长可以借助手机APP查询学生的在校消费记录,系统拓扑结构如图a所示。
(1)刷卡就能消费,使用的是________技术(单选,填字母:A.移动网络/B.射频识别)。
(2)在一卡通服务器和互联网之间增加________设备可以提高系统安全性(单选,填字母)。
A.调制解调器 B.路由器 C.交换机 D.防火墙
(3)若学生在食堂编号id为1的刷卡机上消费了15元,提交数据的URL为http:∥192.168.200.15:8080/dm?id=1&data=15,参考图b所示的路由函数,若学生在超市编号id为5的刷卡机上消费了20元,此时提交数据的URL为http:∥192.168.200.15:8080/___________________________________________。
@app.route('/dm'):    #获取食堂数据
……
@app.route('/sp'):    #获取超市数据
……
@app.route('/bk'):    #获取图书馆数据
……
图b
(4)系统设置了消费阈值wmax来防止学生过度消费,分别用sta值的0和1来表示学生的单笔消费金额wl小于等于wmax和大于wmax的情况,下列Python程序段中符合要求的有________(多选,填字母)。(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
A.sta=0
t=wl∥wmax
if t>1:
sta=1
B.if wl>wmax:
sta=0
else:
sta=1
C.sta=0
t=wl-wmax
if t>0:
sta=1
D.sta=0
if wl>wmax:
sta=1
(5)学生能够在图书馆正常借阅,在食堂刷卡时却无法正常消费,请分析可能的原因是_____________________________________________________________。
(注:回答2项,1项正确得1分)
答案 (1)B (2)D (3)sp?id=5&data=20 (4)CD (5)①食堂刷卡机故障 ②刷卡机与食堂网络连接异常 ③食堂网络与校园网连接异常 ④一卡通服务器的食堂子系统异常
解析 本题考查信息系统的搭建。(1)略。(2)略。(3)超市数据对应的路由是’/sp’,所以应填写http:∥192.168.200.15:8080/sp?id=5&data=20。(4)略。(5)学生能够在图书馆正常借阅说明该卡功能正常、一卡通服务器正常。故原因出现在食堂这个模块:①食堂刷卡机故障;②刷卡机与食堂网络连接异常;③食堂网络与校园网连接异常;④一卡通服务器的食堂子系统异常。
4.小华使用Python开发了成绩管理系统,教师、学生及家长都可登录该系统使用,相关用户名及密码都已经保存到数据库中,其中登录界面及部分程序代码如右:
import sqlite3
from flask import Flask,request,render_template
app=Flask(_ _name_ _)
@app.route(①________)
def index():
return render_template('index.html') #打开主页文件
@app.route('/login')
def login():
user=request.args.get('user')
pwd=request.args.get('password')
if user==”or pwd==” or len(pwd)<6:
return '输入不正确,请重新输入!'
conn=sqlite3.connect('school.db')
cur=conn.cursor()
sql=”select*from users where username='%s'and password='%s'”%(user,②________)
cur.execute(sql)
users=cur.fetchall()
cur.close();conn.close()
if users:
return '登录成功'
else:
return '登录失败'
if _ _name_ _=='_ _main_ _':
app.run(host='192.168.1.104',port=5000)
请回答下列问题:
(1)设计该系统的前期准备工作中,需将信息系统分成若干模块,并确定每个模块的功能、模块间的接口和关系,这一过程属于________(单选,填字母:A.需求分析B.可行性分析C.概要设计D.详细设计)。
(2)该系统采用的sqlite数据库名为____①____,其中保存账号及密码的数据表名为____②____。
(3)划线处填入正确的代码。
答案 (1)C (2)①school.db ②users
(3)①"/" ②pwd
解析 (1)将信息系统分成若干模块属于概要设计。(2)①表达式sqlite3.connect('school.db')中包含了数据库信息。②表达式select*fromusers中表示查询的数据表名称。(3)①在该路由的视图函数中表明打开主页文件,因此路由为主页。②语句pwd=request.args.get('password')表示获取输入的密码,因此在数据库中查找用户和密码。
5.学校对车辆进入校内停车场使用了车辆入场识别系统,该系统的工作流程如下:
ⅰ.车辆驶入摄像机识别区域,智能终端连接的摄像机开始捕获,并识别出车牌号;
ⅱ.智能终端通过无线网络将识别的车牌信息发送到Web服务器;
ⅲ.如果该车牌存在数据库内,并且处于启用状态,则显示屏显示车牌号码、欢迎光临等信息,同时智能终端向入口控制器发送开闸信号,道闸开闸放行。
数据库表结构如图:
字段名 数据类型 作用
carid varchar 存储车牌号
carstate integer 车牌状态,1代表启用,0代表未启用
该服务器上的部分代码如下:
app=Flask(_ _name_ _)
@app.route("/judge",methods=['GET'])
def fun():
db=sqlite3.connet('data.db')
cur=db.cursor()
car=request.args.get('cp')
cur.execute("select*from carinfo where carid==%s"%car)
data=______①______
cur.close()
db.close()
if len(data)==0:
return "未登记车辆,禁止入内!"
else:
if______②______:
return "欢迎"+car+"进入!"
else:
return "当前车牌未启用,请联系管理员!"
if _ _name_ _=='_ _main_ _':
app.run(host="10.49.26.12",port=8080)
(1)在搭建“车辆入场识别系统”过程中,下列说法正确的是________(多选,填字母)。
A.工作人员驾驶车辆检测系统是否正常运行,属于系统测试中的动态测试
B.决定该系统采用Sqlite数据库属于搭建信息系统过程中的详细设计阶段
C.应先进行模块结构设计,再进行开发模式选择
D.智能终端可借助IoT模块通过无线网络和服务器进行数据传输
(注:全部选对的得2分,选对但不选全的得1分,不选或有选错的得0分)
(2)若当前识别到的车牌号为“浙B54A36”,并且采用GET方式传输数据,则智能终端上传数据给Web服务器的URL应该为__________________________。
(3)在划线处填入合适的代码。
(4)系统搭建完成后,陈老师驾驶车辆驶入停车场,提示欢迎进入的信息,结果道闸却未打开,可能的原因是__________(单选,填字母)。
A.Web服务器与数据库连接异常
B.智能终端未对控制器发送相应请求
C.车牌数据未保存到数据库中
答案 (1)AD (2)http:∥10.49.26.12:8080/judge?cp=浙B54A36 
(3)①cur.fetchall() ②data[0][1]==1 (4)B
解析 本题考查信息系统的搭建。(1)决定采用Sqlite数据库属于概要设计中的数据库管理系统选择;搭建信息系统的前期准备的步骤为:需求分析—可行性分析—开发模式选择—概要设计—详细设计。其中模块结构设计是概要设计的一个部分。故应先进行开发模式选择,再进行模块结构设计。(2)采用GET方式传输数据,智能终端传到服务器的路由为”/judge”,传输数据的变量名为cp。(3)data表示通过查找车牌号获取的数据,①获取数据库查询到的数据。②获取的数据包含2个数据项:车牌号及车牌状态。车牌状态应用data[0][1]表示,根据代码,当车牌启用时,返回“欢迎进入”。(4)可以驾驶车辆驶入停车场,提示欢迎进入的信息,说明1.信息采集端正常;2.Web服务器与数据库连接正常;但是结果道闸却未打开,说明是智能终端和执行器端出现问题。通过三个选项,可能的原因为B选项智能终端未对控制器发送相应请求。
4
课时作业
1.小明搭建了花园自动浇灌系统,该系统结构示意图如图a所示。Web服务器端程序采用FlaskWeb框架开发。传感器采集的数据由智能终端经IoT模块发送到Web服务器,执行器用于水泵的控制。请回答下列问题。
序号 子页面路径 功能说明
1 / 实时显示土壤湿度数据
2 /input?id=1&h=10 提交土壤湿度数据
3 /count 显示土壤湿度统计数据
4 /search 查询显示某一天的历史数据
图b
(1)在搭建信息系统的前期准备中,考虑硬件设备配置、应用软件的选择和通信网络的选择与设计等,属于________。(单选,填字母A.需求分析B.可行性分析C.概要设计D.详细设计)
(2)系统根据传感器提交的数据,判断是否需要浇灌。若需要,则开启水泵浇灌10分钟。智能终端部分代码如下,请结合图b,补全代码。
#导入函数库,代码略
#设置智能终端连接Web服务器的参数、连接网络的参数并连接网络,代码略
h=pin0.read_analog()
errno,resp=Obloq.get("①________?id=1&h="+str(h),10000)
if errno!=200: #表明网络通信连接异常
display.show(str(errno))
else:
if resp=="1": #开启水泵进行浇灌
pin1.write_digital(1)
sleep(10*60*1000)
②________
(3)根据上面代码分析可知,该信息系统根据传感器数据做出开启或关闭水泵决策的是________(选填:Web服务器/智能终端/传感器),水泵属于图a中的________。
(4)若Web服务器的IP地址为“196.168.0.101”,端口为“5000”,要访问“显示土壤湿度统计数据”页面,则正确的URL为__________。
答案 (1)C (2)①input ②pin1.write_digital(0)
(3)Web服务器 执行器
(4)http:∥196.168.0.101:5000/count
解析 (1)考虑硬件设备配置、应用软件的选择,属于概要设计。(2)①input路由用于提交土壤湿度数据。②开启水泵浇灌10分钟,语句sleep(10*60*1000)表示10分钟后,应关闭水泵浇灌。(3)由服务器做出开启或关闭水泵决策。开启水泵进行浇灌,因此属于执行器。(4)count路由显示土壤湿度统计数据。
2.某智慧茶园采用“1+1+N”的模式。一个中心:智慧茶园大数据监测预警中心;一个平台:智慧茶园大数据平台;N个监测:气象监测、土壤监测、视频监控等,从而实现茶园的智慧管理。该系统的硬件搭建方式是:服务器通过无线网络连接智能终端,智能终端连接传感器和执行器。“环境实时数据”显示屏截图如图a所示,指定时间内湿度值查询的代码如图b所示,请回答下列问题:
图a
app=Flask(_ _name_ _)
@app.route(①________) #划线处①
def humid():
#数据库中查找指定时间范围内的湿度值,代码略
if_ _name_ _=="_ _main_ _":
app.run(host=”192.168.2.172”,port=5050)
图b
(1)如图a所示,该系统中未用到的传感器最可能是________(单选,填字母:A.温度传感器/B.湿度传感器/C.加速度传感器)。
(2)图b中通过视图函数humid查询到的湿度值存储在________。(单选,填字母:A.Web服务器/B.智能终端/C.传感器)
(3)基于Flask Web框架编写的服务器端程序部分代码如所示,访问此网页的URL为http:∥192.168.2.172:5050/search,则图b划线处①中应填入的代码为________。
(4)若智慧茶园系统运行一段时间后,发现显示屏中的土壤温度数据缺失,如图a所示,发生此故障的可能原因是____________________________________。
(注:回答2项,1项正确得1分)。
答案 (1)C (2)A (3)/search或‘/search’或“/search” (4)土壤的温度传感器故障或土壤温度传感器与智能终端连接故障或等其他合理答案
解析 (1)加速度传感器用于测量速度,没有用到。(2)数据库中查找指定时间范围内的湿度值,可知数据存储在服务器中。(3)略。(4)略。
3.小强同学为学校阅览室搭建了室内声音监测系统,该系统可以根据声音情况发出警示,系统结构示意图如图所示。传感器采集数据经智能终端上传到服务器,Web服务器处理后的结果经IoT模块传送给智能终端,由智能终端启动执行器实现警示灯的控制。若声音分贝连续10秒高于限定值则警示灯闪烁。用户可以通过浏览器访问web服务器,查看相关数据。请回答下列问题:
(1)在搭建室内声音监测系统过程中,下列属于前期准备的是________(多选,填字母)。
A.确定采购传感器的具体型号 B.根据用户需求对系统进行测试
C.分析在技术上是否可行 D.编写服务器端程序
(2)完善该系统结构图,若图中A、B、C处的设备由以下三部分组成:
①执行器;②传感器;③智能终端,则A、B、C三处的设备依次为________(填数字编号)。
(3)运行该信息系统,改变环境中声音的分贝值,测试该系统能否根据声音的变化控制警示灯闪烁,该项测试属于软件系统测试中的________(单选,填字母:A.动态测试/B.静态测试)方法。
(4)智能终端将模拟分贝计进行连接以获取声音数据,部分Python程序代码如下。请回答下列问题:
#设置服务器参数、wiFi账号和密码,并连接WiFi,代码略
while True:
sound=pin1.read_analog()
temp=(sound/1024*3.3)*56 #利用公式将数据转换成分贝
errno,resp=Obloq.get("get?id=1&fb="+str(temp),10000)
#根据errno和resp的返回值控制执行器,每1秒采集一次数据,代码略
#web服务器端程序使用Flask框架编写
#将接收到的数据存入数据库,代码略
if _ _name_ _=="_ _main_ _":
app.run(host="192.168.0.1",port=8080)
智能终端访问服务器使用的IP地址是________,连接声音传感器的引脚是________。
(5)小强用浏览器查看声音强度页面,页面动态显示声音强度数据及其采集时间。系统正常工作一段时间后,他发现该页面中声音强度数据不再变化,刷新后仍不变。结合图,简要说明系统中可能造成上述问题的原因:________(多选,填字母)。
A.数据库与Web服务器连接异常
B.传感器损坏
C.Web服务器瘫痪
D.智能终端损坏
答案 (1)AC (2)②③① (3)A
(4)192.168.0.1 pin1 (5)BD
解析 本题考查信息系统的搭建。(1)B选项是制作完成后的测试阶段。C选项是可行性分析。(2)略。(3)静态测试主要包括代码检查、静态结构分析和代码质量度量。动态测试主要包括黑盒测试、白盒测试。运行系统属于动态测试。(4)略。(5)数据不再更新说明数据没有采访和上传。AC选项连接异常或服务器瘫痪页面将不能显示数据。
4.小王搭建了家庭智能浇花系统,系统结构示意图如图所示。土壤湿度传感器采集的数据通过IoT模块传送到Web服务器,客户端可以通过浏览器访问Web服务器。Web服务器将处理的结果经IoT模块传送给智能终端,智能终端启动执行器实现对湿度的控制。
(1)①在设计“智能浇花系统”的前期准备中,小王考虑到浇水不仅与土壤湿度有关,还要考虑温度和光照,所以他准备将来还要为该系统扩展温度采集和光线采集等功能,并在开发过程中为这些功能模块预留接口。这一过程属于________(单选,填字母:A.需求分析/B.可行性分析/C.概要设计/D.详细设计)。
②根据本系统网络应用的软件架构,编写程序时需要编写________程序(单选,填字母:A.服务器端/ B.客户端/ C.服务器端与客户端)。
(2)智能终端每隔1分钟采集一次数据并提交数据到Web服务器。Web服务器端的部分代码如下:
#导入相关模块,代码略
app=Flask(_ _name_ _)
@app.route('/record')
def data():
#网页显示当前传感器数据,并显示最近的50条湿度记录,代码略
@app.route('/input',methods=['GET'])
def add():
id=int(request.args.get('id')) #获取传感器id
val=float(request.args.get('val')) #获取土壤湿度值val
return '1'
else:
return '0'
#其他代码略
if _ _name_ _=='_ _main_ _':
app.run(host='10.46.110.119',port=8080)
①若土壤湿度值val在阈值[h1,h2]内(包括h1和h2),则返回1,否则返回0,则加框处的代码符合要求的有________(多选,填字母)。(注:全部选对得2分,选对但不全得1分,不选或错选得0分)
A.if val>=h1 or val<=h2:
B.if not(val

h2):
C.if (val-h1)*(h2-val)>=0:
D.if h1<=val<=h2:
②若要查看最近的50条土壤湿度记录,则在浏览器地址栏中应输入的网址是________。
(3)系统工作一段时间后,小王用浏览器查看土壤湿度记录,发现页面能正常显示但是该页面上的土壤湿度记录数据不再变化,刷新后仍不变,造成上述问题的原因可能是:________(多选,填字母)。(注:全部选对得2分,选对但不全得1分,不选或错选得0分)
A.软件存在缺陷
B.执行器故障
C.智能终端和IoT模块连接无线网络出现故障
D.Web服务器停电
答案 (1)①A ②A (2)①BCD ②http:∥10.46.110.119:8080/record (3)AC
解析 (1)①分析系统的功能和扩展功能属于需求分析。②该系统为B/S模式,只需编写服务器程序。(2)①在阈值[h1,h2]内是两个条件均要满足,A选项不正确。B选项在两个范围外面的非,阈值在此范围内。C选项(val-h1)和(h2-val)不可能同时小于0,因此条件均成立。②查看数据的路由为record。(3)数据不更新,说明采集数据有问题,而不是执行器问题,也不可能是Web服务器停电问题。
5.某公司研发出一套智慧餐厅定位餐号牌系统:顾客就座后将餐号牌插入桌角的定位器内(如图a所示),送餐员即可从客户端查看“001”号顾客就座的桌台信息是“A01”桌。
(1)该系统使用RFID技术识别餐号牌对应编号,这一过程属于信息的________(选填,编码/解码),桌角的定位器属于信息系统的________(选填,输入/输出)设备。
(2)使用智能终端及Web服务器模拟实现上述系统,智能终端通过无线网络将获取到的餐号牌编号及桌台信息上传至服务器。系统结构示意图如图b所示,图中①处应为________;②处应为________。(填字母,A.IoT模块/B.路由器/C.调制解调器/D.Web服务器)
(3)以下是编写的部分服务器端程序。若001号顾客就座于A01桌台,正确提交数据到Web服务器的URL为http:∥192.168.125.20:8088/data?tab=A01&cus=001,请在划线处填入合适的代码。
@app.route("①________")
def add_data():
t=request.args.get("tab") #t中存储桌台信息
c=int(request.args.get(②________)) #c中存储餐号牌编号 #打印顾客就座信息,代码略
return"success"
if _ _name_ _=="_ _main_ _":
app.run(host="③________",port=8088)
(4)根据上述程序,若智能终端数据上传成功,则智能终端接收到的信息为________。
答案 (1)解码 输入 (2)①A ②D (3)①/data ②"cus" ③192.168.125.20
(4)success或"success"
解析 本题考查信息系统的搭建。(1)将采集的餐号牌信息转换为电脑可以识别的文本信息,属于信息的解码,桌角的定位器负责采集信息。(2)智能终端通过传感器采集数据,IoT模块传送传感器收集到的数据经IoT模块传送服务器,或者Web服务器处理的结果经IoT模块传送给智能终端。(3)从URL为http:∥192.168.125.20:8088/data来看,路由为data。(4)略。
6.某小区超市为了更好地服务业主,开发了一套自助购物系统。其功能如下:
①“客户管理”子页面,超市对客户信息进行管理
②“商品管理”子页面,超市对商品信息进行管理
③“下单系统”子页面,业主提交单号并结算
(1)下列属于“自助购物系统”搭建前期准备环节的是________。(多选,填字母)(注:全部选对得2分,选对但不全的得1分,不选或错选的得0分)
A.了解业主对该系统的功能需求
B.对开发该系统所需的费用和效益进行评估
C.投入使用前,找多位业主进行系统访问测试
D.为系统的安全性和稳定性提出安全设计方案
(2)若超市要对业主的客户等级进行设置,可在相应的子页面中进行操作,则访问该子页面的URL是_________________________________________________
__________________________________________________________________。
(3)为了促销和让利业主,该超市推出以下两种优惠方案:
方案一:满100减6,满200减15,满400减40元,如消费100元实付94元,消费201元实付186元,消费301元实付286元;
方案二:VIP客户打95折,与满减活动不重叠。
小王为该超市的VIP客户,他购买了n元金额的商品,下列Python程序段中,可以帮小王计算更优惠的方案的有________(多选,填字母)。(注:全部选对得2分,选对但不全的得1分,不选或错选的得0分)
A.n=int(input())
ansl=n*0.95
ans2=n
if n>=400:
ans2-=40
elif n>=200:
ans2-=15
else:
ans2-=6
if ansl<ans2:
print(“打折划算”)
else:
print(“满减划算”)
B.n=int(input())
ansl=n*0.95
ans2=n
if 100<=n<200:
ans2-=6
if 200<=n<400:
ans2-=15
if n>=400:
ans2-=40
if ans l<ans2:
print(“打折划算”)
else:
print(“满减划算”)
C.n=int(input())
ansl=n*0.95
ans2=n
if n>=100:
ans2-=6
if n>=400:
ans2-=34
else:
ans2-=9
if ansl<ans2:
print(“打折划算”)
else:
print(“满减划算”)
D.n=int(input())
ansl=n*0.95
ans2=n
if n>=100:
ans2-=6
if n>=200:
ans2-=9
if n>400:
ans2-=25
if ansl<ans2:
print(“打折划算”)
else:
print(“满减划算”)
(4)为了使该系统在使用过程中更加安全,系统开发者在进行安全设计时需要考虑的措施有________________________________________________________
(注:回答2项,1项正确得1分,多答仅前两项有效)。
解析 本题考查信息系统搭建、信息系统安全等相关知识。(1)信息系统搭建前期准备环节包括:需求分析、可行性分析、开发模式选择、概要设计和详细设计。而C选项是测试环节。(2)略。(3)略。(4)为了使该系统在使用过程中更加安全,可以从病毒防护,安全认证,数据加密等多方面加强安全措施,对不同的用户设置不同的访问权限等。
答案 (1)ABD (2)http:/192.168.1.182:8000/user
(3)BD (4)为服务器安装防火墙和杀毒软件定期备份数据库中的数据定期更新杀毒软件;设置线上下单需进行身份认证对订单进行多重加密;用户查询订单需使用动态密码;对不同的用户设置不同的访问权限或其他合理答案。
7.小明设计并搭建了一个农业大棚管理系统,运用多种传感器设备监测环境中的参数。其中Web服务器端程序采用FlaskWeb框架开发。其中为了实时检测并调整湿度,系统利用湿度传感器获取大棚湿度,传输给服务器,服务器根据湿度情况,及时调整大棚湿度,使它达到适宜作物生长的湿度值。如图a所示,请回答下列问题:
(1)下列选项分别是图a所示中虚线框内的①②③位置,合理的是________(单选,填字母)。
A.①智能终端 ②传感器 ③执行器
B.①传感器 ②执行器 ③智能终端
C.①执行器 ②智能终端 ③传感器
D.①传感器 ②智能终端 ③执行器
(2)小明在连接无线路由时只要连接到SSID,输入正确口令就可以无线上网,不需要设置IP地址,说明无线路由已经开启了________服务。(单选,填字母)
A.HTTP B.FTP C.DHCP D.IP
(3)根据图b所示,若湿度传感器编号id为2,湿度值h为55,提交数据到Web服务器的URL为http:∥10.68.251.1/humidity?h=55&id=2,则服务器采用________(选填:POST或GET)方式接受湿度数据。
(4)大棚的合适湿度值为hmin~hmax(湿度值已取整),当前湿度值为h。h在合适范围,则state显示为1,否则显示为2。则下列Python语句符合要求的是________(多选,填字母)。(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
A.if h in range(hmin,hmax+1):
state=1
else:
state=2
B.if h in[hmin,hmax]:
state=1
else:
state=2
C.if h>hmin and h<=hmax:
state=1
else:
state=2
D.if h<hmin and h>hmax:
state=2
else:
state=1
(5)小明在测试过程中发现当湿度值h>hmax时,h值能传递到数据库中,但农业大棚的湿度没有发生变化。结合图a,简要说明系统中可能造成上述问题的原因:___________________________________________________________________。
(注:回答2项,多答仅前两项有效。全对2分,1对1错或仅有1项正确得1分)
解析 本题考查信息系统搭建的相关概念及操作。(1)略。(2)DHCP指动态主机配置协议。(3)传递的数据拼接在URL中,所以服务器接收数据的方式是GET方式。(4)略。(5)当湿度值大于最大值时,数据能传递到数据库,但是大棚内的湿度没有发生变化,则可能是服务器端代码有问题,或者智能终端到执行器的连接有问题,或者执行器发生了故障。
答案 (1)D (2)C (3)GET (4)AC (5)①执行器出现故障 ②智能终端与执行器连接出问题 ③程序代码有问题
8.模拟搭建“室内烟雾实时监控系统”,该系统结构示意图如图所示。智能终端接收烟雾传感器采集的数据,IoT模块传送数据到Web服务器并保存到数据库。Web服务器将数据处理的结果经IoT模块传给智能终端,由智能终端启动继电器实现对水泵的控制,并且用户可以通过浏览器访问网页,查看实时数据。
(1)在设计系统的前期准备中,需要确定所需的软硬件配置,这一过程属于________(单选,填字母:A.需求分析/B.概要设计/C.详细设计)
(2)“室内烟雾实时监控系统”的开发模式是________(单选,填字母:A.B/S模式/B.C/S模式)
(3)烟雾传感器每隔1秒采集一次数据,在数据处理的代码中,有函数check(a,b,c)用于检测最近3次烟雾浓度值a、b、c,若至少有两次超过100,则认为有火情,函数返回True,否则返回False。下面是check函数的部分代码,请从选项中选择合适的语句完成填空________(单选,填字母)。
def check(a,b,c):
x=a>100;y=b>100;z=c>100
if________:
return True
return False
A.(x and y and z) or (x or y or z) B.x and y or x and z or y and z
C.x or y and x or z and y or z D.not x or not y or not z
(4)在服务器端,配置IP和端口号的语句为server=Server(host="192.168.1.1",port=80,threaded=True),设置路由函数的语句为@app.route("/warn"),则用户访问的URL为http:∥___________________________________________。
(5)小明用高浓度的烟雾测试系统,通过客户端查看到烟雾浓度数据已连续超过阈值,但是水泵没有运行,若服务器和终端的代码均正确,则可能的原因是____________________________________________________________________
___________________________________________________________________。
答案 (1)A (2)A (3)B (4)192.168.1.1:80/warn (5)继电器损坏或水泵损坏
解析 (1)确定所需的软硬件配置属于需求分析。(2)搭建Web服务器属于B/S模式。(3)and的优先级高于or,两次超过100的表达式为x and y、x and z或y and z,3个表达式中至少有一个成立。(4)略。(5)水泵没有运行表示该执行器出现问题。
9.小明为他们教室搭建了环境温湿度监测系统,该系统结构示意图如图所示。该系统可实时监测教室温湿度数据,并持续运行一周,数据由智能终端经IoT模块发送至Web服务器,若环境温湿度监测值超过设定阈值区间,则控制执行器调节温湿度,用户可以使用浏览器查看实时数据。
本系统服务器端程序采用FlaskWeb框架编写,数据库管理系统选择sqlite3,服务器的IP地址是192.168.0.1,端口是5000。网站功能页面规划如下:
序 子页面路径 功能说明
1 / 实时显示温湿度数据
2 /input 提交温湿度数据
3 /count 显示温湿度统计数据
4 /search 查询显示某一天的历史数据
(1)上述页面规划属于搭建信息系统的前期准备的阶段是________。(单选,填字母)
A.需求分析 B.可行性分析 C.概要设计 D.详细设计
(2)根据该系统的功能要求,图中①②处的设备分别为________、________。
(3)教室里的学生最舒服的温度是范围是tmin~tmax,现要实现温度t正常、非正常(偏高或偏低)时,将对应的状态sta的值设为0和1。下列Python程序段中符合要求的有________。(多选,填字母)
A.if tsta=1
if t>tmax:
sta=1
sta=0
B.sta=0
if tsta=1
elif t>tmax:
sta=1
C.if ttmax:
sta=1
else:
sta=0
D.sta=1
if t<=tmax:
sta=0
elif t>=tmin:
sta=0
(4)小明在某次系统调试时,输入URL后浏览器出现“404”错误信息(服务器反馈404信息表示服务器端无法找到对应的网页),简要说明系统中可能造成上述问题的原因:_________________________________________________________。
(注:回答两项,1项正确得1分)
答案 (1)C (2)传感器 执行器 (3)BC
(4)①路由地址发生了改变 ②输入地址出错 ③路由视图函数被删除
解析 本题考查microbit及Flask等相关知识。(1)页面规划属于概要分析中的模块设计。(2)传感器采集数据传送给智能终端,智能终端控制执行器。(3)A选项赋值语句sta=0最后执行,sta值均为0;D选项若t<=tmax,则sta=0,满足这个分支后不会再判断t是否大于tmin。(4)服务器无法找到对应的网页,可能是路由地址输错,还有可能路由没有对应的视图函数。
10.粉尘在大型生产过程中处理不当可能会引发爆炸。为了能更安全地生产,小张准备设计一个粉尘监测系统。通过传感设备来监测粉尘的浓度,当浓度接近爆炸临界值时,发出警告并启动风扇降低粉尘浓度、启动喷雾系统适当增加空气湿度。当粉尘降到安全值以下、空气温度到合理值则解除警告、关闭风扇与喷雾系统。平时工厂安全管理人员可以通过客户端查看系统的监测数据,安全管理人员也可以接收到系统监测到粉尘接近临界值的提示信息。该系统结构示意图如图所示。服务器端的程序采用FlaskWeb框架开发,请回答下列问题。
(1)在搭建信息系统的前期准备过程中下列说法正确的是________(多选,填字母)。
A.分析该系统的功能需求、采用哪些设备、用户界面需求和可扩展性需求等属于需求分析
B.设计该系统时对存放数据的数据库系统的选择属于系统的详细设计
C.在概要设计时需要确定数据库的结构
D.可行性分析主要对信息系统的必要性和可行性进行分析
(注:全部选对的得2分,选对但不选全的得1分,不选或有选错的得0分)
(2)服务器的部分代码如下:
@app.route("/")
def hello():
return render_template("index.html")
@app.route("/login",methods=["POST"])
def login():
usrn=request.form.get("user")
psd=request.form.get("psw")
if usrn.upper()=="ADMINER "and psd=="password1":
return render_template("succlong.html")
else:
return render_template("index.html")
安全管理员在登录页面输入账号与密码:AdminER和password1,________(选填:会/不会)跳转到"index.html"网页。
(3)为了能将监测到的数据实时发送给Web服务器,智能终端编有如下代码:errmo,resp=Obloq.post("updata", "{\”z.val\":"+str(jc)+"}",3000),则Web服务器应用实例app中响应该请求,获取实时监测数据路由设置语句是@app.route("①________",methods=[②________])
(4)系统搭建完成后,系统能正常获得监测数据,但安全管理员使用计算机通过浏览器查询监测数据时,系统显示“页面不存在”。产生的可能原因是________(多选,填字母)。
A.安全管理员使用的计算机无法上网   B.系统中的无线路由有故障
C.IoT模块出现故障     D.Web服务器与数据库连接异常
E.Web服务器查询子系统出现故障
(注:全部选对的得2分,选对但不选全的得1分,不选或有选错的得0分)
答案 (1)AD (2)不会 (3)①/updata ②"POST" (4)AE
解析 本题考查信息系统的搭建知识。(1)B选项数据库系统的选择属于概要设计;C选项在详细设计时需要确定数据库的结构。(2)usrn.upper()是将字符串小写字母转大写,执行if的语句,跳转到succlong.html页面。(3)根据代码errmo,resp=Obloq.post("updata","{\"z_val\":"+str(jc)+"}",3000),可知对应的路由是‘update’,方法是POST方法。(4)页面不存在的原因是客户端向服务端发送数据失败,究其原因只有AE符合。BCD选项影响的是智能终端向服务器传输数据,不会显示页面不存在的情况。4.2 搭建信息系统
课时目标
1.掌握信息系统搭建的基本过程,主要包括硬件搭建和软件模块编写两方面。2.硬件搭建包括服务器、网络设备、传感设备、智能终端等。3.软件开发一般包括数据管理设计、服务器端程序、客户端程序几个部分。
1.信息系统的硬件组成主要包括服务器、网络设备、传感设备、智能终端等。
(1)服务器为信息系统中的用户提供各种服务,如应用程序的处理、访问数据库管理系统、打印服务等。
(2)网络设备主要包括    、    、    、    、    等。
(3)传感设备(传感器)是信息系统中重要的输入设备,主要负责检测,将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出。
(4)智能终端包括    、    、    和    四个部分。智能终端的大部分功能需要依靠各种传感器来实现。
2.信息系统的搭建主要包括         和        两方面。硬件是信息系统建立的基础,它的技术指标决定了信息系统的运行速度、可靠性、适用范围、可维护性等;软件是控制信息系统运行的中枢,主要包括      、        和在这些系统基础上开发出来的      。
(1)JSON基于HTTP传送。JSON 是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,易于阅读和编写,同时也易于机器解析和生成。
(2)在Python中使用开源数据库SQLite。
在Python中,使用SQLite数据库的基本操作有:
①连接SQLite数据库
连接SQLite数据库的语句是connect()
如conn=sqlite3.connect('test.db')
这行代码用于连接到一个现有的数据库"test.db".如果数据库不存在,将新创建一个数据库,最后返回一个数据库对象。
②创建SQLite表
创建新SQLite表的语句是create table。
如create table students(name text,area text,id int)
这行代码用于创建一个名为"students"的SQLite表,该表中包括三个字段:
字段名 数据类型
name text
area text
id int
③插入记录
插入记录的语句是insert into。
如insert into students(name,area,id)values
('Lisi',Hangzhou',18)
这行代码用于在"students"表中插入一条如表所示的新记录:
字段名 name area id
值 Lisi Hangzhou 18
在Python中,对SQLite的操作还有查询记录(select)、删除记录(delete)、更新记录(update)等,方法与“插入记录”类似。
(3)服务器端程序基于Python的Flask Web框架编写。
3.信息系统的软件开发一般包括      、        、      三个部分。
数据管理设计主要负责与具体数据管理系统相衔接,包括数据采集、传输、存储、呈现等方面,为系统中需要长久存储的数据对象提供数据存储的方案。
软件开发涉及服务器端程序和客户端程序。一个服务器端程序,往往面向众多客户端提供数据服务。具体程序要看架构模式。B/S结构一般只写服务器端程序,如网站,只需完成服务器端程序,不用开发客户端程序,使得部署、更新更加容易;C/S结构服务器端程序和客户端程序都要写,类似QQ、网游等。
例1 小明为家庭小菜园搭建了环境温湿度监测系统,该系统结构示意图如图所示。Web服务器端程序采用Flask Web框架开发。传感器采集的数据由智能终端经IoT模块发送到Web服务器,执行器用于实现温湿度的控制。请回答下列问题:
(1)下列选项标注了图中虚线框内的智能终端与传感器执行器之间的数据传输关系,其中合理的是    (单选,填字母)。
(2)该系统网络应用软件的实现架构是    (单选,填字母:A.B/S架构/B.C/S架构)。
(3)若传感器的编号id为1,湿度值h为60提交数据到Web服务器的URL为http:∥192.168.1.6:5000/toserv h=60&id=1,则服务器端应用实例app中与该URL关联的路由设置语句是@app.route('    ')。
(4)菜园里的蔬菜适宜生长的空气温度范围是tmin~tmax。现要求当温度t正常、偏低、偏高时,将sta的值对应设为0、1、2。下列Python程序段中符合要求的有    (多选,填字母)。(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
A.if t  sta=1
if t>tmax:
  sta=2
else:
  sta=0
B.if t  sta=1
elif t>tmax:
  sta=2
else:
  sta=0
C.sta=0
if t  sta=1
else:
  sta=2
D.sta=0
if t  sta=1
if t>tmax:
  sta=2
(5)小明设定采集并上传数据的时间间隔为1分钟。他用浏览器查看温湿度页面,页面动态显示最新的温度、湿度及其采集时间。系统正常工作一段时间后,他发现该页面不再变化,刷新后仍不变。结合图,简要说明系统中可能造成上述问题的原因  
(本系统中,传感器损坏、传感器和智能终端连接异常,不会造成上述问题)。(注:回答2项,1项正确得1分)
听课笔记:________________________________________________________________________
_________________________________________________________________________________
变式训练1 某“有机蔬菜种植基地实时监测系统”的结构如图所示。Web服务器端程序采用FlaskWeb框架开发,利用与智能终端连接的传感器采集大棚内的温度、光照强度数据,每隔一段时间由智能终端经IoT模块发送到Web服务器。如果环境监测温度值超过系统设置的阈值,触发通风、喷水或加热设备调节至适宜温度,同时根据环境光照强度自动打开或关闭补光灯。请回答下列问题:
(1)根据该系统的功能要求,图中的①②处的设备分别为    、    。(选填字母,A.执行器/B.路由器/C.传感器)
(2)该系统服务端程序采用FlaskWeb框架编写,服务器的IP地址是192.168.1.10,端口号为8080,网站功能页面规划如表所示:
序号 访问地址 功能说明
1 / 实时显示最新数据
2 /input tem=20&light=40 提交传感器数据
3 /search 查看显示某一天的历史数据
若要查看某一天的数据记录,在浏览器应输入的URL为     。
(3)该系统每隔一定时间采集大棚内的温度数据,如果超过适宜温度的范围会进行降温或升温的调节(适宜温度为tmin~tmax),计算一段时间内超过适宜温度的次数,列表变量s存储采集到的温度数据,下列程序正确的是     (多选,填字母)。
A.c=0
for i in s:
  if s[i]tmax:
    c+=1
print(“超过适宜温度的次数”,c)
B.c=0
for i in range(len(s)):
  if tmin<=s[i]<=tmax:
    continue
  c+=1
print(“超过适宜温度的次数”,c)
C.c=0;i=1
while i<=len(s):
  if not(tmin<=s[i]<=tmax):
    c+=1
  i+=1
print(“超过适宜温度的次数”,c)
D.c=[0]*len(s)
for i in range(len(s)):
  if not(s[i]>=tmin and s[i]<=tmax):
    c[i]=1
print(“超过适宜温度的次数”,sum(c))
(4)在系统调试过程中,发现系统一直提示光线不足,简要说明系统中可能造成上述问题的原因。
________________________________________________________________________________
(本系统中,通信网络、传感器与智能终端的功能均不存在问题。注:回答2项,1项正确得1分)
例2 某停车场使用停车引导系统,为车主提供车位信息。该停车场在每个车位上方安装了车位探测装置,通过传感器实时监测车位占用情况。车位探测装置将监测数据上传至服务器后,系统每隔一段时间进行一次数据汇总,统计当前空余车位数量,最后在停车场入口处显示屏上显示各区的空余车位数。系统架构如图a所示:
图a
(1)以下适用于车位探测的传感器有    (多选,填字母:A.地磁传感器/B.温度传感器/C.声音传感器/D.超声波传感器)。
(2)以下不属于该系统服务器功能的是    (单选,填字母:A.存储采集数据/B.处理浏览器发出的服务请求/C.控制系统数据传输速率)。
(3)基于Flask框架编写该系统Web服务器端程序。其中,实现查看历史数据功能的路由与视图函数部分代码如下:
#导入Flask框架模块及其相关模块,代码略
@app.route('/history',methods=['GET'])
def list():
  #从数据库读取车位情况的历史数据,并返回页面,代码略
测试系统时,发现通过访问主页:http:∥192.168.0.101:8080/能正常查看实时数据,但访问URL:http:∥192.168.0.101:8080/list查看历史数据时,出现如图b所示内容。为解决该问题,查看历史数据时所访问的URL应修改为    。
图b
(4)系统运行后,在浏览器访问页面中,查看到的各区空余车位数与实际不符,可能的原因是______
_________________________________________________________________________________。
(注:回答2项,1项正确得1分)
听课笔记:________________________________________________________________________
_________________________________________________________________________________
变式训练2 小峰做了一个“搭建学生寝室管理系统”的实验,该系统可通过人脸识别、指纹识别、校园卡等方式模拟进出寝室管理,并将进出数据发送给服务器。通过浏览器可以查看学生在寝、离寝情况。小峰选择的硬件有:智能终端、IoT模块、摄像头、指纹采集仪、射频识别设备、进出口闸机、服务器等。该系统结构示意图如图所示,其中Web服务器端程序采用FlaskWeb框架开发。
(1)下列硬件设备中,属于执行器的有    (单选,填字母:A.摄像头/B.指纹采集仪/C.射频识别设备/D.进出口闸机)。
(2)下列关于该系统应用软件的网络架构,说法正确的是    (单选,填字母:A.客户端无需安装专用软件,升级维护方便/B.对服务器要求较低/C.能够降低系统通信开销)。
(3)下列功能需要在服务器端程序中实现的是    (多选,填字母:A.原始指纹数据的采集/B.在数据库中查找指纹特征数据/C.闸机的开关/D.根据浏览器的请求返回数据)。
(4)小峰基于FlaskWeb框架编写服务器端程序,部分代码如下。编写完后,若要通过浏览器获取视图函数entry()返回的页面,则访问的URL是http:∥        。
#导入Flask框架模块及其他相关模块,代码略
app=Flask(_ _name_ _)
@app.route('/')
def index():
  #在模板文件上显示从数据库读取的入寝、离寝学生数据,代码略
@app.route('/dorm',methods=['GET','POST'])
def entry():
  #从数据库读取对应班级学生的在寝、离寝数据,并返回页面,代码略
  #服务器其他功能,代码略
if _ _name_ _=='_ _main_ _':
  app.run(host='10.16.1.18',port=8080)
(5)小峰对系统进行动态测试,使用校园卡刷卡,闸机能正常打开,在浏览器中查看系统首页,页面中标题、表格等内容能正常显示,但却未显示刷卡数据,刷新后仍不变(Web服务器数据库的数据读写功能正常)。从程序角度说明造成上述问题的原因有________________、_____________________。
(注:回答2项,1项正确得1分)
例3 小李设计了一个会员管理系统,用户通过浏览器在相应页面可进行会员注册、在线充值、线上查询消费记录等操作。该系统服务器端程序采用FlaskWeb框架编写,框架结构如图a所示。
图a
其中会员注册子页面如图b所示。存储会员信息的users表中共3个字段,依次保存序号、用户名和密码,如图c所示。会员注册时需满足以下条件:①用户名不重复;②密码长度大于5。服务器端部分代码如下。
from flask import Flask,render_template,request
import sqlite3
def check(name,pwd):
  conn=sqlite3.connect("account.db")
  cur=conn.cursor()
  cur.execute("select*from users where name=’%s’"%name)
  val=cur.fetchall()
  flag=True
  if len(val)==0 and ①  :
    sql="insert into users(name,password) values('%s','%s’)"%(name,pwd)
    cur.execute(sql)
    conn.commit()
  else:
    flag=False
  cur.close();conn.close()
  return flag
app=Flask(_ _name_ _)
@app.route("/reg")
def reg():
  name=request.args.get("xm")
  pwd=request.args.get("psd")
  if ②  :
    return "注册成功!"
  else:
    return "请重新注册!"
  #其它代码略
if _ _name_ _=="_ _main_ _":
  app.run(host="192.168.1.10",port=80,debug=True)
(1)在搭建“会员管理系统”的前期准备过程中,选定系统物理配置的过程属于    (单选,填字母:A.需求分析/B.概要设计/C.详细设计)。
(2)该系统网络应用软件的实现架构是    (单选,填字母:A.B/S架构/B.C/S架构)。
(3)分析程序可知,该系统中存储会员用户名和密码数据的数据库文件名为    。
(4)分析程序,①处应填写的代码为    ,②处应填写的代码为    。
(5)下列关于该信息系统的描述正确的是    (多选,填字母)。
A.服务器采用GET方式接收用户名和密码数据
B.程序代码中debug=True语句的作用是打开调试功能,在实际的网站应用环境中,也可以打开该功能,方便调试程序。
C.注册新会员时,用户名为admin03,密码为123abc,提交数据到Web服务器的URL为
http:∥192.168.1.10/check xm=admin03&psd=123abc
D.对users表中的密码进行加密,可以提高该信息系统的安全性
(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
听课笔记:________________________________________________________________________
_________________________________________________________________________________
变式训练3 小朱是校图书馆的一名志愿者,他与同学们计划搭建一个智慧校内图书管理系统。该系统服务器端程序采用FlaskWeb框架编写。所有图书已经设置了相应的电子标签,当学生借阅图书时,系统识别图书上的电子标签,采集的数据发送到Web服务器。
(1)搭建智慧图书借阅管理系统前正确的准备步骤是    (单选,填字母)。
①确定系统应具备的功能模块、系统物理配置和数据库管理系统选择;
②调查所有师生和管理员对图书管理系统的需求;
③明确系统“先干什么,后干什么”,进行输入、输出设计,人机界面设计等;
④分析学校的经济、技术、环境等方面的可行性;
⑤选择图书管理系统的开发模式。
A.②①⑤④③ B.①④⑤②③
C.②④⑤①③ D.①②⑤④③
(2)系统读取电子标签信息的过程采用    技术。(单选,填字母:A.红外线识别/B.射频识别/C.图像识别)
(3)小朱在图书管理系统中设计了一个查询剩余天数的功能,网页部分效果如图所示。
实现上述功能部分代码如下:
def getbook(bh): #查询并返回数据库中的指定编号的记录
  conn=sqlite3.connect('library.db') #连接数据库
  cur=conn.cursor() #生成一个游标
  cur.execute('select*from books where book_no=%s'%bh)
  book=cur.fetchall()
  cur.close() #关闭游标
  conn.close() #关闭数据库连接
  return book
def daydelta(a,b): #计算两个日期间隔的天数
  代码略
@app.route('①    ',methods=['GET','POST'])
def cal():
  if request.method=='POST':
    bh=request.form.get('bh') #获取图书编号
    book=②     #查询该编号的图书记录
    today=datetime.now().strftime('%Y-%m-%d')#将时间转成字符型数据并保存
    passdays=daydelta(book[0][4],today)
    #计算出借日至今的天数
    ds=14-passdays
    #渲染模板,代码略
  else:
    return redirect('/')
观察上述代码可知,存储相关数据的数据表名称是    ,服务器端采用    (选填:GET/POST)方式获取图书编号。
(4)结合上述代码,通过http:∥192.168.1.7:5000/cal_days访问服务器能实现查询剩余天数的功能,请在划线处填入合适的代码。
(5)学校图书馆借阅规定:前14天为正常借阅期,第15天起为逾期。上述程序加框处的功能为“正常借阅期内输出剩余天数,逾期后输出逾期天数”,已知passdays为借出天数,则加框处代码为    (多选,填字母)。
A.if ds<0:
  tips=“图书已逾期,逾期天数为”+str(ds)
else:
  tips=“图书已逾期,逾期天数为”+str(ds)
B.if ds<0:
  ds=-ds
  tips=“图书已逾期,逾期天数为”+str(ds)
else:
  tips=“图书已逾期,逾期天数为”+str(ds)
C.if ds>=0:
  tips=“图书已逾期,逾期天数为”+str(ds)
if ds<0:
  ds=-ds
  tips=“图书已逾期,逾期天数为”+str(ds)
D.if ds<0:
  ds=-ds
  tips=“图书已逾期,逾期天数为”+str(ds)
if ds>0:
  tips=“图书已逾期,逾期天数为”+str(ds)
1.小明搭建智慧教室环境管理系统,智能终端通过传感器获取教室的光线、温度等信息,并上传至服务器;智能终端根据阈值自动控制教室的灯、空调等设备的开关;用户可以通过手机浏览器或PC浏览器来访问服务器上的数据,并远程控制教室的灯、空调等设备的开关。该系统的架构如图a所示。
(1)该信息系统的架构是    (选填:B/S或C/S)模式,智能终端和服务器的通信采用__________
(选填:有线或无线)方式。
(2)智能终端上传温度数据的部分代码如下。
while True:
  temp=round(pin2.read_analog()/1024*3000/10.24,1)
  errno,resp=Obloq.get("input id=1&val="+str(temp),10000) #智能终端向服务器发送温度信息,若在10000毫秒内发送成功,返回发送成功errno的值为200和服务器的处理结果。
  if errno==200: #发送成功
    if resp=='1': #返回值为1时,打开蜂鸣器
      pin8.write_digital(1)
    else:
      pin8.write_digital(0)
  else:
    display.scroll(str(errno))
  sleep(1000*300)
则温度传感器连接智能终端的端口是    ,温度传感器采集温度的时间间隔为    (填整数)分钟。
(3)若服务器地址为192.168.1.100,端口为5000,温度传感器某时刻采集的温度值为23.5,则终端上传数据的URL为    (单选,填字母)。
A.http:∥192.168.1.100:5000/input id=1&val=23.5
B.http:∥192.168.1.100:5000/id=1&val=23.5
C.http:∥192.168.1.100/input id=1&val=23.5
D.http:∥192.168.1.100/id=1&val=23.5
(4)某一天小明访问Web服务器查询数据,发现教室的温度值超过28 ℃,他通过服务器远程控制打开教室的空调,一个小时后,通过服务器再次查询教室的实时温度,发现温度仍然超过28 ℃。他去教室实地检查,发现教室温度超过28 ℃,而空调并未启动。分析可能的原因有_____________________。
(注:回答2项,1项正确得1分)
2.某智能停车场门口设立剩余车位电子屏幕,上面显示停车场的空余车位数量。该提示功能每隔一定的时间会实时更新,其自动更新的实现过程如下:
ⅰ.每个车位上都设置有车位识别器(带有显示灯,红灯表示车位有车,绿灯表示无车),同时实时检测所在车位是否有车停驻,更新时会将所有车位的状态传输给管理终端。
ⅱ.管理终端根据收到的某个时刻所有车位状态的感应信息更新各个车位识别器显示灯颜色并统计停车场中空余车位的数量。
ⅲ.将实时统计的结果显示在停车场门口的电子屏幕上。
管理终端经IoT模块连接停车场WiFi,将接收到的车位信息同步到服务器数据库中,用户和管理员通过计算机或移动终端打开浏览器登录相关网站进行车辆查询、管理等操作。该系统结构如图所示。请回答下列问题:
(1)下列选项描述了图中①②③处所缺失的设备,对应关系合理的是    (单选,填字母)。
A.①路由器 ②服务器 ③调制解调器
B.①服务器 ②调制解调器 ③路由器
C.①服务器 ②路由器 ③调制解调器
D.①调制解调器 ②服务器 ③路由器
(2)该信息系统网络应用软件的实现架构是    (单选,填字母:A.B/S架构/B.C/S架构)。
(3)该系统网站功能页面规划如表所示,服务器端应用实例app中与管理员通过浏览器登陆系统进行车辆查询时页面关联的路由设置语句是@app.route("     ")。
序号 访问地址 功能说明
1 /type select="manage" select="manage"表示选择管理员身份登陆 select="user"表示选择用户身份登陆
2 /login 注册与登陆页面
3 /admin p= "check" p="check"表示管理员查询车辆信息p="delete"表示管理员删除车辆信息
... ... ...
(4)管理员通过移动终端在相关网页上查看车位实况,页面正常运行一段时间后不再发生变化,刷新页面后仍不变,但门口电子屏幕能实时显示正确信息,则造成此结果的原因可能是    (多选,填字母)。(注:全部选对得2分,选对但不全得1分,不选或有选错得0分)
A.管理终端损坏
B.车位识别器与管理终端连接异常
C.IoT模块损坏
D.停车场WiFi信号异常
(5)根据题干描述,请补充下图管理终端与车位识别器、电子屏幕之间的数据传输关系。数据传输关系示例:
A→B:表示数据从A传输到B。
3.校园一卡通系统是数字化校园必备的系统之一。学生凭借一张校园卡,可以在校内完成食堂就餐、超市购物、图书借阅等应用,家长可以借助手机APP查询学生的在校消费记录,系统拓扑结构如图a所示。
(1)刷卡就能消费,使用的是    技术(单选,填字母:A.移动网络/B.射频识别)。
(2)在一卡通服务器和互联网之间增加    设备可以提高系统安全性(单选,填字母)。
A.调制解调器 B.路由器
C.交换机 D.防火墙
(3)若学生在食堂编号id为1的刷卡机上消费了15元,提交数据的URL为http:∥192.168.200.15:8080/dm id=1&data=15,参考图b所示的路由函数,若学生在超市编号id为5的刷卡机上消费了20元,此时提交数据的URL为http:∥192.168.200.15:8080/_____________________。
@app.route('/dm'):    #获取食堂数据 …… @app.route('/sp'):    #获取超市数据 …… @app.route('/bk'):    #获取图书馆数据 ……
图b
(4)系统设置了消费阈值wmax来防止学生过度消费,分别用sta值的0和1来表示学生的单笔消费金额wl小于等于wmax和大于wmax的情况,下列Python程序段中符合要求的有    (多选,填字母)。(注:全部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
A.sta=0
t=wl∥wmax
if t>1:
  sta=1
B.if wl>wmax:
  sta=0
else:
  sta=1
C.sta=0
t=wl-wmax
if t>0:
  sta=1
D.sta=0
if wl>wmax:
  sta=1
(5)学生能够在图书馆正常借阅,在食堂刷卡时却无法正常消费,请分析可能的原因是_________
_______________________________________________________________________________。
(注:回答2项,1项正确得1分)
4.小华使用Python开发了成绩管理系统,教师、学生及家长都可登录该系统使用,相关用户名及密码都已经保存到数据库中,其中登录界面及部分程序代码如下:
import sqlite3
from flask import Flask,request,render_template
app=Flask(_ _name_ _)
@app.route(①    )
def index():
  return render_template('index.html') #打开主页文件
@app.route('/login')
def login():
  user=request.args.get('user')
  pwd=request.args.get('password')
  if user=="or pwd==" or len(pwd)<6:
    return '输入不正确,请重新输入!'
  conn=sqlite3.connect('school.db')
  cur=conn.cursor()
  sql="select*from users where username='%s'and password='%s'"%(user,②    )
  cur.execute(sql)
  users=cur.fetchall()
  cur.close();conn.close()
  if users:
    return '登录成功'
  else:
    return '登录失败'
if _ _name_ _=='_ _main_ _':
  app.run(host='192.168.1.104',port=5000)
请回答下列问题:
(1)设计该系统的前期准备工作中,需将信息系统分成若干模块,并确定每个模块的功能、模块间的接口和关系,这一过程属于    (单选,填字母:A.需求分析B.可行性分析C.概要设计D.详细设计)。
(2)该系统采用的sqlite数据库名为  ①  ,其中保存账号及密码的数据表名为  ②  。
(3)划线处填入正确的代码。
5.学校对车辆进入校内停车场使用了车辆入场识别系统,该系统的工作流程如下:
ⅰ.车辆驶入摄像机识别区域,智能终端连接的摄像机开始捕获,并识别出车牌号;
ⅱ.智能终端通过无线网络将识别的车牌信息发送到Web服务器;
ⅲ.如果该车牌存在数据库内,并且处于启用状态,则显示屏显示车牌号码、欢迎光临等信息,同时智能终端向入口控制器发送开闸信号,道闸开闸放行。
数据库表结构如图:
字段名 数据类型 作用
carid varchar 存储车牌号
carstate integer 车牌状态,1代表启用,0代表未启用
该服务器上的部分代码如下:
app=Flask(_ _name_ _)
@app.route("/judge",methods=['GET'])
def fun():
  db=sqlite3.connet('data.db')
  cur=db.cursor()
  car=request.args.get('cp')
  cur.execute("select*from carinfo where carid==%s"%car)
  data=①      
  cur.close()
  db.close()
  if len(data)==0:
    return "未登记车辆,禁止入内!"
  else:
    if ②      :
      return "欢迎"+car+"进入!"
    else:
      return "当前车牌未启用,请联系管理员!"
if _ _name_ _=='_ _main_ _':
  app.run(host="10.49.26.12",port=8080)
(1)在搭建“车辆入场识别系统”过程中,下列说法正确的是    (多选,填字母)。
A.工作人员驾驶车辆检测系统是否正常运行,属于系统测试中的动态测试
B.决定该系统采用Sqlite数据库属于搭建信息系统过程中的详细设计阶段
C.应先进行模块结构设计,再进行开发模式选择
D.智能终端可借助IoT模块通过无线网络和服务器进行数据传输
(注:全部选对的得2分,选对但不选全的得1分,不选或有选错的得0分)
(2)若当前识别到的车牌号为“浙B54A36”,并且采用GET方式传输数据,则智能终端上传数据给Web服务器的URL应该为______________________________________。
(3)在划线处填入合适的代码。
(4)系统搭建完成后,陈老师驾驶车辆驶入停车场,提示欢迎进入的信息,结果道闸却未打开,可能的原因是     (单选,填字母)。
A.Web服务器与数据库连接异常
B.智能终端未对控制器发送相应请求
C.车牌数据未保存到数据库中
4.2 搭建信息系统
知识梳理
1.(2)交换机 路由器 网卡 双绞线 光缆 (4)输入 处理 存储 输出
2.硬件搭建 软件模块编写 操作系统 数据库管理系统 应用软件
3.数据管理设计 服务器端程序 客户端程序
例题精析
例1 (1)A (2)A (3)/toserv (4)BD (5)①连接物联网模块与Web服务器的无线路由器无法正常工作;②物联网模块损坏;③数据表对记录数有数量限制,当记录数达到一定程度时,数据表不再更新;④Web服务器中数据库管理系统无法正常运行。
解析 (1)智能终端通过传感器获取数据,控制器经过处理后,再通过执行器对外部进行控制,故A项正确。(2)浏览器与服务器交换数据,故需采用B/S架构。
(3)由“http:∥192.168.1.6:5000/toserv h=60&id=1”可知,路由为“/toserv”。(4)当t在[tmin,tmax]之间时返回0,小于min返回1,大于tmax返回2,A项由两个分支构成,一个分支结束后,还需执行第二个分支,程序段返回值只能是2或者是0,1无法取到;C项的返回值只能是1或者2,0无法取到;故只有B项与D项正确。(5)可能造成上述问题的原因:一是服务器服务中断(服务器断电或服务器系统故障),二是互联网网络服务出现故障浏览器无法更新获取新的采集数据。
变式训练1 (1)C A (2)http:∥192.168.1.10:8080/search (3)BD
(4)执行器(补光灯)损坏;阈值设置不合理等
解析 本题考查信息系统的搭建。(1)图中①为输入设备,对应的是传感器。②处为输出设备,对应为执行器。(2)IP地址是192.168.1.10,端口号为8080,查看某一天(历史记录)的路由为search,可以得到相应的URL。(3)A选项i是列表中元素值,B选项正常数据continue跳过本次循环,不执行计数语句,统计非正常数据。C选项i的终值应为len(s)-1。D选项用列表c记录是否正常,若是非正常数据,c[i]值为1,并对c列数进行求和。(4)系统一直提示光线不足,说明网络访问正常,但数据上传有问题,Web服务器的输入端均有可能出现问题。
例2 (1)AD (2)C (3)http:∥192.168.0.101:8080/history 
(4)传感器故障;网络传输故障;服务器端统计数量代码有误;统计时间间隔设置过长等其他合理答案
解析 本题考查信息系统的搭建。(1)地磁传感器是利用车辆通过道路时对地球磁场的影响来检测是否有车辆,超声波传感器是利用超声波的发射与接收来确认是否有车辆。(2)服务器加工处理数据并对用户的请求作出回应。(3)路由为history,list为视图函数。(4)在浏览器访问页面中,查看到的各区空余车位数与实际不符,说明系统连接和访问正常,但数据的输入、传输和存储以及计算可能出现问题。
变式训练2 (1)D (2)A (3)BD (4)10.16.1.18:8080/dorm (5)①index模块中从数据库中读取数据代码有误;②index模块中将参数传递给模板文件的代码有误;③主页模板文件中,显示服务器传递的数据代码有误。
解析 本题考查信息系统的搭建。(1)ABC均为输入设备。(2)B/S模式只需用浏览器连接服务器,对服务器的要求比较高,通信开销比较大。(3)A选项指纹数据由指纹采集器采集,智能终端传输到服务器;B选项服务器端连接数据并查询数据库中指纹特征数据;C选项闸机作为执行器进行工作;D选项浏览器向服务器发起请求,服务器接收请求之后并进行反馈。
(4)由下方代码app.run(host='10.16.1.18',port=8080)可知服务器ip和端口号,视图函数entry()对应的路由是“/dorm”。(5)根据题干描述,刷卡之后闸机能正常打开,说明执行器、传感器、智能终端、IoT模块、WiFi这些设备和连接都没有问题,并且智能终端通过IoT与Web服务器的数据传输也没有问题;在根据题干描述的浏览器查看系统首页,首页中标题表格等内容都能正常显示,用户端通过互联网与Web服务器的连接也没有问题;并且说明了数据库读写功能正常,也排除了数据库本身的问题,因此问题只能集中在与数据库相关的程序代码上。
例3 (1)B (2)A (3)account.db (4)①len(pwd)>5 ②check(name,pwd) (5)AD
解析 本题考查信息系统的搭建。(1)概要设计中的系统物理配置包括硬件设备配置、应用软件的选择和通信网络的选择和设计等。(2)用浏览器访问服务器属于B/S模式。(3)由语句conn=sqlite3.connect("account.db"),系统中存储会员用户名和密码数据的数据库文件名为account.db。(4)①会员注册时需满足以下条件,用户名不重复且密码长度大于5。②调用函数检测会员注册条件。(5)B选项为了安全,在网站应用环境中将关闭该功能。C选项从图a注册子页面路由视图为reg。
变式训练3 (1)C (2)B (3)books POST (4)①/cal_days 
②getbook(bh) (5)BC
解析 本题考查信息系统搭建和前期准备。(1)前期准备分为需求分析、可行性分析、开发模式选择、概要设计、详细设计。(2)读取电子标签信息的过程采用射频识别技术。(3)从查询语句获得查询的数据表名为books,从语句bh=request.form.get('bh') #获取图书编号可以看出,变量bh的值通过POST方式获取。(4)从URL看出实现查询功能的路由是/cal_days,bh的图书记录可以通过getbook(bh)函数获取。(5)若ds<0说明已逾期,逾期天数为-ds,若ds>=0,还剩下ds天。
随堂检测
1.(1)B/S 无线 (2)pin2 5 (3)A (4)执行器故障、执行器与智能终端的连接有问题、空调插座没电了、空调故障、控制模块代码有缺陷、其他合理原因(回答温度传感器、智能终端、IoT模块、服务器、无线信号故障都不正确)
解析 (1)搭建Web服务器属于B/S模式,通过WiFi连接。(2)①由语句pin2.read_analog()可以得到接口。②sleep(1000*300)表示每隔300秒即5分钟采集一次数据。(3)略。(4)能够查询教室的实时温度且温度有变化,说明数据的采集、传输和存储没有问题,但执行器可以出现问题。
2.(1)C (2)A (3)/admin (4)CD
(5) (2个车位识别器连接线各0.5分,电子屏幕)
解析 (1)通过调制解调器将光信号转换为电信号,再用路由器连接两个不同的网线,接连接到服务器。(2)搭建Web服务器属于B/S模式。(3)admin路由中,参数p为"check"表示管理员查询车辆信息。(4)运行一段时间后不再发生变化,刷新页面后仍不变说明数据不再更新了。(5)略。
3.(1)B (2)D (3)sp id=5&data=20 (4)CD (5)①食堂刷卡机故障 ②刷卡机与食堂网络连接异常 ③食堂网络与校园网连接异常 ④一卡通服务器的食堂子系统异常
解析 本题考查信息系统的搭建。(1)略。(2)略。(3)超市数据对应的路由是’/sp’,所以应填写http:∥192.168.200.15:8080/sp id=5&data=20。(4)略。(5)学生能够在图书馆正常借阅说明该卡功能正常、一卡通服务器正常。故原因出现在食堂这个模块:①食堂刷卡机故障;②刷卡机与食堂网络连接异常;③食堂网络与校园网连接异常;④一卡通服务器的食堂子系统异常。
4.(1)C (2)①school.db ②users
(3)①"/" ②pwd
解析 (1)将信息系统分成若干模块属于概要设计。(2)①表达式sqlite3.connect('school.db')中包含了数据库信息。②表达式select*fromusers中表示查询的数据表名称。(3)①在该路由的视图函数中表明打开主页文件,因此路由为主页。②语句pwd=request.args.get('password')表示获取输入的密码,因此在数据库中查找用户和密码。
5.(1)AD (2)http:∥10.49.26.12:8080/judge cp=浙B54A36 (3)①cur.fetchall() ②data[0][1]==1 (4)B
解析 本题考查信息系统的搭建。(1)决定采用Sqlite数据库属于概要设计中的数据库管理系统选择;搭建信息系统的前期准备的步骤为:需求分析—可行性分析—开发模式选择—概要设计—详细设计。其中模块结构设计是概要设计的一个部分。故应先进行开发模式选择,再进行模块结构设计。(2)采用GET方式传输数据,智能终端传到服务器的路由为”/judge”,传输数据的变量名为cp。(3)data表示通过查找车牌号获取的数据,①获取数据库查询到的数据。②获取的数据包含2个数据项:车牌号及车牌状态。车牌状态应用data[0][1]表示,根据代码,当车牌启用时,返回“欢迎进入”。(4)可以驾驶车辆驶入停车场,提示欢迎进入的信息,说明1.信息采集端正常;2.Web服务器与数据库连接正常;但是结果道闸却未打开,说明是智能终端和执行器端出现问题。通过三个选项,可能的原因为B选项智能终端未对控制器发送相应请求。

展开更多......

收起↑

资源列表