Skip to content

软件工程

更新: 1/6/2025 字数: 0 字 时长: 0 分钟

  • 考试题型:四道大题
  • 时间:8:10 - 10:10
  • 地点:东楼 - 210
  • 监考老师:卢启领、周函蒨

第一大题(共 35 分)

Web 商品进销存信息系统

第一小题(8 分)

假如你是软件需求分析师,经过多次需求调研,对 Web 商品进销存信息系统的业务流程进行分析。请用文字描述一下该系统当中包括哪些功能?

  • 用户管理:实现用户权限分配和身份验证。
  • 商品管理:提供商品的入库、出库、修改、删除和查询等功能。
  • 库存管理:实时更新库存数据,提供库存查询、盘点、库存预警等功能。
  • 订单处理:管理采购和销售订单,包括在线订购。
  • 财务管理:记录销售、采购等财务数据,生成账单和报表,支持结算操作。
  • 统计报表:提供各种查询、统计、图表展示功能,帮助分析库存、销售等数据。
  • 数据操作:支持增、删、改、查等操作,确保数据的准确性和一致性。

第二小题(7 分)

在认真调查分析有关信息需求的基础上,通过对网上订购子系统业务流程分析,请画出“网上订购”部分的数据流程图。

20250104095409

第三小题(7 分)

库存管理业务主要处理商品的入库、出库、登账、盘点、统计等操作,请结合功能需求分析,画出库存管理子系统的业务流程图。

20250104095502

第四小题(7 分)

数据字典是系统中各类数据描述的集合,请给出“商品入库单”的数据字典描述。

  • 数据项

    • 名字:入库单号
    • 别名:序号
    • 描述:唯一标识某商品入库的数字编号
    • 定义:整型数
    • 位置:商品入库表、商品入出库表
  • 数据结构

    • 名字:商品入库单
    • 别名:商品生产量
    • 描述:记录商品入库详细信息的单据
    • 定义商品入库单 = 入库单号 + 商品编号 + 商品名称 + 规格型号 + 数量 + 单价 + 总金额 + 供应商编号 + 入库日期 + 仓库位置 + 经办人 + 备注
    • 位置:保存到数据库的入库单表中,可能也会打印保存
  • 数据流

    • 名字:入库单数据流
    • 来源:采购部门或供应商
    • 平均流量:根据企业规模和业务量变化
    • 去向:库存管理系统,用于更新库存信息
  • 数据存储

    • 名字:入库单存储
    • 输入:入库单数据流
    • 输出:库存更新数据流,用于财务和销售部门
    • 数据结构:包含商品入库单的所有字段,如入库单号、商品信息、供应商信息等
  • 处理过程

    • 名字:入库单处理
    • 输入:入库单数据流
    • 输出:更新后的库存信息,入库单记录
    • 处理:接收入库单信息,验证数据完整性和准确性,更新库存数据库,记录入库单信息,生成相关报表和通知

第五小题(6 分)

数据库结构设计的好坏将直接对 Web 进销存系统的效率产生影响,请根据实体联系分析画出进销存系统的 E-R 图。

20250104095909

第二大题

图书信息管理系统

第一小题(8 分)

结合问题描述,给出图书信息管理系统的用例视图。

20250104095948

第二小题(7 分)

图书信息管理系统为借阅者提供了便捷的借阅服务,请使用时序图对借书功能进行动态建模。

20250104100002

第三小题

在图书信息管理系统中,图书的入库操作一般通过读取图书信息、检查图书是否已存在添加图书信息、更新库存数量等步骤实现。请使用你熟悉的语言给出入库操作的代码示例。

java
public void addBook(Book book) {
    // 检查图书是否已存在
    if (inventory.containsKey(book.getIsbn())) {
        // 图书已存在,更新库存数量
        Book existingBook = inventory.get(book.getIsbn());
        existingBook.updateQuantity(book.getQuantity());
        System.out.println("图书已存在,更新库存数量!");
    } else {
        // 图书不存在,添加新图书到库存
        inventory.put(book.getIsbn(), book);
        System.out.println("图书添加成功!");
    }
}

第四小题(6 分)

软件测试是软件质量保证的重要手段,请设计图书信息管理系统中验证登录功能的测试用例。

编号测试场景前置条件测试步骤预期结果
TC-01成功登录用户已注册,拥有有效用户名和密码输入正确用户名和密码,点击登录用户成功登录,跳转到主页或用户主界面
TC-02用户名错误用户已注册,用户名正确,密码已知输入错误用户名,正确密码,点击登录系统提示“用户名或密码错误”,不允许登录
TC-03密码错误用户已注册,用户名正确,密码错误输入正确用户名,错误密码,点击登录系统提示“用户名或密码错误”,不允许登录
TC-04用户名或密码为空无用户登录留空用户名或密码字段,点击登录系统提示“用户名不能为空”或“密码不能为空”,不允许登录

第三大题

高校医疗费报销系统

第一小题

针对所选软件项目,深入该高校进行初步的调研,并进行软件问题定义。

  • 数据应用方面:需有效利用职工医疗费相关数据,实现从数据存储到合理运用,确保数据质量与高效使用,服务于费用监管与经办服务。
  • 信息存储方面:数据库要存储职工号、姓名、所属部门等职工基本信息,以及报销时的日期、医疗费类别和数额等报销信息。
  • 报销规则方面:职工每年医疗费报销限额为 480 元,超限额部分个人负担 10%;职工子女医疗费报销限额为 240 元,超限额部分报销 50%。

第二小题

假设开发一套企业进销存应用系统,需要一次性投资 20 万元,未来 5 年内每年可产生的直接经济效益为 9.6 万元,年利率为 5%。试计算该项目的投入产出比。

  1. 已知条件

    • 每年收益:FV=9.6万元
    • 年利率:i=0.05
    • 投资总额:K=20万元
    • 未来 5 年收益的现值总和:IN
  2. 计算公式

    • 未来价值公式FV=PV×(1+i)n
    • 当前价值公式PV=FV(1+i)n
    • 投入产出比公式R=KIN
  3. 计算过程

    • 第一年PV1=FV1(1+i)1=9.6(1+0.05)19.1429万元
    • 第二年PV2=FV2(1+i)2=9.6(1+0.05)28.7075万元
    • 第三年PV3=FV3(1+i)3=9.6(1+0.05)38.2928万元
    • 第四年PV4=FV4(1+i)4=9.6(1+0.05)47.8979万元
    • 第五年PV5=FV5(1+i)5=9.6(1+0.05)57.5219万元
    • IN=9.1429+8.7075+8.2928+7.8979+7.5219=41.5630万元
  4. 计算投入产出比

    • R=KIN=2041.56300.4812

第四大题

质量管理案例分析

第一小题

请指出这个项目在质量管理方面可能存在的问题。

  1. 职责设置不合理:任命程序员小李兼任质量保证人员,可能因精力分散无法全面履行质量保证职责,且缺乏专业性。
  2. 质量检查频率不足:每月一次的质量检查可能不足以及时发现和修正问题,导致问题累积,影响项目进度和质量。
  3. 沟通和协作问题:开发人员和质量保证人员在代码修改问题上存在分歧,反映出团队内部沟通和协作的不足。
  4. 质量意识淡薄:开发人员未按公司要求的编码规范编写代码,反映出团队整体质量意识不足,对质量规范重视不够。

第二小题

结合案例回答质量保证和质量控制的区别是什么?

  • 质量保证(QA):侧重于过程,是通过有计划、系统的活动,确保项目遵循合适的标准和流程,从整体上保证项目能满足相关质量要求,如制定编码规范等流程性工作。在本案例中,小李作为兼任的 QA,应提前制定并监督编码规范的执行。
  • 质量控制(QC):关注具体的工作成果,通过检查、测试等手段发现并纠正工作成果中的质量问题,如小李对代码进行检查,发现代码错误并要求修改。案例中,小李对已完成的模块代码进行检查纠错属于质量控制。

贡献者

The avatar of contributor named as wkwbk wkwbk

页面历史