The software industry has recognized the importance of teamwork as a driver for good projects results. However teamwork is not an easy goal to reach, because there is a large list of variables affecting the process. Each project probably will require a particular recipe to promote and perform real teamwork. Therefore a one-size fits-all approach does not work to promote teamwork in the software development scenarios. This article presents an influence model that helps the development teams to find a strategy that allow them to carry out teamwork. This model is the result of an analysis conducted by the authors on 27 software projects performed in a controlled setting in an academic environment.