즉, 두 가지 다른 버전을 별도로 빌드하여 제공하는 것이며, 일반 버전에는 애초에 프로 기능이 포함되어 있지 않습니다. 따라서 결함이나 해킹으로 돈을 지불하지 않은 사용자에게도 프로 기능이 노출될 염려가 없다는 장점이 있습니다.
두 번째 방식은 고급 기능을 포함하지만, 라이선스 메커니즘으로 제어되는 단일 소프트웨어 제품을 만드는 것입니다. 이 방식을 적용하면 사용자가 단일 애플리케이션을 내려받은 뒤 추가로 다른 애플리케이션을 내려받거나 설치하지 않고도 업그레이드할 수 있습니다. 이 방식은 특히 모바일 플랫폼에서 많이 사용되며, 사용자는 인앱 결제로 편리하게 고급 버전을 이용할 수 있습니다. 다만 두 가지 버전의 애플리케이션을 동일한 기기에서 동시에 설치할 수 없다는 단점이 있습니다. 즉, 사용자는 자신의 기기에서 한 가지 버전만 사용할 수 있습니다.
앞선 두 가지 접근 방식은 상호 배타적이지 않습니다. 궁극적으로 시장 반응에 따라 두 가지를 혼합한 접근 방식을 사용할 수도 있습니다. 아마도 기업 입장에서는 시간을 두고 다양한 앱 스토어를 대상으로 어떤 방식이 유리한지 비교하고 싶을 것입니다. 이는 최적의 접근 방식이 배포 플랫폼에 따라 다르기 때문입니다. 따라서 이 경우 아키텍처 팀은 특정 접근 방식을 고수하기보다는 유연성을 고려하여 아키텍처를 설계해야 합니다.