Reliable Requirements Engineering Practices for COVID-19 Using Blockchain

: Improvement in the requirements for engineering practices is needed in areas such as requirement elicitation, validation, prioritization, and negotiations between stakeholders to create successful projects for COVID-19 (coronavirus disease 2019) software. Many algorithms and techniques are used to create quality software projects, but they still need more improvement to work effectively for global pandemic COVID-19 software. By improving the reliability of requirement engineering practices using blockchain-based technology, the software will be reliable and will make it easier for the users working in a lockdown situation because of COVID-19. Therefore, our purpose is to identify the factors for reliable software engineering practices using blockchain-oriented technology for COVID-19 software. A systematic literature review is conducted to identify challenges and offer solutions. Through using blockchain-based technology for requirement engineering practices, the requirements will be gathered accurately and validated, and the conﬂicts between stakeholders will also be solved. It will improve the quality and reliability of COVID-19 software projects, which will help society work effectively from home. Improvement in the quality and reliability of COVID-19 software will improve users’ interest, and their working capacity will be increased.


Introduction
As a result of the COVID-19 global pandemic, the whole world must work from home, because it will be helpful to prevent this disease from spreading. Unfortunately, we lack quality software projects, so it reduces the interest and working capacity of workers. Most of the software is slow because of workload, which irritates the users. There are many problems in their requirement engineering practices, which lead to the slow development of quality software projects. The competition level between organizations is increased with innovations in technology. All the organizations must cope with the increasing rate of change in technology for COVID-19 software projects. In the face of challenging work situations, software products play a fundamental role because successful software products work according to the requirement of stakeholders. So, the general purpose of this research is to identify the factors for the reliability of requirement engineering practices using blockchain-based technology. These are the factors that can be improved using the blockchain platform to create reliable COVID-19 software.
Requirement engineering is the process that defines, documents, and maintains the requirements to produce a successful software product. The main objective of requirement and existing software of the same type, standards, and other stakeholders of the pro [30]. The proficiency and reliability in the process of requirement negotiation are also v important for quality in the COVID-19 e-commerce business. While in some respe work on negotiation automation is mature enough, it still needs to be approached syst atically with a broader scope for improved COVID-19 software projects. An e-comm web-based server is used for conducting bargaining-type negotiation between stakeh ers such as Yahoo's auction service. In e-commerce, companies and individuals or buy, and sell products and get payment through in an electronic way, which needs p ciency and sustainability in the requirement gathering and negotiation process.
The negotiation process is also used in cloud computing [31]. The negotiation o quirements in these servers needs more improvement and proficiency for impro COVID-19 software. In this new era, web applications and mobiles are used for the cess of requirement negotiation [32]. Goal-oriented requirements engineering is use add goals in requirement elicitation, validation, analysis, and requirement negotiatio add improvement in these processes [33]. An interest-based learning activity negotia system is performed to note the interests of both developers and stakeholders, which increase the interest of both learners and stakeholders [34]. To overcome language p lems among all stakeholders who are remotely negotiating software requirements, chine translation and speech recognition are combined to generate a mobile speech tr lator [35]. Requirement negotiation is collaborating with the software ecosystem to m COVID-19 software more understandable [36]. Factors that need to be improved for reliability of requirement engineering by using blockchain-based technology for COV 19 software projects are discussed below in detail and are shown in a sequence in Fig  1. These factors are further divided into sub-factors. These factors include quality, so networks, conflicts in decision making, stakeholder relationships, negotiation proc time, validation, and consistency of requirements. All these factors are important for ducing quality software requirements and reliable COVID-19 software projects.

Quality
Many expert systems fail because of a lack in quality of the requirement negotiation process [37]. For designing and developing successful projects, requirement negotiation is primary and one of the crucial parts, and it addresses designing and developing problems for the suitable project for the stakeholders [38]. The software development life cycle is followed by almost every software development organization, but still, many projects fail due to some reasons. The rate of failed projects is still more than the rate of successful projects all over the world.

Weak Algorithms
In the requirement negotiation process, algorithms generate quality requirements by the elicitation, validation, prioritization, and negation of requirements, but these algorithms are weak for producing valid and prioritized requirements, so the projects lack quality. So, to improve the quality of projects, strong and efficient algorithms should be used.

Time
Before finalizing any decision, a discussion or meeting takes place, and all the stakeholders communicate and argue with each other on their decisions. Sometimes, there are conflicts between stakeholders, and solving these conflicts is a time-consuming process. Many other approaches to the negotiation process are time-consuming and difficult. To reduce the wastage of time on the approaches of requirement negotiation, it can be improved by adopting some new platforms.

Social Network
Social media plays an important role in the requirement negotiation process because of its huge amount of data coverage. To remove biasness and solve conflicts in requirement negotiation phases, social media serves as a communication interface. By using social media for requirement negotiation, many processes and activities are improved to give better results [39]. There is a bulk of information on the internet, but most of the data are located on websites, which tend to be unauthorized sources. So, the data should be authorized, and data gathering should be easy and the conflicts between stakeholders should be solved [40]. The implementation of non-technical user-friendly methods is a significant challenge for system definition and evaluation and decreases the failure rate of the system. The WinWin negotiation framework has improved these challenges until its fifth generation; even then, there are many challenges with no technical users in the latest version of the Wiki WinWin toolset [41]. For the requirement negotiation process, the arrival of social media made Gmail and Facebook tremendously popular [42]. Winbook is the recent version of the WinWin framework; it works on social networking models similarly to Facebook and Gmail. The use of Winbook in small-scale projects showed improvement in the requirement negotiation process, but it also has many challenges in requirement negotiation and software development. The establishment of requirement negotiation is not an easy process, because it is very difficult to identify conflicts and techniques for how these identified conflicts can be resolved. Then, finding the feasible alternatives is also a difficult step, and then giving the charge of negotiation is also a difficult decision-making process. It is also difficult to know how we can support the negotiation with tools and other means [43].

Conflicts in Decision Making
In the requirement negotiation process, all the stakeholders need to make some important decisions during this process. Although they have the same goal, because of different experiences and thoughts, they have conflicts regarding requirement selection. In software organizations, the negotiation stakeholders include the project managers, customers, developers, suppliers, product managers, and management of companies. They all have different experiences, so their conflicts among requirements are also high. Many tools and techniques are used in the requirement negotiation process to make the decisionmaking process easy, but it is a complex and time-consuming task. If the final decision fails to satisfy any of the stakeholders, then they will give less interest in the further decision-Sustainability 2021, 13, 6748 6 of 25 making process, and this will lead to a poor decision-making activity [44]. So, the conflicts between stakeholders should be solved.

Lack of Communication
Lack of communication is a big problem in decision making in requirement negotiation. The requirement negotiation process should involve all of the stakeholder collaboration at the same location and same time. However, most of the time, the stakeholders communicate from a different location and different time, which is the reason for bad decision-making activities. Sometimes, stakeholders fail to explain or justify their decisions due to a lack of communication skills.

Crowdsourcing
Crowdsourcing is a model in which organizations or stakeholders share their services, ideas, or finances with a large group of internet users. Different organizations assign projects to the developers through the internet and the developers send back that project after completion and receive his or her payment. Requirement negotiation in crowds sourcing is a complex task because it needs the synchronizations of time, location, and understanding between stakeholders [45]. Most of the time, stakeholders fail to understand each other's point of view and have conflicts.

Power Relationship between Stakeholders
Due to continuous changes in technology, the complexities are increasing in requirement engineering, and power relationships between stakeholders are also effective for resolving conflicts among them. Different principles are used for solving this gap, but still, the power relationships are getting affected because of conflicts between stakeholders [46].

Consistency of Requirements
In addition, the consistency of requirements is a question that needs to be answered. While we need to accumulate requirements from multiple sources in parallel, their synchronization and consistency need to be ensured.

Requirement Validation
To check that if these gathered requirements are correct, complete, and according to the needs of stakeholders or not, requirement validation tests are performed. These requirement validation techniques ensure that the gathered requirements are according to the demands of stakeholders; if there are some errors in the gathered requirements, then it will help to correct them and protect the software project from defects after deployment. Requirement validation is the most important phase after requirement gathering because in requirement gathering, there is a big number of useless requirements. This increases the complexity of the system, so when gathering complete and correct requirements, a validation phase is essential. Several techniques are used for requirement validation, but because of errors in the requirement negotiation process, the gathered requirements are not fully according to the needs of all of the stakeholders.

Requirement Negotiation
The requirement negotiation is used to define mutually satisfactory requirements on which all the stakeholders are agreed. As a result of rapid changes in the market, the requirement negotiation in different phases of requirement engineering helps to make changes according to each stakeholder's updated requirements. Requirement negotiation is not used only once in a project; it should be repeated in later stages of the requirement engineering process [47]. Different tools are used for requirement negotiation; some of them are passive support, active facilitative support, and pro-active interventive support tools. Passive tools support all collaboration situations by providing the infrastructure for negotiation. All the parties express their views and ideas and collaborate through Sustainability 2021, 13, 6748 7 of 25 email, multimedia rooms, chat, etc. Active facilitated support tools help the stakeholders come to an agreement; for instance, for mutual gain, it identifies the situation. This tool helps in evaluation, formulation, and problem-solving. Pro-active interventive support tools manage the actions of stakeholders. These tools critically analyze the actions of stakeholders and help them agree [48].
In requirement negotiation, there is a mutual interaction between all the stakeholders, and they negotiate on all the requirements, and the requirements on which all the stakeholders are agreed are used in creating a project. As a result of many requirements, it is difficult to negotiate on each requirement under a specific budget and time [49]. Two different dimensions of requirement negotiation are discussed, which helps to solve conflicts between stakeholders, the collaboration between stakeholders, and the tools that are used for solving problems. These dimensions are as follows.

Conflict resolution strategy
It is very important to resolve the conflicts between stakeholders because if one party was not convinced with the resolved conflict, then there will be a lack of interest in stakeholder engagement. This will lead to the failure of the project. When conflicts are resolved by all stakeholders, then the selected requirements will be authorized, the developed project will be according to the needs of stakeholders, and it will lead to the success of the project. There are many kinds of conflict resolution techniques: The qualitative conflict resolution techniques are divided into four categories: agreement, compromise, voting, and definition of variants.

•
Agreement: To negotiate a solution to the conflict, the stakeholders work together, which includes the discussions about views of each stakeholder to agree. • Compromise: In this technique, all the stakeholders compromise on an acceptable solution that is generated after an analysis of various solutions. • Voting: In this technique, the stakeholders simply vote in favor of the solution or against that solution, and the solution with high votes will be selected as the best solution. • Definition of variants: In this technique, the preferred solution of stakeholders is implemented by applying their variants to the solution parameters. This is a qualitative technique [50].
The qualitative conflict resolution strategy is categorized into overruling, consider all facts, plus-minus-interesting, and decision matrix. These key criteria need to be considered against each solution alternative. The comparison of information in the matrix highlights the best solution to conflicts.

Collaboration situation
In this dimension of requirement negotiation, all the stakeholders interconnect with each other for which their time and location are negotiated. The collaboration can be synchronous or asynchronous. In synchronization negotiation, stakeholders work together face to face, but in asynchronous negotiation, stakeholders collaborate from different These requirement negotiation strategies are used to make the requirement elicitation and validation process easier and validated with many algorithms, but still, there is a need to improve these strategies, time, and budget with the innovative technology [51]. The time and communication problems exceed the specific budget during the requirement negotiation process and cause the failure rate of projects to increase. The use of the latest technology will increase the performance and help produce successful projects efficiently.

Solution
So here, blockchain-oriented requirement engineering is discussed to make the requirement engineering practices more verified, validated, reliable, and easy. Blockchain is a decentralized, secured, and distributed ledger technology that provides an immutable record of transactions. Blockchain is a decentralized online global database, so its ledger is shared among all computers [52]. Through the internet, all the transactions are registered on a machine, and this record is shared by every machine throughout the world. Anyone can access these activities and add transactions but cannot change the record after the transaction is added. This blockchain is a collection of data, and by connecting one block after another in a chronological way, each piece of data is added to the blockchain. This series of chronologically connected blocks makes a chain of blocks, and it is called blockchain [53]. The idea of blockchain innovation is spreading widely, because the concept can now be applied to any requirement for trustworthy records [54].

•
It facilitates people's records with encryption and makes them secure and synchronized [55]. • Blockchain is allowing people to secure digital relationships that were impossible before because data is being disclosed, recorded, and secured differently [56]. • The main advantage of the Bitcoin-style blockchain systems is the immutability of data and decentralized authority [57].

•
The decentralized feature of blockchain will help to create a decentralized ledger of requirements that will easily be accessible by stakeholders [58].

•
The uniqueness of blockchain is that it is secure, immutable, and less costly [59]. • By using the blockchain platform in requirement negotiation, we can create requirement engineering practices that are more secure and accessible. • It can help to gather and validate requirements easily for COVID-19 software projects [60]. • Blockchain technology integrates a series of technical systems with the following characteristics of decentralization, openness, autonomy, anonymity, security, and information that cannot be tempered [61].
As we have discussed before, the quality of the project depends on how well its requirements were gathered, fulfilled, or negotiated. However, the requirement negotiation is a difficult and time-consuming task [62]. To improve the quality of COVID-19 software projects, the requirements must be negotiated accurately and completely. For this purpose, we can use blockchain platforms to make the requirement negotiation process more efficient [63].
The innovation of blockchain is a revolution in frameworks of record [64]. Thus, blockchain technology is adopted in many organizations and applications, and because of it, the quality, security, and speed quality of projects improved. So, to improve the quality and speed of the requirement negotiation process and to reduce the failure rate of COVID-19 software projects, blockchain-oriented requirement engineering is discussed to make requirement engineering practices more verified and easier [65]. Some applications of blockchain as a record are digital identity and tokenization [66]. Blockchain is the grouping of the assortment of advancements of the products. Cryptography, computer network, mathematics, etc. are used to create blockchain technology [67].
The objective of blockchain is to make a decentralized advanced framework by using algorithms and cryptography, which makes it secure. The use of blockchain is broad and applicable in all parts of society [68]. Platforms based on blockchain will help people gather information according to its type. If the record is from a public blockchain, then the user can read, write, or edit information, and if it is from a private blockchain, then the individual or organization that is in charge checks and secures important things such as selective reading, writing, or access privileges [69]. It works similar to a private property of anyone [70]. If information is from a consortium or federated blockchain rather than one in control, you have more than one in control [71]. In a consortium blockchain, a group or organization's agent people settle on choices together for benefit of the whole system [72]. We can use blockchain platforms to make the requirement negotiation process more efficient. In this process, requirements will be gathered from users, and those gathered requirements will be added in the requirement correctly, completed, and authenticated. In the second step, these user requirements will be validated by using the blockchainbased distributed ledger framework [73]. This distributed ledger will update the record efficiently. The most likely accepted requirement will be ranked as number one and then another lesser likely requirement will be ranked as number two and arranged according to their maturity level [74]. Through this voting process, all the requirements will be tagged as valid or invalid [75]. It will also distinguish between functional and non-functional requirements [76]. In the context of requirement engineering, blockchain can maintain a sequence of records, research, authorized information, transactions, negotiations, and other supporting activities and organizations [77], which as a result will increase the rate of successful projects. By using blockchain technology, the trust level on the selected functional requirements will be increased [78]. So, by using the blockchain platform in requirement negotiation, we can create requirement engineering practices that are more reliable and accessible, it can help gather requirements that are more synchronized, and the people from any place can easily gather authorized requirements more easily, which will reduce their time and efforts during the COVID-19 pandemic [79].
The studies in Table 1 show that the requirement negotiation process needs more improvement, and blockchain technology is better for implementation in the requirement negotiation process. The first five papers listed in the table describe and tell the importance of the requirement negotiation process and explain the methods used for the negotiation process; their limitation shows that the introduced methods are better suitable for small projects, but for large-scale projects, these methods should be improved. Six to nine papers are explaining the blockchain platforms and their implementation in multiple fields. In further listed papers, factors of requirement negotiation are discussed, and their limitations are given for further improvement, and blockchain platforms and their frameworks are described in detail. This helps to implement a blockchain-based framework for the requirement negotiation process. So, this research has identified factors for improvement in the requirement negotiation process using blockchain technology to make the requirement negotiation process efficient. Related studies that help in gathering and supporting information are listed in Table 1, which shows the advantages, limitations, and key factors, which are identified in related studies.
The related studies are given in Table 1 to show the understanding of requirement engineering and its processes. Requirement engineering techniques, practices, and methods are listed with their key factors, advantages, and limitations. The papers listed below outline many limitations, which include security issues regarding synchronization, low-level projects, human error, biasness, prioritization, time consumption, undefined requirements, validation, and elicitation of requirements in software.
Requirement negotiation-related studies and factors in requirement engineering are listed in Table 2, which outlines different requirement negotiation techniques and methods as well as their advantages and limitations. The limitations include centralization, applications not capable of handling a vast number of requirements, time consumption, synchronization, negotiation, trust issues, integration, the relationships between stakeholders, and conflicts between stakeholders. The most repeated challenges in techniques of the requirement negotiation process are time and budget increase, conflicts between stakeholders, communication gaps, voting process, and prioritization of requirements. These papers support research question 1. Factors and challenges in requirement negotiation are identified by literature review, which are listed in the below table. There are many risks and limitations in the methods of requirements engineering because the software success rate is lower than its production. These limitations and risks are also studied, and some are listed in Table 2. The risk identified from the papers listed below helps to improve the performance of a project and to give important aspects on which to focus.
Blockchain platforms are listed in Table 3. In this table, the advantages and limitations of blockchain platforms are listed. These platforms help to implement a framework for requirement negotiation. Blockchain platforms are very effective and secure to use. These platforms are adopted in different fields. These platforms are decentralized and effective and can help to speed up the process of the requirement negotiation process. The applications in which blockchain is used are studied and addressed in Table 3. These blockchain-based applications and blockchain methods help to give a better understanding of blockchain and help to develop a framework using the features of blockchain. Blockchainbased applications are more secure and efficient than other applications. Blockchain-based applications help to develop a framework for the requirement negotiation process.
Related studies that help in gathering and supporting information are in Tables 1 and 2, which show the advantages, limitations, and key factors that are identified in related studies [80]. The literature in Table 2 is related to the factors of requirement negotiation and its limitations, and it also includes information about the platforms, applications, framework, strengths, and weaknesses of blockchain technology. The limitations in the requirement negotiation process help ascertain the main factors to focus on in this research area and can be improved using the blockchain-based framework.
Many research papers are studied thoroughly about requirement negotiation and blockchain technology. Few papers discussed factors in the requirement negotiation process. Some papers show the gaps in the requirement negotiation process, and some papers help to find the improvements in the requirement negotiation process [81]. A list of factors of requirement negotiation is identified that need further improvement. The factors will be validated through the survey in which questions about factors will be asked from respondents.
There is a need for improvement in factors of the requirement negotiation process, so we have identified that these factors can be improved using blockchain-based technology. Many papers, which are listed in Table 3, are about blockchain technology in which different features, platforms, and applications of blockchain technology are briefly explained. Types and platforms of blockchain technology are also explained, which helps to introduce a framework for the improvement of requirement negotiation process factors. The introduced framework will be based on the decentralized feature of blockchain technology, and it will be more efficient and easier to use. The introduced framework will be validated using a survey by taking the responses of experts in blockchain and requirement negotiation fields. "Customized requirement engineering practices followed by the software development organization of Pakistan" "Help us to understand the gaps in the requirement engineering process of Pakistan's organizations and other developing countries" Not prioritize efficiently, time consuming [11] "Synthesizes the underlying concepts of GORE concerning coverage of requirement engineering activities" Make requirements clear Not for large projects, not synchronized, time consuming [25] How to model goals and information requirements for data warehouses, and how to derive a conceptual multidimensional model "Helps to provides the required information to support the decision-making process" Not synchronized, techniques are not able to give the accurate results from different expert systems, requirements not defined properly [29] Better modeling and analysis of problem domains, development of richer models for capturing and analyzing non-functional requirements Helps to find out an overview of software system requirement engineering. Helps to find challenges in software engineering Not prioritized efficiently, time consuming [38] Model implementation for successful software development and requirement management Helps to produce quality software products by its model Other elicitation techniques can also be used, requirement validation is not used [23] Propose a refinement calculus for requirements engineering (Care) for gathering accurate requirements Helps to refine to create accurate unambiguous and complete requirements Lacks proper semantics, not a cost-effective evaluation [33] Adding goals in the requirement negotiation process To improve the quality of requirement negotiation "Progress in RE activities are felt to be harder to measure, the benefits of using RE technologies are felt to be hard to measure, requirements documents are generally perceived as big, complex, outdated, and too far away from the executable products customers are paying for" Two techniques of requirement prioritization are described, which help in making requirement negotiation.
Other models are neglected, time consuming, changeable, centralized [1] "To motivate the need for negotiation in requirements engineering to introduce fundamental concepts and terminology, and to provide an overview about negotiation research" "Presenting a general negotiation process, typical negotiation stages. Framework covering important dimensions of requirements negotiation comprising the conflict resolution strategy, the collaboration situation of the stakeholders, and the degree of negotiation tool support discussing and classifying existing negotiation tools using the general process and framework" Not for large projects, not synchronized, time-consuming [44] "Identifies decision problem structures in software requirements negotiations using a literature-based research approach" "Helps to select appropriate scenarios of decision problem structures in software requirements negotiations" Not for large projects, not synchronized, time consuming [50] Explains requirement negotiation process and its dimensions Helps to identify the purpose of doing requirement negotiation Not synchronized, techniques cannot be used for every kind of system, a requirement not defined properly [6] To create requirement negotiation process systematic Systematic requirements Prioritize requirements Time-consuming [7] Introduces a replicable web-based framework To create a bargaining-type negotiating process that is easier with the framework Complex and time and efforts consuming [74] Concept requirement maturity is proposed to give a degree to requirements Prioritize requirements by their given maturity level We should use approach improvement. Stability analysis, large-scale trial usage extension [75] "Offer useful tools to aid stakeholders [in the] negotiation process" Helps rank the requirements "Option generation and negotiation planning, criteria exploration and objective assessment for option score and criteria weight, systematic post-analysis for agreement and graphical support" [31] "Propose a formal model of Service Level Agreement (SLA)-based negotiations" "Allows agent-based multi-round SLA negotiation for making dynamic offers influenced by varying client requirements, different pricing models, and decision strategies" Multiple rules, multiple providers, multiple rounds, complex, not dynamic, and customized Table 2. Cont. [76] "Proposes a broker-based BS negotiation framework that can automatically determine the non-functional requirements"

Ref. Key Factors Merits Demerits
Helps to determine non-functional requirements and create a difference between functional and non-functional requirements "Integration of this work with a BS composition approach" [78] "The policies participating trust negotiation is modeled as a Negotiation Petri Net, and a trust negotiation MSC strategy is proposed" To use for security requirements in which user can trust that they are the best "Complete trust negotiation model, which includes credential and policy rules, the trust negotiation strategies, consistency detectors, etc., will be built for the project [24] "Easy WinWin has been successfully applied to real-client custom development projects" Improved involvement and interaction Defined process, support for different collaboration scenarios, improved prioritization, and elaboration of issues Not efficient with the latest technology [27] "Evaluated the relative effect of requirements hand-off, analysis, and negotiation on requirements and design volatility and requirements understanding" Ease challenges in the collaboration between marketing and development "Address the understanding of requirements communication by evaluating the product manager's evolving requirements understanding" [32] "Research in distributed and mobile requirement negotiation, describe the Easy WinWin, identify issues in face-to-face negotiations" "Overcome issues with distributed and mobile tools.
Broadband face-to-face interactions [and the] distributed ARENA II tool provides sufficient support for distributed teams" "Complete, correct, and consistent requirements, quality of the gathered requirements need to be evaluated" [34] "Proposed an interest-based learning activity negotiation system" "Negotiation learning content/activity plays an important role in effective learning; learners will have more opportunities to learn in a personalized style and with adaptive content" Needs adoption of other knowledge models such as cognitive maps, or Bayesian networks [35] To overcome language problems among stakeholders who are remotely negotiating, software requirements including machine translation and speech recognition are merged to generate a mobile speech translator Overcome language gap Results are not confirmed [62] An automated service negotiation framework is introduced in these parties as negotiators are involved, who negotiate to reach an agreement Negotiators can choose different negotiation strategies according to their preference and their requirements and preference Develop negotiation mechanism experimental service platform, which is called Safary, Table 2. Cont.

Ref. Key Factors Merits Demerits
[2] Introduced negotiation spiral model "Well-aligned requirements by all the stakeholders, improved system quality, a sound basis for resource estimation, and less resource wastage "Negotiation process because of tacit individual and undeclared perspectives perceptions will lead a sub-optimal set of requirements" [40] Introduced Winbook with a social networking-based way of capturing and negotiating Improve the requirement negotiation process Time-consuming [46] "Make use of the basic principles of requirements negotiation and define reasoning rules to reason about stakeholder groups for requirements negotiation, based on an extended i* modeling framework" Improve power relationships between stakeholders Still, there are challenges that affect the power relationship between stakeholders [43] "Discourse is reframed as a requirements process, suggest using techniques of requirements engineering (RE) and Crowd RE, propose video as a medium for communicating problems" "With the explicit goal to state software, hardware, and organizational requirements, getting stakeholders involved" "Can be used directly for developing innovative software, which will speed up the implementation of a decision" [48] "Presenting software quality models as a framework to support the negotiation of both initial and rising requirements and the settlement of stakeholders' concerns" Approach supporting requirement negotiation between stakeholders and solving their conflicts The approach did not present significant drawbacks [36] "How requirements negotiation collaborates to ecosystem's health and success, defining negotiation strategies along Software Ecosystem evolution considering the Software Platform Management" To develop improved quality software ecosystems Not discussing the results after implementation [21] "An automated genetic-based approach for security negotiation among services is conducted" Improving security, to get an acceptable security level for both sides Securing only the web service and not covering all the conditions of web service [41] "Using an instrumented version of the USC WinWin groupware system" To increase the quality of requirements Not suitable for the latest technology-based negotiation [47] "Extended the WinWin Negotiation Model by incorporating sustainability concepts" "Includes the ability to consider the impact of requirements on sustainability, [which] also allows practitioners to reflect on requirements and their effects on sustainability" Further validate the initial findings and answer open questions [10] "A trust vector-based sensitive information protecting scheme is presented based on the existing schemes" Recovers bugs, improved reliability Not very efficient according to the advancement in technology Table 2. Cont.

Ref. Key Factors
Merits Demerits [42] Collaborative requirements elicitation and management WinWin negotiation framework is used to give better management in the requirement negotiation process on social media "Could use with a relatively low learning curve and continually monitor the commitment status of the teams" [30] Investigate common risk factors and proposed the top ten lists of software risks Helps in project planning and control purposes during the project execution Repetitions in the model, not secure, complex [37] "Basic introduction of expert systems consisting of their composition, and basic characteristics and advantages" "Helps to find suitable and best techniques during requirement engineering process, [which] is vital" Techniques discussed are time-consuming, not secure [39] "Address the bias problem while identifying and prioritizing stakeholders" "Identified the stakeholders and their requirements more efficaciously; prioritized the stakeholders significantly" Not covering all the application areas [77] "Blockchain architecture as a new system solution to supply a reliable mechanism for secure and efficient medical record exchanges" "Revolutionize the e-Health industry with greater efficiency by eliminating many of the intermediates" Does not prioritize efficiently, time consuming [51] "Focus on the reasoning support, which is not fairly addressed by existing Semantic Wikis" To help find requirements that are complex and different from all requirements Cost and time effectiveness [24] Providing knowledge about handling risk factors occurring in software development Strategies are provided to reduce risk factors Strategies are provided for a comprehensive list of risk factors [3] Software project factors are identified, prioritized, and discussed in this research The most important factors for software success are cost, time, and effort Data are not gathered from latest projects success rate [13] Categories of risks according to their dimensions are identified, listed, and discussed Helps to identify that budget, time, and complexity of process are the most important factors to improve These identified risks can further be handled with the latest technologies [12] Factors are identified for both build versus buy software Factors defined that need improvement in both build and buy software cases Applicable on limited types of software [22] "Determines relative impact of risk factors on the software development activities" "Relative impact ratio ensures determining the direct and indirect impacts of risk on all activities of software development" "Risks factors can be better identified, and by using the avoidance strategies, they can be better avoided" [26] "A thorough handling and avoidance strategy is proposed for the identification of risk factors when the incremental model is used for software development" "Advised strategies are expected to provide a helping hand for the avoidance or mitigation of a risk factor" "Identified risk factors may grow in future and so can be the mitigation and avoidance strategies" [49] Proposes a Risk Reduction Model that minimizes risk and reduces the cost of development for large-scale projects without spending too many resources Minimize risks, budget, resources, and time Not applicable for small scale projects Table 3. Bibliometric analysis of blockchain platforms and applications.

Ref. Key Factors
Merits Demerits [14] Design a high-performance blockchain platform, using technologies Efficient connection provides higher consensus efficiency while guaranteeing the decentralization, provides higher efficiency Repetitions in the model, not secure, complex [53] Discussed whether Blockchain platform can improve the performance of supply chain sustainability Positive impacts of blockchain on three pillars of sustainability, governance, social equity and protection.
This article neither do not estimates correlations and do not finds casual inference between performance of performance of sustainability and blockchain based supply chain. [73] Using air-gapped wallet techniques Most secure implementation possible, provides an upper bound on wallet security, can help the user identify the weakest parts of their air-gapped wallet scheme Wallet analysis and quantification [71] Propose a compacted DAG-based blockchain protocol CoDAG that greatly improves the throughput and performance of blockchain Improve the linear structure of traditional blockchain protocol Tune the parameters for better performance; combine with hybrid consensus to improve the throughput further [45] Propose a novel hybrid blockchain crowdsourcing platform to achieve decentralization and privacy preservation Ensure secure communication between their users and the workers, decentralization, and privacy preservation Test the performance of the public chain as well as the interaction between the public chain and the subchains [58] Proposed system uses big data processing techniques Provides a secure, robust, and scalable way to process SQL queries over any blockchain Time delays [16] Proposed a blockchain for mobile communication Secure communication Techniques discussed are time-consuming, not secure [79] Discussing blockchain achievements and future work Helps to find future work in blockchain Other elicitation techniques can also be used, requirement validation is not used [20] Combining the transaction link of energy "Internet with blockchain technology" "Can effectively solve the transaction friction, maintain the order of the market, and guarantee the legitimacy of the transaction" Not covering all the application areas [44] "The principle of fast authentication with an APG-PBFT algorithm is present in this paper Can reduce the authentication frequency Not prioritized efficiently, time consuming [59] Identify the cost of verification and networking Gives an overview of cost factors of blockchain Repetitions in the model, not secure, complex [64] Presents blockchain and compares the various platforms on which blockchain can be implemented Illustrates the use of blockchain applications for building the secure infrastructure of cloud computing Techniques discussed are time consuming, not secure Table 3. Cont.

Ref. Key Factors
Merits Demerits [65] Introduction and explanation of bitcoin, Brito and Castillo both support innovation, clarity Helps to understand the process of Bitcoin and digital trading using Bitcoin Other elicitation techniques can also be used, requirement validation is not used [66] "Private blockchain is chosen to solve the problem of mutual trust between users, load aggregators, and power grids in multi-level demand-response reliable communication" Demand response automation problem will be solved easily Not covering all the application areas [68] "New life cycle model of power internet financial products was proposed under the blockchain effects" Helps to improve the quality of software projects Not for large projects, not synchronized, time-consuming [72] "Propose computationally practical procedures for digital time-stamping" "Infeasible for a user either to back-date or to forward date his document, even with the collusion of a time-stamping service" Not synchronized, techniques are not working for every expert system, requirements not defined properly [10] Identification of future prospects challenges in blockchain technology Helps to improve the quality of blockchain-based frameworks Not identifying all the future prospects [52] "Propose a novel hybrid blockchain architecture that combines private and public blockchain to allow sensitive bids to be opened on a private blockchain" "Only the auctioneer can learn the bids, and no one else, efficient in terms of run time and monetary cost" "Create a framework for multiple blockchains hosting different applications and show how we can better preserve privacy when private, public, and consortium blockchains are combined" [61] "Proposes a privacy-aware PKI system based on permission BCs" "The separation of user registration and authorization, and has the characteristics of anonymity and conditional traceability, to protect users' identity privacy" "Security can be further improved" [54] "Propose a native blockchain voting protocol for peers to vote over their existing blockchain network without the need of any trusted or third party" "Facilitates decision making in a decentralized and secure manner, end-to-end privacy, and possesses desirable properties such as detect ability and correct ability against cheating" "Need to perform formal security analysis, potential security attacks, such as cartel attack, should be tested against the design" The framework is applied to malicious node detection where malicious agents are excluded from blockchain consensus Detecting and excluding malicious nodes Can use for consensus calculation, where agent contribution depends on their prior performances [67] "Propose a hybrid architecture of using both blockchain and edge nodes to impose attribute-based access control of EHR data" "To execute smart contracts to impose ACL policy and to record legitimate access events into blockchain" "Investigate novel consensus protocol designs for the proposed mechanism to achieve better performance" Table 3. Cont.

Ref. Key Factors
Merits Demerits [70] "Construct a trust relationship model according to the equipment communication characteristics of intelligent manufacturing CPS system" "Can make statistical analysis of communication data in the system, improve the concurrency of the system" Can be further improved [15] "Using employment of blockchain in RE market and represent the facilities it can give to the RE market" "Offer meaningful tools for a game-theoretic stable-priced market, process integrity, network reliability and longevity, faster transactions, and lower transaction costs" The architecture proposed can be more flexible and simpler [57] "Proposed a hierarchical storage structure to store the majority of the blockchain in clouds, and maintain the most recently generated blocks in a blockchain overlay network" "Maintain both blocks and transactions generated by the IoT networks" "Work on the implementation of the proposed blockchain-based IoT architecture in more real IoT applications" [69] "Proposed an approach to increase the cost of a successful 51% double-spending attack on Proof-of-Work types of blockchain protocols" "Utilizes the frequency rate of miners in history blocks and calculates the total Historical Weighted Difficulty to determine if a branch switch is needed, can improve smaller blockchain security drastically with easy integration" Only applicable on Ethereum [60] Investigate the impact of a wide range of network latency configuration on blockchain security Quantify blockchain security Time spent [56] "Propose fast chain to scale the effective block rate of blockchain systems" "Reduces the block propagation time through its informed neighbor selection policy, effective when nodes have different mining powers" "Time can be reduced by more effective techniques" [18] "Proposed the scheme that the transactions and their history in the permissioned blockchain can be verified and concealed from the permission-less blockchain" "Transactions and their history in a permissioned blockchain can be verified and concealed from a permission-less blockchain" "Time consuming" [19] "Proposed a trust management framework for blockchain-based supply chain applications" "Address the issue of trust associated with the quality of commodities and the entities logging data on the blockchain" "Different network models will affect the average throughput and latency of the system" Blockchain technology will be very helpful in the requirement negotiation process. Not only it will help developers to gather requirements from the user but also help research students and researchers to gather validated and prioritized requirements [82]. Furthermore, it will help society, because well prioritized, managed, and quality requirements will help develop quality products that will be improved, easy, efficient, and reliable for the users and will help society in efficiently fulfilling their tasks.

Problem Statement
Quality in requirements engineering practices creates quality software projects, so there is a need to improve the quality of requirement engineering practices for COVID-19 software projects. Requirement engineering uses many algorithms and processes to gather well-negotiated requirements. However, the requirement negotiation is a complex and time-consuming task. Although many techniques and algorithms are used to make it easy and efficient, but still, there is a lacking in the quality of COVID-19 software projects. Blockchain technology is being adopted in many fields and applications to improve the quality, security, reliability, and speed of projects. So, we can use blockchain platforms in requirement engineering practices to gather more accurate requirements and to create improved COVID-19 software projects. Blockchain-oriented requirement engineering will improve the quality and reliability of COVID-19 software projects. By using this technology in requirements engineering practices, the success rate of software projects related to COVID-19 is expected to improve.

Objective
The objective of this research has been studied with the help of the following subobjectives: 1.
To study the process of requirement elicitation, validation, and negotiation.

3.
To study the strength and weaknesses of blockchain.

Research Questions
Requirement negotiation is a difficult and time-consuming process that includes requirement elicitation, validation, prioritization, and negotiation. This process of requirement negotiation can be improved by using a blockchain-based framework.
The following research questions are addressed in this research: RQ1. What is the state of art in requirement negotiation? RQ2. How blockchain can help improve the requirement engineering process?

Methodology
The purpose of requirement engineering is to gather quality requirements to develop quality software products. However, there is still a lack of quality in software development, due to which requirement negotiation is facing some challenges, and the success rate of the software is less since COVID-19. Mixed method research will be conducted to obtain validated results. First, a systematic literature review is conducted to gather related studies through which we have investigated the factors and challenges in the requirement negotiation process, and we have also identified platforms and applications of the blockchain technology. A systematic literature review includes a thorough study of the latest research papers and books to identify challenges in the requirement negotiation process. This shows that these factors need more improvement to create successful software projects for COVID-19. To validate these challenges of requirement negotiation both, quantitative and qualitative methods will be used. The quantitative method includes a survey in which a questionnaire will be distributed among the sample population. The sample population will be experienced in the field of software engineering and blockchain. In the qualitative method, a focus group meeting will be arranged in which seven to nine members will par-Sustainability 2021, 13, 6748 20 of 25 ticipate. These members will be from the field of requirement engineering and blockchain technology.
A list of questions will be asked from both respondents of the survey and focus group. Half the questions will be about the challenges in the requirement negotiation process and other questions will be about the improvement in these challenges using blockchain technology. Respondents will give their reviews according to their knowledge and experience. The results of both methods (survey and focus group) will be stored separately.
After conducting the results from both qualitative and quantitative methods, a triangulation process will be applied to both the results of the qualitative and quantitative methods. The triangulation process will give the final result based on the dominant status. This will support the implementation of blockchain-based requirement engineering to create successful software for COVID-19. A structural view of the methodology is shown in Figure 2.
chain technology. A systematic literature review includes a thorough study of the latest research papers and books to identify challenges in the requirement negotiation process. This shows that these factors need more improvement to create successful software projects for COVID-19. To validate these challenges of requirement negotiation both, quantitative and qualitative methods will be used. The quantitative method includes a survey in which a questionnaire will be distributed among the sample population. The sample population will be experienced in the field of software engineering and blockchain. In the qualitative method, a focus group meeting will be arranged in which seven to nine members will participate. These members will be from the field of requirement engineering and blockchain technology.
A list of questions will be asked from both respondents of the survey and focus group. Half the questions will be about the challenges in the requirement negotiation process and other questions will be about the improvement in these challenges using blockchain technology. Respondents will give their reviews according to their knowledge and experience. The results of both methods (survey and focus group) will be stored separately.
After conducting the results from both qualitative and quantitative methods, a triangulation process will be applied to both the results of the qualitative and quantitative methods. The triangulation process will give the final result based on the dominant status. This will support the implementation of blockchain-based requirement engineering to create successful software for COVID-19. A structural view of the methodology is shown in Figure 2.

Discussion
Factors for the improvement and reliability of requirement engineering practices for successful COVID-19 software projects are identified, and time consumption is a serious problem in requirement negotiation that can be improved using blockchain-based technology, because it offers speed in data processing. Most of the time, budgets are exceeded due to the use of all the invalid and valid requirements. The blockchain-based framework will help to automatically validate the requirements in less time. This will also help to complete the COVID-19 software projects under a specific budget, and all the invalid and unimportant requirements will be neglected, so the cost will be applied only on valid requirements. During the requirement negotiation process, conflicts between stakeholders are a common problem that takes more time, cost, and effort. Using blockchain in this process will automatically validate the requirements using its voting algorithms, and it will reduce the conflicts between stakeholders. Decision-making problems will also be solved because of the voting algorithms of a blockchain framework. The quality of software projects will improve because the blockchain framework will produce validated and prioritized requirements. Negotiation through social networking is still facing problems, and it lacks quality. Therefore, blockchain implementation will help all the stakeholders vote on the requirements at a specific time. It will decrease the time consumption and ambiguous requirements, and the voting of non-technical stakeholders will also be considered using specific voting. This will improve the negotiation using blockchain-oriented technology; meanwhile, inconsistent requirements also cause the failure of projects, so the consistency of requirements can be improved using the blockchain-based platform. The power relationships between stakeholders will be improved, requirement validation and prioritization will also be improved due to the voting algorithms in a blockchain-based system. These factors can be improved using innovative blockchain-based technology for the reliability of COVID-19 software, which is now being adopted in every field of life. Through using this technology in requirement engineering practices, most of the listed factors will be improved, and the success rate of COVID-19 software projects will increase.
The blockchain-based framework will consist of three main components: a requirement pool, distributed ledger, and decentralized network of stakeholders. A decentralized feature of blockchain will be used, which will contain a decentralized ledger. This decentralized, shared ledger will store all the records of stakeholders. The records will be stored automatically as the stakeholders enter data. Once data are entered, the record will not be changed or tempered. The management will also be a part of the network that gives access to authorized stakeholders. Once the requirement negotiation process is done on a specific project, the management will restrict the access to the user or customer of the current project and give access to the customer of the new project. It will not be an open-source project. It will be secured, and the results of this framework will be validated by taking votes on requirements from stakeholders.
The use of the blockchain-based platform in requirement engineering will help to improve the methodological and operational process of requirement negotiation. The improvement in the requirement negotiation process will help the developers, management team, and stakeholders to complete the requirement negotiation process with improved quality and within a specific time frame and budget. The improved challenges of the requirement negotiation process are listed in Table 4. Table 4. Blockchain methodological contribution in facilitating technology for COVID-19 software.

1.
Help to gather correct complete requirements 2.
Requirement engineering processes will be secure 3.
Requirement engineering processes will be easily accessible 4. Will reduce their time and efforts of developers with improved quality of requirements

5.
Will ensure consistency and synchronization of requirements 6. The failure rate of projects will be reduced 7.
The rate of successful projects will be increased The implementation of the blockchain-based framework will help researchers, scientists, academia, and students in many ways. The improvement in factors will help them fulfill their tasks on time and in an effective way. These improvements are given in Table 5. Table 5. Blockchain research contribution in facilitating technology for COVID-19 software.

No.
Blockchain Research Contribution

1.
Researchers will easily negotiate for data elicitation and validation 2.
Students will further use blockchain for better performance of methods and algorithms used in software engineering 3.
The quality of the requirement negotiation process will be improved 4.
Help researchers to gather quality data.

5.
Requirements will be prioritized according to their importance and need 6.
Requirements will be validated

Conclusions
The global pandemic COVID-19 environment needs the whole world to work from home through different software. The quality of the project involves how well its require-ments were gathered and fulfilled. Many techniques and algorithms are used to make the requirement negotiation process easier and efficient, but still, there is a lacking in the quality of projects. Requirement negotiation is a complex and prolonged task. To improve the quality of COVID-19 software projects, the requirements must be gathered accurately and completely. For this purpose, we can use blockchain platforms in requirement engineering practices to make the requirement negotiation process more efficient. The innovation of blockchain is a revolution in frameworks of record. The idea of blockchain innovation is spreading widely because the concept can now be applied to any requirement for trustworthy records. Some applications of blockchain are digital identity and tokenization. Therefore, the purpose of our research is to identify the factors that can be improved and reliable using blockchain-based technology in requirement engineering for COVID-19 software projects. Factors that are identified for improvement in requirement engineering practices using blockchain technology are quality, time, social networks, conflicts in decision making, stakeholder relationships, negotiation process, validation, and consistency of requirements. All these factors are important for producing quality software requirements for COVID-19. We can use blockchain platforms to make these factors of requirement engineering practices more reliable and effective. This will help to create successful projects that will reduce the rate of failure of projects of COVID-19.