Obecnie stosowane aplikacje mobilne i internetowe są dość złożone – rozbudowana architektura jest konieczna, aby udostępnić użytkownikom najważniejsze funkcje. Należy przy tym pamiętać, że projektowanie, wdrożenie i utrzymanie aplikacji to długotrwały proces, który przewiduje wiele zmian i ulepszeń.