technology/mobile/

Mobile Development

A practitioner-grade reference for the seven disciplines that decide whether a mobile programme ships and survives — platform foundations, architecture, quality, security, backend integration, delivery, and enterprise strategy.

36 topics in this hub
technology/mobile/aiml-integration/
AI/ML Integration Considerations
AI and ML capabilities are increasingly expected in mobile applications — document scanning with OCR, personalised recommendations, real-time translation, biometric verification, and anomaly detection. The architectural decision that defines the integration approach is: on-device inference versus cloud inference. Each has distinct implications for latency, privacy, cost, model update cadence, and functionality scope.
technology/mobile/anti-patterns-failure-scenarios/
Anti-Patterns and Failure Scenarios
Anti-patterns are recurring solutions to recurring problems that produce negative consequences. They appear repeatedly across mobile codebases because they are natural: they are what a developer writes when following the path of least resistance without the benefit of architectural discipline. This section catalogues the most damaging anti-patterns observed across Ascendion's mobile portfolio with their symptoms, root causes, and correct approaches.
technology/mobile/api-integration-architecture/
API Integration Architecture
Mobile applications are API consumers with specific constraints that generic API designs do not accommodate: metered network connections, battery budgets, intermittent connectivity, and a client-server contract that updates on a different cadence than the server. API integration architecture for mobile is the set of patterns that resolve these constraints.
technology/mobile/architecture/
Architecture Patterns & Design Systems
This reference traces mobile architecture from the Massive View Controller through MVVM, MVI, Clean Architecture, and TCA, and explains which pattern fits which team size and risk profile. It covers state management, design systems, and navigation, with the dependency rules and layer boundaries that keep business logic testable and security properties auditable.
technology/mobile/architecture-style-and-layering/
Architecture Style and Layering
The architecture style is the structural template that determines how code is organised, how dependencies flow, and where each concern lives. Choosing the wrong style — or applying the right style inconsistently — is the single highest-leverage decision in mobile software architecture because it determines the testability, security auditability, and long-term maintainability of the entire codebase.
technology/mobile/backend-data/
Backend Integration & Data Architecture
The mobile-backend boundary is where most production incidents originate. Write the contract deliberately and most of them go away.
technology/mobile/build-vs-buy/
Build vs Buy Evaluation Framework
Every mobile feature, component, and capability presents a build-versus-buy decision. Build custom: higher initial cost, full control, no vendor dependency, bespoke fit. Buy or integrate a third-party SDK or service: lower initial cost, faster time to market, vendor dependency, potential misfit with requirements. The decision is rarely obvious and the consequences persist for years — a payment SDK integrated in year one may be deeply embedded in the codebase by year three, making migration expensive.
technology/mobile/cicd-engineering-operations/
CI/CD and Engineering Operations
The CI/CD pipeline for mobile is more complex than for web services due to: macOS-only iOS builds, binary code signing with certificates and provisioning profiles that expire, multi-day App Store review processes, and staged rollout mechanisms that differ between Google Play and the App Store. A mature mobile CI/CD pipeline automates every step from commit to user and reduces human error in the highest-risk operations — code signing and store submission.
technology/mobile/core-architecture-goals/
Core Architecture Goals
Architecture goals translate business intent into structural constraints on the engineering system. They are more durable than technology choices — the goal of testability persists whether the UI framework is XML Views, Jetpack Compose, UIKit, or SwiftUI. Defining goals explicitly prevents architecture drift: when a team faces a delivery trade-off, architecture goals provide the tiebreaker.
technology/mobile/decision-summary/
Decision Summary
The Decision Summary consolidates the key architectural decisions across all 28 sections of the Mobile Development knowledge base into a single reference. Each decision includes its rationale, the alternatives considered, and the conditions under which the decision should be revisited. This section is the executive briefing for the full knowledge base.
technology/mobile/delivery/
DevOps, CI/CD & Release Management
The mobile delivery pipeline is where most architectural decisions cash out as either compounding velocity or compounding pain. The discipline of code signing, automated testing, and staged rollout decides how fast the team can ship and how fast they can recover.
technology/mobile/dependency-governance/
Dependency Governance
Every third-party library added to a mobile application is a potential attack vector, a legal liability, a maintenance obligation, and a performance cost. Mobile applications are uniquely exposed to supply chain attacks: a compromised SDK distributed through a package repository can affect millions of users across all applications that include it. Dependency governance is the systematic process of evaluating, approving, monitoring, and retiring third-party dependencies.
technology/mobile/engineering-principles/
Engineering Principles
Mobile engineering principles are not abstract rules — they are hard-won constraints derived from the failure modes that appear repeatedly in production mobile applications at scale. Every principle below maps to a class of defects, a category of technical debt, or a team coordination failure that Ascendion has observed across financial services, healthcare, and government mobile engagements.
technology/mobile/enterprise/
Enterprise Mobile, Strategy & Emerging Technology
Enterprise mobile is the discipline of running corporate apps on devices the enterprise does not fully own, under regulators it must satisfy, on a platform the vendor controls. The decisions here decide whether a programme is governable.
technology/mobile/lifecycle-evolution-governance/
Lifecycle and Evolution Governance
Mobile applications have a lifecycle that spans years. OS versions advance and deprecate APIs. Third-party libraries evolve and introduce breaking changes. Business requirements add features that stress the original architecture. User bases grow and expose performance limits not anticipated at launch. Lifecycle and Evolution Governance is the set of policies and processes that manage this multi-year evolution without accumulating unmanageable technical debt.
technology/mobile/migration-evolution-strategy/
Migration and Evolution Strategy
Mobile codebases evolve continuously. Legacy XML-based Android views migrate to Jetpack Compose. UIKit codebases adopt SwiftUI. React Native codebases move to New Architecture. Monolithic feature code migrates to modular architecture. These migrations are business-critical engineering operations: the application must continue delivering value to users throughout the migration, with no big-bang rewrites that halt feature development for months.
technology/mobile/mobile-reliability-engineering/
Mobile Reliability Engineering
Mobile Reliability Engineering applies Site Reliability Engineering principles to the unique operational context of client-side mobile applications. The core discipline is identical: define Service Level Objectives (SLOs), measure Service Level Indicators (SLIs), calculate error budgets, and use error budget burn rate to guide engineering prioritisation. The implementation differs from backend SRE because the application runs on user-owned devices with variable hardware, OS versions, and network conditions outside the engineering team's control.
technology/mobile/mobile-state-management/
Mobile State Management
State management is the discipline of deciding where application state lives, how it changes, how changes propagate to the UI, and how state survives or resets across configuration changes, process death, and navigation. Errors in state management produce some of the most difficult bugs in mobile development: intermittent UI inconsistencies, data appearing twice or not at all, state surviving when it should reset, and race conditions between concurrent state mutations.
technology/mobile/non-functional-requirements/
Non-Functional Requirements (NFRs)
Non-functional requirements define the quality envelope within which a mobile application must operate. They are frequently treated as aspirational — mentioned in the kickoff, forgotten during development, and rediscovered as production incidents. At Ascendion, NFRs are specified as measurable, testable criteria before development begins, with CI gates that surface regressions continuously rather than at release.
technology/mobile/observability-operational-excellence/
Observability and Operational Excellence
Observability is the ability to understand the internal state of a running system from its external outputs. For mobile, the "external outputs" are crash reports, performance traces, analytics events, and user behaviour signals emitted by the application running on millions of devices. Without observability, production issues are discovered through user reviews and support tickets — too slow, too late, and too opaque to diagnose efficiently.
technology/mobile/offline-reliability/
Offline and Reliability Strategy
Mobile applications operate on networks that are fundamentally unreliable. Cellular connectivity drops in underground car parks, building basements, rural areas, and during handover between towers. Satellite connectivity has latency that makes synchronous request-response impractical. Designing a mobile application that degrades gracefully under network loss — rather than presenting an error screen — is an architectural decision, not an implementation detail.
technology/mobile/organizational-scaling-model/
Organizational Scaling Model
The organisational structure of the mobile engineering function determines the architecture of the mobile application — Conway's Law is not a theory, it is an observable empirical regularity. When the mobile engineering function grows from three engineers to fifty, the coordination mechanisms, team boundaries, and knowledge sharing structures that worked at three create bottlenecks at fifty. The Organizational Scaling Model provides a deliberate scaling path aligned with the Scalability Evolution Model (Section 12).
technology/mobile/performance-engineering/
Performance Engineering
Performance engineering for mobile is the systematic practice of measuring, setting targets for, and improving the runtime performance characteristics of mobile applications across the dimensions that users experience directly: how quickly the app starts, how smoothly it animates, how much battery it consumes, how much memory it uses, and how quickly it responds to user input.
technology/mobile/platform-engineering-strategy/
Mobile Platform Engineering Strategy
Platform engineering for mobile is the discipline of building and maintaining the internal infrastructure, tooling, and golden paths that enable feature teams to deliver with high velocity and consistent quality. A mobile platform team is not a gatekeeper — it is a force multiplier. Every hour invested in a golden path template, a shared build pipeline component, or a well-documented internal library saves the equivalent across every feature team that uses it.
technology/mobile/platforms/
Platform Foundations & Technology Decisions
The platform decision is the single most expensive choice a mobile programme makes. Get it wrong and the next five years are spent rewriting; get it right and the team compounds productivity release after release. This reference covers the four serious deployment models — pure native, Flutter, React Native, and Kotlin Multiplatform — with weighted-criteria decision frameworks, honest five-year TCO comparison, and production-case evidence from Uber, Airbnb, Meta, Google, and Cash App.
technology/mobile/quality/
Quality Engineering — Testing, Performance & Accessibility
This reference covers mobile quality engineering: the testing pyramid, unit and snapshot testing, performance engineering, and accessibility. It defines the coverage targets, performance budgets, and WCAG 2.2 AA obligations that are enforced as release gates.
technology/mobile/reference-architecture/
Reference Architecture
The reference architecture is the synthesised view of all architectural decisions across the preceding 27 sections, presented as an integrated system that can be adopted, adapted, or used as a benchmark. It is not a rigid prescription — it is a proven starting point that encodes best practices and eliminates the need to re-derive decisions that have already been made through hard experience.
technology/mobile/runtime-architecture-flows/
Runtime Architecture Flows
Runtime architecture flows describe how the application behaves across the full lifecycle: from cold start through user interaction to backgrounding, process death, and restoration. Understanding and correctly implementing these flows is what separates apps that "just work" from apps that lose user data, consume unexpected battery, produce ANRs, or crash on rotation.
technology/mobile/scalability-evolution-model/
Scalability Evolution Model
A mobile application that starts as a three-engineer MVP and scales to a hundred-engineer platform does not scale linearly — it evolves through distinct architectural phases, each with different dominant constraints. Planning the evolutionary path before beginning development prevents the most expensive form of technical debt: architecture that is correct for today's scale but structurally incompatible with tomorrow's.
technology/mobile/scalability-modularization/
Scalability and Modularization
Modularization is not primarily a technical problem — it is an organisational problem. Conway's Law states that systems reflect the communication structures of the organisations that produce them. A mobile application built by a team with no module boundaries will produce an application with no architectural boundaries. Modularization is the explicit alignment of code structure with team structure.
technology/mobile/security/
Security Architecture & Compliance
This reference covers mobile security architecture: the OWASP Mobile Top 10, authentication, secure storage, and runtime attestation. It defines the MASVS compliance baseline and the layered, hardware-backed controls mandated for regulated applications.
technology/mobile/security-and-compliance-architecture/
Security and Compliance Architecture
Mobile security architecture differs from backend security in one fundamental way: the attack surface is distributed across millions of untrusted devices that you do not control. Every mobile binary is a potential attack artefact — decompilable, modifiable, repackaged, and redistributed. Every on-device data store is a potential breach target if the device is compromised. Security architecture for mobile must assume device compromise as a design input, not an edge case.
technology/mobile/ssdlc/
Secure Software Development Lifecycle (SSDLC)
Security in mobile applications cannot be added at the end of a development cycle. By the time a penetration tester identifies a vulnerability in a finished application, the remediation cost is ten times higher than catching the same vulnerability at design time, and the damage to client trust may be irreparable in regulated industries. The Secure Software Development Lifecycle embeds security activities into every phase of engineering.
technology/mobile/technology-decisions/
Technology Decisions — Native vs Cross-Platform
The native versus cross-platform decision is the highest-stakes technology choice in mobile engineering. It determines team structure, hiring pool, long-term cost, performance ceiling, and the feasibility of certain feature categories. It is also frequently made on insufficient information — based on team familiarity, vendor marketing, or replication of a prior project's choice rather than structured evaluation against client-specific quality attributes.
technology/mobile/testing-strategy/
Testing Strategy
The mobile testing strategy defines what is tested, at which layer, with which tools, and to which coverage threshold. A testing strategy that is too thin produces regressions in production. A testing strategy that is too heavy produces slow, brittle tests that engineers work around rather than with. The testing pyramid provides the economic framework: fast, cheap, deterministic tests at the base; slow, expensive, environment-dependent tests at the apex.
technology/mobile/ux-mobile-platform/
UX and Mobile Platform Considerations
Mobile user experience is constrained by physical realities that web experience is not: a 5-6 inch screen, a glass interface operated by a finger (not a precision mouse pointer), ambient lighting conditions ranging from bright sunlight to darkness, one-handed operation scenarios, and users who are moving, distracted, or operating under time pressure. Platform-native UX guidelines from Apple and Google encode decades of research into these constraints. Engineering them correctly requires understanding the guidelines, the platform mechanisms that implement them, and the accessibility layer that makes them inclusive.