14

Click here to load reader

Do the right project the right way

Embed Size (px)

Citation preview

Page 1: Do the right project the right way

Do the right project the right way

Agile Project Management for Oracle Agile Project Management for Oracle ImplementationsImplementations

Applying eXtreme Techniques In a Plan-Driven Applying eXtreme Techniques In a Plan-Driven EnvironmentEnvironment

January 20, 2006PNF

Page 2: Do the right project the right way

2

AGENDA

• The Large Project / Fusion Dilemma• Competing Approaches – Agile, Plan-Driven• Examples of the Plan-Driven Approach• Examples of the Agile Approach• The Hybrid Premise• Defining Project Success• Quality Management• Other “Cross Over” Agile Tactics• Did I Mention People?• What More Information?

Page 3: Do the right project the right way

3

The Oracle Application / Fusion Dilemma

Oracle Application projects are complex, and require considerable integration and up-front planning to be successful. Fusion of technologies adds to the complexity to the process as technical architecture must be clear, defined and stable. These are characteristics that drive existing Oracle Methods to be traditional in nature (Plan-Driven) and not necessarily conduciveness to rapid change.

Yet, CHANGE is REALITY.

Page 4: Do the right project the right way

4

Competing Approaches

Plan Driven Methods – are generally considered the traditional way to develop software. Based on concepts drawn from the mainline engineering fields, these methods approach

development in a requirements/design/build paradigm with standard, well-definedprocesses that organizations improve continuously. The genesis of

plan-driven methods lies in the systems engineering and quality disciplines.

Agile Methods – are an outgrowth of rapid prototyping and rapid developmentexperiences as well as the resurgence of the philosophy that programming is a

craft rather than an industrial process. A truly agile method must include allof the following attributes; iterative cycles, incremental functionality, self-organizing

teams , and the principal of emergence - meaning processes, principles, and work structures are flexible and receptive to recognized change rather than pre-determined.

“ An extreme project is a complex, high-speed, self-correctingventure during which people interact in search of a desirable

result under conditions of high uncertainty, high change, and high stress”Doug DeCarlo, Extreme Project Management

Page 5: Do the right project the right way

5

Competing Approaches

Characteristics Agile Plan-Driven

Application

Primary Goal Rapid value: responding to change Predictability, stability, high assurance

Size Smaller teams and projects Larger teams and projects

Environment Turbulent: high change: project focused Stable: low change: project/organization focused

Management

Customer Relations Dedicated on-site customers: focused on prioritized increments.

As-needed customer interactions: focused on contract provisions

Planning and Control Internalized plans: qualitative control Documented plans, quantitative control

Communications Tacit interpersonal knowledge Explicit documented knowledge

Technical

Requirements Prioritized informal stories and test cases; undergoing unforeseeable change.

Formalized project, capability, interface, quality, foreseeable evolution requirements.

Development Simple design; short increments; refactoring assumed inexpensive

Extensive design; longer increments; refactoring assumed expensive.

Testing Executable test cases define requirements Document test plans and procedures

Personal

Customers Dedicated, collocated, high collaborative skills Collaborative, not always collocated.

Developers Continuous presents of critical mass of top performers. Risky to use “non-agile” resources

Needs critical mass of top performers during project definition, but can work with fewer later in the project.

Management Collaborative, flexible, facilitator, negotiator, empowering, people orientation.

Collaborative, planner mentality, scheduling skills, process orientation

Page 6: Do the right project the right way

6

Examples of Plan-Driven Methods

Examples of Plan-Driven Methods

Method Players Description

Capability Maturity Model Software (CMM-SW)

SEI, Air Force, Watts Humphrey, Mark Pulk A process improvement framework, SW-CMM grew out of the need for the Air Force to select qualified software system developers. Collects best practices into Key Practice Area that are organized into five levels of increasing process maturity

CMM – Integration (CMMI) SEI, DoD, NDIA, Roger Bate, Jack Ferguson, Mike Phillips

CMMI was established by DoD and the National Defense Industrial Association (NDIA) to integrate software and systems engineering CMM’s, and to improve or extend the CMM concept to other disciplines. CMMI is comprised of a suite of models and appraisal methods.

Software factories Hitachi, General Electric, others A long-term, integrated effort to improve software quality, software re-use, and software development productivity. Highly process driven, emphasizing early defect reduction.

Oracle AIM, CDM, PJM Oracle Corporation Oracle’s suite of proprietary methods comprised of the Application Implementation Method (AIM), the Custom Development Method (CDM), and the Project Management Method (PJM). Highly process and product specific (especially AIM), the Oracle Methods provide specific guidance for implementing and configuring Oracle products.

Page 7: Do the right project the right way

7

Examples of Agile Methods

Examples of Agile Methods

Method Players Description

eXtreme Programming (XP) Kent Beck, Ward Cunningham, Ron Jeffries, Daimler Chrysler, Microsoft (Daily Build)

Probably the most famous agile method. Refined by Daimler Chrysler Corp. Microsoft used a highly refined and effective variation of similar release strategies to successfully build Windows 2000 and Windows XP.

eXtreme Project Management Doug DeCarlo, Rob Thomsett A project management method that is based upon Agile concepts and the supporting XP principals of rapid development, flexibility, team empowerment and customer based quality management.

Adaptive Software Development (ASD) Jim Highsmith Provides a philosophical base and practical approach to iterative development.

Crystal Alistar Cockburn A family of methods that provide different levels of “ceremony” depending on the size of the team and the criticality of the project.

Scrum Ken Schwaber, Jeff Southerland, Mike Beedle More management technique, Scrum projects are divided into 30-day work intervals in which a specific number of requirements from a prioritized list are implemented. Daily 15-minute “Scrum meetings’ maintain coordination.

Page 8: Do the right project the right way

8

Hybrid Premise

In an Oracle environment and on a project by project basis it’s possible to incorporate components of both the Agile approach and the Plan-Driven approach and yield optimal results. Some examples follow:

• Defining project requirements • Quality management• Extreme Programming (cross-over) Tactics• People (a common finding)

Page 9: Do the right project the right way

9

Defining Project Success 7 Win Conditions

The Win Conditions / Success Sliders principal contends that a set of 7 variables can be used to define how success is measured on a

project. The Project Stakeholders decide the priority. Everything is negotiable: Radical Project Mgmt, Rob Thomsett.

(Note: this replaces the old “iron triangle” Schedule, Quality, Cost” view of success)

Off On

Stakeholder Satisfaction

Off On

Off On

Off On

Off On

Off On

Off On

Meeting of Objectives and Requirements

Meeting Budget

Meeting Deadlines

Added-Value Requirements (Whole PLC perspective)

Quality Requirements

Team Satisfaction (most contentious)

Page 10: Do the right project the right way

10

Quality Management

The IEEE and ISO 9000 define quality as “fitness of use” which mirrors Philip Crosby’s (1979) definition of quality - “conformance to requirements”. However the question remains, what is the required quality , and according to whose requirements and whose purpose? Agile theory suggests that quality on a project may be defined by an agreed upon combination of a set of attributes:

Attribute Description SH1 SH2 SH3

Conformity Are all data, processes and function there? Usability Is product easy to use and understood by the Client? Efficiency Are people, processes, hardware, etc. used efficiently? Maintainability Is product easy to maintain and support? Flexibility Is it easy to include or add new functionality? Reliability Does the product perform reliably and free from errors? Portability Can the product easily operate in different environments? Reusability Does the product require re-use for different purpose? Security/ audit Is the software secure, can it be audited? Job impact Does the product negatively impact existing workflows 3 Step Process:

1. Define requirements 2. Negotiate Product Quality Attributes with Stakeholders– document agreements 3. Determine and Review Stakeholders’ Ranking

Page 11: Do the right project the right way

11

Other :Cross-Over” Agile Tactics

1. Planning• User stories• Release planning• Project Velocity• Iterations• Stand-up meetings

• Designing• Simplicity• Spike solutions• No functionality added early• Re-factor

3. Coding• Customer always available• Agreed standards mandatory• Unit test first• Pair Programming• Integrate often• Collective cod ownership• Leave optimization to last• No overtime

4. Testing• All code must have unit tests• When a bug is found tests

are created• Acceptance tests are run

often and the score is published.

Page 12: Do the right project the right way

12

People

Did I say that “Talent Matters”?

“The top software developers are more productive than average software developers not by a factor of 10X or 100X, or even 1000X,

but 10,000x.”-Nathan Myhrvold, former Chief Scientist,

Microsoft(This is true regardless of which approach you take)

Page 13: Do the right project the right way

13

Want More Information?

Web Siteshttp://thomsett.com.au/http://www.extremeprogramming.org/index.htmlhttp://projectconnections.com/index.htmlhttp://www.pmi.org/www.standishgroup.com/

BooksRadical Project Management – Rob ThomsetteXtreme Project Management – Doug DeCarloBalancing Agility and Discipline – Barry Boehm,

Richard Turner

Page 14: Do the right project the right way

14

Thank You

Paul Frangoulis, CPA, PMPGlobal Program Office, [email protected]

770-329-0836