O quarto projeto de sistema de atribuição e design de banco de dados da equipe

A qual curso essa tarefa pertence < Classe W, primavera de 2020 (Universidade de Fuzhou) >
Onde está essa solicitação de emprego < Requisitos de trabalho >
O objetivo desta tarefa Design de sistema e design de banco de dados
Lição de casa < Texto da lição de casa >
Outras referências <"A Lei da Construção">

part.01 O cronograma de desenvolvimento esperado da equipe

Depois de concluir o trabalho de design do sistema e banco de dados desta semana, inseriremos a parte de implementação do código. Nosso plano é o seguinte:

Tempo Organizar
04.12-04.19
Consulte excelentes projetos de código aberto, conclua a construção do projeto, decida inicialmente usar uma biblioteca de terceiros e conclua a importação e teste.
20.04-04.26
Back-end: implemente inicialmente a interface de três módulos: liberar tarefa, perdida e encontrada e aluguel de itens.
Recepção na Web: inicialmente implemente a interface de três módulos: liberar tarefa, perdida e encontrada e aluguel de itens.
Histórico da Web: A interface de três módulos: tarefa de liberação, perdida e encontrada e aluguel de itens é inicialmente implementada.
Android: implemente inicialmente a interface de três módulos: liberar tarefa, perdidos e encontrados e aluguel de itens.
27.04-05.03
Back-end: aprimore o projeto e implante o back-end no servidor para ajudar o front-end a concluir a interação de dados.
Primeiro plano da Web: melhore o projeto e interaja com o back-end implantado no servidor.
Segundo plano da Web: melhore o projeto e interaja com o back-end implantado no servidor.
Android: melhore o projeto e interaja com o back-end implantado no servidor.
05.04-05.10
Back-end: otimize os detalhes do projeto de acordo com os problemas encontrados durante o processo de desenvolvimento.
Primeiro plano da Web: otimize o projeto e implante a Web no servidor.
Histórico da Web: otimize o projeto e implante a Web no servidor.
Android: otimize o projeto, empacote o terminal Android e publique-o na loja de aplicativos.
05.11-05.17
Teste, promoção em pequena escala, otimização, atualização para a versão do bug.
05.25-05.31
Teste, ampla promoção, manutenção, atualização para a versão do bug.
05.18-05.24
Com base no feedback do usuário, avalie a racionalidade do projeto, ajuste e expanda as funções do projeto e atualize a versão.
06.01-06.07
Manutenção

part.02 Divisão prevista do plano de desenvolvimento do trabalho

ID do aluno Organizar
221701412 Lidere a conclusão da arquitetura de back-end e libere o desenvolvimento de módulos de função de tarefa.
221701414 Responsável pelo desenvolvimento da parte Android.
221701417 Pesquise usuários em potencial para realizar pesquisas, promoções e coletar comentários dos usuários. Participe do design da interface front-end.
221701418 Responsável pelo desenvolvimento da recepção da Web.
221701420 Responsável pelo desenvolvimento e manutenção do plano de fundo da Web. Auxiliar o desenvolvimento da recepção da Web.
221701429 Familiarizado com o progresso do trabalho do front-end e do back-end, participe do desenvolvimento do banco de dados de back-end, escreva e mantenha os documentos da interface.
221701431 Lidere o projeto e a manutenção do banco de dados, conclua os módulos de back-end perdidos e encontrados e de aluguel de itens.
221701439 Teste totalmente os programas front-end e back-end para gerar documentos de teste.

part.03 Desenho e descrição do projeto

Projeto de arquitetura

旗山的骄傲

旗山的骄傲

Diagrama da hierarquia do módulo de função

旗山的骄傲

Diagrama de classe de design

旗山的骄傲

Gráfico de análise de ER

旗山的骄傲

Design da estrutura da tabela

旗山的骄傲

(Enumerar parte)

Tabela de usuário

旗山的骄傲

Tabela do administrador

旗山的骄傲

Lista de itens perdidos e achados

旗山的骄傲

Formulário de comentário

旗山的骄傲

Vocabulário sensível

旗山的骄傲

Formulário de relatório

旗山的骄傲

Design de autoridade e segurança do sistema

O banco de dados autentica o logon do usuário por meio do nome do usuário e da senha.Se o nome do usuário for válido e a senha estiver correta, a conexão será estabelecida. Ao mesmo tempo, os logins têm três permissões de armazenamento de banco de dados diferentes.

1. Autoridade do proprietário: para o espaço em que o banco de dados, usuário ou objeto é estabelecido, o sistema concede propriedade ao proprietário do espaço. O proprietário é o usuário ou banco de dados que criou o novo objeto (especificado na cláusula FROM da instrução CREATE DATABASE / CREATEUSER). Por exemplo, o proprietário de uma tabela de dados tem permissões implícitas e pode conceder (GRANT) seus próprios privilégios SELECT na tabela de dados que possui.

2. Permissões geradas automaticamente: este é o sistema que concede automaticamente as permissões do criador do banco de dados, usuário ou objeto e as permissões do usuário ou banco de dados recém-criado.

3. Mostrar permissões concedidas: esta é a permissão concedida por qualquer usuário com privilégio WITHGRANTOPTION. Permissões concedidas explicitamente (concedidas declarativamente por meio de comandos) podem ser concedidas usando o comando SQL GRANT da Teradata.

同时使用数据库存取日记进行安全管理:
通过存取日志记录使用者在数据库中的所有活动,如果使用者尝试存取某一数据库对象,且该对象已包含在目前的日志定义中,则系统会记录其使用者识别码、对象名称及此一存取动作是否被相应的存取权限所允许。所使用的 SQL 语句也可以选择性的被记录下来。

设计思路

前后端完全分离,仅通过http接口进行交互,实现各端完全透明,代码的维护升级互不干扰,使用mysql + springboot + html + Android + vue进行开发。

旗山的骄傲


part.04 本次作业队员贡献度

  • 为了调动成员积极性,增加团队成员之间的配合以及加强在今后的合理分工,本团队从本次开始,引入对成员分工的工作进行加权,用文档记录,最后按总权分配贡献比。

  • 团队分工文档下载:<团队分工文档>

学号 工作内容 贡献度
221701412 系统设计和数据库设计答辩 PPT(1)、进行答辩(1)、类图设计(1)、参与各部分修改与建议(0.5) 17.5%
221701414 编写完成博客(2)、参与各部分修改与建议(0.5) 12.5%
221701417 答辩打分(1)、系统设计和数据库设计评审表(1)、记录 Q&A 记录(0.5)、系统设计和数据库设计答辩 PPT(1) 17.5%
221701418 系统设计说明书(2) 10%
221701420 泳道图(1)、数据流图(1) 10%
221701429 数据库设计说明书(2) 10%
221701431 数据库设计说明书(2) 10%
221701439 系统设计说明书(2)、记录 Q&A 记录(0.5) 12.5%

Part.05 答辩汇总

选题答辩

  • 1.平台是否支持校友租赁物品?

    • A:不支持校友,已步入社会的校友加入,会增加很多隐患,使用 orc 读取校园的学生卡和教师卡,仅支持在校师生使用,可以写一个 Timer 定时器,一年更新一次数据库的用户,对于正则匹配的学号往后移 3 年已过期的用户将限制其功能的使用。
  • 2.这些平台重要的是“维护者”,这一点如何保证?

    • A:在本团队成员在校期间,我们是维护者,当我们离校后现在的打算是传给学弟学妹们继续维护,一代一代的维护。后续我们会考虑产品的商业盈利问题,有了收益,更有利于维护和发展。
  • 3.往届做类似产品的很多,但是限于时间和技术,都无法开发出预期的所有功能,你们有做技术可行性分析吗?

    • A:团队成员项目经验较同级一些同学相对来说要丰富,有在 ppt 中展示,且这次产品考虑的主要的三个模块,在以前团队的成员都有写过类似,这次的开发主要是建立在复用以前代码基础拓展新的功能且优化,有较大可行性。目前团队已经开始着手准备这一项目。
  • 4、新的思考

    • A:作为旗山的骄傲,我们是一个团队,在开发中需要始终保持一致的目标、明确的分工。我们的目标是开发出一个可维护、可迭代、可投入现实中使用的产品。为此,我们开始着手准备相关的知识。

原型答辩

  • 1.租赁涉及到费用,如何交易?

    • A:我们的校园介子空间平台是一个综合性的校园平台,目前我们平台的定位是信息共享,是在对竞品(福大小黑板等一众公众号)进行对比分析得出的信息共享平台,区别于咸鱼等购物平台,买卖双方在我们的平台获取相关信息后,交易由双方自己线下协商完成。
  • 2.如何处理交易争端?(租赁的物品被损坏并且租赁方不认为是自己的问题)

    • A:我们的校园介子空间平台是一个综合性的校园平台,目前我们平台的定位是信息共享,是在对竞品(福大小黑板等一众公众号)进行对比分析得出的信息共享平台,区别于咸鱼等购物平台,买卖双方在我们的平台获取相关信息后,交易由双方自己线下协商完成,如果出现租赁的物品被损坏并且租赁方不认为是自己的问题,本平台可为双方的交易争端提供平台的聊天内容作为证据。
  • 3.对于涉密等敏感话题,打算采用什么算法?

    • A:对于涉及涉密等敏感话题,主要通过两个途径,一个是管理员在后台的初步审核,一个是在答辩老师提醒增加的举报功能,在前台界面当一条疑似涉密等敏感话题的发布举报次数达到一定次数(如 100 次)时,逻辑处理模块会将此条发布在后台报警,以进行人工核实。
  • 4.是否涉及押金?

    • A:我们的校园介子空间平台是一个综合性的校园平台,目前我们平台的定位是信息共享,是在对竞品(福大小黑板等一众公众号)进行对比分析得出的信息共享平台,区别于咸鱼等购物平台,买卖双方在我们的平台获取相关信息后,交易由双方自己线下协商完成,所以本平台并不涉及押金。
  • 5、平台涉及的交易如何完成?

    • A:我们的校园介子空间平台是一个综合性的校园平台,目前我们平台的定位是信息共享,是在对竞品(福大小黑板等一众公众号)进行对比分析得出的信息共享平台,区别于咸鱼等购物平台,买卖双方在我们的平台获取相关信息后,交易由双方自己线下协商完成。
  • 6、建议平台能提供举报这一功能。

    • A:在答辩老师提醒增加的举报功能,在前台界面当一条疑似涉密等敏感话题的发布举报次数达到一定次数(如 100 次)时,逻辑处理模块会将此条发布在后台报警,以进行人工核实。

需求分析答辩

  • 1、单独设立 失物招领 和 寻物启事 两个类,是否存在重复,这样的关系是否准确。

    • A:不重复,因为这两个东西容易混淆,考虑到易于理解性,并且两个类含有的属性并不完全相同,我们决定将这两个类分开。
  • 2、在发布任务功能,一个任务要体现发布任务者和领取任务者吗?

    • A:我们的目标是提供一个发布信息、获取信息的平台,原则上只对涉及违规违法的敏感信息进行处理,不会干涉任务的处理进度。比如:某个用户在朋友圈发布了一条任务信息,另外一个用户获取任务信息后想要领取任务,对于领取任务这些具体的细节交由双方通过发布的信息中留下的联系方式,自行协商。
  • 3、类似的物品租赁类的属性是否不够?

    • A:我们已经在任务详情中对属性进行了补充。
  • 4、如果不记录谁完成的话对后续信誉记录什么的会有影响吗?

    • A:针对这个问题,我们增加了举报功能,对于破坏信誉的行为,用户可以在举报功能中,上传相关的信息,经后台审核后,对被举报的账号进行封号等操作,对于涉及违法的问题,会提供相关信息,协助举报人报警。
  • 5、敏感词建议单独放一张表。

    • A:感谢老师提出建议,我们在系统设计的时候做出了相应的修改。

Part.06 github仓库地址以及下载链接

  • Github 团队仓库链接:<点击进入>

  • 旗山的骄傲_系统设计说明书.pdf:<点击下载>

  • 旗山的骄傲_数据库设计说明书.pdf:<点击下载>

  • 旗山的骄傲_系统设计和数据库设计答辩 PPT.pdf: <点击下载>


Part.07 本项目目前的全部附件

如果您觉得一个一个下麻烦的话,可以在这里下载本项目目前的全部附件


Part.08 本次答辩的评审表

  • 项目系统设计与数据库设计评审表:<点击进入>


Part.09 本次答辩Q&A回答以及对答辩的补充

  • 汪老师:

  • 1、此处使用继承,请解释一下,能否考虑用组合?

    • A:此处使用继承是因为在分析阶段的类图在提取需求时,这三个实体类均有公共的属性,于是提取了一个发布的总类类作为父类型,然后继承下去三个子类型再实现对应不同属性,所以此处使用继承,组合关系中的整体直接掌握部件的生灭,聚合关系中的整体并不具有生灭部件的权力。一旦组合中的整体不存在时,其组合部件也不能单独存在,必须同时消灭。另外,外界也不能直接与部件沟通,必须通过整体代为传达消息。然而在此系统中子类型仍与其他的部分有直接的关联,所以本小组讨论后还是认为使用继承更为恰当。

旗山的骄傲

  • 2、虚线表示什么含义?

    • A:ER图的虚线应该是表示week entity,即需要借助外键和标有虚线的partial key来确定的实体,但是在之前的这个ER图的该场景这样使用并不恰当,现已在博客上传了修改后的版本。

旗山的骄傲

  • 傅老师:

  • 1、举报表没有涉及user_id?

    • A:举报表没有涉及user_id,在之前是打算设计为由举报表的table_id在对应的发布类的表查询对应的user_id,即进行一个多表查询,在答辩后小组有对此设计进行讨论,认为在后续的开发阶段应该在举报表加入user_id,这样的设计明显更为合理。
  • 2、实体之间的关系没有标注

    • A:实体之间的关系现已进行标注,现已在博客上传了修改后的版本。
  • 乐助教:

  • 1、总的来说设计的不错;评审表布局可以稍微优化一下;ER图绘制的不太规范

    • A:评审表布局现已进行了一定的调整,er图确实绘制的不规范现已在博客上传了修改后的版本。这次我们小组拿出的成果确实有一些不尽人意的地方,现已在博客更新了第九部分对答辩q&a进行回答以及对一些我们组认为在答辩中不足的地方进行了一定补充,我们在下次将吸取问题教训在继续发挥我们的长处的同时改正问题,我们会加油的!!!
  • 对于答辩的一些补充:在答辩阶段并没有给出具体的接口设计,本着得尽量完整每一次的设计,这样才能将这样的一个完整的项目环环相扣的设计下去,在此博客里我们小组还是重新给出了接口设计,亡羊补牢为时应该不晚!!

旗山的骄傲


Acho que você gosta

Origin www.cnblogs.com/aahorse/p/12738766.html
Recomendado
Clasificación