Agile Development Practice

24
Prepared By: Kshitiz Goel 07030244004 Sidharth Malhotra 07030244023

description

This slide is made by Sidharth Malhotra & kshitiz goel, student at Symbiosis Centre for Information Technology, Pune.In this we have discussed about agile methodology followed in a big life insurance company ( name not disclosed for obvious reasons).

Transcript of Agile Development Practice

Page 1: Agile Development Practice

Prepared By:Kshitiz Goel

07030244004Sidharth Malhotra

07030244023

Page 2: Agile Development Practice

AGENDA Introduction to Agile Methodology

Agile ManifestoRoles in Agile Team

Change Requirement Process Followed at the company

Agile Practices at the company

Page 3: Agile Development Practice
Page 4: Agile Development Practice

Steps that lead to Agile Software Development

Page 5: Agile Development Practice

Agile

Page 6: Agile Development Practice

1. Our highest priority is to satisfy the costumer through early and continuous delivery of valuable software

2. Welcome changing requirements, even late in development. Agile process harness change for the customer´s competitive advantage

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale

Page 7: Agile Development Practice

4. Business people and developers must work together daily throughout the project

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation

Page 8: Agile Development Practice

7. Working software is the primary measure of progress

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely

9. Continuous attention to technical excellence and good design enhances agility

Page 9: Agile Development Practice

10. Simplicity – the art of maximizing the amount of work not done – is essential

11. The best architectures, requirements, and designs emerge from self-organizing teams

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly

Page 10: Agile Development Practice

Scrum Master - project following rules and practices

Product owner -officially responsible for project

Scrum Team - project team. Free to organize as they see fit to achieve goals of each sprint

Customer - participates in Backlog items

Management - Makes final decisions

Page 11: Agile Development Practice

Small teams

Incremental development

Time-boxed scheduling

Adaptive and agile.

Page 12: Agile Development Practice

Source:http://www.versionone.com/pdf/StateOfAgileDevelopmet2_FullDataReport.pdf

Page 13: Agile Development Practice
Page 14: Agile Development Practice

Sub Stories

are prepare

d

User Story are

approved

Standup

meetings

Page 15: Agile Development Practice

Business AnalystBusiness AnalystTeam LeadTeam Lead

Project ManagerProject Manager

DeveloperDeveloper

TesterTester

End UserEnd User

Page 16: Agile Development Practice

They prepare user stories.

Concentrate more on user requirement then on the documentation.

They have a constant user interaction with business analyst and developer.

They have an iteration of a week. And at the end of week new bid was deployed at the customer end

Page 17: Agile Development Practice

Their was no burn down chart prepared by the project manager to track the progress of the project.

Test driven development not properly followed.

No Standup meetings.

No standard testing tools were used like jmeter, Junit etc.

No versioning system was in place.

Page 18: Agile Development Practice
Page 19: Agile Development Practice

Burn down chart depicts that whether the project is on schedule or within budget.

Identification of the bottleneck in the project becomes difficult.

This also gives the user a picture of the project progress

Management of multiple team work becomes difficult

Resource planning/sprint estimations becomes difficult.

Page 20: Agile Development Practice

Chance of Bugs increase Thereby the Cost of Change will increase Refactoring is difficult in latter stage

Why it should be implemented: Testing Forces You to Slow Down and Think Testing Makes Development Faster Tests Reduce Fear Writing your test first makes you think of the

software you are writing as a user of that software. Encourages One Class – One Responsibility

Page 21: Agile Development Practice

Unsynchronized development activities. As you standup for meeting, you tend to

finish the meeting fast (no kidding). Decrease in the motivation among team

members as they do not talk about the progress daily.

Any issues would not be raised and addressed on daily basis

Lack in transparent communication among the team

Chances of false promises by a member are increases

Page 22: Agile Development Practice

Manual testing practices are less reliable. Time wastage in repetitive execution of

same operations

Manual process has more cost associated

Testing of every feature is possible in automated testing tool which lacks in manual process

Automated testing tools delivers better quality software. As all the tests can not be done in manual process.

Page 23: Agile Development Practice

Difficult to Roll back to a previous version of a given file

Comparing two versions of a file and highlighting the differences is tedious

No mechanism of locking, forcing serialized change to any given file

Parallel concurrent development not easy

No audit trail maintained on each and every file: versions, modified date, modifier, and any additional amount of metadata your system provides for and you choose to implement.