Challenges mobile development face?
NFR - Non functional requirements Mobile apps need?
Factors affecting performance?
Hardware diversity
Affects rendering speed, computation time, and memory limits
Platform differences
Causes API inconsistencies, OS behavior changes, and compatibility issues
Limited resources
Forces optimization for memory, battery, and background execution
Connectivity variability
Impacts load times, data requests, and offline functionality
Third-party dependencies
Introduces latency, increases app size, and consumes additional resources
Architectural decisions
Influences rendering logic, reactivity, and responsiveness based on chosen patterns
Evaluation oversights
Leads to incomplete optimization when key metrics like memory, latency, or UI interactivity are ignored
What to consider for Accessibility?
Visual
Visual impairment, low vision
Ensuring full screen reader support, meaningful alt text, logical focus order, and proper label semantics
Hearing
Hearing impairment, hard of hearing
Providing visual alternatives for audio cues, captions for videos, and non-reliant sound alerts
Motor
Limited dexterity, tremors
Designing with large touch targets, avoiding time-sensitive gestures, and enabling full keyboard or switch navigation
Cognitive
Learning, memory, and attention limitations
Simplifying navigation, avoiding overwhelming UI elements, and offering guided interaction flows
What is Internatioliazation (i18n)?
Internationalization is the design-time preparation that makes a system capable of adapting to different regions without rewriting the core codebase each time.
What things to consider to support internationalization?
What is Localization (L10n)?
Localization adapts an internationalization-ready system to a specific locale. This includes translating text, adjusting visuals, changing icons or colors for cultural appropriateness, and formatting data like prices or dates.
How security (should) operates in the following layers:
- Application Layer
- Network Layer
- Device / OS layer
- User Interation
Difference between security and privacy
Unlike security, which focuses on keeping intruders out, privacy is about limiting what even authorized parties can do with data.
How to optimize Battery Live?
In:
Background Processes
Network Usage
Sensor Control
UI Choices
Platform Integration
A battery-conscious mobile System Design makes thoughtful decisions around:
How to ensure Maintainability?
How to ensure availability?
What is portability?
Portability ensures that our mobile system can be extended, reused, or adapted across platforms without significant rework
How to achieve Portability?