http://asmarterplanet.com/mobile-enterprise/blog/2015/01/agile-discipline-approach-mobile-app-development.html
Every organization wants to build a delivery model for its mobile application development projects that will enable it to continuously and rapidly roll out high-quality solutions. This is particularly important in the mobile enterprise market, where businesses are under increased pressure to deploy applications more quickly to satisfy customer demand. So IBM created a mobile delivery model called Agile with Discipline (AWD) based on our experience delivering mobile engagements with large organizations.
Our Agile with Discipline model enhances traditional agile methods with discipline that comes from soft-skill project management. The model has “just enough” lean documentation and processes to be successful. It focuses on five key practices to ensure speed, quality and productivity in every mobile app development project.
Our practice is to bring together specialists in business, analytics, technical and design to collaborate in order to understand, explore, create a prototype and evaluate with a focus on the problem spaces and pain points. We recommend designing experiences for real target users and aligning the team, stakeholders and clients around the user value. You also need to understand the complexities of digital transformation and align your business objectives, creative vision and technology capabilities to create the design. At IBM Interactive Experience, we embed design thinking throughout each mobile project so that it can evolve over time with feedback. We update living documents and prototypes until the project has been completed.
For Agile with Discipline development, our key practice is to define a mobile app’s functional architecture into a number of collaborating components; analyze the major technical concerns that affect the solution; and prioritize architecture decisions. We focus on how the solution will be built to ensure resilience and maintainability by creating a set of pluggable components that can be enhanced or even replaced individually as technology evolves. IBM MobileFirst Platform solutions are built on such architecture for both mobile apps and server components.
Our practice is to create the mobile app solution in increments. Each increment is completed in a fixed period of time, commonly known as a sprint in the agile world. A completed sprint will produce a tested application available to integrate and run from a cloud environment. Sprints are reviewed, and lessons learned are applied to future sprints planning. Depending on the business objectives, sometimes we complete multiple sprints, perform end-to-end regression testing and then go live to production. A sample project with multiple sprints may look like the following diagram in a high-level view:
Before we start coding, first the test cases are defined and then code is developed to pass the tests. This practice improves productivity by finding and fixing errors close to the time that they are introduced. We use a software tool such as IBM Mobile Quality Assurance to embed defect capturing, user feedback and quality metrics at every stage of development. We often use the in-app bug reporting, where bug reports can be submitted directly from the app on a device with the contextual information around the bug. This makes it easy to get detailed information to the developer.
Our practice in an Agile with Discipline approach is to use our cloud and DevOps solutions to rapidly provision development and test environments and to establish automated build and deployment processes. When team members integrate their work frequently (at least daily), it reduces the occurrence of regression and integration problems.
We believe by following these five key practices, you can accelerate delivery of your mobile projects while developing high-quality, low-risk solutions. Being able to perform smaller changes using proven processes and software tools will allow you to respond to your customers’ needs with speed and bring ideas to market faster.
What are you key practices for mobile delivery? Connect with me on Twitter at @ashekswith your ideas and tips.