App Development Models

To minimize the risk (of time & cost) involved, below are the 2 models which you can choose from:

1. Agile

  • If you want release in phases i.e periodic releases then it is best to go with agile.
  • Here requirement analysis and development go hand-in-hand. So, we have smaller milestones to be accomplished  i.e 7-15 Days
  • You could see the chunks of working (live) code developed and demonstrated throughout the entire development process.

2. Waterfall

  • If you want to deploy the entire realm of your services in one go (at the same time), then we would want to select the waterfall model. Here we will first create a technical requirement document (based on your business requirements) & after you have agreed upon it we will create views/prototype which once you approve we will being with development and implementation phase.

    Note: the timeline to end the project is derived after the approval of the item above.

 

PROS and CONS of the TWO MODELS

1. ‘Agile’ Model:
Pros

  • Faster ROI
    • You (SP/Clients/Operations) can start using the mobile app as soon as any of the services gets deployed. (since you will be engaged al throughout the development, you would already be ready to run the App)
  • Reduced Risks
    • You start to brand & generate revenue
    • Based on your customers’ feedback you modify/make necessary changes
    • Live progress
  • Increased Project Control
    • Transparency in to development of the app & the remaining time required for the same
  • Higher Customer (yours) Satisfaction
    • Keeping you involved and engage
  • Higher Product Quality
    • Defines and elaborates requirements just in time

Cons

  • Cost can go up if the business requirements are not well developed (thought through)

2. ‘Waterfall’ Model
Pros

  • No financial surprises as the development cost is fixed (set deadline)
  • You get exactly what you have planned
  • Timelines are maintained
  • Since the scope is already defined, it is very easily followed by technical team

Cons

  • Longer delivery time
  • Potential lack of flexibility
  • Needs can be difficult to define

------------------------------------------------------------------------------------------

Here is side-by-side comparison of the Two Models

Waterfall - (Fixed Price Model)

Agile - (Time & Materials Model)

Fixed Cost & Fixed Time-frame

‘Fixed Quality’ exactly to your satisfaction

Used for small and medium sized projects

Used for medium and larger projects

Requirements are fixed, well defined & complete

Requirements are evolving and changing.

Assumption is that project plan should not be changed

You can make any changes to project plan to complete the project

Product is not as flexible

Product is highly flexible

Client’s participation is minimal

Client’s participation is significant

Changes cannot be incorporated easily as the releases are few.

Changes can be incorporated with time as there would be periodic updates.

 

Below are the definitions for Agile & Waterfall Model from Wikipedia for better understanding

1. Agile Model (rapid application development RAD) describes a set of values and principles for software development under which requirements and solutions evolve through the collaborative effort of self-organizing cross-functional teams. It advocates adaptive planning, evolutionary development, early delivery, and continuous improvement, and it encourages rapid and flexible response to change.These principles support the definition and continuing evolution of many software development methods.

2. Waterfall Model is a relatively linear sequential design approach for certain areas of engineering design. In software development, it tends to be among the less iterative and flexible approaches, as progress flows in largely one direction ("downwards" like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, deployment and maintenance.