记录 Web 应用程序流程/迭代

发布于 2024-07-19 03:17:18 字数 1431 浏览 7 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

好菇凉咱不稀罕他 2024-07-26 03:17:19

我的一些同事使用用例作为活动图的一部分,但这对于一些静态的高级导航概述可能很有用。

我即将开发自定义 DSL,它将类似于 Cucumber 和 Webrat 中使用的 BDD 场景格式,恕我直言,此类场景包含足够的信息来创建交互和网页模型。

Use cases as part of activity diagrams are used by some of mine colleagues, but this is good maybe for some static high level navigation overview.

I am about to develop custom DSL, which will resemble BDD scenario format used in Cucumber with Webrat, IMHO such scenarios contain enough information to create interactionand web page models.

番薯 2024-07-26 03:17:18

我们使用了 Conallen 文章使用 UML 进行 Web 应用程序设计建模的变体来使用 UML 类图。 您会发现本文已演变为网络上的不同版本甚至已经成为一本书Building-Web-Applications-UML-2nd

我用 2 美分介绍了我们使用的方法:

按照 Conallen 的论文,我们定义了一个新的 UML 实体(构造型)来表示网页或页面的一部分,以便我们可以区分服务器端代码(例如 Java servlet 或 JSP) ] 来自它生成的客户端 HTML/javascript/AJAX 例如:

  • [网页]
  • [导航栏]
  • [页面内容]
  • [页眉]
  • [页脚]

有新的关联,例如:

  • [构建] - 关联服务器。 - 生成的网页或页面片段的端代码
  • [明显链接] - 在站点地图上的客户端页面之间使用
  • [链接] - URL 链接,即 GET 请求
  • [提交] - 表单发布回服务器,即 POST 请求
  • [客户端-redirect] - 客户端重定向
  • [server-redirect] - 呃

最后,一些新的图表(主要是类图的专门化),例如:

  • [sitemap] -> 像类图 - 显示静态关系([apparent-link] ]s) 从用户的角度来看
  • [页面生成] -> 就像类图 - 显示与显示特定网页静态相关的类:什么代码生成它,什么代码处理帖子提交
  • [页面组合] - 就像类图 - 显示构成给定[网页]的内容
  • [序列图] - 唯一的其他变化是序列图现在可以包含客户端实体作为参与者。

好消息:

  • 我们发现了我们需要的 Rational Rose 图标扩展,以使图表看起来还算不错。

坏消息

  • 这种方法的工作量很大 - 我们现在要建模的实体数量是原来的两倍,因为除了服务器端类之外,我们现在还要对客户端实体进行建模。

阅读科纳伦的一篇论文,了解我正在谈论的内容的图片,但正如我所说,并没有严格遵循他的方法 - 我们只采取了我们需要的部分。 希望这可以帮助。

We used UML class diagrams using a variation of Conallen's essay Modeling Web Application Design with UML. You'll find this essay has evolved into different incarnations around the net and has even become a book Building-Web-Applications-UML-2nd.

My 2-cent tour of the approach we used:

Following Conallen's paper, we defined a new UML entities (stereotypes) to represent a web page or portion of a page so that we could distinguished the server-side code (e.g. Java servlet or JSP] from the client-side HTML/javascript/AJAX that it generated. For example:

  • [web page]
  • [nav bar]
  • [page-content]
  • [header]
  • [footer]

There were new associationss such as:

  • [builds] - relates server-side code to the web page or page fragment it generated
  • [apparent-link] - used between client pages on sitemap diagram
  • [link] - URL link, i.e. GET request
  • [submits] - form post back to server, i.e. POST request
  • [client-redirect] - client-side redirect
  • [server-redirect] - duh

Finally, some new diagrams (mostly just specializations of class diagrams) such as:

  • [sitemap] -> like a class diagram - shows static relationships ([apparent-link]s) between [web page]s from user's point of view
  • [page-generation] -> like a class diagram - shows the classes statically related to a displaying a specific web page: what code generated it, what code handles the post submission
  • [page-composition] - like a class diagram - shows the things that make up a given [web-page]
  • [sequence diagrams] - The only other change was that the sequence diagrams could now include client-side entities as actors.

The good news:

  • we found Rational Rose icon extensions we needed to make the diagrams look half-decent.

The bad news:

  • this approach was a lot work - we now had twice as many entities to model with since we were now modeling the client-side entities in addition to the server-side classes.

Read one of the Conallen papers for pictures of what I'm talking about, but as I said, didn't follow his approach strictly - we only took the pieces we needed. Hope this helps.

吾性傲以野 2024-07-26 03:17:18

我过去使用 UML 状态图来记录 Web 应用程序的页面导航。

I used UML state diagrams for documenting page navigation for web apps in the past.

秋意浓 2024-07-26 03:17:18

我建议采用 37signals 方法进行应用程序开发。

每个页面都需要有目的。 首先关注这个目的,然后围绕它设计其他一切。

过程:

  • 记号笔和纸勾画出主要部分
  • 列表项
  • 尽早忽略细节(它们只是妨碍)
  • 创建真实的东西尽快(即创建一些 html 文件,其中包含指向其他页面的链接,以显示
  • 一旦设置了站点流程,应用程序将如何流动,然后添加设计组件并开始编程

向某些内容添加编程要容易得多与设计一个应用程序来解决现有编程(在大多数情况下需要重写代码以适应一开始就错过的设计/流程问题)相比,这已经是经过设计和深思熟虑的。

I recommend taking the 37signals approach to application development.

Each page needs to have purpose. Focus on that purpose first and design everything else around it.

Process:

  • sketch out the main parts with a sharpie and paper
  • List item
  • ignore the details early on (they just get in the way)
  • create something real as soon as possible (ie. create a few html files with links that go to other pages to show how the application will flow
  • once the flow of the site is set then add the design components and start programming

It's much easier to add programming to something that has already been designed and thought out vs designing an app to work around existing programming (which in most cases requires code to be rewritten to adapt to design/flow issues which were missed at the beginning).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文