Lack Of Effective Communication

Print   

02 Nov 2017

Disclaimer:
This essay has been written and submitted by students and is not an example of our work. Please click this link to view samples of our professional work witten by our professional essay writers. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of EssayCompany.

Delivering the systems that meet all the stakeholder’s need with resource constraints has been one of the challenges in current scenario of software development. Ensuring effective communication between requirement engineers is one of the challenging issues. Poor communication between stakeholders leads to errors in the systems. Lack of a good communication channel between stakeholders can lead to complexities during software development process. With the growth of organization, the effective communication between distributed groups has been one of the main challenges for the organization. Many communication techniques are available nowadays (such as use of multimedia systems) for communication. Misunderstanding and misinterpretation of requirements due to drawbacks of current communication techniques can be one of the challenging factors in requirement engineering process.

This paper will focus on studying and analyzing the positive and negative traits of different communication techniques and impact analysis of organizational and social barriers in effective communication between stakeholders during requirement engineering process.

Keywords: Requirements Engineering, Communication

Introduction

Requirements engineering is a crucial part of software development process. It is a systematic approach of eliciting, understanding, analyzing and documenting requirements gathered from stakeholders. Communication between stakeholders plays a vital role during requirement engineering process. Failing to correctly address the requirements of stakeholders leads to high software development cost. Software requirement errors can lead to additional cost up to 70-85% in an average software project [1]. Lack of proper Requirement Specification during initial phase of the software development cycle makes the later stages of the project more vulnerable to the change in requirements [2].

With the growth of organizations, the concept of globalization and outsourcing arises, which eventually leads to widely distributed working groups with a common goal. Nowadays, many multimedia systems are available to support sophisticated communication between stakeholders. Multimedia systems include video conferencing, electronic mailing systems, teleconferencing, and social networks. These types of urbane technology have made the world narrow and globalization of organizations made possible. Despite use of such technologies for communications, there are many other factors that influence the overall communication activities leading to poor requirements.

Problem Statement

This paper will discuss about the communication issues and its impact on requirement engineering process. Requirement engineering is an important phase in software development process. Poor communication leads to missing, ambiguous and unnecessary requirements which mislead the overall objective of a project. There are many factors that affect the communication between stakeholders and some of them are organizational, cultural, and geographical issues, communication media, trust between stakeholders and language barrier between stakeholders from different geographical locations.

This paper will address the communication related issues affecting the requirement engineering process and will categorize and discuss about the mitigating solutions to the problems that is caused by communication issues.

Definition and Validity of Scope

The more effective the communication, the better the exchange of ideas between all the parties involved in the development of the system henceforth, customer satisfaction. For establishing this ideology we have tried to communicate ideas around the given requirements for designing a Gas Station Control System, from the given set of requirements we tried to discuss in detail about the requirements we felt that were not clear and included few other requirements to the set of requirements we already have. Most of the requirements that got added to the system were concerned with security and safety, the initial requirement we had was the system should be able to provide reasonable security. The requirement itself was not communicated clearly as it was just stating reasonable security and not indicating if it was related to the Fuel Filling Station security to be integrated into the system or the general employee login credentials security any specific expectations the customer has about the security features of the system. Once the ideas were communicated around that specific requirement then it was evident that the gas station security has to be integrated into the system to monitor customers coming into fill the gas. So this kind of enhancements to requirements can be done without effecting the project at later stages if ideas are communicated around the requirements that are not clearly stated.

This scenario will be valid only if the customer is completely aware of what he exactly wants out of the system, which again creates confusion as a customer is never completely aware of his complete set of expectations during the early or initial stages of the project. For effective communication during RE process stage it is always better to present the customer with working prototype of the deliverable and then actually start working on designing the actual system to implement it.

Literature Review

Impact of Poor Requirement Engineering in Software Outsourcing

Requirement Engineering is one of the key processes in the software development cycle. In most cases, requirement engineering phase decides the success and failure of the project [2]. This research primarily focuses on the problems that software developers face during their project activities, due to the poor software requirement practices.

The paper [2] introduces number of hours spent during requirement meetings, methods used for communication between clients and the demerits of communication techniques used which lead to poor requirements.

Email messages, Instant messaging, voice conference and video conferences are most widely used techniques in the company selected by authors to do research.

From the survey, it is found that, requirements that are expressed in natural languages were difficult to express and ambiguous. Also, the accents of foreigners were reported as a barrier to understand the requirements from clients.

According to the paper, during requirement gathering process, the most obvious scenario will be to have a non technical client at one end and developers at another end. Due to the non-technical managerial person at the client end, the developers have to work more on requirements modification and error fixing during the development phase.

The time zone difference for the widely distributed company is also considered as a factor that affects the work pattern ultimately affecting the communication between stakeholders.

4.2 Paper Prototype For Requirement Elicitation

According to the paper [3], due to poor and ineffective communication between stakeholders, the system becomes vulnerable to errors and the authors have proposed an enhanced approach of using papers for prototyping during requirements elicitation process.

The authors of the paper have suggested using throwaway paper prototype instead of other expensive prototypes. Authors of the paper [3] have suggested the paper prototype concept because the papers can be trashed after the completion of task; moreover, this the author believes that this type of prototyping method is user friendly and has no technical hurdle. The authors are not sure about effectiveness of this type of prototyping techniques in huge projects but ensure that this will definitely works for small and medium projects.

4.3 Communication Problems in Requirement Engineering

According to paper [4], most users express their requirements in natural language and analyst translates requirements statements into representational objects in a domain model. After the modeling of requirements, they are presented to end users for validation.

Then it is the job of the analyst to translate requirements statements into some kind of representing objects in a domain model. Once the requirements are modeled, they are presented to end users for validation and during this phase, the analysts face the communication problem because of lack of familiarity of end users with the notations used while modeling their requirements. Although face to face communications cost higher, it is more preferred than that of telephone conversation for exchanging information [4]. According to paper, if client’s manager is given authority to choose the client members for collecting requirements, the choice of the manager will be based on many factors; most of them will be focused on commercial interest of the clients’ business not in the software project. This shows that the organizational and social issues have great influence on the effectiveness of communication activities leading towards success or failure of the requirement engineering process.

According to authors, there are three major communication barriers and they are ineffectiveness of the current communication channels, restrictions on expressiveness imposed by notations, and social/organizational barriers. The paper concludes that the social and organizational issues have great influence on effectiveness of communication.

4.4 Requirements engineering: connections between the software developers and customers

According to the paper [5], interviews, questionnaires and observations are common methods of requirement elicitation. Authors believe that the success of all these activities depend on the way people communicate and work together. While working with customers, not listening to them and showing signs that makes them believe that the requirement engineers are not interested may lead to ineffective communication.

To avoid this problem, the requirement engineers can improve relationship with customers through eye contact, body posture and facial expressions. In order to draw customer’s attention, techniques like asking questions, re-stating what we have heard, and taking notes can be applied in order to demonstrate that we are listening to them.

The authors suggest that both verbal and written communication used during the requirement elicitation process should not contradict or be ambiguous.

Using intermediaries between customer and developer might lead to inadvertent or advertent removal or distortion of requirements that are gathered from customers [5].

According to paper, documenting the user site and activities using video tape has been found to be effective because video provides a stable reference which can be shared, viewed and discussed by viewers having different backgrounds. And the good thing about video is that it can be played as many times as we want.

The paper also suggests using prototype for getting feedbacks from customers and helping them to be familiarized with the system and technology.

4.5 Using Different Communication Media in Requirements Negotiation

According to the paper [6], most theories assume face to face meetings are best suited for tasks that require group negotiation and conflict resolution. According to media-effects theories, all other media including computer conferencing are poor media which restrict the communication. The authors found that face to face communication is not better than that of communication using video conferencing and computer support; instead, they found a particular distributed group configuration that significantly improved performance using video conferencing for negotiation meeting.

4.6 Effective Communication in Requirements Elicitation: A Comparison of Methodologies

According to the paper [7], the elicitation or communication of user requirements comprises an early and critical but highly error-prone stage in system development. The paper highlights the degree of communication between the designers and users. Socially-oriented methodologies provide more support for user involvement in design than the rigidity of more traditional methods, facilitating the degree of user-designer communication and the ‘capture’ of requirements. A more emergent and collaborative view of requirements elicitation and communication is required to encompass the user, contextual and organizational factors.

Research Methodology

This section outlines the procedures that we have followed to understand the reasons for communication problems in RE process.

This research was conducted in order to study impact of poor communication on Requirement Engineering process. In order to get an insight into the study we have opted to Analyse the papers published along the similar lines, Group Discussion among our team and communication of ideas cantered around the requirements of the system.

Analysing the papers published along the similar lines we followed descriptive method of research, descriptive method of research is to gather information about the present existing condition and gauge the importance of the missing factors that contribute to the problem statement. The aim of descriptive research is to verify formulated hypotheses that refer to the present situation in order to elucidate it Moreover, this method allows a flexible approach, thus, and when important new issues and questions arise during the duration of the study, further investigation may be conducted.   

Descriptive research on the other hand is a type of research that is mainly concerned with describing the nature or condition and the degree in detail of the present situation.  This method is used to describe the nature of a problem, as it exists at the time of the study and to explore the cause/s of particular a problem.  The aim of descriptive research is to obtain an accurate understanding of the current problem and recommended solutions. With this research type, it is essential that the researcher already has an overview and domain knowledge to understand the current trends and situation. In this study, the descriptive research method was employed so as to highlight the importance of communication during the Requirement Engineering process.  

The research also involved Group Discussion, including our team and selected students who had the domain knowledge to talk, discuss, and outlay the importance of communication during RE process to achieve best results with high quality and user satisfaction. All the people involved in the research talked about the best practices followed in the industry, various sophisticated tools that can be used to overcome the problem to certain extent. It was clear from our discussions after all the participants agreed that with effective communication any project can be completed within the allocated budget, time and delivered with highest quality which guarantees user satisfaction .

We incorporated an experimental process of communication of ideas cantered around the requirements of the system to see how effective communication of ideas of customer/ user that actually get transformed to requirements of the software will cut down the cost both in terms of finance and resource time. From the research we found that it is important that the customer articulates his idea clearly and states down all his expectations so that the idea can be converted to requirement based on the boundary constraints and functioning environment after discussing with domain experts. If the idea is not clear or vague there will always be confusion on what kind of services is this system supposed to deliver, usability concerns, performance issues. With communication of ideas centred on the requirements it is always possible that the customer will have a chance to remember the requirements that he might have forgot to put down. In all with this kind of communication focussed around requirements we have been convinced that it saves time and cost by reducing the loop of requirement enhancement by at least 50%.

With the analysis of papers published discussing the importance of effective communication during Requirement Engineering process we have come with better ideas to minimize the problem by using the best practices suggested like comparing Problem- solving and Problem finding techniques to improve the quality. compared two different structures of interaction between a designer and a manager problem-solving (designer as problem-solver) and problem-finding (both parties develop a mutual partnership in dealing with problems) and found that the latter type of interaction process produces higher quality designs along with important implementation advantages. The stance that the designer takes in the requirements elicitation process determines the way that information is exchanged and a problem finding mode of enquiry will foster the development of different viewpoints and thus a shared understanding of the problem and potential solutions.

Findings and recommendations

From the study of we can categorize communication problems as follow:

Social and Cultural Issues

Organizational Issues

Intermediaries between client and developer

Geographical Issues/Time zone differences

Lack of Trust between stakeholders

Communication with wrong customers

Language and Technology Barrier

Advanced communication techniques

Lack of Domain Knowledge and Familiarity with System

6.1 Social and Cultural Issues

Social and cultural barrier has also impact on effective communication between stakeholders. While choosing users from different background and cultural diversity, the gathering of requirements may become difficult because of language barrier, unwillingness to express what the user really wants because of lack of trust between the users and the developers and users lacking awareness of recent technology.

6.2 Organizational Issues

In an organization, due to political influence of any dominant employee, other employees will not be able to put their views which lead to ineffective communication between them. Similarly, the stakeholders chosen for gathering requirements depends on the person who is authorized to do that job. For instance, if client’s manager is given authority to choose the client members for collecting requirements, the choice of the manager will be based on many factors; most of them will be focused on commercial interest of the clients’ business not in the software project [4].

Intermediaries between client and developer

If an end user and a developer directly communicate without any intermediaries between them then the communication will be effective otherwise, using intermediaries between customer and developer might lead to inadvertent or advertent removal or distortion of requirements that are gathered from customers [5].

The user is not concerned about how the system will be implemented he is only concerned about the ease of use, whether or not the system is meeting all the set of standards and requirements. It is the job of the requirement engineers and developers allocated for the project to make the business requirements functional and incorporate them into a system or software package. With developer –user interaction communication between users and developers improves requirement understanding for both customer and developer. The designer will have chance to learn more about the requirements from the user as he will be completely aware of what he/she wants in the system to behave under certain constraints, and also he/she will be aware of the boundary conditions where the system should work normally for a given set of inputs.

Geographical Issues/Time zone differences

The time zone difference for the widely distributed company is also considered as a factor that affects the work pattern ultimately affecting the communication between stakeholders [2].

Lack of Trust between stakeholders

If the end users do not trust developers or requirement engineers, then the communication between them can’t be effective. The trust can be developed by avoiding the things that is affecting the communication.

For an instance, while working with customers, not listening to them and showing signs that makes them believe that the requirement engineers are not interested may lead to ineffective communication [5].

To avoid this problem, the requirement engineers can improve relationship with customers through eye contact, body posture and facial expressions. In order to draw customer’s attention, different techniques like asking questions, re-stating what we have heard, and taking notes can be applied in order to demonstrate that we have trust between each other and we are listening to them [5]. If the customers doubts the ability of the developers to change their requirements in to a reality then the effective communication cannot be established.

Communication with wrong customers

If we couldn’t identify right customer for requirement elicitation, then communicating with wrong customer may lead to wrong requirements or unnecessary requirements which ultimately increases cost for requirement fixing or error removal.

Language and Technology Barrier

The user might be from different geographical location and the language used by developer may not be the primary language for that user; in this scenario, the user may not express the requirements correctly.

Most users express their requirements in natural language and analyst translates requirements statements into representational objects in a domain model [4]. There might be a case where developer misinterprets the customer’s requirement leading to the problems in future.

Beside this, the customers might not be aware of the notations used by developers for modeling the requirements [4]. In this case, the developers are responsible to make the customers understand how the system actually works and developers have to show, how their requirements have been portrayed in the system.

Advanced communication techniques

In general, face-to-face communication is preferred for information exchange but in reality it is always not possible for all cases. For the organizations which are widely distributed in various geographical locations, the communication might be difficult. For such scenario, we can use advanced technology like video conferencing. Teleconferencing, email and instant messaging techniques are also widely used techniques, but they are not found effective as they have issues like inadequate information, ambiguous information because they are expressed in natural language [2].

Although face-to-face communication is assumed as a best way to communicate but it has been proved practically that face to face communication is not better than that of communication using video conferencing and computer support; instead, they found a particular distributed group configuration that significantly improved performance using video conferencing for negotiation meeting [6].

Lack of Domain Knowledge and Familiarity with System

The requirement engineers who collect requirement information from customers should have domain knowledge of the system they are developing. Lack of domain knowledge can lead to collect wrong requirements or even end up choosing unnecessary requirements. With domain knowledge, the requirement engineers can help customers to portray their requirements.

Project managers are the one who must be familiarized with the system and are responsible for negotiation and co-ordination within teams for the successful completion of project [7].

An extremely useful model of user-developer communication has to be followed to bridge the gap of requirement being communicated effectively during the Requirement Engineering phase. User- Developer idea stands in conflict to traditional models, which does not involve the developers and designers in requirement gathering making the interaction between user and designer seems to exist only as a way of obtaining information that is to be passed on to the next stage of design. The user will only have vague idea about the requirements but he will have a clear understanding of what he expects from the system. With designer-user interaction it will be easy for the designer to understand what exactly the user is expecting his system to deliver and alter the requirements to meet the needs and explain the user clearly if any requirement cannot be feasible under the given constraints so that the requirement can be revised. Once the user-designer interaction is done, the designer will have clear understanding of Problem Specification (Technical specification of the system in terms understood by the developer) and Problem Description (Definition of the system in terms understood by the customer). During the user- designer interaction the user can be made a part of formal requirement validation by giving examples of the use of the system in terms of a series of interactions between the user and the system and classify functional and non-functional requirements. The user- designer interaction is very important as it emphases on the target environment in which the system will be expected to function. So, the system can be developed, tested effectively and thoroughly during the developmental phases of the product. Once the system is ready to be delivered, each system function can be traced to a corresponding set of functional requirements elicited during the user- designer interaction.

Designing a working prototype of the system before the actual system is developed is a very good idea as it highlights the features of the system specified in the requirements and the usability can be improved based on the feedback got for the prototype or few requirements can get added if the customer feels the communication is an important aspect to eliminate misunderstandings or misconceptions which arise during requirement engineering phase. During our research we outlined the importance of peer-peer communication which involves the developers and analysts who design the system so that all of them will have clear understanding of the working of the system and the developers can contradict any requirement if it’s not possible to implement it under the given set.

Conclusion and Future Work

In this paper, we have gathered all the issues that have impact on effective communication between stakeholders. We have tried to answer the following questions:

How and Why Communication impacts RE? What are the issues so far addressed by other researchers? What might be the mitigating solutions for Communication barrier in RE? Can we categorize the issues that have impact on effective communication during RE process? Is trust important between stakeholders? How can we develop trust between stakeholders for effective communications?

Lack of effective communication between stakeholders lead to wrong, unnecessary and ambiguous requirements, may also lead to misinterpretation of requirements and redundant requirements and ultimately leads to high cost in the later phases of the software development cycle. This is how lack of effective communication impact the RE process. As success and failure of the project depends on requirements, it is crucial task of requirement engineers to trace out problems which are affecting the effective communications between stakeholders accepting that communication is also a crucial part of requirement engineering process.

In this paper, we have categorized all the problems regarding communication and listed them in section 6. Besides that, we have also added a trust factor which affects the effective communication between stakeholders. Sometimes, the important requirements of stakeholders might not be exposed because of lacking trust between stakeholders. For instance, the end user lacking trust with developers might think that the developer won’t be able to understand and reflect his/her requirements into a real system. Similarly, for the developers or requirement engineers who do not have interest and trust in customers may think that the customers or end users do not know what they want from the system and eventually end up with wrong, unnecessary and ambiguous requirements. If the project manager or a domain expert is able to establish a trust between the end users and the developers, the effective communication is possible.

By collecting and categorizing all the issues addressed from many papers regarding effective communication, the readers or researchers can have a brief insight of the overall issues that is being addressed by the papers we have referenced so far. Categorizing the different issues can help the developers to figure out what are the problems that might hamper the overall requirement engineering process and be aware of those issues and take relevant actions.

By collecting real survey data from stakeholders of different existing organizations, we can further analyze the issues we have discussed so far. There might be other issues related to communication that is obscured and need to be addressed in order to solve the current communication problem in requirement engineering process.

Software has become a part of everybody’s life. Software development is having a great evolution over time and no one knows how to write efficient software in a given time as the requirements keep changing very frequently. The traditional way of gathering requirements by the business side and working on them to develop the software is good as long as the customer is completely aware of the outlook of the system performance. If the customer is not completely aware of the system then a domain expert and developer must be part of the team that interacts with the customer to gather requirements to make the requirements clear to everyone and thereby have minimal problems in transforming them to functional requirements by incorporating to the system. If domain experts are not involved in requirement gathering then there will not be a clear idea of what to expect from the system in terms of performance, security or how the system needs to be tested to sustain the real-world performance issues.



rev

Our Service Portfolio

jb

Want To Place An Order Quickly?

Then shoot us a message on Whatsapp, WeChat or Gmail. We are available 24/7 to assist you.

whatsapp

Do not panic, you are at the right place

jb

Visit Our essay writting help page to get all the details and guidence on availing our assiatance service.

Get 20% Discount, Now
£19 £14/ Per Page
14 days delivery time

Our writting assistance service is undoubtedly one of the most affordable writting assistance services and we have highly qualified professionls to help you with your work. So what are you waiting for, click below to order now.

Get An Instant Quote

ORDER TODAY!

Our experts are ready to assist you, call us to get a free quote or order now to get succeed in your academics writing.

Get a Free Quote Order Now