Extreme Programming

What is Extreme programming?

Let´s have a general look of what XP is:

It started in March 6, 1996 (As part of the Agile process).

https://7bsp1018.wikispaces.com/eXtreme+Programming
Original at: https://7bsp1018.wikispaces.com/eXtreme+Programming

Extreme Programming is successful because it stresses customer satisfaction.

There are five essential ways to improove XP:

  • Communication
  • Simplicity
  • Feedback
  • Respect
  • Courage

About XP the principal thing is that customers are like partners with developers in all steps of development process.

It all begins with the customer´s idea:

http://www.marketingprofs.com/articles/2013/10774/four-outside-the-box-ideas-to-better-understand-customer-experience

Then all is released in the developers line, the tasks a developer must cover along with the customer are:

Release and planning

In this step the developer and customer are planning the original idea and thinking how to make it “grow up”, like a little baby.

You don´t get away of this step until you get stablished the main idea and characteristics of the project.

Iteration

In this phase the developer starts to test and code the project according to release and planning deliverables.

You are stick in this phase until you change and fix all (or most) of the bugs. Then you release the lastest version.

Acceptance test

In this phase the customer and you are working to analyze the product and get feedback of it until the customer approves the final product.

At last, but not least:

A small releases are delivered.

https://loyalty360.org/loyalty-today/article/4-ways-to-deliver-outstanding-customer-experiences
At: https://loyalty360.org/loyalty-today/article/4-ways-to-deliver-outstanding-customer-experiences

 

If you want more info about XP visit:

http://c2.com/cgi/wiki?ExtremeProgrammingRoadmap

http://www.extremeprogramming.org/

https://7bsp1018.wikispaces.com/eXtreme+Programming

 

With: Andrea Patriacia Trejo Dorantes at #TC1019

 


Agile Methodology

https://www.versionone.com/wp-content/uploads/2015/06/agile101-software-dev-300x200.gif
Original at: https://www.versionone.com/wp-content/uploads/2015/06/agile101-software-dev-300×200.gif

Agile Scrum Methodology

Scrum is a management and control process that cuts through complexity to focus on building software that meets business needs. With Scrum methodology, the “Product Owner” works closely with the team to identify and prioritize system functionality in form of a “Product Backlog”. The Product Backlog consists of features, bug fixes, non-functional requirements, etc. – whatever needs to be done in order to successfully deliver a working software system.

  • A “process framework” is a particular set of practices that must be followed in order for a process to be consistent with the framework. (For example, the Scrum process framework requires the use of development cycles called Sprints, the XP framework requires pair programming, and so forth.)
  • “Lightweight” means that the overhead of the process is kept as small as possible, to maximize the amount of productive time available for getting useful work done.

Lean and Kanban Software Development

Lean Software Development focuses the team on delivering Value to the customer, and on the efficiency of the “Value Stream,” the mechanisms that deliver that Value. The main principles of Lean methodology include:

  • Eliminating Waste
  • Amplifying Learning
  • Deciding as Late as Possible
  • Delivering as Fast as Possible
  • Empowering the Team
  • Building Integrity In
  • Seeing the Whole
image1
Original at: https://www.infoq.com/articles/hiranabe-lean-agile-kanban

Lean also concentrates on the efficiency of the use of team resources, trying to ensure that everyone is productive as much of the time as possible.

Kanban is based on 3 basic principles:

  • Visualize what you do today (workflow): seeing all the items in context of each other can be very informative
  • Limit the amount of work in progress (WIP): this helps balance the flow-based approach so teams don ‘t start and commit to too much work at once
  • Enhance flow:
    http://dsdmofagilemethodology.wdfiles.com/local--files/start/ass11.PNG
    http://agilemodeling.com/images/lifecycleFDD.gif
    Continue reading "Agile Methodology"