10
M M S i

Presentation by meghna jadhav

Embed Size (px)

Citation preview

Page 1: Presentation by meghna jadhav

Mantra for Process Excellence

Meghna JadhavSr Software EngineeriGATE Global Solutions

Page 2: Presentation by meghna jadhav

Process Excellence by Agile and T&M

Process Excellence achieved by Agile Methodology and Time and Material Estimation model

Abstract

As a corporate executive, we always have the notion that sales and finance are the most important

part to run a project successfully. However, the main factor is Process Excellence of the company,

which acts as a backbone of the project. Every manager before a start of a project considers the most

effective project life cycle. Because a mistake in the choice of methodology and model of interaction

with a customer leads to delayed results, dissatisfied customers, overruns, cancelled projects.

Here we will discuss about the most popular and widely used methodology- Agile with Time & Material

Model.

Page 3: Presentation by meghna jadhav

Agile is one of the most flexible model used for development, which provide intermediate builds or

products called as Sprints, which are of short duration. Also in addition, Time & Material model is used

long-term projects with dynamically changing requirements, unclear scope of work and varying

workloads of development team. Clients usually are at stake for gap in requirement, unclear scope.

At the start of the project, even the clients are unclear about the final output, for which Agile helps

them give a clear picture systematically and if any hurdle, can be raised to the client, for which Time &

Material helps.

By T& M, the customer can directly participate and monitor the entire development process, making

any necessary changes in requirements. By receiving regular reports on the hours spent, a customer

has the ability to control the development time and therefore the project budget.

Table of Contents:

Introduction...........................................................................................................................................4

Agile in Time and Material.....................................................................................................................4

Conclusion.............................................................................................................................................7

References.............................................................................................................................................7

Page 4: Presentation by meghna jadhav

Introduction

As of today there are many life-cycle models having its advantages and disadvantages. This Article

analyzes one of the most popular and convenient models in terms of meeting deadlines and profit

margin for both client and vendors i.e. Agile. A flexible model that encourages phased development in

which output results are available at the end of each stage and the notable part is the duration that

each phase takes, just handful of weeks.

Page 5: Presentation by meghna jadhav

Complimenting to this flexible development methodology is the “Time and material” model. The main

feature, brings it to a flexible methodology is the ability to adjust the frequent change in requirement

and reducing the risk in the product development process.

Let’s throw some limelight on how exactly these two can be merged for obtaining better outcomes:

Agile in Time and Material1. CR Estimation and Schedule:

In a Software Organization, the very first thing for the Project Management Team, when any scope of

Project work comes, is to do the Execution Risk Analysis. In the current Era, the widely adapted

models for project execution is “Fixed Price” or “Time and Material”

Fixed Price model is more risky in vendor prospective. Frequent changes in scope of work make it

difficult for the software development phase to execute and plan for the deliverables under this Model.

The additional requirements or scope changes are expected to be completed by the Delivery Date

that has been fixed in the Initial Estimation.

In contrast, Time and Material is a convenient and flexible model for project execution in frequently

changing circumstances. For additional scope of work this model facilitates to keep track of all the

surplus efforts and time of execution and can be billed to the clients/ customers later. Hence the risk

of getting the project over-run can be mitigated.

2. Agile Overview:

Agile development methodology is considered as the most flexible one in modern development

environment. It can be described as a combo of “iterative” and “incremental” model. It scales out the

project execution along efforts and schedule with a objective of better quality output. Setting up

intermediate deliveries (sprints), dividing the workload among teams (scrums) helps software

engineers to focus on the better way to achieve the final quality deliverables.

As Software Development process is very labour-intensive and time-consuming, the vision of a project

before it gets started can be different from a customer and developer point of view. From a customer

prospective, it’s difficult to imagine the scope of improvements for a Software Product until it gets fully

Page 6: Presentation by meghna jadhav

developed. Usually most of the software improving ideas arises during the development phase and

therefore it’s difficult to specify them in the requirement specification.

In such cases where the customer does not have a clear idea about the final product, Agile

methodology helps to make life easier. The entire development life cycle is divided into multiple

Sprints. After completion of each Sprint, Client receives a functioning part of a software product. On

that intermediate product client can do their testing and can report the development. In case of any

changes reported by client, development team can plan their activities in the next Sprint. This strategy

helps to get a proper vision of the final product, to both Client and Software Service provider.

3. Combination of both Agile and Time & Material:

One of the biggest disadvantages of using the fixed-price contracting model in Agile delivery is limiting

the adoption of the Agile philosophy of welcoming changes. Client is benefited by FP model because

of un-clarity of the Product and frequent changes in requirement prevent them from charging and

delivered within the time frame committed.

This disadvantage can be overcome by “Times and materials” model. Each intermediate milestone is

estimated as per T&M model. For example, the first intermediate delivery has some scope changes

and feedback from client, the latter can be re-estimated and charged to the customer with revised

schedule. In this way, the Client can participate and monitor the entire development process making

necessary changes and can also track the budget and schedule of the project.

4. Testing phase:

As we all are aware that each phase of development can be tested by performing unit testing,

Integration testing, re-testing or regression testing, naming a few. Testing and coding are done

incrementally and iteratively, building up each feature until it provides enough value to release to

production. Agile testing covers all types of testing

Testing is carried for each Milestones and defect-fixing activity can be performed in parallel. There

can be situations when client may raise some post delivery anomalies for the intermediate product

that needs to be fixed on immediate effect depending on priority or in later development cycle. Here

the project cost is not hampering but the schedule is. This kind of situations can increase the pressure

on development phase of next iterations indirectly affecting the quality of the product. These can be

overcome by keeping a buffer in between the two development phases for receiving the customer

feedback.

Special attention need to be given while performing integration testing. Re-testing or regression

testing is a part of Agile process and performing test periodically on the existing product helps to

obtain a good quality final deliverable.

Agile software development methodologies has changed the traditional view of waiting for a fully built

system to be available before higher levels of testing, such as Acceptance testing, can be performed.

Page 7: Presentation by meghna jadhav

The key challenges for a tester on an agile project are:

No traditional style business requirements or functional specification documents. Any

additional details about the feature are captured via collaborative meetings and discussions.

Testing is performed continuously throughout the lifecycle so expecting that the code won’t be

complete and is probably still being written

Acceptance Test cases are part of the requirements analysis process because these test

cases are written before the software is developed

The development team has a responsibility to create automated unit tests which can be run

against the code every time a build is performed

With multiple code deliveries during the iteration, regression testing requirements have now

significantly increased and without test automation support, ability to maintain a consistent

level of regression coverage will significantly decrease.

5. Challenges:

Challenges are faced while merging the code or integration of the products. This stage always

involves high risk factor, which has to be considered in estimation and schedule.

In addition, for the smooth execution of the project, the most important factor is communication. The

more transparency is maintained about the understanding and development of the requirement, the

more clarity about the requirement and clients expectation are observed

6. Risk management in Agile:

Agile Methods such as Scrum are a relatively new entrant into the field of project management. A

basic tenet of Agile Methods is that teams produce a continuous series of useable software builds in

very short cycles called Sprints. Each build is assessed, issues identified and the backlog of tasks is

reviewed and prioritized and the most important tasks are scheduled for the next sprint. It sounds

like an ideal approach. For many teams it works extremely well as Agile teams tend to claim higher

project success rates than do teams using more traditional methods. There is not a lot of empirical

data available that makes effective comparisons of Agile project success rates to other

methodologies, but what data that does exist tends to support those claims.

ConclusionIn software development organization’s prospective adapting Agile Methodology with Time & Material

model can always be considered as a convenient, quality based, profitable project execution affair. In

cotemporary market most of the company either already adapted or trying to adapt this combo to taste

the pinnacle of success.

Page 8: Presentation by meghna jadhav

Referenceshttp://agilemethodology.org/

http://en.wikipedia.org/