Vous êtes sur la page 1sur 29

AGILE SOFTWARE DEVELOPMENT

By : Sapna Sood ( Management Consultant) sapna.sood@hotmail.com

ABSTRACT

When we speak about Agile methodology there are number of them. Which one do you follow? Are you one of them who are using a single approach to all their clients?

A single approach to all clients!! For me it is sounding more like a single shoe for all clients, irrespective of their shoe size!!

UNDERSTANDING SOME TERMS

Agile is the readiness for motion or dexterity in motion. Agility is the ability to both create and respond to
change in order to profit in a turbulent business environment.

determine the amount of agility you need to be competitive and stay in the market.
Now, you need to

HISTORY, SO FAR!
DESPITE OF THE FACT THAT WE HAVE AN END NUMBER OF METHODOLOGIES THAT WE CAN USE, WE RATHER STICK TO A SINGLE APPROACH.

Extreme Programming (Kent Beck) SCRUM (Ken Schwaber) DSDM (DSDM-consortium) Adaptive Software Development (Jim High smith) Crystal (Alistair Cockburn) Feature Driven Development Pragmatic Programming
Snowbird ski resort in Utah mountains 17 methodology people Agile in stead of light The Agile Alliance Not anti-methodology

ARE YOU SUCCESSFULLY DEVELOPING SOFTWARE'S? LET SEE!


Only 10 % or less than that software projects are successful today. (1) Criteria's for success are timely delivery, in the budget , covering all the features required by the clients and finally a bug free solution. Inspite of all the technology up gradation and all big brains working on the project, why does it fails? Is it that hard to accomplish? If yes, why?

THE PROBLEM IS IN COMMUNICATING. WRITE GOOD DOCUMENTS


DESCRIBING THE REQUIREMENTS AND HAND IT TO THE DEVELOPERS.

KEEP IN MIND 3 POINTS: 1. WHAT IS BEING COMMUNICATED? 2. WHO IS COMMUNICATING THE INFORMATION? 3. TO WHOM ARE YOU
COMMUNICATING THE INFORMATION?

PRINCIPLES OF AGILE MANIFESTO


Customer satisfaction Timely completion and delivery of the product. Welcome changes in requirement at any stage of development. The team members need to communicate daily and work together in a project. All the developers should go for more and more face to face conversation. Simplicity Self organizing teams

METHODOLOGIES
eXtreme Programming (XP) Scrum Evolutionary Project Management (Evo) Unified Process (UP) Crystal Lean Development (LD) Adaptive Software Development (ASD) Dynamic System Development Method (DSDM) Feature Driven Development (FDD)

EXTREME

PROGRAMMING (XP)

EXTREME PROGRAMMING

Extreme Programming improves a software project in five essential ways; communication, simplicity, feedback, respect, and courage. Extreme Programmers constantly communicate with their customers and fellow programmers. They keep their design simple and clean. They get feedback by testing their software starting on day one. They deliver the system to the customers as early as possible and implement changes as suggested. Every small success deepens their respect for the unique contributions of each and every team member. With this foundation Extreme Programmers are able to courageously respond to changing requirements and technology.

PRINCIPLES OF XP
Refactoring Pair Programming Collective Ownership Continuous Integration 40-hour per Week On-site Customer Coding Standards

SCRUM

STEPS TO A SUCCESSFUL SCRUM


Sprint planning meeting. Creating a sprint backlog. Daily Scrum meeting. Sprint review Sprint retrospective

SCRUM LIFE CYCLE


Planning Staging Development Release

EVOLUTIONARY PROJECT MANAGEMENT (EVO)

EVOLUTIONARY PROJECT MANAGEMENT

A project management process delivering evolutionary results ,high-value-first progress towards the desired goals, and seeking to obtain, and use, realistic, early feedback.

PRINCIPLES

E1:Decompose by performance results and stakeholders; E2: Do high-risk steps early, learn how unknowns really perform; E3: Focus on improving your most valuable performance objectives first; E4: Base your early evolution on existing frameworks and stakeholders; E5: Design to cost dynamically; E6: Design to performance dynamically; E7: Invest in an open-ended architecture early on; E8: Motivate your team by rewarding results; E9: Prioritize changes by value, not place in queue; E10: Learn fast, change fast, adapt to reality fast.

UNIFIED PROCESS (UP)

UNIFIED PROCESS (UP)


The Unified Software Development Process or Unified Process is a popular iterative and incremental software development process framework. The best-known and extensively documented refinement of the Unified Process is the Rational Unified Process (RUP).

CRYSTAL

LEAN DEVELOPMENT (LD)

ADAPTIVE SOFTWARE DEVELOPMENT (ASD)

DYNAMIC SYSTEM DEVELOPMENT METHOD (DSDM)

FEATURE DRIVEN DEVELOPMENT (FDD)

LOOK INTO THE REQUIREMENTS OF YOUR


CLIENT AND GO WITH AN APPROACH THAT SUITS THEIR REQUIREMENT. AFTER ALL, IT IS ALL ABOUT BUILDING RELATIONSHIPS.

Vous aimerez peut-être aussi