Teamwork Guide for CMPS115: Software Engineering

Table Of Contents:
What is a team?
Why have teams?
Common Phases of Team Development
Clarifying the Mission
Defining Goals and Milestones
Roles and Responsibilities
Defining Processes
References and Further Information

What is a team?

A team is a small group of people with complimentary skills who are committed to a common purpose and goals and approach for which they hold themselves and each other accountable. Let's explore each part of this definition to fully understand it.

Small Group Size

Teams usually work best with a small group of people. Smaller numbers make team administrative tasks easier, such as deciding where and when to meet. Meetings are generally shorter when fewer people need to speak. Small size also makes it easier to develop a common purpose with mutual goals and mutual accountability, which is so important for good teamwork. In addition, a small group of people avoids the "herd" mentality of large groups. In a large group people tend to go along with popular opinion rather than thinking for themselves. In general, the larger the group of people, the harder it is for the group to work well together.

Complimentary Skills

Complimentary skills are also important for a team. Necessary skills include: technical, problem-solving, decision-making and interpersonal skills. Technical skills are needed to provide the expertise to meet the goals of the team. The other skills are necessary for the team to work effectively together.


High performance teams must make a strong commitment to a common purpose and goals. A common, meaningful purpose sets the tone and aspirations of the team. The team's purpose must then be translated into specific, measurable goals, often called milestones. The milestones help to focus the team and make it more productive. Meeting milestones also gives the team small victories that are crucial to its commitment and morale. This combination of purpose and goals is important for the success of the team.

Common Approach

The members of a real team must also make a commitment to a common approach. What are the standards of behavior? How will the team go about its tasks? Who will perform which task? How will schedules be assigned and how are decisions made? These are the nuts-and-bolts issues that need to be agreed upon by all members of the team.


The members of the team must also share a sense of mutual accountability. In other words, they must hold themselves and each other answerable for meeting the team's goals. All of them must know what they are responsible for both individually and as a team.

Why have teams?

Teams are commonplace in industry today. Most companies organize their employees by function, such as engineering, finance and marketing. Even within a function such as engineering, people are usually organized into smaller groups by their specialties. Companies then use teams when people from different groups are needed to meet a goal, such as developing a new product. Some of the reasons for organizing a group of people as a team, instead of a committee or other group structure, are shown below.

Enhanced Cooperation and Coordination

With tasks that need cooperation and coordination, teams can perform better than individuals or functional groups. Cross-functional teams reduce the number of hand-offs and the amount of coordination needed between the functions: because more of the expertise to do the job belongs to the team, there is less need to pass work on to another group. This improved coordination can provide strategic advantages to companies such as reduced time to market.


Teamwork is more than getting along or being helpful. In a real team the members work toward a common goal. By working together, team members help each other to accomplish tasks. A team working together usually gets more results in less time than other types of organizations.

Organizational Flexibility

An organization can be more flexible by using teams. Management can put a team together to accomplish a specific task and then disbanded it. Or, a team can be kept together more or less permanently to address an ongoing need such as running an operation or developing a series of new products.

Organizational Parity

One of the advantages of cross-functional teams is that they serve as a way to prevent any one group from having higher status than another has. In a hierarchically managed organization, there is a tendency for one group to have more status than other groups. The groups with lower status often have their ideas and suggestions discounted. This tends to limit the number of creative ideas and problem-solving options to those produced by the high-status group. In contrast, teams allow each member to have an equal say in decisions and discussions. By considering all ideas and proposals equally, teams can produce more creative and optimum results.

Job Satisfaction

Another advantage of teams is that people generally derive more satisfaction from their jobs. When team members work together to overcome obstacles that stand in their way, they derive satisfaction not only from achieving the goal but also from the trust and confidence they build in other team members. The enjoyment is heightened even further because they can see that they are taking part in something larger than what they can accomplish by themselves.

Common Phases of Team Development

Teams often go through steps or phases during their development. There are many ways to describe these phases, but perhaps the best known are: forming, storming, norming and performing. These terms were developed by Bruce Tuckman in 1965 (1) to describe how the members of small groups tend to act as the team develops. Each phase is described below.


This phase occurs when a team first comes together, or when membership changes. Sometimes this phase is called the "honeymoon" period because everyone is so nice to each other. Team members are usually cautious and polite with each other, while exploring their new circumstances. A good way to expedite this phase is to have "icebreaker" activities that allow team members to understand each member's capabilities and motivations.


During this phase, team members begin challenging and disagreeing with one another. They often jockey for position and use their expertise as weapons. Teams can get stuck in this phase and then fail. They key to moving quickly through this phase is explicitly defining the roles and responsibilities of each team member.


In this phase, team members start offering ideas and suggestions, sometimes using humor to get their points across. They reveal their preferences for performing tasks. Standards of behavior and team processes are defined. By defining team processes, one can move on to performing.


This phase is the ideal phase for a team. They work hard and play hard together, using humor to help ease tensions. Team members anticipate problems, changes in direction and each other's moves. The focus of the team is on accomplishing their goals and not on blaming each other.

Optimal Team-Development Steps

While these team-development steps are well known, there is no need for a team to have a storming phase. Even though storming is a common part of team development, it is not a desirable or productive time. Your team can bypass the storming phase by clarifying the team's mission; defining goals and milestones; establishing roles and responsibilities; and creating processes for getting the work done. These steps are described in the following sections.

Clarifying the Mission

The mission is the purpose of the team and the reason it exists. In this course, the team's mission is to produce a product following the steps outlined by Dr. Werner. Understanding the mission includes understanding the product the team will produce. The team will make a detailed description of the product for the mission using the requirements specification document due at the first project milestone.

Defining Goals and Milestones

A goal is the end toward which effort is directed and milestones are significant points in development (2). Project milestones help to define a project in greater detail and are a useful way to track team progress. In this course, the team's goal is to produce the product that they specify in the RSD. Project milestones are explained in the the Group Project Milestones pages available from the CMPS115 class web page.

Establishing Roles and Responsibilities

Defining Roles and Responsibilities

A role is a function or part performed for a position in an organization. Roles are present whether we are aware of them or not, and it is better to choose and assign the roles on a team rather than just let them happen. Each role has a set of responsibilities associated with the role. Responsibility means being answerable for performing the duties and tasks.

The roles of team members, with the associated responsibilities for those roles, are dependent upon the project and the expertise of the team member. Teams often have members from different organizations and the team member's role is to contribute that organization's expertise to the project.

For this course, define the roles of each team member according to their interests and specialties. For instance, one person may be responsible for the graphical-user interface, another for a database, another for a group of algorithms, and so forth.

As you can see, the division of the roles depends on the project, the skills of each team member, and an understanding of how to fairly divide the work of developing the product. Thus it is a good idea to discuss the roles of each team member after selecting the product and while deciding on the major sub-sections of the design. Then each team member will have the responsibility for the design and implementation of a sub-section of the product.

Other Team Member Responsibilities

There are some responsibilities that are common to all team members. These responsibilities exist because the team needs to work together to accomplish its goals. These responsibilities are based on the need for cooperation. As a memory aid, I have organized the responsibilities for good cooperation under the headings of follow through, assertiveness, communication, timeliness and spirit. Together the first letters of these headings spell FACTS, F-A-C-T-S. I call them the FACTS of teamwork. Team members have a responsibility to enhance cooperation on their team using these FACTS.

Follow through

When team members cooperate, they follow through on commitments. With this follow-through, the member shows a keen awareness that as part of a team, everything they do affects someone else. They also know that if they forget to do something, they become a weak link; an obstacle in the work process. Lack of follow-through impedes the performance of others and reduces trust. It is hard to trust people who do not do what they say they will do.

Other team members may interpret lack of follow-through as a lack of respect for others. This seems obvious since it is tiresome to "remind" adult colleagues that something is due, and annoying to sit through meetings where people offer excuses about why things did not get done. When individuals don't do what they say, it is demoralizing and leads to a rather contagious lack of effort. On the other hand, when team members keep commitments, they inspire their colleagues to do the same.


A team member has a responsibility to speak frankly and openly when there is a difference of opinion. A team is more likely to succeed when members are willing to risk conflict with other team members and stand their ground when required. This helps the team to avoid making bad decisions and then implementing them because everyone went along just to be part of the team.

At the same time, a team member must not become so dedicated to their position that they ignore the team's purpose and goals. Members should show flexibility, an ability to meet halfway, and a willingness to work for the common good. Team members should negotiate their differences so that both parties can win. In highly cooperative teams, there are few turf wars, little competitiveness, and an ability to forgive and forget.


For a team to reach its full potential, team members must be willing to say what they think, ask for help, share new or unpopular ideas, give the status of their activities, and risk admitting mistakes. This can only happen in a setting where team members show concern for one another, trust one another, and look for answers together. When communication is friendly, open and positive, teams are more productive and team members feel more satisfied.

Friendly interaction happens when people know each other, respect each other, and show warmth toward one another. Such behaviors provide an atmosphere for risk taking and cooperation. When team members ask each other about their lives outside of work, share jokes, and on the whole make each other feel welcome, they are creating conditions for group bonding.

Open, honest communication is key to a team's success. Nothing reduces trust faster than when members say one thing within the group and something else outside of the group. When people are confident enough to say what they need to say directly to the right people, and to refrain from talking behind each other's back, they enhance trust.


Attention to timeliness, which is doing things at the right time, is also a responsibility of team members. When members are cooperating well, they respect each other's time and schedules. People show up on time for appointments; meetings begin and end on time. They return emails as promised. There is a sense of urgency about team tasks, reflecting a willingness to make the team's actions a top priority.

Members share important information promptly and succinctly. People ask each other for comments on their plans and ideas often, but not so often that it blocks the workflow. Team members tend to cluster their questions and comments so that they share them all at once instead of repeatedly interrupting each other's workday.

People know each other's calendars and schedule important group activities so that everyone can attend. You might also hear people thanking each other for their time and asking, "Is this a good time?" It is hard not to cooperate with those who respect your time.


Being on a team is a bit like being part of a family. You can't have your way all of the time. To make the team perform, all members must have a tolerant spirit.

When teamwork is high in a group, you can sense the positive attitude. Members value individual differences, speak kindly about individual talents, offer compliments on individual contributions -- but also form a team identity. Members develop mutual trust, talk openly, and willingly welcome new members as needed.

When there is good team spirit, members make decisions by consensus, not by voting. Voting divides a team into winners and losers, whereas consensus requires each team member to cooperate. Team members must listen to each point of view, modify his or her own stand to fit the will of the group, and support the decision that seems best for the team.

When team spirit is high, parties are frequent and often spontaneous. Members may recognize special occasions such as birthdays or weddings, individual successes such as solving a vexing problem, or team successes such as reaching a project milestone. Recognition on such occasions may be as informal as someone bringing snacks or pizza to meetings, or as formal as presenting framed certificates. The congratulations are always sincere, however, and the message is very clear: "We celebrate each other's milestones and successes because we are all on the same team. A win for one is a win for all." Such camaraderie is a good sign that teamwork within the group is high.

The Team Leader

Why does a team need a leader? Someone needs to look at the big picture: the project as a whole. This allows the other team members to focus on their parts of the project knowing that someone is thinking about how everything fits together.

Teams on large projects generally have full-time leaders. However for this course, every student must go through all the steps of the development process themselves. Therefore, a full-time team leader is not possible. The team may choose one person as the team leader, and give them a smaller workload as compensation. Optionally, the team may decide to rotate leadership during the project and allow everyone to gain some experience in the team-leader's role. If your team decides to rotate leadership, then the project milestones are a good place to change leadership. The current leader has the responsibility to guide the team in reaching their next milestone.

Team Leader's Role

Team leaders are not like "traditional" bosses. The team does not work for the team leader; the team leader works for the team. The role of the team leader is to lead the people and manage the resources of the team to meet the team's goals. Leadership is the ability to get people to do what needs to be done in such a way that they like it.

Team leader skills can be learned over time. The most important thing that the team leader cans do to ensure their success in the role is to believe in the team's purpose and understand the capabilities of the team's members. The stronger this belief and understanding, the more easily a team leader can overcome a lack of skills or training.

No matter how much you know or how skilled you are, it's an obvious fact that people will respond better to your leadership if they like you than if they don't like you. The ability to make people like you is one of the most valuable talents you can possibly develop. It makes all your other talents more productive.

So what makes people like you? Good humor, kindness and. appreciation of people's interests and feelings. Understanding that they are just as important to themselves as you are to yourself. Fairness in considering their interests as well as your own. Complete lack of snobbishness toward those of lesser authority.

Team Leader's Responsibilities

The main responsibilities of the team leader are as follows:

Keep the purpose, goals and process meaningful

A team leader should help team members clarify and commit to their purpose, goals and processes. At the same time, it's important that the team leader's suggestions not come across as mandates. Sometimes the best approach is to sit quietly and let the other team members solve the problems.

Monitor the performance of the team

The team leader must monitor actual performance of the team in meeting its goals. When necessary, the team leader must force the team to make decisions and change strategies to ensure their success.

Build commitment and confidence in the team members

Intimidation might work in a hierarchy, but it will kill enthusiasm in a team. Team leaders need to focus on positive reinforcement. When a negative event must occur to ensure the success of a team goal, such as moving tasks from an underperforming member to someone better suited, the leader must approach the situation with tact and understanding to prevent demoralization of team members.

Manage relations with outsiders

The leader must have the courage to stand up for the team and to take action to remove obstacles. This includes obtaining resources for the team. The leader must be able to communicate the team's goals and act on behalf of the team to anyone who can help the team or who might get in the way.

Create opportunities for team members

Good leaders don't keep all the good jobs for themselves, nor do they take all the credit. Decisions should be made to help the team's performance, no the leader's ego.

Do real work

Every team member must do roughly equal amounts of work and that includes the team leader. Often times the leader must set an example by volunteering to do jobs that none else wants to do.

Creating Processes

For a team to work efficiently, it needs a standard way of operating. By defining processes, team members know how to accomplish team tasks and they spend more time working on problems that contribute to the goal of producing the team's product. Some of the processes that a team needs to agree upon are as follows:

Standards of behavior: Set some clear rules for behavior. These rules should promote focus, openness, trust and commitment. Following these rules can prevent conflicts from other members from getting in the way of team tasks. They can also help people keep focused on the real work of the team, which is finding solutions to problems.

Team communication: How will you keep each other informed of progress? When does the team need to meet and when are other communication methods, like email, appropriate? These questions and more need answering by the team.

Making decisions: What decisions can individuals make and what decisions must the team make? Will the team decide actions by voting or consensus? My recommendation is to make decisions by consensus, not by voting. Voting divides a team into winners and losers, whereas consensus requires each team member to cooperate. However, the team needs to consciously decide how they will make decisions.

These are basic processes common to most teams. Other processes depend upon the team and the project. Develop these processes as the need arises to improve the efficiency of the team.

References and Further Information

(1) Tuckman, Bruce W. Developmental Sequence in Small Groups. Psychological Bulletin. 1965. 63 (6): p. 384-399

(2) Merriam-Webster Online.

Fox, C. Project Organization & Teamwork.

Scholtes, Peter R. The TEAM Handbook. Joiner Associates Inc. 1988

Katzenbach, Jon R. and Smith, Douglas K. The Wisdom of Teams: Creating the High-Performance Organization. 1993

Copyright 2000 by Edward L. Parrish
This page maintained by Ed Parrish. Email regarding this site.