首页 文章

基于Web的基本应用程序的序列图

提问于
浏览
1

我正在尝试为使用TomCat作为本地主机运行的基于Web的应用程序创建序列图 .

该应用程序使用户能够将文本输入到文本框中并将其保存到TomCat中的目录中 .

我无法为此定义对象 .

到目前为止,我有“ACTOR-CreateText.jsp-Application Server”

事件顺序如下:

  • 用户加载应用程序

  • 用户选择“创建文本”按钮

  • 创建文本网页返回给actor

  • 用户输入文本并按下单击保存文本文件

  • 文件已保存到应用程序服务器

  • 确认消息返回给actor

如何在序列图上显示这个?

2 回答

  • 1

    定义

    "Actor"时,您应该知道该定义

    演员模拟由与主题交互的实体(例如,通过交换信号和数据)所扮演的角色类型,但是在主体外部(即,在演员的实例不是其中的一部分的意义上)其相应主题的实例) . 演员可以代表人类用户,外部硬件或其他主题所扮演的角色 . 注意,参与者不一定代表特定的物理实体,而仅仅代表与其相关用例的规范相关的某个实体的特定方面(即“角色”) . 因此,单个物理实例可以扮演几个不同角色的角色,相反,一个给定的角色可以由多个不同的实例扮演

    在你的系统中,我们可以说Actors是 ( User, Web browser, Web server (Application, Content database) ) .

    我们的下一步将是在我们的演员之间定义

    "Call Messages"和

    "Return Messages" .

    消息定义了交互的生命线之间的特定通信 .

    根据您提到的事件,我们会尝试将其细分一点,以便更好地解释它们 .

    用户加载应用程序 . [User] ----“RequestResource()”---> [Web浏览器] [Web浏览器] -----“RequestAccessForUser()”---> [Web服务器] [Web服务器] ---- - “CheckUserExists()”-----> [内容数据库] [内容数据库] ---“存在返回消息”----> [Web服务器] - 继续向用户返回响应并加载页面在他的浏览器上 .

    在这里你可以找到's a probability that user isn' t注册,然后有一个名为

    "Alternative paths"的东西 .

    当然,您可以通过减少演员数量来最小化步骤,但是为了学习和简单,这将是一个非常好的解决方案 . 以下是一些示例,教程肯定会有所帮助 .

    Visual Paradigm introduction to write your first Sequence Diagram

    Sequence Diagram Examples

  • 1

    由于Web应用程序是使用HTTP请求/响应对构建的,因此我发现在序列图中捕获它是有帮助的 . 它还有助于考虑您为每个请求发出的HTTP命令类型 - GET,POST等,以及哪些请求需要身份验证或状态 . 应用程序使用状态代码的地方 - 例如“重定向”,或“需要身份验证”,我也想包括这些 .

    我通常不会在这个过程中为用户建模 - 通常不是要模拟用户交互(他们点击哪些按钮等);但是,我确实包含了在浏览器中执行的相关JavaScript函数(例如“WaitForInput()”) .

    所以,对于你的例子,它可能是这样的:

    Browser: GET index.jsp -> ServletContainer
    ServletContainer: 200: index.jsp ->Browser
    Browser: GET enterText.jsp -> ServletContainer 
    ServletContainer: 200: enterText.jsp -> Browser
    Browser: POST: enterText.jsp(text) -> ServletContainer
    ServletContainer: validateEntry() -> ServletContainer
    if(valid)
      ServletContainer: 200: success.jsp(fileName) -> Browser
    else
      ServletContainer: 501: fail.jsp(reason)
    endif
    

相关问题