信息系统的软件及开发 知识点题库

   快速模型采用自上向下、相互衔接的固定次序。
小张正在设计一款基于Web环境下的“智能机器人系统”,该系统的要求及功能描述如下:

①用户可以通过笔记本.手机、平板及电脑等各类终端访问该系统。

②用户使用时不必安装专用的软件或APP,只需设备安装了浏览器即可。

③该机器人可以实现文字对话、语音对话、人脸识别及车牌识别等应用。

④该系统能根据用户的使用行为、习惯等提供人性化服务。

  1. (1) 要实现上述功能,该系统应选择哪一种模式的系统架构?并简述理由。
  2. (2) 小张在对“智能机器人系统”进行应用的功能组成分析时,制作了如图1所示的功能图。

    请为其中的“用户管理模块”进行功能细化分析并将图2的①②③处补充完整。

    序号

    用户管理细化功能模块

     

     

     

  3. (3) 你认为还可以为“智能机器人系统”的功能模块新增哪些功能?
有一Web应用程序的路由视图函数代码如下所示:

@app.route(/t1')

def index_ _t1( ):

#代码略

@app.route(/t2', methods=['GET", POST])

def index_ t2( ):

#代码略

if request.method = 'GET:

return render_ template(t2.html')

else:

如要实现:当用户发出POST请求时,网页跳转至“/t1"页面,则上述代码中方框内的代码为(    )。

A . return render_ _template(/t1 html) B . return redirect(/t1) C . retur redirect('index_ _t1) D . return request(index_ _t1')
以下编程框架中,不属于Python语言的网络应用开发框架的是(    )
A . Flask B . Tronado C . Django D . .Net Framework
在Python语言中使用Flask框架编写一个Web应用程序,使应用基本具备网络应用功能。有下列语句命令:

①app = Flask(_ name_ )

②@app.route(‘/’)

③from flask import Flask

④app.run( )

⑤def index( ):#具体代码略

要实现上述功能,上述语句执行的先后顺序正确的是(    )

A . ③①②⑤④ B . ③②①⑤④ C . ③①②④⑤ D . ①②⑤④③
小明想要使用Python语言实现一个“在线加法练习系统”,其功能如下:

①用浏览器访问该系统时,会显示欢迎页面,其中包含“关于”“练习”及“排行榜”三个链接。

②单击“关于”链接进入系统介绍的页面。

③单击“练习”链接进入练习的页面,其中显示由计算机随机生成的两个整数,整数的范围为[1,100]。如果练习者输入的答案正确,那么应用自动给出新题;若输入的答案错误,则应用提示答案错误并要求重新输入答案。

④单击“排行榜”链接进入排行榜页面,显示得分排行榜。

  1. (1) 在规划设计“在线加法练习系统"的过程中,小明根据需要选择了一种基于Python语言的Web应用框架。请你为小明选择一种Web应用框架并简单描述该框架的特点。

    ①常见的基于Python语言的Web应用框架:① ②

    ②你选择的Web应用框架:

    ③使用该框架编写的网络应用架构为(选填:“B/S架构”或“C/S架构”)。

    ④该Web应用框架特点:

  2. (2) 根据“在线加法练习系统”的功能需求,实现网页跳转、习题生成答案输入及答案批改等功能,需在网络应用程序中导入的模块有:

    实现的功能

    使用的模块

    模块中的对象

    构建Flask应用实例

    flask

    Flask

    使用网页模板构建应用网页

     

     

    处理网页请求的对象

     

     

    创建并处理网页表单

     

     

    用于表单字段定义及验证

     

     

    生成[1,100]范围内的整数

     

     
小明在分析应用功能组成后,根据功能需求编写了如下网络应用代码:

from flask import Flask, render_ template, request

app= Flask(_ name__ )

@app.route(‘/’)

def index( ):

#显示欢迎页面,代码略

@app.route(/about)

def about( ):

#显示关于页面,代码略

@app. route('/exer', methods='GET', 'POST')

def exer( ):

#显示练习页面,代码略

@app.route('/top')

def toplist( ):

#显示排行榜页面,代码略

if_name_=='_main_ ':

app.run( )

  1. (1) 请用实线将下列的访问“在线加法练习系统”功能的URL与相应的路由及视图函数连接起来。

    http://127.0.0.1:5000/exer     @app.route' (/about')about( )

    htp://127.0.0.1:5000/top       @app.route('/')index()

    htp://27./.0.1:5000/about      @app rouet('topo')toplist( ):

    htp://27.0.0.1:5000/               @app.roue(/exer, methods-['GET', 'POST'])exer( )

  2. (2) 在编写Flask网络应用程序时需完成的操作选项有A~F,在表中的“完成的操作”列填写相应的操作选项字母。

    A.创建APP对象

    B.导入Flask模块

    C.运行网络应用

    D.创建路由

    E.渲染网页模板

    F.创建视图函数

    代码

    完成的操作

    from flask import Flask, render_ lemplate, request

     

    app= Flask(_name_)

     

    @app.route(‘/’)

    def index( ):

    #显示欢迎页面,代码略

     

    App.run( )

     

    Rendertemplate('indcx.html', txt =mtxt)

     
小明为“在线加法练习系统”的欢迎页面编写了如下的路由和视图函数。

@app.route('/')

def index( ):

mtxt = '欢迎使用在线加法练习系统!'

return render template('index1, html', txt=mtxt)

  1. (1) 根据上述代码可以确认小明使用了模板文件来编写“欢迎页面”的代码。试简单描述模板文件的作用。
  2. (2) 在FlaskWeb应用框架中,可以通过网页模板来显示内存变量的值或对象等,以下在模板文件index.html中用于显示内存变量mtxt值的正确代码为(    )
    A . {{mtxt}} B . {%mtxt%} C . {{txt}} D . {%txt%}
小明想为“在线加法练习系统”增加登录功能,校验并记录用户名,以便在“排行榜”中显示排名用户的名称,其登录界面设计如图所示。

  1. (1) 在登录界面中,需提供用户名和相应的密码,单击“登录”按钮后,表单收集相应的数据至内存变量,系统根据变量的值进行用户检验,以确定是否予以登录系统。请你为该表单设计表单字段,写出其字段类型,并简述该表单字段的作用。

    变量

    表单字段类型

    表单字段作用

    usemame

     

    password

     

    submit

     

  2. (2) 小明编写了LogForm表单类用于显示登录表单。请在划线处填写合适的代码。

    class LogForm(FlaskForm):

    username = StringField(用户名:)

    password = PasswordField(密码:)

    submit =

小明在设计和调试“在线加法练习系统”的过程中出现了如下问题。
  1. (1) 由于网络应用程序的数据加工处理与结果的呈现分别由服务器端和浏览器执行,使应用在调试时很不方便,特别是Web应用在实际生产环境中产生的问题,很难在事后重现并追究原因。请写出两种网络应用调试的方法,以便他方便地调试应用。
  2. (2) 在Web应用程序的调试过程中程序运行状况信息,即调试信息的提取非常重要,在调试信息提取过程中通常会以选项A~E等五种方法来实现。

    A.通过浏览器输出调试信息

    B.通过服务器控制台输出调试信息

    C.通过日志文件记录并输出调试信息

    D.通过电子邮件发送调试信息

    E.通过数据库记录并输出调试信息

    ①下列代码中实现的是。(请填写A~ E选项字母。)

    from flask import Flask

    import time

    app = Flask(_name_)

    def debug_ print(debug_ _info):

        with open("appdbg.log",a+') as fh:

            setting_ str = '调试信息:' + debug_ info

            fth.write(setting _str)

    @app.route(")

    def index( ):

    dstr =我的第一个 Web程序!'

        debug_ print('dstr=' + dstr)

        returm dstr

    if__ name__ = ='_main_':

       app.run( )

    ②下列代码中实现的是。(请填写A~ E选项字母。)

    from flask import Flask

    app = Flask(_name_ )

    @app.route(/)

    def index( ):

    dstr = '我的第一个Web程序!'+ 1

    return dstr

    if_ name _=='_main_':

    app.run(debug=True)

    ③下列代码中实现的是。(请填写A~ E选项字母。)

    from flask import Flask

    import time

    app= Flask(_name_ )

    @app.route(/)

    def index( ):

        dstr = '我的第一个 Web程序!'

        print('dbginfo: dstr=' + dtr)

        return dstr

    if _name_ == '_main_':

    app.run( )

搭建“室内环境实时监测系统”,要求使用数据库存储每日温度数据,则该系统搭建服务器时下列软件中无须安装的是(     )
A . 数据库管理系统 B . 传感器驱动程序 C . 操作系统 D . 网卡驱动程序
软件开发一般包括数据管理设计等主要部分。
下列关于系统搭建的描述,正确的是(    )
A . 系统搭建就是把系统的硬件搭建完成 B . 系统运行速度仅取决于硬件的性能 C . 系统的搭建主要包括硬件搭建和软件模块的选择与编写 D . 软件是控制信息系统的核心,系统的每个模块代码只能编写无法应用外部丽数库
软件开发是一项包括需求分析、设计、实现和测试的系统工程。
需求分析中,开发人员要从用户那里解决最重要的问题是(    )
A . 让软件做什么 B . 要给软件提供哪些信息 C . 软件的工作效率如何 D . 让软件具有何种结构
在快速原型模型设计开发过程中,开发人员根据(    )的需求不断修改原型,直到满足要求为止。
A . 用户 B . 开发人员 C . 系统分析员 D . 程序员
需求分析阶段研究对象是软件项目的。   
在软件的生命周期中,明确软件系统具备哪些功能的阶段是(     )。
A . 可行性分析 B . 需求分析 C . 概要设计 D . 详细设计
下列不是软件需求分析阶段完成的工作的是(    )
A . 软件代码设计 B . 软件功能要求 C . 软件数据要求 D . 软件安全要求
在软件的生命周期中,明确软件系统具备哪些功能的阶段是需求分析。