web服务器分析与设计(二)

面向对象分析与设计第二步:寻找对象,建立问题域模型

1,用例场景描述

接上一篇中的用例,编写用例场景

U1:

    上网者:打开网站(www.xxx.com)

  浏览器:连接网站

    目标系统:接受连接

                  检查连接合法性(主要是因为服务端是容易受攻击的,所以需要加入安全检查)

                  合法,接入连接,等待HTTP请求(不合法看备选流程)

  浏览器: 发送GET请求

                  等待回复

      目标系统:收到GET请求

                    处理GET请求

                    向浏览器发回请求回复

                    回复完成,断开连接

  备选流程:连接不合法,断开连接。

U2 

    上网者:点击提交按钮

  浏览器:连接网站

    目标系统:接受连接

                  检查连接合法性(主要是因为服务端是容易受攻击的,所以需要加入安全检查)

                  合法,接入连接,等待HTTP请求(不合法看备选流程)

  浏览器: 发送POST请求

                   等待回复

      目标系统:收到POST请求

                    处理POST请求

                    向浏览器发回POST请求回复

                    回复完成,断开连接

  备选流程:连接不合法,断开连接。

U3,U4与U1,U2基本一样,不再赘述。

U5 (由于不清楚网站怎么发现,我参考了IIS的新建站点)

     网站发布人:打开发布界面

     目标系统   :显示发布界面

     网站发布人:填写网站配置(主目标,端口等)

                     确认启用网站

  目标系统 :启动网站

                   开始等待浏览器连接

(突然想到系统还需要提供管理站点的功能,如日常维护等等,不过没有考虑到也不要紧,

 在上一遍中已经进行过“需求复核”,确保了我们的目标系统,可以完成重要需求。)

 

2,用例场景分析:提取对象

利用前辈发明的方法:动名词法。流程中的名词,有可能为系统中重要的实体对象。

U1中的名词:网站  连接  HTTP请求  GET请求   请求回复  

U2中的名词:按钮  连接  HTTP请求  POST请求  POST请求回复  

U5中的名词:发布界面 网站配置  网站 

 

找到了可能的对象,那么哪些是系统中的对象?

按钮肯定不是。

HTTP请求,GET请求等明显是系统中的对象。

连接是客户端与系统通信的实体,也是系统的对象。

发布界面是提供发布人的操作界面,也是系统中的对象。

网站是什么?实质是用来接收浏览器的连接的,也是系统中的对象。

网站配置可能是网站的一个重要属性。

 

3,对象分析,建立类型关系

分析对象的共性与修改,用类来归纳它们。下面是用ArgoUML画的类图。

 

posted on   跑男  阅读(1306)  评论(0编辑  收藏  举报

编辑推荐:
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
阅读排行:
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 当职场成战场:降职、阴谋与一场硬碰硬的抗争
· ShadowSql之.net sql拼写神器
· Excel百万数据如何快速导入?
· 无需WebView,Vue也能开发跨平台桌面应用

导航

< 2025年4月 >
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 1 2 3
4 5 6 7 8 9 10
点击右上角即可分享
微信分享提示