首页 > 其他分享 >“你帮我助”软件开发(Final)

“你帮我助”软件开发(Final)

时间:2022-12-28 16:13:09浏览次数:38  
标签:功能 界面 软件开发 物品 管理员 类型 我助 普通用户 Final

本项目是上海交通大学 CS-3331 软件工程课程大作业。

 

作业描述

“你帮我助”软件开发(Final)

新的功能需求:

  1. 物品有公共的信息(物品名称,物品说明,物品所在地址,联系人手机,邮箱)。为了便于管理和查询,物品可以分成不同的类别(例如食品、书籍、工具等),不同类别的物品可能有不同的属性(例如食品有保质期,数量;书籍有作者,出版社等)。
  2. 互帮互助系统有两种类型的用户:管理员和普通用户。
  • 管理员可以设置新的物品类型(定义物品类型的名称和各个属性),修改物品类型。
  • 普通用户在添加物品时先选择物品类型,然后再填入物品信息。普通用户搜寻物品时,需要先选择类型,再输入关键字,关键字可以再用户名称和说明中进行匹配。
    普通用户需要注册(填入基本信息,包括住址,联系方式等),管理员批准后才能成为正式用户。
  1. 为了便于使用上述功能,软件需要提供 GUI。

文档需求:

  1. 需要提供一个文档:其中包括(1)用例模型;(2)针对用例画顺序图;(3)类图。

作业完成要求:

作业需要在 16 周前提交,并发布在你的 GitHub 仓库中;
作业完成后需要进行演示,请提前一周与助教约好。(每周周二下午都可以约);演示的内容包括写的文档、软件的功能(包括第一次,第二次功能)。
在技术博客上写一篇总结文章,对照软件工程的知识,对开发该程序的体会进行总结。

 

使用说明:

运行项目后,进入登录界面。如果没有账号,则可选择注册功能,填写相关信息后注册账号,注册成功将提示“请等待管理员审核”。登录时可选择登录为普通用户或是管理员。

登录为管理员后,将显示管理员界面。管理员可用功能为审核新用户,设置新的物品类型。选择“审核新用户”功能后,将显示审核界面,点击“获取新用户信息”,界面将显示最新的一条新用户信息,管理员可选择通过(该条信息将被存入用户信息文档),或是不通过(该条信息将被存入被拒绝用户文档);管理员可通过“ok"按键关闭审核界面。选择“新增物品类型”功能后,将显示新增物品类型界面,管理员可通过输入物品类型名称和相应的属性新建物品类型。

登录为普通用户后,将显示用户界面,普通用户可使用功能为“添加”,“删除”,“搜索”,“列表”。以“添加”为例,用户选择“添加”功能后,将显示添加物品界面。用户需要先输入待添加物品类型,系统将在数据库中获取该物品类型包含的属性,并显示在界面上,用户需在提示下输入相应的属性,再点击添加按钮;用户可通过“OK”键关闭审核界面。

 

开发体会:

由于本人编程水平有限,且之前连续病了将近一周,这个项目完成的着实有些匆忙,有很多细节的地方没有考虑到。主要的困难是界面间的跳转和数据库的处理上,界面跳转方面我在csdn上查找了相关资料,尝试了近一个小时后终于实现了跳转;数据库的处理主要在于新建物品类型时,我的设想是直接新建一张数据表,但是运行的时候新建物品类型的界面丢失了确认创建的那个按键,至今没有找到bug在哪里(界面上的另一个按键存活且能正常使用),因此只能将新建物品类型的代码直接拎出来,写了另一个程序手动创建了两个物品类型,以便测试普通用户的功能。

在考虑修改物品类型这个功能时,我没有想好已存在的物品数据应该如何处理。删除的物品属性可以直接删掉相应数据,但是新增的物品属性如果都空着感觉不太合理。因此最终就没有做这个功能。

目前这个系统依然存在的一些问题有:没有实现“退出登录”这一功能;以及如果在使用一个功能的过程中,没有点选“ok“键便点选了另一个功能,界面会出现错乱(因为摧毁新界面上的元件是通过ok键关联的函数来实现的),这个问题可以通过在运行一个功能时,让选择其他功能的按键“deactivate”来解决(但是我16周要考三门暂时来不及改了QAQ,考完会进一步对这个系统做一些完善)

标签:功能,界面,软件开发,物品,管理员,类型,我助,普通用户,Final
From: https://www.cnblogs.com/weckiness/p/17010349.html

相关文章

  • “你帮我助”软件开发
    本项目是上海交通大学《CS3331-软件工程》课程作业。题目描述:个人项目(10月11日前完成):在疫情期间,各个小区居民发挥互助精神,进行物品交换,互通有无。请你编写一个物品交换......
  • 开发工具与低代码开发平台丨上海道宁联合Grapecity为您提供各类软件开发工具和服务
     Grapecity提供软件开发技术和低代码平台通过各类软件开发工具和服务提升开发效率推动软件产业发展 葡萄城研发各类开发控件和商业智能报表工具提供控......
  • Java String类为什么用final修饰
    在Java语言中,使用final修饰符修饰的类是不可以被继承的,也就是说,如果一个类被声明为final,则不能被其他类所继承。因此,当String类被声明为final时,意味着它不能被其他类所继承......
  • “你帮我助”软件开发(Final)总结
    “你帮我助”软件开发体会与总结此次“你帮我助”物品交换软件的开发我采用是QT图形用户界面应用程序开发框架,数据库采用SQLite进行存储,因为之前从未接触过GUI相关的编程......
  • “你帮我助”软件开发总结
    “你帮我助”1.0需求分析在初步阅读完软件的功能需求后,我首先上网查询了一下GUI的实现方法,发现Qt被较多人推荐。随后又初步了解了一下Qt的功能及使用方法,如何设计可视化......
  • 你帮我助2.0开发体会——软件工程课程学习总结体会
    【项目需求】1、物品有公共的信息(物品名称,物品说明,物品所在地址,联系人手机,邮箱)。为了便于管理和查询,物品可以分成不同的类别(例如食品、书籍、工具等),不同类别的物品可能有......
  • “你帮我助”软件开发总结&上软件工程课后的总结
        从学C++开始一直都很想学这门课程,因为觉得这门课很牛,是那些有工程师称号的高手才摆弄的东西。学了一个学期的软件工程课,终于知道了个软件工程的大概。学的时候......
  • 你帮我助软件开发(Final)
    上次项目https://www.cnblogs.com/skdh3827/p/16800626.html计划在疫情期间,各个小区居民发挥互助精神,进行物品交换,互通有无。编写一个物品交换软件我的计划是先完成框......
  • “你帮我助”软件开发(Final)文档以及心得体会
    “你帮我助”软件开发(Final)文档本项目是上海交通大学《软件工程》期末大作业。背景描述这是一个物品交换应用程序,它的目的是帮助居民能够在疫情期间进行物品交换和互......
  • AT_cf17_final_e Combination Lock 翻译
    题目传送门题目描述有字符串\(S\),按照顺序多次进行以下\(N\)种操作:操作\(i\):$S$的第$l_i$个字母到第$r_i$个字母分别变为它们的下一个字母。(a变成b,......