Understand points in agile software development to learn more about how these methodologies can boost your applications and make the process more efficient.
Basing on this I want to introduce the origin of Agile introducing the Manifesto.
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
The Agile Manifesto and Twelve Principles
Supplementing the Manifesto, the Twelve Principles further describe what it means to be Agile. It’s always good to periodically come back to them and reflect on what they mean to us today Read More
The origins of Lean
In the late 1940s, a small company named Toyota set out to manufacture
cars for Japan, but it had a problem.Since people did not have much money,
cars had to be cheap. Mass production was the cheapest way to make
cars, but mass production meant making thousands of the same kind of car,
and the Japanese market was simply not large enough to need all those cars.
So the question was, how could Toyota make cars in small quantities but
keep them as inexpensive as mass-produced cars? Read More
What is Kanban?
The Kanban method, as formulated by David J. Anderson, is an approach
to incremental, evolutionary process and systems change for organizations.
Furthermore, it is a way for teams and organizations to visualize their work,
identify and eliminate bottlenecks and achieve dramatic operational
improvements in terms of throughput and quality! Read More
What is Scrum?
Scrum is a way for teams to work together to develop a product.
Product development, using Scrum, occurs in small pieces, with
each piece building upon previously created pieces.
Building products one small piece at a time encourages creativity
and enables teams to respond to feedback and change, to build
exactly and only what is needed. Read More
Proponents of pair programming (“pairing”) claim that it boosts long-term productivity
by substantially improving the quality of the code. But it is fair to say that for a
number of reasons, pairing is by far the most controversial and least universally-embraced
of the agile programmer practices. Read More
Test Driven Development (TDD)
Test-driven development (TDD), also called test-driven design, is a method
of software development in which unit testing is repeatedly done on source
code. The concept is to “get something working now and perfect it later.” Read More
Behaviour Driven Development (BDD)
BDD (Behaviour Driven Development) is a synthesis and refinement
of practices stemming from TDD (Test Driven Development) and ATDD
(Acceptance Test Driven Development). Read More
Refactoring is the process of changing a software system in such a way
that it does not alter the external behavior of the code yet improves its
internal structure.” — MartinFowler in Refactoring Improving The Design Of Existing Code Read More
eXtreme Programming (XP) is a software development process as well as
A (software development) process defines who is doing what when and how.
This means, it provides principles,techniques and practices for the efficient,
predictable and repeatable production of software systems. Therefore, the process
serves as a template for creating projects. Read More