Guidelines:
|
Purpose
|
Guidelines: |
Conducting an assessment workshop means gathering all stakeholders for an intensive, focused session. Typically, an assessment workshop takes half a day or a full day to conduct.
The process engineer prepares a presentation of the approach that will be taken to implement a process. Such a presentation should take 1-3 hours, depending on the audience's background. See Concepts: Implementing a Process in an Project for details on the approach. Also see Activity: Develop Development Case.
Ask a representative of the development organization to prepare a presentation on how the development organization currently works. The presentation should take no more than an hour and covers areas, such as organizational structure, number of people, people's competence and experience, business goals and objectives, and brief descriptions of typical projects. The presentation should also discuss the underlying reasons behind the organization's decision to change process and tools, such as problems, changing business context, and so on.
Note: An assessment workshop is just one of several ways to gather information about an organization. It needs to be complemented by other methods for collecting information.
A process engineer should act as a facilitator. Normally, it's good if the facilitator is not part of the development organization. It's easier, perhaps even essential, for an external person to give a fresh perspective and to ask the necessary provocative questions that elicit underlying problems. Because changing the software development process is often politically charged, it's essential that the facilitator is respected by all parties, and is viewed as fair and impartial.
The number of participants should be between 3 and 8, including the facilitator. The assessment workshop includes representatives from several different areas of the organization to give as accurate a picture of the current state as possible. Invite a good mix of people to cover as many areas as possible, such as:
Changes in the software engineering process will affect many people in the software development organization, therefore, many people will want to be involved. There are some advantages to this because participation often breeds support. The tendency to include more people in the workshop, however, should be strongly resisted. Increasing the number of people makes the workshop harder, or impossible, to manage. As an alternative, consider having each team elect a representative to the workshop or conduct several workshops, one for each team. The purpose of the workshop is to gather information, not to make decisions. As long as people feel their concerns as adequately represented, they tend to be supportive of the process.
The facilitator needs to sell the workshop to those who should attend, thereby establishing the group who will participate in the workshop. Give the attendees preparatory material to review before they arrive, especially the process engineer who should be as well prepared as possible. The preparatory material should include an agenda for the workshop that communicates the workshop's scope and goals which need to be reviewed by each participant. Doing this will identify any possible issues or hidden agendas before the workshop begins.
The facilitator or process engineer needs access to materials such as descriptions of the development organization and descriptions of the existing process.
The facilitator conducts the workshop, which includes:
A typical agenda for an assessment workshop would include:
An assessment workshop is about communication between people. To make it easier to understand each other, you need a common understanding of the software-development process. If the development organization knows the Rational Unified Process (RUP), you could use the disciplines as a roadmap to cover all the different areas of the development process. However, if the organization already uses another process and the participants do not have a good knowledge of the RUP, we recommend that the process engineer uses the customer's development process as a framework during the assessment workshop and during interviews. This makes it much easier for the participants to express themselves and you don't want to spend time during the workshop trying to teach the participants the RUP.
An example of another development process model is the ISO/IEC 12207 standard, which is referred to as activities and is organized in the following sections:
After the assessment workshop, the facilitator, along with fellow process engineers, needs to spend more time synthesizing the findings and condensing the information into a presentable format. The conclusions should be the product of the workshop participants, rather than those of the facilitator.
The organization itself must express ownership of the conclusions if any progress is to be made. Collectively, they need to agree on the problems that need to be solved, and express them in a non-judgmental way. The purpose of the assessment is to identify areas that require improvement, not to criticize or accuse individuals.
Rational Unified Process |