【问题标题】:How to plan software project step by step? [closed]如何逐步规划软件项目? [关闭]
【发布时间】:2019-04-18 14:38:37
【问题描述】:

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

完整的优质产品,错误更少

【问题讨论】:

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


    【解决方案1】:

    据我了解,需要确定开发模型 - 是瀑布式还是原型式。据我所知,现在瀑布模型的使用并不多。在瀑布模型下,编码只有在需求规范和软件设计得到充分开发和确定之后才开始,以至于它们发生变化的可能性几乎可以忽略不计。然而,在现代世界中,正在遵循敏捷或原型软件开发模型,我们从基本需求和基本软件设计开始,然后直接进行编码、测试,有时还尽快发布产品。然后 srs、设计、编码、测试和发布的所有步骤不断重复,直到应用程序的生命周期,因此产品在每次发布时都会变得更好,并且只有在几次发布后,它才会达到具有许多功能的地步在生产中。

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

    话虽如此,迭代开发并非没有任何 srs 或任何设计规范。我建议从基本的 srs 和基本的软件设计开始,这些设计捕捉应用程序的核心部分,并保持其灵活性,以便轻松适应变化。

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

    比方说,它是一个购物应用,它的核心部分可能有这些特点:

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

    因此,上述功能试图完成应用程序的关键路径,以便它可以尽快成为一个工作应用程序,并且可以进行演示和迭代。最初不重要的功能可以被剔除 - 例如身份验证、搜索、支付处理、发送电子邮件等。

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

    【讨论】:

    • 非常感谢您的回答。这真的很有帮助,正如你提到的,我也在遵循敏捷方法。主要的是我必须从基本的事情开始,尽快启动项目。有了你的回答,我现在对此有了清晰的认识。再次感谢您。
    【解决方案2】:

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

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-20
      • 2012-09-23
      • 1970-01-01
      • 1970-01-01
      • 2010-12-16
      • 1970-01-01
      相关资源
      最近更新 更多