Last week, “IT Ops” defined DevOps and TestOps. I’m more pragmatic than formal, though; rather than quibble about whether some project is adequately DevOps in the sense of fitting a particular definition, I much prefer to analyze how DevOps insights make the most of the specific situations of specific organizations.
Different organizations make DevOps work in different ways. Some emphasize “breaking down the silos“; for some, continuous deployment is at the heart of added value. Most crucial over-all is that technology and methodology align with the culture of the organization. Within all this flexibility, however, one important principle that’s emerging is that mobile development particularly benefits from a strong TestOps orientation and plenty of application performance testing right from the beginning. Among other factors, “mobile users generally pay more attention to the user experience (UX)“, so that “mobility is at the epicenter of the performance discussion“.
Mobile end-users are particularly impatient; performance requirements are stringent. “[M]obile users expect an instant response …” To ensure a project’s architecture can support the responsiveness expected of mobile applications, measurement and refinement early on, while they still have a chance of making a difference, are essential. DevOps and TestOps provide the short, quick feedback loops necessary to keep the most demanding projects on-course.
Several specific technical considerations distinguish development of mobile applications; SOAP, for example, lacks tooling in comparison with REST on mobile platforms. Also, performance on mobile apps appears to depend crucially on adherence to standards, which is easiest when built in early during a project. This also makes cloud-based or cloud-assisted development particularly important for mobile.
The conclusion is clear: mobile especially needs the benefits of DevOps, alongside a general Agile focus on the needs of end-users compared to the needs of the vendor, and UX aspects of end-user experience (EUE). Find an end-to-end application performance management (APM) solution you can build in at the beginning of your project, and rely on it continually throughout development. However you customize DevOps to your own organization, minimize unpleasant surprises by bringing UX specialists, programmers, system administrators, and testers together as early as possible.