65.9K
CodeProject 正在变化。 阅读更多。
Home

规划您的项目

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.28/5 (28投票s)

2006年5月30日

11分钟阅读

viewsIcon

68618

本文旨在使项目规划阶段比开发阶段容易得多,一旦完成,开发就可以,而且通常会,顺理成章。以下是分步指南……

引言

互联网上有大量关于如何编写代码、如何开发软件和网站,甚至如何营销项目的资料。那么,还缺少什么呢?

开发过程中最重要且通常最耗时的步骤之一是规划。毫无疑问,详细说明项目将做什么以及如何构建将大大减少开发、测试和维护的时间和复杂性。

如果没有系统化的方法来编写项目的详细计划,通常会更容易直接进入开发并开始原型设计,而几乎不做任何规划。这通常会导致重写不完全符合目标的代码片段,甚至整个项目变得混乱且效率低下。

通过一种简单、系统的方法来编写计划,整个开发过程将变得异常简单和高效。它还可以确保最终产品能够精确地完成其应有的功能,而无需所有者或客户的额外指导。

本文旨在使规划阶段比开发阶段容易得多,一旦完成,开发就可以,而且通常会,顺理成章。以下是分步指南……

注意:请记住,您编写的计划在开发阶段无疑会发生变化。这些计划仍然非常宝贵,因为它们记录了对应用程序任何部分的更改。所有团队成员都应能够轻松访问计划的最新版本。除非您计划将所有内容移交给另一位开发人员接手,否则不要试图让您的计划达到 100% 完美,因为您可以随着工作的进行添加更多细节。

项目概述

第一个也是最简单的步骤是写下项目用途的概述。这不应超过几段。想象一下您有 5 分钟的时间告诉别人您想构建什么,让他们有一个非常基本的概念。

示例

博客管理器概述

博客管理器将允许多个用户(由管理员指定)登录安全的管理部分,每隔几天添加一篇新博客文章。博客将在网站上显示给访问者阅读,并供搜索引擎索引。

项目目标

第二步是记录项目的总体目标。这是知道项目何时完成的核对表。

最简单的方法是将其列为要点。

示例

博客管理器目标

  • 管理员必须能够创建和管理用户帐户。
  • 用户必须能够编辑自己的帐户。
  • 用户必须能够登录以发布或编辑其博客。
  • 管理员必须能够审核和管理博客文章(以删除不当语言等)。
  • 管理用户和博客文章必须是安全的。
  • 访问者必须能够查看所有博客文章的摘要,然后选择一篇帖子阅读所有信息。
  • 搜索引擎必须能够抓取和索引博客文章。
  • 访问者和电子邮件爬虫不得能够看到用户的电子邮件地址。

项目功能

第三步是概述项目将包含的每个功能。最多可以使用几段来描述每个功能的详细信息。

在您完成以下每个步骤时,每个功能的详细信息都会越来越详细。

示例

博客管理器功能

用户

管理员可以登录创建和管理用户帐户。用户可以登录编辑自己的帐户。

博客文章

用户可以登录创建和管理他们的博客文章。访问者可以查看最新的公开帖子。

功能操作

第四步是列出并定义项目内可执行的所有操作,这些操作与每个功能相关。可以在操作旁边记录额外信息,以描述执行操作时的一些约束,但有些操作非常明显,无需解释。

如果您更喜欢使用用例图来定义您的功能操作,您可以将图表导出到计划的此部分。

示例

博客管理器功能

用户

管理员可以登录创建和管理用户帐户。用户可以登录编辑自己的帐户。

Actions

  • 列出用户(管理员)
  • 创建用户(管理员)
  • 编辑用户(管理员)
  • 删除用户(管理员)
  • 登录(用户)

博客文章

用户可以登录创建和管理他们的博客文章。

Actions

  • 列出博客文章(用户)
  • 创建博客文章(用户)
  • 编辑博客文章(用户)
  • 删除博客文章(用户)
  • 查看公开帖子(访问者)– 显示所有帖子的摘要,最新的在前。
  • 查看公开帖子(访问者)

功能属性

第五步是列出与每个功能相关的属性。

如果您更喜欢使用 UML 类图来定义您的功能属性,您可以将图表导出到计划的此部分。

示例

博客管理器功能

用户

管理员可以登录创建和管理用户帐户。用户可以登录编辑自己的帐户。

Actions

  • 列出用户(管理员)
  • 创建用户(管理员)
  • 编辑用户(管理员)
  • 删除用户(管理员)
  • 登录(用户)

属性

  • 用户名
  • 密码
  • 电子邮件
  • 简介

博客文章

用户可以登录创建和管理他们的博客文章。

Actions

  • 列出博客文章(用户)
  • 创建博客文章(用户)
  • 编辑博客文章(用户)
  • 删除博客文章(用户)
  • 查看公开帖子(访问者)– 显示所有帖子的摘要,最新的在前。
  • 查看公开帖子(访问者)

属性

  • 标题
  • Content
  • 发布日期
  • 作者
  • 视图

工作流程程序

第六步是描述一切将如何完成。您可以决定每个操作使用多少细节。过多的细节将耗费太多时间,而细节不足可能会在开发过程中引起麻烦。

最简单的方法(可用于大多数操作)是为每个步骤编号列表。这种方法不允许太多的动态复杂性,但它快速且易于完成。

另一种常见的方法是使用工作流程图,例如在Microsoft VisioMicrogold WithClass 中。这些通常可以导出并放入您的文档中。

您可以选择每个操作的适当详细程度,以及是仅使用步骤列表还是详细的工作流程图。

只需将“操作”下的项目符号更改为标题,并在每个标题下添加详细信息。

示例

博客管理器功能

用户

管理员可以登录创建和管理用户帐户。用户可以登录编辑自己的帐户。

列出用户(管理员)

管理员可以查看用户列表。

  1. 登录
  2. 点击“用户”
  3. 显示用户索引,其中包含姓名、电子邮件、帖子数量,以及每个用户的编辑和删除按钮。
创建用户(管理员)

管理员可以创建用户。

  1. 列出用户
  2. 点击“创建用户”
  3. 输入用户的名字、姓氏、电子邮件地址、用户名、密码、简介
  4. 选择用户是否为管理员
  5. 提交
  6. 用户已创建
编辑用户(管理员)

管理员可以编辑任何用户。

  1. 列出用户
  2. 选择要编辑的用户
  3. 编辑用户的名字、姓氏、电子邮件地址、用户名、密码、简介
  4. 编辑用户是否为管理员
  5. 提交
  6. 用户已更新
删除用户(管理员)

管理员可以删除任何用户。

  1. 列出用户
  2. 选择要删除的用户
  3. 确认删除
  4. 用户及其所有博客文章将被删除
登录(用户)

用户可以登录发帖。

  1. 访问网站
  2. 输入用户名和密码
  3. 凭据已验证,用户已登录

属性

  • 用户名
  • 密码
  • 电子邮件
  • 简介

博客文章

用户可以登录创建和管理他们的博客文章。

列出博客文章(用户)

用户可以查看他们所有帖子的列表。

  1. 登录
  2. 点击“博客文章”
  3. 显示博客文章,包含标题、摘要、作者、日期,以及编辑和删除按钮
创建博客文章(用户)

用户可以创建博客文章。

  1. 列出博客文章
  2. 点击“创建博客文章”
  3. 输入文章标题、内容、作者、状态(草稿、已发布)
  4. 提交
  5. 文章已创建
编辑博客文章(用户)

用户可以编辑他们的任何帖子。

  1. 列出博客文章
  2. 选择要编辑的博客文章
  3. 编辑文章标题、内容、作者、状态(草稿、已发布)
  4. 提交
  5. 文章已更新
删除博客文章(用户)

用户可以删除他们的任何帖子。

  1. 列出博客文章
  2. 选择要删除的博客文章
  3. 确认删除
  4. 文章已被删除
列出公开帖子(访问者)

访问者可以查看所有公开帖子的列表,最新的在前。

  1. 访问网站
  2. 公开帖子列表包含摘要、作者、发布日期
查看公开帖子(访问者)

访问者可以查看任何公开帖子。

  1. 列出公开帖子
  2. 选择帖子
  3. 帖子以全文显示

属性

  • 标题
  • Content
  • 发布日期
  • 作者
  • 视图

为了让您了解工作流程图的用途,这里有一个登录操作的示例。您会发现它包含更多细节,这在某些情况下是好的,但对于典型的登录情况,可能不值得花费时间。

示例文档

这是一个完整的示例需求文档。您的应用程序可能有很多功能,但您仍然可以使用此技术详细说明大部分内容。

博客管理器需求

摘要

博客管理器将允许多个用户(由管理员指定)登录安全的管理部分,每隔几天添加一篇新博客文章。博客将在网站上显示给访问者阅读,并供搜索引擎索引。

目标

  • 管理员必须能够创建和管理用户帐户。
  • 用户必须能够编辑自己的帐户。
  • 用户必须能够登录以发布或编辑其博客。
  • 管理员必须能够审核和管理博客文章(以删除不当语言等)。
  • 管理用户和博客文章必须是安全的。
  • 访问者必须能够查看所有博客文章的摘要,然后选择一篇帖子阅读所有信息。
  • 搜索引擎必须能够抓取和索引博客文章。
  • 访问者和电子邮件爬虫不得能够看到用户的电子邮件地址。

特点

用户

管理员可以登录创建和管理用户帐户。用户可以登录编辑自己的帐户。

列出用户(管理员)

管理员可以查看用户列表。

  1. 登录
  2. 点击“用户”
  3. 显示用户索引,其中包含姓名、电子邮件、帖子数量,以及每个用户的编辑和删除按钮。
创建用户(管理员)

管理员可以创建用户。

  1. 列出用户
  2. 点击“创建用户”
  3. 输入用户的名字、姓氏、电子邮件地址、用户名、密码、简介
  4. 选择用户是否为管理员
  5. 提交
  6. 用户已创建
编辑用户(管理员)

管理员可以编辑任何用户。

  1. 列出用户
  2. 选择要编辑的用户
  3. 编辑用户的名字、姓氏、电子邮件地址、用户名、密码、简介
  4. 编辑用户是否为管理员
  5. 提交
  6. 用户已更新
删除用户(管理员)

管理员可以删除任何用户。

  1. 列出用户
  2. 选择要删除的用户
  3. 确认删除
  4. 用户及其所有博客文章将被删除
登录(用户)

用户可以登录发帖。

  1. 访问网站
  2. 输入用户名和密码
  3. 凭据已验证,用户已登录

属性

  • 用户名
  • 密码
  • 电子邮件
  • 简介

博客文章

用户可以登录创建和管理他们的博客文章。

列出博客文章(用户)

用户可以查看他们所有帖子的列表。

  1. 登录
  2. 点击“博客文章”
  3. 显示博客文章,包含标题、摘要、作者、日期,以及编辑和删除按钮
创建博客文章(用户)

用户可以创建博客文章。

  1. 列出博客文章
  2. 点击“创建博客文章”
  3. 输入文章标题、内容、作者、状态(草稿、已发布)
  4. 提交
  5. 文章已创建
编辑博客文章(用户)

用户可以编辑他们的任何帖子。

  1. 列出博客文章
  2. 选择要编辑的博客文章
  3. 编辑文章标题、内容、作者、状态(草稿、已发布)
  4. 提交
  5. 文章已更新
删除博客文章(用户)

用户可以删除他们的任何帖子。

  1. 列出博客文章
  2. 选择要删除的博客文章
  3. 确认删除
  4. 文章已被删除
列出公开帖子(访问者)

访问者可以查看所有公开帖子的列表,最新的在前。

  1. 访问网站
  2. 公开帖子列表包含摘要、作者、发布日期
查看公开帖子(访问者)

访问者可以查看任何公开帖子。

  1. 列出公开帖子
  2. 选择帖子
  3. 帖子以全文显示

属性

  • 标题
  • Content
  • 发布日期
  • 作者
  • 视图

结论

一旦您记录了项目到此阶段的所有功能,您就完成了需求文档。您可以将此文档交给您的团队,以便他们确切地知道项目将能够做什么。您可以使用该文档从第三方获取外包项目部分的报价。大多数投资者也希望看到此文档,以便他们确切地知道他们投资的是什么。

有可能在没有进一步文档的情况下开发简单的应用程序。如果您有经验丰富的团队成员并且合作良好,您可能会认为技术规范不值得花费时间。此决定还应考虑在维护期间拥有技术规范的价值,特别是当维护团队发生变化时。

敬请期待下一篇文章,解释如何编写您的项目技术规范。

© . All rights reserved.