首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何为web应用程序开发设计/计划?

如何为web应用程序开发设计/计划?
EN

Stack Overflow用户
提问于 2009-11-17 16:08:48
回答 5查看 13.4K关注 0票数 12

我感兴趣的是学习如何在多个开发团队场景中设计/计划web应用程序开发。

承担“项目经理/领导”的角色:

  1. 成功的web应用程序开发需要哪些“文档”?
  2. 需要什么UML图,达到什么程度?
  3. 在设计/计划阶段,每个用例类都需要图表吗?
  4. 类图应该有多详细(深度和宽度)?

如果您有任何有用的书籍/网站的建议,请分享。

后续(添加了11/18/09):程序员/开发人员在编写代码时使用什么作为指南,即创建类,以及它们各自的方法和属性?

如果没有一个完整的(但也是可变的)类列表及其方法和属性,这种模糊性不是会导致对每个编码者的知识/经验的严重依赖,从而导致代码质量/可用性/可维护性的偏差吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-11-17 16:48:13

  1. 在任何情况下,你必须有一个全面和最新的记录,准确的要求.这包括功能非功能性需求。它可以是Word文档、电子表格或专门的需求系统。您只需要一些允许您跟踪所有需求以及它们是如何随时间变化的东西。关于敏捷需求文档的这是一个很好的信息和讨论的来源
  2. 在我的经验中,用例图被证明是重要的,组件和部署图也是有用的。类和序列图也可能有帮助,但在大多数情况下,我认为这些应该更多地用作基本的可变准则,而不是不可变的开发需求。类和方法通常会发生更改(特别是如果您使用的是TDD),如果您真的想要一个图表,最好在开发代码之后更新它,而不是为适合图的代码进行修整。
  3. 我不认为每一节课都需要图表。我认为模型类图对于跟踪数据的位置是有用的,偶尔一些控制器和视图类图也是有用的。但在我的大部分经验中,需求和测试用例一直是类的设计方向的主要来源,并且随着系统的增长和变化,它们被重构。
  4. 在模型类中,我认为除了属性通常是必需的。如果要建模控制器类,通常最好同时包含主要属性和方法。
票数 10
EN

Stack Overflow用户

发布于 2009-11-17 17:06:07

取决于web应用程序的类型和大小。如果你正在用购物车做一个小型的电子商务网站,那么你可能会在设计方面花费更多的精力,而在“应用”功能上则会花费更少的精力。相反,如果您正在构建一个具有多个数据输入屏幕的大型内部网站,那么您的大部分时间将花在业务逻辑和数据规则上。

就我个人而言,我不相信严格的规范格式或流程。我将进行定制,以适应项目和客户端,以便清楚地进行沟通。

假设需求已经被记录下来,我一直试图为基于工作流的数据密集型web应用程序生成两种类型的文档:

  1. 高级工作流图,指示屏幕流、状态更改和主要操作。我发现这是充实应用程序中的主要动作的第一步,非常有用。工作流通常与不同的用例相关。
  2. 每个输入屏幕的屏幕规格,详细说明每个字段的格式和行为。通常包括字段类型、默认值、列表值、数据验证、可见性规则和可触发的操作等。基本上,这是一个大表,确保开发人员知道如何构造屏幕。

我还在最近的项目中使用Balsamiq模型将web应用程序屏幕组合在一起,屏幕模型已经构成了项目规范的一个重要部分--非常快速地生成,它们传递了大量关于屏幕应该如何工作的信息,而这些信息在文本文档中是很难传达的。

最后,Joel的功能规格系列是有用的阅读。

票数 3
EN

Stack Overflow用户

发布于 2009-11-18 10:18:46

尽量简单。

指定核心功能需求的文档是第一步。

就个人而言,由于web应用程序几乎总是基于数据库的,所以我开始根据功能需求对数据库进行建模。ERM图中的实体通常是1-1,其中包含UML图中的类,并且已经显示了基本的关系。

假设MVC体系结构和文档丰富的代码,模型类将在演化过程中自我记录(例如氧气phpdocumenter )。

我发现一些简单的东西,比如wiki,最适合编写文档,而不是编写比各自代码更长的正式文档,特别是在敏捷环境中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1752770

复制
相关文章
Python实现计算机屏幕任意区域截图
程序功能与用法:运行后有个主窗体,上面有个按钮,单击后开始截图,鼠标坐标落下开始截图,鼠标左键抬起表示截图结束,然后弹出对话框提示保存截图文件。 本文要点在于Python扩展库pillow提供的ImageGrab支持全屏幕或指定区域的截图。 import tkinter import tkinter.filedialog import os from PIL import ImageGrab from time import sleep #创建tkinter主窗口 root = tkinter.Tk() #
Python小屋屋主
2018/04/16
6.1K0
Python+tkinter+pillow实现屏幕任意区域截图
基本思路:首先获取并显示全屏幕截图,然后在全屏幕截图上响应鼠标左键按下和抬起事件,最后进行二次截图。 import tkinter import tkinter.filedialog import os from PIL import ImageGrab from time import sleep root = tkinter.Tk() #设置窗口大小与位置 root.geometry('100x40+400+300') #设置窗口大小不可改变 root.resizable(False, False) #
Python小屋屋主
2018/04/16
8K3
批量上传iOS应用程序截图的实用技巧
提交iOS应用程序截图到iTunes Connect是一项非常繁琐的任务,因为你必须上传多达数十张屏幕截图,这是一个重复而枯燥的过程。但是,我们有一个好消息要告诉开发者们,现在有一个工具可以帮助你批量上传,方便快捷。
爱学iOS的小麦子
2023/03/27
4550
RedHat上发布一个应用程序
使用RedHat发布一个Web应用程序,随手记录一下。//以root用户进入//启动数据库su - oraclesqlplus / as sysdbaSQL>startupSQL>exit//关闭数据库SQL>shutdown immediate//启动监听lsnrctl start//停止监听lsnrctl stop//查看监听状态lsnrctl status//启动tomcatsu - rootcd /usr/local/apache-tomcat-9.0.64/binstartup.sh//停止tom
东风压倒西风
2022/08/13
2320
如何为你的应用程序或网站快速构建一个搜索界面
直观的搜索界面对于任何出色的在线体验都至关重要。但很多时候, 它们可能需要花费大量的精力来建造并保持
点火三周
2022/05/06
1.5K0
如何为你的应用程序或网站快速构建一个搜索界面
如何创建应用程序清单文件 App.Manifest,如何创建不带清单的应用程序
如果你的程序对 Windows 运行权限有要求,那么需要设置应用程序清单。本文介绍如何添加应用程序清单,并解释其中各项权限设置的实际效果。
walterlv
2023/10/22
1.3K0
如何创建应用程序清单文件 App.Manifest,如何创建不带清单的应用程序
Kubernetes上开发应用程序的工具
2021 年欧洲 KubeCon + CloudNativeCon 虚拟大会[1]赞助商文章。作者:Matt Farina,软件架构师,SUSE
CNCF
2021/05/27
1.2K0
Kubernetes上开发应用程序的工具
iOS 上传AppStore 被拒汇总
The seller and company names associated with your app do not reflect the name name of the company responsible for the service in the app or its metadata, as required by section 1.2 of the Apple Developer Program License Agreement.
iOS Magician
2023/03/22
1.4K0
iOS 上传AppStore 被拒汇总
4. Design: Preamble Design Preamble Your app includes a responsive version button or alerts the user to update the app. To avoid user confusion, app version updates must utilize the iOS built-in update mechanism. Please see attached screenshots for details. Next Steps To resolve this issue, please remove the responsive version button feature from your app. To distribute a new version of your app, upload the new app binary version into the same iTunes Connect record you created for the app’s previous version. Updated versions keep the same Apple ID, iTunes Connect ID (SKU), and bundle ID as the original version, and are available free to customers who purchased a previous version. Resources To create new versions of your app, please review the Create a new version section in iTunes Connect Developer Help. 翻译过来: 4.设计:序言 设计前言 您的应用程式包含响应式版本按钮,或提醒用户更新应用程式。 为了避免用户混淆,应用版本更新必须利用iOS内置的更新机制。 详情请参阅附录截图。 下一步 要解决此问题,请从应用程序中删除响应式版本按钮功能。 要分发新版本的应用程序,请将新的应用程序二进制版本上传到为应用程序的以前版本创建的iTunes Connect记录中。 更新的版本保持相同的Apple ID,iTunes Connect ID(SKU)和捆绑ID作为原始版本,对于购买以前版本的客户可以免费使用。 资源 要创建新版本的应用程序,请查看iTunes Connect开发人员帮助中的创建新版本部分。
iOS程序应用
2023/04/13
1.1K0
Tapestry 教程(三)创建应用程序的骨架
首先创建一个空的应用程序。Tapestry提供了一个Maven原型(archetype,一种项目模板)来简化操作。
LeoXu
2018/08/15
7220
Tapestry 教程(三)创建应用程序的骨架
在C#/.NET应用程序开发中创建一个基于Topshelf的应用程序守护进程(服务)
在上一篇文章《C#/.NET基于Topshelf创建Windows服务程序及服务的安装和卸载》中,我们了解发C#/.NET创建基于Topshelf Windows服务程序的大致流程,参数配置以及服务的安装和卸载。同时,我们也使用一个简单的定时任务演示了Topshelf服务的执行情况。
Rector
2020/06/19
2.2K0
创建一个新的安卓应用程序 设置主Activity
File--New--Android application Project 取消勾选Create activity src文件中新建类 MainActivity 主类继承Activity publi
听着music睡
2018/05/18
1.2K0
AndroidStudio创建第一个 Flutter 应用程序
AndroidStudio创建第一个 Flutter 应用程序: 转到文件->新建flutter项目。 选择Flutter Application并按下一步按钮。 在下一个窗口中,您将看到您的项目名称、项目位置、flutter sdk 位置路径。再次点击下一个按钮。 设置包名并点击 Finish 按钮来创建你的第一个 flutter 项目。 5、 flutter项目截图。 从 Android Studio 运行 Flutter 应用程序: 1. 找到 Android Studio 主工具
徐建国
2021/11/30
2.6K0
AndroidStudio创建第一个 Flutter 应用程序
苹果app怎么上架
1、苹果要求版本更新必须使用iOS版本更新内置更新机制。 Design: Preamble Design Preamble Your app includes a responsive version button or alerts the user to update the app. To avoid user confusion, app version updates must utilize the iOS built-in update mechanism. Please see attached screenshots for details. Next Steps To resolve this issue, please remove the responsive version button feature from your app. To distribute a new version of your app, upload the new app binary version into the same iTunes Connect record you created for the app's previous version. Updated versions keep the same Apple ID, iTunes Connect ID (SKU), and bundle ID as the original version, and are available free to customers who purchased a previous version. Resources To create new versions of your app, please review the Create a new version section in iTunes Connect Developer Help. 翻译过来: 设计:序言 设计前言 您的应用程式包含响应式版本按钮,或提醒用户更新应用程式。 为了避免用户混淆,应用版本更新必须利用iOS内置的更新机制。 详情请参阅附录截图。 下一步 要解决此问题,请从应用程序中删除响应式版本按钮功能。 要分发新版本的应用程序,请将新的应用程序二进制版本上传到为应用程序的以前版本创建的iTunes Connect记录中。 更新的版本保持相同的Apple ID,iTunes Connect ID(SKU)和捆绑ID作为原始版本,对于购买以前版本的客户可以免费使用。 资源 要创建新版本的应用程序,请查看iTunes Connect开发人员帮助中的创建新版本部分。 解决办法:我的做法是给审核的时候隐藏检查版本检查更新功能 2、应用程序是专门为iPhone开发的,用户仍然可以在iPad上使用您的应用程序,而且不能影响正常的功能使用 2. 4 Performance: Hardware Compatibility Guideline 2.4.1 - Performance - Hardware Compatibility We noticed that your app did not run at iPhone resolution when reviewed on iPad running iOS 10.3.2. Specifically, the UI in this iPhone app is cut-off and unaccessible via scrolling on iPad. Please see attached screenshots for details. Next Steps To resolve this issue, please revise your app to ensure it runs and displays properly at iPhone resolution on iPad. Even if your app was developed specifically for iPhone, users should still be able to use your app on iPad. Resources For information on iOS device screen sizes and resolutions, please review the iOS Human Interface Guidelines as well as Points versus Pixels in the View Programming Guide for iOS. 翻译结果: 2.4性能:硬件兼容性 准则2.4.1 - 性能 - 硬件兼容性 我们注意到,在运行iOS 10.3.2的iPad上进
iOS程序应用
2023/04/17
4380
苹果app怎么上架
Kubernetes上的十大应用程序
在崭新的Kubernetes集群上,经常会安装的helm chart都有哪些呢?下面这个清单代表了我们的观点。
知忆
2021/06/08
4680
Mac电脑必备屏幕截图软件,Snagit
Snagit 是一款强大的屏幕截图软件,图象可保存为BMP、PCX、TIF、GIF、PNG或JPEG格式,也可以存为视频动画,功能强大!
啾咪啾咪
2023/02/14
1.9K0
创建水平滚动的正确方式【CSS 网格布局】
自从奈飞 Netflix 成为了家喻户晓的名字以来,在移动端中我们一直使用横向布局。水平滚动容器(列表)已经成为了一种常见的布局做法,而不是将东西都堆叠在页面上,这将减少占用小屏幕设备垂直的空间。
Jimmy_is_jimmy
2022/11/22
2.6K0
创建水平滚动的正确方式【CSS 网格布局】
Java|屏幕截图
初入java,想用java来实现游戏脚本功能,但是奈何刚刚入门。于是我就将其分为了几个板块:1屏幕截图,2图片比对获取关键坐标,3对关键坐标进行操作。
算法与编程之美
2020/07/28
2.3K0
Java|屏幕截图
Web应用程序如何创建 PDF
在一些场景下,用户都要求一些需要的数据能以 pdf 的格式下载下来。如电子商务商店,经常需要一些报表数据来分析当月的销售情况。
前端小智@大迁世界
2019/07/15
2.9K0
2019年创建健身应用程序的最佳方法
去年健康和健身应用程序在Apple App Store中最受欢迎的应用程序中排名第8位,占市场份额的3.01%(Statista Survey,2018)
Bessalitskykh
2019/06/27
7550

相似问题

iTunes应用程序屏幕截图

10

ITunes应用程序屏幕截图被拒绝

16

应用程序信息共享就像iTunes应用程序一样

14

为批准的应用程序编辑屏幕截图iTunes连接

12

如何为应用程序制作屏幕截图?

260
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文