团队作业(四):描述设计

一、团队分工

泳道图

二、UML

1.用例图

用户管理
解决的问题:
①安全问题

  • 在用户管理过程中,最大的问题就是对于用户隐私与数据的保护,要确保用户密码的存储和传输安全,防止密码泄露等问题。同时要注意访问安全,确保只有有相应授权的用户能够访问系统,实施适当的身份验证和授权机制。
    ②用户体验问题
  • 在用户注册的界面,要设计简单而直观的注册流程,尽量减少用户的操作步骤,但也要确保足够的信息被收集,提供安全的密码重置机制,可以通过电子邮件或手机短信进行验证。最后还要提供友好的错误信息反馈,以帮助用户理解并解决问题。
    数据安全问题
    注重用户数据备份,确保用户数据的定期备份,以防止意外数据丢失。使用安全的协议(例如HTTPS)来加密数据在用户和服务器之间的传输。

2.类图

身份认证系统
用户通过用户名和密码进行身份验证,成功后可以生成令牌,用户会话包含用户和令牌信息。安全服务类提供加密和解密功能,增强了系统的安全性。

3.活动图

通讯过程
涵盖用户界面操作、隐蔽通信与公文加密模块、传输模块、文件管理模块、以及用户权限管理模块。

  1. 用户操作界面:
    • 描述:用户通过此界面进行各种操作,包括选择通信方式、设置隐蔽通信参数、选择文件和通信对象,以及发起通信请求。
    • 问题:用户界面的设计需要直观易用,同时确保用户能够方便地进行各种操作,包括复杂的隐蔽通信设置和文件选择。
    • 设计解决问题:提供直观易用的用户界面,通过清晰的操作流程和可视化元素帮助用户快速上手。
  2. 隐蔽通信与公文加密模块:
    • 描述: 根据用户选择使用UDP或HTTP,进行信息的隐蔽传输和国密算法的加密与解密,同时实现数字签名和验证。
    • 问题:如何确保高实时性的通信、隐蔽传输的安全性以及公文的完整性和非否认性。
    • 设计解决问题: 创新性地利用UDP协议实现高实时性的通信,基于HTTP协议实现被动的、不易被检测的信息传输。采用国密算法保障公文传输的安全性,支持数字签名和验证确保非否认性。
  3. 传输模块:
    • 描述: 负责加密后的信息传输,接收端进行解密和验证,最终通知用户通信完成。
    • 问题:: 如何确保加密信息的安全传输,以及在接收端进行正确的解密和验证。
    • 设计解决问题: 使用加密传输,采用国密算法保证信息的安全性。接收端负责解密和验证,确保信息的完整性和真实性。
  4. 文件管理模块:
    • 描述: 提供文件的上传、下载、分类、搜索以及版本控制等功能,方便用户管理公文。
    • 问题: 如何实现文件的安全上传下载,分类搜索的高效性,以及版本控制的有效性。
    • 设计解决问题: 使用加密传输保障文件的安全上传下载,提供强大的分类搜索功能,嵌入版本控制,确保文件管理的方便性和可追溯性。
  5. 用户权限管理模块:
    • 描述: 实现用户角色与权限设置、用户组管理和审计日志记录等功能,精细地管理用户权限。
    • 问题: 如何确保用户的权限精细控制、用户组管理的方便性,以及审计日志的有效记录。
    • 设计解决问题: 提供精细的用户权限控制,支持用户组管理,记录审计日志,确保系统的安全性和可追溯性。

4.状态图

加解密过程
本模块通过使用混合加密方案,混合加密方案是一种将公钥加密和对称加密结合起来使用的加密方法。它充分利用了两者的优点,解决了各自的限制和问题。下面是混合加密方案相对于单独使用公钥加密和对称加密的优点和解决的问题:
①对于公钥加密:

  • 安全性:公钥加密使用了非对称密钥,其中一个用于加密,另一个用于解密。公钥可以公开发布,而私钥保密。这样可以实现安全的通信,即使公钥被泄露,攻击者也无法解密密文。
  • 密钥分发:公钥加密解决了密钥分发的问题。发送方使用接收方的公钥进行加密,接收方使用自己的私钥进行解密,无需事先共享密钥。
    ②对于对称加密:
  • 效率:对称加密算法执行速度快,适用于大量数据的加密和解密操作。相比之下,公钥加密算法较为耗时。
  • 密钥管理:对称加密需要发送方和接收方共享同一个密钥才能进行通信。密钥的分发和管理可能会面临挑战,尤其是在大规模通信网络中。
    ③混合加密方案通过将公钥加密和对称加密结合使用,克服了各自的限制:
  • 密钥交换:混合加密方案中,首先使用公钥加密算法来交换对称加密所需的密钥,以保证密钥的安全性。
  • 效率与安全的平衡:混合加密方案中,使用对称加密算法对大量数据进行加密和解密,提高了效率;而使用公钥加密算法来加密对称密钥,确保了安全性。

三、工具选择

1.推荐工具:StarUML

理由:

  • StartUML可以绘制9款UML图,主要包括用例图,类图,序列图,状态图,活动图
  • 支持c、c++、Java多种语言
  • 正反向工程:可以依据类图的内容生成代码,也能够读取代码反向生成类图
  • 可以进行语法检验

2.推荐工具:ProcessOn

理由:

  • 拥有协作功能:可以和好友同时编辑同一份文档,适合个人、团队开发。
  • 库存丰富:专业的流程模板和海量共享的流程图
  • 拥有版本恢复功能:能够新建历史版本,并恢复到不同的版本。
    团队成员尤其推荐的是processOn,本工具处理丰富的模板库外,还有一些类似ppt中的小图标,包括汽车、笔记本、齿轮、电脑等,提高了图片绘制的精美、完善、易懂度。而且每个图形之间可以形成连接,想要进行改动无需一个个删除、一个个移动,只要移动其中一个部件,其他内容也会跟着移动。在这样的软件中,能感受到制作者对于图片绘制的理解之深、体验之深,帮助用户提高了效率、解决了不少麻烦。
posted @ 2023-11-11 21:23  kk也是teatea  阅读(20)  评论(0编辑  收藏  举报