Agile Frameworks
Agile Frameworks
Agile Frameworks
GROUP I
Group members
1. MUGABE ISAAC2020/BIT/069/PS
8. KAYESU SHAROT
9. TWINOMUJUNI AMOS
Introduction
Agile Modelling
1. Extreme programming
2. Scrum
3. Kanban
Feasibility study
In this phase, the problem is defined and technical feasibility of the desired
application is verified.
Business study
In this phase the overall business study of the desired system is done. The
business requirements are specified at a high level and the information
requirements out of the system are identified.
Functional model iteration
The main focus in this phase is on building a prototype iteratively and getting it
reviewed from the users to bring out the requirements of the desired system.
Design and build iteration
This phase stresses upon ensuring that the prototypes are satisfactory and
properly engineered to suit their operational environment.
Implementation
This is the last and final development stage in this methodology. In this phase, the
users are trained and the system is actually put into the operational environment.
3. Scrum
In scrum, a list of all the deliverables for the project named backlog is identified
and continuously updated. The project which is divided into small units called
sprints usually last 2-4 weeks generally. Deliverable which is visible and usable
increment is decided for each sprint. Active communication in the team and
follow up using the backlog help and ease the development.
The word Kanban is of Japanese origin and its means is linked to the time concept,
“just in time”. In practice, the Kanban method exists in a board or table (Kanban
board), divided into columns that shows every flow of the software production. As
the development evolves, the information contained in the table changes and
when a new task comes into play, a new “card” is created.
5. Lean Development
Eliminate waste i.e. anything that does not add value to the customer.
Amplify learning by doing and testing things rather than documenting them
and then implementing.
Decide as early as possible thus keeping all possible options open as long as
possible in the life cycle.
Deliver as fast as possible. It works on basis of the fact that sooner the end
product is delivered, sooner is the feedback received and sooner it is
implemented in the next iteration.
Empower the team by keeping people motivated.
Build integrity in by keeping the code simple and avoiding repetitions.
Optimise the whole, the development sequence has to be perfected
enough to be able to delete errors in the code in order to create a flow of
true value.
6. Extreme programming
Extreme programming works on the principle of simplicity, communication,
feedback, courage and respect. It prioritizes customer satisfaction over everything
else. The application is designed such that it is adaptive to changing requirement
and is simple.
Lots of client interaction and communication in team are key factors which help in
the development of adaptive applications. This methodology offers trust to the
developers by motivating them to accept changes in the customer’s
requirements, even if they arrive in a later stage of the development life cycle.
This is the initial phase of the project where it is necessary to establish the main
objectives and goals of the project by understanding the limitations with which
the project operates.
Collaborate
Learn
The last stage ends with a series of collaboration cycles, the job is to capture
what has been learned both positive and negative. This stage is critical for the
effectiveness of the project.
The three phases above reflect the dynamic and fluid nature of Adaptive Software
Development which was designed to beyond a mere change in the project
lifecycle to a deeper change in management style. The Adaptive Software
Development phases are non-linear and they overlap:
So if you feel like you are performing all three phases of Adaptive Software
Development at the same time, you probably are!
The crystal framework logic is to start with small tasks and the build them up into
larger ones. The overhead activities are reduced and efforts are diverted to work
building. It’s a collaborative process involving tracking and iterations. In crystal
teams are categorized by colour according to the number of people in the project;