正向工程和逆向工程的區別
正向工程和逆向工程都與重新實現遺留系統以實現更多可持續性相關。根據建立模式,我們可以將這些模式分類為正向工程和逆向工程。閱讀本文以瞭解有關正向工程和逆向工程的更多資訊,以及這兩種方法彼此之間有何不同。
什麼是正向工程?
正向工程是一種應用程式開發模式,其中開發基於客戶或消費者的既定需求。
在正向工程中,需求是在應用程式開發之前提供的。簡單來說,正向工程是在提供客戶資訊的情況下開發應用程式的建立模式。
由於正向工程涉及軟體應用程式的實際開發,因此需要較高的技能和更多時間。正向工程本質上是規範性的。
什麼是逆向工程?
逆向工程是一種開發模式,其中開發是根據從已開發應用程式中收集的需求或客戶或消費者提供的更改或增強功能來執行的。換句話說,在逆向工程中,資訊是從給定的應用程式中獲取的。它也被稱為反向工程。
由於它不需要軟體工程原理,因此需要的熟練程度、技能和時間都較少。逆向工程的示例包括可以實施到現有應用程式中的研發工作。
正向工程和逆向工程的區別
以下是兩種工程的主要區別:
關鍵 |
正向工程 |
逆向工程 |
---|---|---|
定義 |
正向工程是建立或開發的模式,其中開發基於客戶/消費者提供的既定需求。在此,需求是在應用程式開發之前提供的。 |
另一方面,逆向工程是建立或開發的模式,其中開發是基於從已開發應用程式中收集的需求或客戶/消費者提供的更改/增強功能來執行的。 |
執行時間 |
應用程式需要從頭開始開發,並且所有方法和計劃都需要在實際開發開始之前完成,因此與逆向工程相比,它需要更多時間。 |
逆向工程開發應用程式所需的時間較少,因為只需要開發修改和增強功能,而不是應用程式的核心功能。 |
熟練技能 |
應用程式需要從頭開始開發,因此在正向工程的情況下,需要高技能熟練程度來確定方法和開發計劃。 |
在逆向工程中,低或中等技能熟練程度也足夠。 |
性質 |
正向工程的性質是前瞻性的。 |
逆向工程本質上是適應性的。 |
例子 |
正向工程的示例可以是任何基於既定需求開始或即將開始的新開發應用程式或系統。 |
逆向工程主要包括研究和研發工作,這些工作可以實施到已開發的應用程式或系統中,以提供更高效的效能和更多功能。 |
結論
您應該注意到的最顯著的區別是,在正向工程中,應用程式是根據提供的資訊建立的;而在逆向工程中,資訊是從現有應用程式中獲取的。