Introduction Seminar to Agile Development
One of the key services that TenPearls offers is to introduce organizations to agile software development. This Introductory workshop discusses the history, motivation, and justification for the current Agile movement. From this workshop, the organization will learn why Agile Development is important to the company, and how it can help your software development efforts. This workshop begins at a high level suitable for beginners and executives, and goes to the next level of detail describing the principles of agile management and development. This workshop is designed to simply introduce its audience to the concept of Agile software development and its basic principles. Detailed topics in Agile software development are part of the list of training services offered by TenPearls. To better address the needs of our audience and customers, workshops are unique to each team and context, but common topics often addressed in this workshop, include:
- Where did Agile Software Development come from
- The Values and Principles of Agile Software Development
- Agile Software Development : A Paradigm Shift
- How to Plan for an Agile Project
- Agile Methods and Practices
- Moving Towards Agility
Designing Roadmap to Agility
It is very beneficial to design a "Roadmap to Agility" that is suitable and relevant to the organization adopting agile. The goal of the Roadmap to Agility is to identify which practices will be adopted in which sequence based on specific values that we want to introduce into the organization. TenPearls uses the specially designed agile measurement index, the Sidky Agile Measurement Index (SAMI) (see below figure) to guide the adoption effort and to ensure that the adoption plan is based on the true agile values-as defined in the original Agile Manifesto.
Agility Assessments
Measurement and assessment are substantial components of many process improvement efforts. Moreover, each software development project is unique and surrounded by unique characteristics. In light of this, TenPearls offers its clients state of the art pre-adoption and post-adoption Agility assessments. During Pre-adoption assessments TenPearls experts use a combination of project-based assessments and organizational-level assessments to determine the most suitable set of practices for the organization. For post-adoption assessments, TenPearls uses a specially engineered measurement index to measure the degree to which the organization has embraced the essential values of agility.
Pre-Adoption Agility Assessments
At TenPearls Consulting we believe that extensive pre-adoption assessments are crucial as they help identify the condition of the organizational characteristics needed for the successful adoption of the agile practices. By identifying any weak organizational characteristics before adopting the agile practices the organization is able to mitigate the risks of the adoption process before entering any chaos caused by change (see opposite Figure). TenPearls’s unique framework for agile adoption uses over 300 different assessment indicators.
In order to conduct a proper organizational assessment of an organization’s agile potential the following tasks need to be completed:
1. Detailed explanation of IT department:
To conduct an organizational assessment, the assessor must be familiar with the structure of the IT department as well as the current development process, personnel, and tools. This task is crucial for an accurate assessment and is usually completed with senior management.
2. Preparation for the Assessment:
After understanding the structure of the IT department and the projects, people, and tools within, the next is to plan the assessment process. The goal of this task is to select the right representative sample from the organization to assess. This is important for a successful assessment because we are not assessing individual projects and teams, and assessing the entire organization is not a practical or feasible option. If the agile adoption effort is restricted to a pilot project then assessing the pilot project’s team and surrounding organizational perimeter is sufficient.
3. Conducting the assessment:
The core task of the agility assessment is to conduct a series of interviews with developers, middle managers and executives (and customers if possible) to determine the presence or absence of certain organizational characteristics needed for the adoption of agile practices. The assessment may take the form of paper survey or an electronic (web-based) survey depending on what the assessor believes is more suitable.
4. Preparation of assessment results:
During this task, the assessment indicators are aggregated using special formulas and weights. The results are tabulated and a report is generated. The report will highlight the degree to which the organization is ready to adopt different agile practices. Moreover, the report will highlight the strengths and weakness of the different organizational characteristics needed for the adoption of agile practices. TenPearls Consulting uses more than 300 indicators to assess over 40 different agile practices. The table below is a sample of the assessment results for only 6 different agile practices.
Post-Adoption Agility Assessments
During post-adoption assessments the organization is assessed against the five agile values identified by the Sidky Agile Measurement Index (SAMI). To determine the degree the organization has achieved each of the agile values, the assessor uses numerous surveys that comprise of a number of different adherence indicators. From these adherence indicators, TenPearls’ experts identify which practices the organization has successfully adopted and hence which values the organization has realized. The diagram opposite shows a Radar-graph illustrating the results of a post-adoption assessment.
Interactive Agile Education & Training
The adoption of agile software methodologies requires training and education. TenPearls offers a wide range of training courses and educational workshops. Some of the courses offered by TenPearls are:
- Fundamentals of Agile Development
- Communication and Collaboration
- Agile Planning (Release & Iteration)
- Mapping Agile and CMMI
- Agile Project Management
- Evolutionary Requirements/Design
- Retrospectivest
- Refactoring
- Continuous Integration
- Pair Programming
- Unit Testing & Automation
- Pair Programming
Agile Coaching
After teams learn "what they need to do" through the interactive training and education sessions it is highly recommended for them to learn “how to practically do it” using a couple of coaching sessions. Coaches work with the project community to
- Work with management to establish cross-functional teams
- Work with managers to "manage" self-organizing teams
- Help set-up a team room
- Help set-up a story board
- Set-up information radiators
- Charter the project
- Prepare a product backlog
- Lead and facilitate release planning sessions
- Practically teach the team how to estimate their backlog
- Lead and facilitate iteration planning sessions
- Set up tracking tools (burn-up and burn-down charts)
- Work with the developers during the beginning of the iteration
- Facilitate an iteration retrospective
- Mapping the new agile practices to current organizational process

