Agile Modeling

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

AGILE MODELING

DOCUMENT ON OPTING EXTREME PROGRAMMING (XP) AND SCRUM AGILE MODELS IN


DEVELOPING FSDMS APPLICATION

WHAT IS AGILITY?
Agility has become today’s buzzword when describing modern software process.
Everyone is agile. An agile team is a nimble team able to appropriately respond to
the changes. Change is what software development is very much about. Changes
are in every corner of software development, might be with team members , new
technology, changes of all kind that impacted on the product that we’ve built
towards the final release. Support to the changes should be built-in everything
that we do in software. An agile team recognizes that software is developed by
individuals working in teams and skills of these people, their ability to collaborate
are core for the success of the project.

WHAT IS AN AGILE PROCESS?


Any agile process is characterized in a manner that addresses a number of key
assumptions.
1. It’s difficult to predict in advance which software requirements will persist
and which will change. It’s equally difficult to predict the change in
requirements of customers.
2. For many types of software, design and construction are interleaved. Both
should be performed in parallel so that the design models are proven as
they are created. It is difficult how much design is necessary before the
construction.
3. Analysis, design, construction and testing are not predictable.
How to work on the project that runs on unpredictability. The answer is to
increase the adaptability of project. This can be achieved by the incremental
software development.

Zenopsys Technologies.
AGILE PRINCIPLES :
1. Highest priority is to satisfy the customers to early and continuous
deliverables.
2. Accepting changes and validate them against the software
development and deliver.
3. Deliver working software at least once in a 2 weeks.
4. Business people and developers work together daily throughout the
project.
5. Motivate developers. Proper environment and support should be
provided.
6. Information exchange with developer team is mandatory.
7. Working software is primary measure of work in progress.
8. Agile process promote sustainable development. The developers and
users should be able to maintain the constant phase of development.
9. Maximum Adaptability – Maximum Agility
10.Project Simplicity.
11. Architectures, requirements and self-organizing teams.
12.Scrum reports on regular intervals.

HUMAN FACTORS :
 Knowledge on platform as well as requirements.
 Common focus - Team should be goal oriented, even each member has
different tasks to be done.
 Collaboration - Team should collaborate with one another and also with
stakeholders
 Decision-making ability – Team should be given autonomy to control or the
change the course of the project depending on requirements.
 Fuzzy problem-solving ability – Agile team continuously deals with the
ambiguity due to the continuous change in requirements. Team should
realize that problem they solve today may not be the problem for
tomorrow. If problem repeats use DESIGN PATTERNS to solve the problem
and reuse that solution if problem occurs again.
 Self-organizing – Agile team organizes what work to be done, Adaptation
of software process depending on environment, Team’s work schedule to
achieve delivery of software increment.

Zenopsys Technologies.
EXTREME PROGRAMMING (XP) AS AGILE MODEL :

Final Relaese : Requirement Analysis


Development
velocity
computed
PLANNING
Developing
Prototypes
Unit Test

Acceptance Testing

TEST DESIGN

Pair programming

Continuous
Integration
REFACTORING CODING

Refactoring : Process of changing software system such a way that it doesn’t affect external behaviour of
code yet improves the internal structure. It minimizes the chances of introducing new bugs. In essence ,
when you refactor you are improving the design of the code after it has been written.

Pair Programming : XP recommends that 2 people work together on single requirement. One will be
working on design and coding, other will be on integrating and testing the code. This provides the real
time quality assurance

Zenopsys Technologies.
SCRUM AS AGILE MODEL :

Principles consistent with agile manifesto and used to guide development


activities that process incorporates following framework activities.
1. Requirements
2. Analysis
3. Design
4. Evolution
5. Delivery

 The tasks are called as sprints. The functionalities should be delivered at


the end of each sprint.
 Before we start each task, The task is considered as a backlog(most of the
requirements from customer).

Scrum meetings : These meetings can give the outlook of the current
process/software development.

Questions can be asked like :

1. What did you do since last scrum meeting?


2. Did you have any obstacles?
3. What you will do before next meeting?

CONCLUSION :
Since we are moving into deeper development process, I’ve observed on some of
our projects like VSG, Reinvent. We encountered lots of changes which aren’t
documented. That would become tough to track in long run. So, I took liberty to
propose an Agile models where we can start development in more efficient way
and also, most of the time manager prepares the higher level work flows. That
leads a developer to ambiguity in real time development.

Zenopsys Technologies.

You might also like