Agile Modeling
Set of concepts, principles and techniques (practices) that enables you to quickly and easily perform design and documentation for software development projects. Does not include detailed instructions on designing, contains descriptions of how to build diagrams in UML. The main goal – effective modeling and documentation; but does not include programming and testing, the question does not include project management, deployment and maintenance of the system. However, involves checking the model code.
DSDM
Based on the concept of rapid application development (Rapid Application Development, RAD). It is an iterative and incremental approach that emphasizes continuous engagement in the user / consumer.
Extreme programming (XP)
The idea is to use useful traditional development methods in new, extreme way. For example in code testing one developer is checking written code from another developer. Also is very common to use pair programming, where one coder is writing a code and he partner is checking the written code.
Feature driven development (FDD)
Functionally-oriented development. FDD concepts are very close to RUP, a significant difference – an additional restriction: “Every function should allow the implementation of no more than two weeks.” If the task small enough, it can be considered a feature. If large, then it should be divided into several relatively independent functions.
OpenUP
This method is iterative-incremental software development. Positioned as easy and flexible version of RUP. OpenUP divides the lifetime of the project into four phases: the initial phase, specification phase, construction and transmission. The life cycle of the project shall provide interested persons and members of collective points of reference and decision-making throughout the project. This effectively control the situation and take a decision on results. Project plan defines the lifecycle and the end result is the ultimate application.
Scrum
Sets rules for management development process and allows to use existing coding practices, adjusting requirements or making tactical changes. Using this methodology makes it possible to detect and eliminate the deviation from the desired result in the earlier stages of the software.
Lean software development
Lean software development is using methodology from Lean Manufacturing. Main principles of this methodology are: maximal rapid product delivery to the customer with very short iterations, team motivation and focus on learning with short development cycles, early testing and customer feedback.
Kanban software development
Kanban realize principle “just in time” und make possible wage the work properly amount all developers. With this method the whole development process is clear for all team members. Kanban is a visual development model, which shows what needs to be produce, when and how much.
Scrumban
The Scrumban is a management framework and hybrid of Scrum and Kanban. Developers are working with user stories and trying to keep iterations as short as possible. The are no special roles, as for example in Scum, the team members keeps the role they already have.
Here are also some other Agile software development Methodologies: Agile Unified Process (AUP), Agile Data Method, Essential Unified Process (EssUP), Getting Real