在了解敏捷和JIRA之前,需要了解瀑布模型。
什么是瀑布模型?
瀑布模型是IT行业用于开发软件的最古老的模型。不同公司使用不同模型和流程,但瀑布模型是IT行业中最古老,最安全,最简单的模型。
它是构建代表现实生活的软件的最简单模型。下面我们来了解瀑布模型。瀑布模型分为多个阶段:
要求
假设有客户想要开发软件,然后客户联系到一家软件公司。假设客户联系了这家服务型公司并要求该公司为他们构建软件。
公司做什么?
公司将收集客户的所有需求,知识或客户希望拥有的软件,公司将从客户收集所有信息并准备文档。执行此活动后,设计阶段即开始。
设计
在此阶段,我们准备高级和低级设计。在开发软件之前,需要设计软件。假设客户想要与亚马逊类似的电子商务网站,那么网站的UI(用户界面)将由设计者制作,数据流也在这个阶段设计,数据将如何流动。完成此阶段后,开发阶段即可开始。
开发
在开发阶段,软件开发团队开始编写和开发软件。这是瀑布模型的最长阶段,因为开发人员需要更多时间来构建软件。一旦软件开发完成,项目就会交给测试人员。
测试
测试团队将测试软件,如果发现有错误,他们会通知开发人员他们发现的问题并确保错误得到修复。测试团队确保完成端到端软件。
部署
测试项目后,将部署项目,以使其成为实时用户的实时用户。
维护
最后,项目已部署并可供客户使用。客户希望维护期为一年或两年,因为如果发现错误或想要在项目中稍微增强功能,那么需要一些团队来处理这些问题。由于这个原因,需要一个维护期。
瀑布模型的例子
假设客户想要一个像WhatsApp这样的应用程序,那么客户就会找到一个软件开发公司并讨论2个月。软件开发公司在2个月内完成了所有要求的记录。软件开发公司的开发团队开始开发软件,并假设开发软件花了大约10个月的时间。这意味着已经使用了12个月,即需求阶段为2个月,开发阶段为10个月,但客户仍然不了解内部阶段。开发完成后,测试完成,软件质量测试大约需要2个月。一旦测试完成,它将进入集成并启动,以便WhatsApp进入交付试用。然而,当它到达客户端时,客户说它花了一年多的时间,收到的软件却不是他所期望的。之所以发生这种情况,是因为客户只与软件团队进行了口头沟通。如果客户想要对软件进行一些更改,那么整个过程将再次执行。
瀑布模型的优点
- 简单易懂,易于使用
- 它代表了您想要在现实生活中完成的所有任务。例如,您需要客户端的需求。它包含不同的阶段,每个阶段仅在前一阶段完成时启动。
- 具体的可交付成果和审核流程。
- 每个阶段都有一个特定的可交付和审核流程。在需求阶段之后,我们满足客户需求的所有要求。软件开发完成后,我们就可以交付。
- 阶段不重叠。
- 在该模型中,相位不重叠,即,它们一次完成一次。上一阶段完成后,只有下一阶段开始。例如,开发阶段将仅在设计阶段完成时开始。
瀑布模型的缺点
- 产品上线时间很长。
- 只有在完成所有阶段后才会发布产品。因此,此模型需要很长时间才能发布产品。
- 出乎意料的结果。
- 期望和收到的内容大多不同,因为客户根据文档仅了解产品。客户只有一个想法,这是一个有记录的想法。
- 不适合改变需求。
- 瀑布模型不适用于需求处于中度到高度变化风险的项目。如果要求发生变化,则不建议使用此模型,因为所有要求都是在需求阶段完成的,这是一个非常耗时的过程。