高软作业四:从需求分析到软件设计

  • 以VS Code Remote Development相关功能为例,选择一个用例进行需求分析和逆向工程,按课堂要求完成一篇博客文章。
  • 我选择了github上GitHub - microsoft/vscode: Visual Studio Code这个用例进行分析
  • Visual Studio Code Remote - SSH 扩展允许在运行 SSH 服务器的任何远程计算机、虚拟机或容器上打开远程文件夹,并充分利用 VS Code 的功能集。连接到服务器后,您可以与远程文件系统上任何位置的文件和文件夹进行交互。无需在本地计算机上提供源代码即可获得这些优势,因为扩展直接在远程计算机上运行命令和其他扩展。

需求分析

  • 用户需要能够通过 SSH、容器或 WSL 等方式连接到远程服务器或云平台。
  • 用户希望在本地使用 VS Code 编辑器进行代码编辑和调试等操作,与本地编辑器相同的体验和功能。
  • 用户需要能够快速上传和部署代码,改善协作效率。
  • 用户希望远程连接是安全的,并且可以保护敏感数据和代码。
  • 用户需要支持跨平台开发,可以在不同操作系统之间轻松切换。

1、根据以上需求我们可以抽象出以下用例

System:remote development

Actor:client

UC1: Remote connection to server

UC2:Remote debugging

 2、找出关键步骤进行剧情描述

        UC1:Remote connection to server
Actor:UserSystem:VS Code Remote to server
1)  点击远程连接图标1)显示需要用户输入连接密码的UI
2)输入SSH密码2)显示连接成功的UI
3)点击打开文件的UI3)显示文件选择的UI
4)点击文件4)显示文件内容

 选取2)进行时序分析:

开发人员在本地计算机上打开 VS Code 编辑器,并点击“Remote-SSH: Connect to Host”按钮来连接远程服务器或云平台。之后,VS Code 编辑器会发送 SSH 请求到远程服务器或云平台。在收到请求后,远程服务器或云平台会响应 SSH 请求,并将请求转发给 VS Code Server。然后,VS Code Server 会下载 VS Code 插件和配置环境等,并将更改保存回远程服务器或云平台。最终,VS Code 编辑器和远程服务器或云平台间的连接建立完成,开发人员可以在本地编辑器中直接对远程计算机上的代码进行编辑和调试等操作。

逆向工程

1、连接远程计算机:使用 SSH、容器或 WSL 等方式连接到远程计算机。

在 VS Code Remote Development 中,用户可以通过 Remote-SSH: Connect to Host 命令来连接到一个指定的远程计算机。当用户选择一个 SSH 连接配置后,VS Code 会自动使用该配置进行连接,并尝试使用提供的 SSH 密钥进行身份验证。如果一切正常,用户就可以在 VS Code 中打开远程计算机上的文件,并在其中进行开发了。
可以看到有一个远程连接类:

在这里插入图片描述

 2、调试代码:

分析远程调试类的属性和方法,如启动调试会话、设置断点、监视变量等。

确定断点设置类和断点命中类的属性和方法,如设置断点、检测断点命中等。

考虑断点设置类和断点命中类与远程调试类之间的交互关系,以实现在远程服务器上的断点调试功能。

确定变量调试信息显示类的属性和方法,如显示调试信息等。

考虑变量调试信息显示类与远程调试类之间的交互关系。

逆向工程这里参考了:Gitee.com

阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_45478627

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值