It is a very common misconception that the technology space is all about ones and zeros and machines. This is not the case, when working in the technology space, projects are much more than just the technology that is being used. A major aspect of a project is the team that is being put into place to execute on the stakeholder’s wishes, without a good team it is almost impossible to deliver a project.
The ability to manage and direct a team to execute a common goal is critical to the success of the project and is the main focus of development methodologies like agile. The act of directing a team is often referred to as facilitation. Facilitation in the simplest terms is the ability to communicate and direct a group through the use of communication to a common goal.
Facilitation is a critical job function that spans any industry or situation that requires working with a team.
- Foster Communication: Fostering communication within a team is oftentimes a given concept, but often done in an incorrect or inefficient manner. Project owners/managers should look to make all communications straightforward and easy to understand. This means utilizing simple words to explain concepts and needs, while also communicating these needs directly to the person who must fulfill them.
- Understand Personnel: Understanding the personnel that is at the team’s disposal is critical to any communication efforts that must be made. Communication methods are not a one size fits all formula, meaning that each team member may have a different form of communication that best resonates with them. (Hoven, 2006). Understanding and recognizing these preferred communication techniques early on will increase the likelihood of efficient communication.
- Adapting: Having the ability to quickly adapt to changes or problems is a major challenge that most teams have. Curbing the fear of change and implementing a solution-oriented mindset within the team better helps with dealing with changes.
- Clear direction: Provide clear direction to the team. This can be done by carefully planning out the goals of the team and removing any unneeded “brain clutter” within the project.
- Energy: In the modern world often times work environments opt to focus on a structure that limits the amount of energy within the team. The structure is good, but allowing for minor deviations from that structure is a great tool to foster better energy with team interactions.
- Assertiveness: Being assertive is important when leading a team. In many cases, team leaders must work with extremely smart and competent individuals with great ideas or views. While this is a great problem to have, it can lead to issues of “Too many chefs in the kitchen”. To avoid this make sure that these team members’ views are accounted for, but as the facilitator it is their role to make the final decision.
- Efficient meetings: In the technology space meeting have become more and more common as a result of the corporate environment. Limiting the amount of time that developers or IT staff spend in meetings allows them more time to lay code.
- Goal setting: Defining a common goal for the team affects everything that they will do. If a goal is not defined there is an increased risk of downtime and confusion within the team ranks.
- Right tools for the Job: When looking to execute a task chose the team member with the most expertise on that top.
- Confirm understanding: Most people will not vocalize that they do not fully understand the communication that is provided to them. Actively reiterating or asking if the communication is unclear provides a comfortable environment for team members to ask questions.
When it comes to the differences between agile communication and traditional software communication many of the same practices still apply. Where the two see the biggest difference is in how agile structures and communicates with teams. The agile methodology is often time ran using small groups of team members that are handling a specific portion of the development process. These small teams are often times running independently of each other to create solutions to a bigger goal(Moreno,2012). Agile allows for communication to be frequent and quick between the team and the team lead. In the event that there is a change that needs to be made to one of the teams, this oftentimes does not have rippling effects across the greater groups.
- Know the client: Understand the client’s motivation and try to determine their wishes ahead of time.
- Be the expert: Make it clear that you possess expertise in the topic at hand.
- Listen: Listen with intent, during any negotiation oftentimes the goal is the primary focus not the path to it.
- Compromise: Find mutually beneficial compromises, negotiations are not often winner take all. There is a needed level of give and take.
- Create a relationship: In any field where communication is key, the most effective way to communicate is to try to establish a personal relationship with the person you are talking to.
- Bend don’t break: Do not make to many compromises in the negotiation, if something is not going to work clearly state why that is the case. The negotiator must stand by that decision at all costs.
- Evidence: Providing concise evidence to back up your reasoning provides an extra layer of support to your argument. It is very difficult to argue with objective facts and numbers.
- Understand they want the deal too: Understand that both parties want to reach a conclusion. The issues arise in the semantics.
- Be transparent: The worst person to negotiate with is the person who has alterer motives, being transparent in your negotiation leads to increased trust and productivity(Ganesan,1993).
- Walking away: Do not be afraid to say no or continue the negotiations at a later date. People tend to believe that negotiations are one and done, but in actuality will require multiple sessions.
Ganesan, S. (1993). Negotiation strategies and the nature of channel relationships. Journal of marketing research, 30(2), 183-203.
Hoven, D. (2006). Communicating and interacting: An exploration of the changing roles of media in CALL/CMC. Calico Journal, 233-256.
Moreno, A. M., & Yagüe, A. (2012, May). Agile user stories enriched with usability. In International Conference on Agile Software Development (pp. 168-176). Springer, Berlin, Heidelberg.
Facilitation of software development projects is a key responsibility of a project manager or a scrum master in the agile development process. Facilitating a software development project brings stakeholders and the development team into a single platform on a regular basis to define or refine any requirements for the project. Facilitating a project should clear up any obstacles in every phase of the development cycle. While doing research over the internet for IT facilitation, the following guidelines are found in the book Collaboration Explained: Facilitation Skills for Software Project Leaders by author Tabaka, J. (2006).
- Status meetings should be used to determine the progress of the team’s work and note anything that the team needs to reach the goal.
- Use the action list from the previous meetings for the prompt.
- The status meeting should not be a problem-solving meeting, it should be short.
- Everyones opinion counts.
- Set follow-up discussion meetings if required.
- Make a list of action plans with the owner of the action, the due date, and the definitive outcome.
- Pay attention to the conflicts that arise.
- Focus on the goal.
- Avoid side track.
- Respect differences.
Agile communication is a little different than traditional software engineering communications. Agile communication is quick and regular, most often daily for 15 minutes which is known as a daily stand-up meeting or status update meeting. Agile communication is mostly face-to-face communication and requires team members from all responsible groups such as business users, stakeholders, the development team, QA team. In the agile development process, discussions are focused on small features of the application rather than a complete software application in the traditional waterfall process. The goal of the agile team is to produce working software sooner than producing documentation up-front, so communication is focused regularly on the progress of working software. Whereas in the traditional software development process, meetings are held with team members that may not need to attend. Communication from business stakeholders is funneled through the project manager or business analyst rather than direct communication between the stakeholders and the development team.
Negotiation in every discussion is important to lead to an outcome that suits the current scenarios. In the agile development process, negotiation skill is necessary to prioritize the action items between two or more teams as well as get the work done. Author Englund published a conference paper listing the following guidelines for negotiating in IT project management (Englund, 2010).
- Be patient: being patient enables better control and more rational deals.
- Be positive: optimism creates a positive atmosphere.
- Gather information: asking a question such as what they are doing, deadlines, and timetables help understand the situations.
- Float trial balloons: asking what if questions will result in alternative answers from the other party about possible approaches that they are willing to consider.
- Know your status: project manager should have the current status of the project that should be readily available to the stakeholders in case they want to reallocate resources.
- Know your opening offers: project manager should have room to negotiate with other parties.
- Limit your authority: use less authority while making decisions to avoid being pinned down by hard-core negotiating tactics.
- Know your bottom line: project manager should stand firm on the bottom line while negotiating.
- Be prepared: project managers should prepare to avoid surprises.
- Never reward intimidation tactics: project managers should avoid being intimidated.
Englund, R. L. (2010). Negotiating for success: are you prepared? Paper presented at PMI® Global Congress 2010EMEA, Milan, Italy. Newtown Square, PA: Project Management Institute. https://www.pmi.org/learning/library/negotiating-p…
Tabaka, J. (2006). Collaboration Explained: Facilitation Skills for Software Project Leaders. Addison Wesley Professional.