Performance in Mobile System Design
Understand nonfunctional requirements (NFRs) in mobile System Design and explore performance as an NFR.
Mobile devices operate in highly variable environments: hardware capabilities differ across devices, operating system versions are
Unlike functional requirements, which specify what a system should do (like logging in, submitting a form, or displaying content), nonfunctional requirements (NFRs) ensure that these functions are delivered effectively, reliably, and efficiently. Failing to meet nonfunctional requirements in mobile systems can have real-world impacts such as apps loading slowly, draining the battery quickly, lacking accessibility support, or putting sensitive data at risk. These aren’t simply technical shortcomings; they translate directly to negative user reviews, increased uninstall rates, and loss of market competitiveness.
The mobile frontend faces additional complexity compared to other platforms due to a number of reasons mentioned below.
Hardware diversity: Mobile apps exhibit hardware diversity, including a wide range of CPU, GPU, memory capacities, and screen resolutions across different devices.
Platform differences: Mobile development must account for key differences between platforms. Android spans thousands of devices from various manufacturers, each with custom configurations and varying OS versions. iOS, while more controlled, still requires supporting multiple active versions due to users not updating at the same pace.
Limited resources: Mobile systems are constrained by limited resources, including battery life, storage space, and restrictions on background processing imposed by operating systems.
...