Page 197 -
P. 197
164 part 2 • inforMation requireMents analysis
Figure 6.5 Agile Core Practices
The core practices are interrelated
with agile modeling’s resources, 40-Hour Work Week
Short Release
activities, and values.
Onsite Customer
Pair Programming
Testing
Cost Coding
Time Designing Listening
Quality
Scope
Agile Activities
Agile Resources
Simplicity
Communication
Feedback
Courage
Agile Values
process. Pair programming saves time, cuts down on sloppy thinking, sparks creativity,
and is a fun way to program.
How core agile practices interrelate with and support agile development activities, resources,
and values is shown in Figure 6.5.
The Agile Development Process
Modeling is a keyword in agile methods. Agile modeling seizes on the opportunity to create
models. These can be logical models such as drawings of systems, or mock-ups such as the
prototypes described earlier in this chapter. A typical agile modeling process would go some-
thing like this:
1. Listen for user stories from the customer.
2. Draw a logical workflow model to gain an appreciation for the business decisions repre-
sented in the user story.
3. Create new user stories based on the logical model.
4. Develop some display prototypes. In doing so, show the customers what sort of interface
they will have.
5. Using feedback from the prototypes and the logical workflow diagrams, develop the sys-
tem until you create a physical data model.
Agile is the other keyword in agile modeling. Agile implies maneuverability. Today’s sys-
tems, especially those that are Web based, pose twin demands: getting software released as soon
as possible and continually improving the software to add new features. A systems analyst needs
to have the ability and methods to create dynamic, context-sensitive, scalable, and evolutionary
applications. Agile modeling is therefore a change-embracing method.