This chapter is about software development teams : how they are structured, how they encourage communication, their roles, and some of their problems. As mentioned previously, software engineers spend most of their working life as members of a team, so it is important that they know why they are organized in a certain way, what the nature of their role is, and how to fit in well with other team members . Software engineers are likely to have others from different nationalities and cultures on their team, and they should know how to act toward them as well.
As it turns out, cooperation is an essential attribute of the process that guides the development of software. At the same time, it may raise some conflicts between one s wish to excel and one s need to contribute to the teamwork. Thus, it is important that software engineers be familiar with dilemmas that this need for cooperation may raise and with different approaches to cope with such dilemmas.