正向工程和逆向工程的区别
正向工程和逆向工程都与重新实现遗留系统以实现更多可持续性相关。根据创建模式,我们可以将这些模式分类为正向工程和逆向工程。阅读本文以了解有关正向工程和逆向工程的更多信息,以及这两种方法彼此之间有何不同。
什么是正向工程?
正向工程是一种应用程序开发模式,其中开发基于客户或消费者的既定需求。
在正向工程中,需求是在应用程序开发之前提供的。简单来说,正向工程是在提供客户信息的情况下开发应用程序的创建模式。
由于正向工程涉及软件应用程序的实际开发,因此需要较高的技能和更多时间。正向工程本质上是规范性的。
什么是逆向工程?
逆向工程是一种开发模式,其中开发是根据从已开发应用程序中收集的需求或客户或消费者提供的更改或增强功能来执行的。换句话说,在逆向工程中,信息是从给定的应用程序中获取的。它也被称为反向工程。
由于它不需要软件工程原理,因此需要的熟练程度、技能和时间都较少。逆向工程的示例包括可以实施到现有应用程序中的研发工作。
正向工程和逆向工程的区别
以下是两种工程的主要区别:
关键 |
正向工程 |
逆向工程 |
---|---|---|
定义 |
正向工程是创建或开发的模式,其中开发基于客户/消费者提供的既定需求。在此,需求是在应用程序开发之前提供的。 |
另一方面,逆向工程是创建或开发的模式,其中开发是基于从已开发应用程序中收集的需求或客户/消费者提供的更改/增强功能来执行的。 |
执行时间 |
应用程序需要从头开始开发,并且所有方法和计划都需要在实际开发开始之前完成,因此与逆向工程相比,它需要更多时间。 |
逆向工程开发应用程序所需的时间较少,因为只需要开发修改和增强功能,而不是应用程序的核心功能。 |
熟练技能 |
应用程序需要从头开始开发,因此在正向工程的情况下,需要高技能熟练程度来确定方法和开发计划。 |
在逆向工程中,低或中等技能熟练程度也足够。 |
性质 |
正向工程的性质是前瞻性的。 |
逆向工程本质上是适应性的。 |
例子 |
正向工程的示例可以是任何基于既定需求开始或即将开始的新开发应用程序或系统。 |
逆向工程主要包括研究和研发工作,这些工作可以实施到已开发的应用程序或系统中,以提供更高效的性能和更多功能。 |
结论
您应该注意到的最显着的区别是,在正向工程中,应用程序是根据提供的信息创建的;而在逆向工程中,信息是从现有应用程序中获取的。