Here, at Belitsoft software development company, after 10+ years of successful experience in custom software development, we can prove that a good level of communication (between stakeholders/business users and a business analyst, a project manager, developers, testers, and etc.) is about 50-60% of success for a custom software application development.
For a good level of communication, I mean fully transparent situation for all project team members: each of the team members exactly knows his tasks; each of the team members clearly understands the final aim of software development; each of the team members shares the common responsibility for project development; project team finds easy and quick ways to resolve any critical issue.
Communication Challenges in Global Software Development
- I faced with some examples when project team coach on customer's side did not understand what was going on the project development before the situation became critical and unresolved without serious loss.
- I also can list even dozens of examples when a project successfully started at the beginning, became unsuccessful in the middle or at the final circle of the development process, because of changing people who were involved in the project in such stages as planning, development, and implementation the project from Executor and Customer sides. The main issue was that new staff was not able to work on the same approaches which were used by previous people and that caused a lot of problems on the project development circle.
How We Anticipate Challenges With a Communication Plan
We are trying to acquaint each member of a project team on the Executor side and Customer side and aim to communicate directly with appropriate person from the Customer side.
We create a Communication plan and approve it with all team members.
The communication plan:
- describes roles for all the team members from the both sides – Executor and Customer;
- covers overlapping hours which will be used for project communication. Overlapping hours will guarantee that the Customer will not be alone in the case when he needs any advice or real help in some emergency situations;
- lists communication channels (non-verbal and verbal).
Email as a Non-verbal Communication Tool
My personal opinion is that the most important and effective approach in non-verbal communication is using email correspondence together with any mail clients such as Outlook, The Bat, Mozilla Thunderbird and etc. Why are emails are so important in our everyday work, especially in activity mostly connected with manager duties?
I think due to the fact that writing an email can help you to create really structured and logically understandable texts. You can send these texts to a lot of recipients, you can receive their replies and you can save all the texts as email correspondence with all history of your communication with your current clients and potential customers. When you also use any of email clients, you can really get very strong tool which can help you to be very fast on responses, save your previous correspondence in different folders (one for each of your contact) and do not forget about your current tasks, meetings and future plans.
My Main Tips On Email Correspondence Are:
- Provide really fast response or update for received emails. I use the following rule for this: if I do not have any update within 8 hours, I have to send a message about it and I have to mention when I will have requested an update.
- Use reminders for emails, which could be updated not earlier than 3 days.
- Text in email should be quite short, structured and informative. Text should stimulate recipient for some action: response message or solution for current issues.
Someone can tell me that using emails in such a way can create a lot of bureaucracy in communication. This way of bureaucracy will make you more responsible and accurate.
Skype, Viber, Google Talk and etc. as Non-verbal Communication Tools
Another way to organize non-verbal communication is using some instant messaging clients, such as Skype, Viber, Google Talk and etc. The main advantage of using such way of communication is live and quick converse. Sometimes it really helps people to understand each other, if they spend a couple of minutes to talk and discuss current issues and tasks. The main difference on this way of communication from email correspondence is that you can really save your time and time of your counterpart. You do not need to think a lot about texts and structure of these texts, you can write them as it is and sometimes that really works.
‘I think that approach of combining email correspondence and instant messengers on non-verbal communication in proportion 70/30 for each of them can increase your chances to be understood and to be heard by a client or your potential customer.’
Verbal Forms Of Communication
Verbal forms of communication are also very important, especially for establishing personal contacts, relations and long-term partnership. When you talk with your counterpart by phone or you meet him personally, from a psychological point of view it is much easy to understand each other and solve current issues on the quicker way. It is mostly because you can hear or see real and existing “person”. This fact helps people try to find solutions which will be effective for both sides.
If the project is going to be really huge (at least 8-12 months of development), the idea to make a visit to the Customer side and discover his business will look logically and justifiable. That visit will help to establish a good level of trust and rapport. The return visit from customers’ side will also strengthen the relations. For relations, I mean not only relations between the companies, but relations between people who work in these companies, as relations on the basic human level.
My Main Tips On Verbal Forms Of Communication:
- You have to prepare agenda or list of questions for discussion, especially if you have “face to face” meeting.
- You have to create meeting notes after each passed meeting (especially if you talked mostly not about the weather outside but about some current issues) and update your counterpart about the status of executing mentioned points on the meetings notes. It means that you also can request from your counterpart the same obligation for the points which belong to his responsibility.
- If you use a phone's headset (in case you are using Skype, Viber and etc.) make sure that connection is on the good level, you do not have any outside noise and you can hear each other on the enough level. If you record the meeting please inform about it before the meeting started.
- On “face to face” meetings please be relaxed and cordial. The best way to attract your partner or customer is to behave on the friendly atmosphere, in spite of the fact that you try to solve very difficult problems, what requires some tough actions from your side.
- On “face to face” meetings you can speak about the most critical issues and discuss them without any hesitation. Other ways of communication will not provide to you such possibility to be opened to each other. Sometimes that really helps to realize why you have current obstacles and why you were not able to evade the obstacles using email or phone in communication.
‘For me, the verbal form of communication is really essential. If you use it in a proper way, you will always have a good connection and you will always be “on the same page” with your customers and partners, that means that your working activity will be productive and result oriented.’
The Wall Street Journal
How We Anticipate Challenges Keeping a Customer Up to Date on Progress
In any case, updates of the project status, any faced issues connected with project requirements, project budget, problems with developers and etc. should be done at least 2-3 times a week – this is very important in software outsourcing as the customer needs to know that you are working on his project but not having fun for customer’s money. Ideally, if you promised something to your Customer and gave the timeline, you have to inform him immediately after timeline passed.
In case your update is not “good news” you have to describe why it happened and a few possible ways on how you can try to solve the issue.
In my practice I realized, that existence of any problem is not so bad if you could propose some ideas how to solve it. The customer really appreciates this approach because he sees the real example how you can help him.
How to Save Thousands of Dollars with the Offshore Development Center?
One-half of unsuccessful projects are related to ineffective communications and this translates to US$75,000 that are at risk for every US$1 million spent on the projects, according to the business research from The Project Management Institute (the US nonprofit professional organization for project management, 480,000+ members). A company is not only risking funds, but also it is risking project success rates.
However, the study finds that only one out of four organizations can be described as a highly-effective communicator, the others have difficulty communicating with the appropriate level of clarity and detail and in the appropriate language to all stakeholders.
Business owners speak the language of money, they want to know «yes or no», «hard numbers». They are more focused on the «cost and benefits» and «business value». Programmers speak about issues such as «browser inconsistencies», «responsive Web design», and «encryption key authentication». They need detailed technical requirements describing the business functionality to estimate cost and time frame properly.
The staff of a good offshore software development company is not just well versed in topics such as .NET, Java, PHP, HTML5, CSS3, JS, SQL, XML, JSON, IDEs, APIs and so on, but also can explain how to use them to help meet the business goals of its clients. Such staff is often called business analysts or technical project managers or team leads.
‘It means that a good offshore software development company should provide clients with the efficient staff with great communications skills, technical background and a problem solving client-oriented outlook.’
What is like to communicate directly with developers with and without seasoned expert who can translate business needs into technical requirements?
Alex Turnbull (CEO of Groove, Newport, the USA) shares his experience about language challenges he faced as a non-tech founder:
I was lucky to team up with one of my best friend - developer who had just left Yahoo! and agreed to join me. Before he got started, I tried to sit him down and explain all of the features and functionality I imagined our app would have. After about five rambling minutes, he stopped me. “We can’t build from a list,” he explained. “Let’s organize your thoughts and map this out so that we know what it’ll look like first.” I started to draw sketches. And then those turned into wireframes. And finally, I learned how to use Photoshop and built mockups of the app. It bridged the gap between the thoughts in my head and my cofounder’s understanding of them, which meant that we saved a lot of time on changes and iterations early on. And while these days I’ve ditched Photoshop and switched to Balsamiq for mockups, it’s still my favorite way to show our team exactly what we need to do….
Early on at my second startup, we were trying to build a login page for our customers, and it was going…poorly. “The form needs to be bigger, and we need fewer navigation links,” I emailed our development lead. “No problem,” he’d say. And an hour later, I’d get a new version with a too-big form box and critical links missing from the header. We had been dancing this dance for days; me flat-footedly asking for vague changes, and him dutifully matching my steps. That afternoon, we had a long discussion that was incredibly helpful for me. I learned the importance of giving clear, thorough feedback. Now, instead of “fewer navigation links,” I might say “let’s remove the About, Contact and Features links, and increase the size of the form submit button by 20%.” Things move a whole lot smoother”.
The user of Reddit (networking service with headquarters in San Francisco, the United States) with ChiefMaster nickname notes that he works hard to close communication gaps with his programmer:
I'm a non-technical founder. I have a full-time developer that works for me and we work really well together. A lot of why we work together is we communicate well. Here's some general advice: […] one of the most frustrating things for a developer is when the schematics are constantly changing or if the expectations aren't clear. It makes my brain hurt, but I try to write out/draw out in as much detail as possible what I want to avoid any confusion. As more of a creative/sales person this relies on skills that don't come naturally to me so it takes a concerted effort to be really clear, but it makes things MUCH easier for the developer and also helps the timeline. As a point of consideration, most large organizations have "translators" that help non-technical and technical people communicate more effectively.
A qualified expert can handle all described above issues in an easy and convenient for the client way.
Belitsoft is an offshore software development company that operates since 2004. We successfully provide software development services (software development, software testing &QA, software maintenance, dedicated teams).
Our highly-effective resource managers deliver custom projects to companies both large and small.
Senior technical resource manager Dmitry Baraishuk is working with us since 2005. He began his professional career as a software developer. Now he is responsible for managing several projects, controlling development processes and creating new teams. During his career in IT, he efficiently solved marketing, sales, technical, managerial issues and leaded successfully TOP company projects. He has strong training and coordination skills, also ability to work with parallel assignments simultaneously keeping good quality and delivering on time.
Senior technical resource manager/business analyst Dmitry Garbar is working with us since 2007. He started his career as a software programmer. Currently he manages several types of projects, including fixed price and Agile. His team usually consists of 10 in-office developers, designers, html coders and a number of distributed non-staff members. He is strong-willed, keeps a very tight rein on all processes and provides high-quality software products on time.
Our experts know for sure how to empower your business with a solid and skilled outsourcing team. Let's talk business!