16
Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Embed Size (px)

Citation preview

Page 1: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Dr. Ann FruhlingMs. Beth Schmidt

Mr. Alvin Tarrell

Page 2: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Ann Fruhling, PhD ◦ Associate Professor ISQA, UNO, Peter Kiewit

Institute Beth Schmidt

◦ Director, Applications Development, Farm Credit Services of America

Alvin Tarrell, MS MIS◦ PhD student, UNO, Peter Kiewit Institute

2

“Traditional software development methods can take too long, cost too much, or lead to a solution to a requirement that is not in fact what the user really needed. Agile software methods . . . have the ability to evolve quickly to meet users’ real, as opposed to apparent, needs.”

Page 3: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

What Is Agile Software Development?Traditional Plan-Driven Software Development

vs. Agile Software DevelopmentAgile Software Development PhilosophiesOverview of Scrum Project Management

MethodsOverview of eXtreme Programming

Farm Credit Services of America

Organizational Readiness and Best PracticesIs Your Organization Ready for Agile Methods?Best Practices in Launching Agile Projects

3

Page 4: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

4

Page 5: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

1. Importance of individuals and interactions are stressed over processes and tools. People are the most important success factor in software development.

2. Creating working software is more important than comprehensive documentation. Software documentation is important, however information transfer among coders is more effective.

3. Customer collaboration is valued over contract negotiation. Successful software development requires frequent communication and collaboration.

4. Responding to changing circumstances is valued over following a rigid plan. Long-term project plans are not adaptable; short-term plans provide more flexibility in responding to change.

5

Widely used in the commercial sector, agile software development methods can streamline the systems development process and result in more reliable delivery of required functionality in less time.

Page 6: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Scrum is a project management method used by agile software developers.

◦Daily Scrum Meetings: emphasis on short daily meetings with the project team

◦Scrum Sprints: an increment release occurs within a time box known as a “sprint”

◦Time Boxing: the scrum methodology divides requirements into a set of discrete tasks assigned to groups.

Advantages of Using Agile Methods

◦ Improves design process◦ Automates usage tracking◦ Improves timely delivery◦ Embraces unclear requirements

6

Page 7: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Initial Planning & Design

Update Backlog & Reprioritize Tasks

Allocate & Assign Tasks in a Sprint

Scrum Daily Meeting

Daily Build

Should this Project Continue?

Wrap-Up / Closure

Product Delivery

Yes

The SCRUM ProcessSource: Rising and Janoff (2000)

Finished

Coding

Automated Testing

Sprint Release

Developer Select Task

Write Test Paln

Page 8: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

The XP process is based on short development cycles characterized by:

◦ Incremental planning, evolutionary design, and an ability to respond to changing business needs.

◦ Productivity, flexibility, teamwork, minimal documentation, and the limited use of technology outside of programming.

XP was originally designed for teams of up to 10 people.

The 12 Principles of XP

1. System metaphor

2. Incremental Planning

3. Small releases

4. Simple design

5. Test-first development

6. Refactoring

7. Paid programming

8. Collective ownership

9. Continuous integration

10. Sustainable pace

11. On-site customer

12. Uniform coding standards

8

Page 9: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Gather/Adjust Scenarios

fail

Write Test PlansAssign

Programming Pairs

Interim or Full Release

Acceptance Testing

Code

Final Delivery Documentation

Page 10: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

How did we get there? Pilot Project Engaged Cutter Consortium

• Presented recommendations to IT Steering Committee

• Training and follow-up consulting Reorganized IT – focusing on project

resources Implemented workspace changes Full adoption in 2005

Page 11: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Project Successes: Appraisal system Insurance system Credit process revolution – Connect4 Financial Analysis tools Online Dealer tools

Page 12: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

How’s It Going? More business input into the product Unit tests/TDD Old habits are hard to break Testing methodology and learning curve Inconsistency across teams…Agile

Champion Team

Page 13: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

The experiences of a range of agile project teams underlined the importance for leaders to examine four fundamental aspects of their organization before embarking on agile transformation:

1. The state of the current organizational culture: Is it ready to embrace change?

2. The current IT infrastructure: Is it ready to invest in access to up-to-date technology and tools?

3. Management and leadership commitment: Is it ready to endorse the move to agile methods?

4. The transitional project selection: Is it ready to begin on a small, achievable project?

13

Page 14: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

14

For Initial Startup

Select Agile team members with the specific attributes needed:◦ Can-do attitude◦ Experienced problem solvers◦ Mutual trust◦ Excellent communication and

interpersonal skills◦ Domain-knowledge expertise

For Project Implementation◦ Conduct initial and

incremental planning meetings

◦ Conduct a pilot agile project◦ Consider a la carte

introduction of XP practices

For Ongoing Development◦ Designate an agile champion

team◦ Schedule open time◦ Automate continuous testing◦ Employ a migration control expert◦ Exploit multiple forms of

communication◦ Provide access to the internet to

research solutions◦ Address classified environment

challenges

These best practices were derived from interviews of 11 IT project teams from a range of organizations that had 1 to 4 years of experience in using agile software development practices. These included 7 DOD teams, 3 industry teams, and one university team.

Page 15: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

Report Authors:Ann L. Fruhling, Associate Professor

Information Systems and Quantitative Analysis

Peter Kiewit Institute

University of Nebraska at Omaha

[email protected], (402) 554-4968

Alvin E. Tarrell, PhD Student, Information Technology

Peter Kiewit Institute

University of Nebraska at Omaha

[email protected], (402) 850-0581

15

For free copies of the report, visit the IBM Center for the Business of Government website: www.businessofgovernment.org

Page 16: Dr. Ann Fruhling Ms. Beth Schmidt Mr. Alvin Tarrell

16

Ann Fruhling, PhD ◦ [email protected]

Beth Schmidt◦ [email protected]

Alvin Tarrell, MS MIS◦ [email protected]