如何逐步规划软件项目?

时间:2019-04-18 14:38:38

标签: user-interface software-design flowchart entity-relationship-model

我必须使用NetBeans,Java和MySQL设计和开发独立的桌面应用程序。我需要知道如何在编码之前逐步计划软件,例如创建SRS文档,绘制用例,计划ER图,流程图,BP图,类图等。

优质产品,错误少

2 个答案:

答案 0 :(得分:1)

根据我的理解,需要确定开发模型-是瀑布式的还是原型的。据我所知,瀑布模型现在很少使用。在瀑布模型下,只有在完全制定并确定了需求规范和软件设计之后,编码才开始,从而几乎没有机会改变它们。但是,在现代世界中,遵循的是敏捷或原型软件开发模型,我们从基本需求和基本软件设计入手,然后直接进行编码,测试,有时还会尽快发布产品。然后不断重复进行srs,设计,编码,测试和发布的所有步骤,直到应用程序的生命周期为止,从而使该产品在每个版本中都变得更好,只有在少数版本发布后,产品才能达到拥有许多功能的地步在生产中。

软件开发的迭代模型之所以流行,是因为需求不断变化,并且由于利益相关者对什么功能一无所知,因此很难事先确定产品所有功能的需求。他们想要和/或想要的方式。对于设计也是如此,由于需求的变化,软件设计也需要更改,因此锁定软件设计也无益。

尽管如此,迭代开发并没有任何srs或任何设计规范的情况并非如此。我建议从基本的srs和基本的软件设计入手,这些基本的srs和基本的软件设计可以捕获应用程序的核心部分,并保持其灵活性,以便可以轻松地适应更改。

您提到的图表和文档都是很好的起点。但是,它们必须保持最小程度,仅捕获应用程序的核心部分,以便编码,测试和发布部分可以快速进行,从而实现将初始版本(概念证明)排除在外的目标。向利益相关者展示。

让我们说这是一个购物应用程序,它的核心部分可能具有以下功能:

  • 能够将物品添加到库存中
  • 向用户显示所有项目的能力(搜索稍后出现,用户身份验证随后出现)
  • 用户查看项目详细信息的能力
  • 进行购买的能力(假购买,以后可以进行实际付款处理)
  • 能够查看订单和订单详细信息。

因此,上述功能试图完善应用程序的关键路径,以便使其尽快成为可以正常工作的应用程序,并可以对其进行演示和迭代。最初可以忽略不重要的功能-例如身份验证,搜索,付款处理,发送电子邮件等。

我不确定这是否能回答您的问题,但希望它提供一些指导,以便从头开始进行应用程序开发。

答案 1 :(得分:1)

如果您有更多时间,请遵循瀑布模型。 您可以选择敏捷方法,以快速交付应用程序。 软件规划取决于以下因素 1)项目范围 2)项目期限 3)可用资源数量 4)工程造价 5)研发工作时间等

我希望能为您提供帮助