Open Access. Powered by Scholars. Published by Universities.®
- Discipline
-
- Software Engineering (152)
- Engineering (29)
- Programming Languages and Compilers (29)
- Artificial Intelligence and Robotics (22)
- Computer Engineering (15)
-
- Databases and Information Systems (15)
- Electrical and Computer Engineering (10)
- Numerical Analysis and Scientific Computing (7)
- Business (6)
- Systems Architecture (5)
- Graphics and Human Computer Interfaces (4)
- Other Computer Sciences (4)
- Theory and Algorithms (4)
- Education (3)
- Life Sciences (3)
- Management Information Systems (3)
- Operational Research (3)
- Operations Research, Systems Engineering and Industrial Engineering (3)
- Social and Behavioral Sciences (3)
- Bioinformatics (2)
- Business Administration, Management, and Operations (2)
- Computer and Systems Architecture (2)
- Discrete Mathematics and Combinatorics (2)
- Electrical and Electronics (2)
- Engineering Education (2)
- Environmental Sciences (2)
- Higher Education (2)
- Law (2)
- Institution
-
- Singapore Management University (55)
- Air Force Institute of Technology (44)
- City University of New York (CUNY) (23)
- Loyola University Chicago (12)
- University of Nebraska - Lincoln (11)
-
- Western University (8)
- New Jersey Institute of Technology (6)
- Portland State University (6)
- Boise State University (5)
- Clemson University (5)
- Regis University (5)
- Brigham Young University (4)
- California State University, San Bernardino (4)
- Institute of Business Administration (4)
- TÜBİTAK (4)
- University of Texas at El Paso (4)
- Edith Cowan University (3)
- Louisiana State University (3)
- Montclair State University (3)
- Old Dominion University (3)
- Chapman University (2)
- East Tennessee State University (2)
- Governors State University (2)
- Nova Southeastern University (2)
- St. Mary's University (2)
- Andrews University (1)
- Bridgewater College (1)
- California Polytechnic State University, San Luis Obispo (1)
- Cleveland State University (1)
- Dakota State University (1)
- Publication Year
- Publication
-
- Theses and Dissertations (50)
- Research Collection School Of Computing and Information Systems (49)
- Open Educational Resources (18)
- Computer Science: Faculty Publications and Other Works (12)
- Electrical and Computer Engineering Publications (8)
-
- School of Computing: Dissertations, Theses, and Student Research (8)
- Computer Science Faculty Publications and Presentations (7)
- All Dissertations (5)
- Dissertations (5)
- Regis University Student Publications (comprehensive collection) (5)
- Dissertations and Theses Collection (Open Access) (4)
- International Conference on Information and Communication Technologies (4)
- Theses Digitization Project (4)
- Turkish Journal of Electrical Engineering and Computer Sciences (4)
- Publications and Research (3)
- Theses (3)
- All Capstone Projects (2)
- CCAC Theses and Dissertations (2)
- Dissertations and Theses (2)
- Dissertations, Theses, and Capstone Projects (2)
- Electronic Theses and Dissertations (2)
- LSU Doctoral Dissertations (2)
- Mathematics, Physics, and Computer Science Faculty Articles and Research (2)
- Research Collection Yong Pung How School Of Law (2)
- Theses, Dissertations and Culminating Projects (2)
- ASPIRE 2026 (1)
- Articles (1)
- Boise State University Theses and Dissertations (1)
- COURI Symposium Abstracts, Spring 2012 (1)
- COURI Symposium Abstracts, Summer 2012 (1)
- Publication Type
Articles 151 - 180 of 252
Full-Text Articles in Computer Sciences
Mutual Assessment In The Social Programmer Ecosystem: An Empirical Investigation Of Developer Profile Aggregators, Leif Singer, Fernando Figueira Filho, Brendan Cleary, Christoph Treude, Margaret-Anne Storey, Kurt Schneider
Mutual Assessment In The Social Programmer Ecosystem: An Empirical Investigation Of Developer Profile Aggregators, Leif Singer, Fernando Figueira Filho, Brendan Cleary, Christoph Treude, Margaret-Anne Storey, Kurt Schneider
Research Collection School Of Computing and Information Systems
The multitude of social media channels that programmers can use to participate in software development has given rise to online developer profiles that aggregate activity across many services. Studying members of such developer profile aggregators, we found an ecosystem that revolves around the social programmer. Developers are assessing each other to evaluate whether other developers are interesting, worth following, or worth collaborating with. They are self-conscious about being assessed, and thus manage their public images. They value passion for software development, new technologies, and learning. Some recruiters participate in the ecosystem and use it to find candidates for hiring; other …
Software Requirements As Executable Code, Karen Eileen Wasielewski Morand
Software Requirements As Executable Code, Karen Eileen Wasielewski Morand
Regis University Student Publications (comprehensive collection)
This project analyzed the effectiveness of using Story Testing frameworks to create an application directly from user specifications. It did this by taking an example business application with "traditional" specifications and rewriting those specifications in three different Story Testing Frameworks - Cucumber, FitNesse, and JBehave. Analysis of results drew the following conclusions: 1) Story Testing can help prove a project's completeness, 2) Specifications are still too technical, 3) Implementation is not overly complex, and 4) Story Testing is worth it. It proposed future research around evaluating natural languages and seeking more user-friendly ways of writing specifications in a natural language.
A Guide To Documenting Software Design For Maximum Software Portability For Software Defined Radios, Joseph Snively
A Guide To Documenting Software Design For Maximum Software Portability For Software Defined Radios, Joseph Snively
Regis University Student Publications (comprehensive collection)
The use of software defined communications systems is growing incredibly fast. The field of software engineering as a discipline has not adequately addressed the subject of software portability which makes large and costly software development efforts less ready to port to future platforms. By understanding the causes of portability problems, they can either be avoided altogether in development or very well documented so that they are easier to overcome in future efforts. Literature, case studies, and surveys are used to collect opinions and information about large software programs where portability is a desirable characteristic in order to best establish the …
Introduction Of Key Performance Indicators To The Dynamics Of Planned Change: A Modern Study, Tommy Wells
Introduction Of Key Performance Indicators To The Dynamics Of Planned Change: A Modern Study, Tommy Wells
Regis University Student Publications (comprehensive collection)
A private High Technology firm whose headquarters are located in the Midwest has just completed several upgrades to replace an in-house legacy application system in which the primary use was to track defects of the firm's custom made software. The firm's implementation of a third party's software suite to replace the in-house legacy application was studied using a case study method, which implemented key performance indicators to the change theory called "The Dynamics of Planned Change" introduced by Lippitt, Watson, and Westley. The key performance indicators were introduced as a way to determine if the firm's actions could be validated …
Palantir: Early Detection Of Development Conflicts Arising From Parallel Code Changes, Anita Sarma, D F. Redmiles, Andre Van Der Hoek
Palantir: Early Detection Of Development Conflicts Arising From Parallel Code Changes, Anita Sarma, D F. Redmiles, Andre Van Der Hoek
School of Computing: Faculty Publications
The earlier a conflict is detected, the easier it is to resolve—this is the main precept of workspace awareness. Workspace awareness seeks to provide users with information of relevant ongoing parallel changes occurring in private workspaces, thereby enabling the early detection and resolution of potential conflicts. The key approach is to unobtrusively inform developers of potential conflicts arising because of concurrent changes to the same file and dependency violations in ongoing parallel work. This paper describes our research goals, approach, and implementation of workspace awareness through Palantır and includes a comprehensive evaluation involving two laboratory experiments. We present both quantitative …
Generating Minimal T-Wise Test Suites, Luis C. Gutierrez, Carlos Nieto, Francisco Zapata, Martine Ceberio
Generating Minimal T-Wise Test Suites, Luis C. Gutierrez, Carlos Nieto, Francisco Zapata, Martine Ceberio
COURI Symposium Abstracts, Summer 2012
As the use of computing devices increases every day, users rely on the adequate functioning of software. When software is not tested properly, it can yield erroneous information or a complete failure of the system. The NIST estimates that defective software cost the United States economy close to $60 billion a year. Therefore, there is a need to develop software testing techniques that are time and cost effective. Fully testing software under all possible combinations of parameters values cannot be reduced. However, testing can focus on covering all combinations of subsets of parameters and empirical data shows that doing so …
Pointcut Rejuvenation: Recovering Pointcut Expressions In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Phil Greenwood, Awais Rashid, Harry Xu
Pointcut Rejuvenation: Recovering Pointcut Expressions In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Phil Greenwood, Awais Rashid, Harry Xu
Publications and Research
Pointcut fragility is a well-documented problem in Aspect-Oriented Programming; changes to the base code can lead to join points incorrectly falling in or out of the scope of pointcuts. In this paper, we present an automated approach that limits fragility problems by providing mechanical assistance in pointcut maintenance. The approach is based on harnessing arbitrarily deep structural commonalities between program elements corresponding to join points selected by a pointcut. The extracted patterns are then applied to later versions to offer suggestions of new join points that may require inclusion. To illustrate that the motivation behind our proposal is well founded, …
A Radio Link Quality Model And Simulation Framework For Improving The Design Of Embedded Wireless Systems, Sally Wahba
A Radio Link Quality Model And Simulation Framework For Improving The Design Of Embedded Wireless Systems, Sally Wahba
All Dissertations
Despite the increasing application of embedded wireless systems, developers face numerous challenges during the design phase of the application life cycle. One of the critical challenges is ensuring performance reliability with respect to radio link quality. Specifically, embedded links experience exaggerated link quality variation, which results in undesirable wireless performance characteristics. Unfortunately, the resulting post-deployment behaviors often necessitate network redeployment.
Another challenge is recovering from faults that commonly occur in embedded wireless systems, including node failure and state corruption. Self-stabilizing algorithms can provide recovery in the presence of such faults. These algorithms guarantee the eventual satisfaction of a given state …
Generating Minimal Pair-Wise Covering Test Suites, Luis C. Gutierrez ^, Martine Ceberio *
Generating Minimal Pair-Wise Covering Test Suites, Luis C. Gutierrez ^, Martine Ceberio *
COURI Symposium Abstracts, Spring 2012
Software is ubiquitous and needs to be reliable. Software testing therefore plays an important role in software development. Proper testing a software system informs about its quality and reliability so as to prevent unexpected behavior during system execution. One of the methods to prevent failures consists in testing a system under different input values, but when all possible input values are tested, an impractical number of test cases might result. In software testing, pair-wise testing is a combinatorial technique which uses combination of pair input values to generate test cases. Using pair-wise testing dramatically reduces the number of test cases, …
Analysis And Characterization Of Author Contribution Patterns In Open Source Software Development, Quinn Carlson Taylor
Analysis And Characterization Of Author Contribution Patterns In Open Source Software Development, Quinn Carlson Taylor
Theses and Dissertations
Software development is a process fraught with unpredictability, in part because software is created by people. Human interactions add complexity to development processes, and collaborative development can become a liability if not properly understood and managed. Recent years have seen an increase in the use of data mining techniques on publicly-available repository data with the goal of improving software development processes, and by extension, software quality. In this thesis, we introduce the concept of author entropy as a metric for quantifying interaction and collaboration (both within individual files and across projects), present results from two empirical observational studies of open-source …
Commit Patterns And Threats To Validity In Analysis Of Open Source Software Repositories, Alexander Curtis Maclean
Commit Patterns And Threats To Validity In Analysis Of Open Source Software Repositories, Alexander Curtis Maclean
Theses and Dissertations
In the course of studying the effects of programming in multiple languages, we unearthed troubling trends in SourceForge artifacts. Our initial studies suggest that programming in multiple languages concurrently negatively affects developer productivity. While addressing our initial question of interest, we discovered a pattern of monolithic commits in the SourceForge community. Consequently, we also report on the effects that this pattern of commits can have when using SourceForge as a data-source for temporal analysis of open source projects or for studies of individual developers.
Significantly Reducing The Processing Times Of High-Speed Photometry Data Sets Using A Distributed Computing Model, Paul Doyle, Fredrick Mtenzi, Niall Smith, Adrian Collins, Brendan O'Shea
Significantly Reducing The Processing Times Of High-Speed Photometry Data Sets Using A Distributed Computing Model, Paul Doyle, Fredrick Mtenzi, Niall Smith, Adrian Collins, Brendan O'Shea
Other
The scientific community is in the midst of a data analysis crisis. The increasing capacity of scientific CCD instrumentation and their falling costs is contributing to an explosive generation of raw photometric data. This data must go through a process of cleaning and reduction before it can be used for high precision photometric analysis. Many existing data processing pipelines either assume a relatively small dataset or are batch processed by a High Performance Computing centre. A radical overhaul of these processing pipelines is required to allow reduction and cleaning rates to process terabyte sized datasets at near capture rates using …
Mechanical And Modular Verification Condition Generation For Object-Based Software, Heather Harton
Mechanical And Modular Verification Condition Generation For Object-Based Software, Heather Harton
All Dissertations
The foundational goal of this work is the development of mechanizable proof rules and a verification condition generator based on those rules for modern software. The verification system will be modular so that it is possible to verify the implementation of a component relying upon only the specifications of underlying components that are reused. The system must enable full behavioral verification. The proof rules used to generate verification conditions (VCs) of correctness must be amenable to automation. While automation requires software developers to annotate implementations with assertions, it should not require assistance in the proofs. This research has led to …
Online Assistance, Imran Khan
Online Assistance, Imran Khan
All Capstone Projects
From the introduction: "This project entitled Online Assistance is efficient and designed to do only one thing, facilitate communications between help desk staff and end users. The overriding design goal is to be as simple and frictionless for both users and help desk staff as is possible. It can leverage SQL server for membership and role based security or integrate with windows authentication and Active Directory groups.
Software Engineering occurs as a consequence of a process called “System Engineering”. Instead of concentrate solely on software, system-engineering focuses on a variety of elements like Analyzing, Designing and organizing these elements into …
Gender Equality With Agile In Software Engineering, Deborah P. Martin
Gender Equality With Agile In Software Engineering, Deborah P. Martin
Regis University Student Publications (comprehensive collection)
Women are under-represented in information technology careers in general and in the profession of software development in particular and their numbers are declining. Previous studies on this topic have investigated whether the reason for this is due to a difference in capability arising out of their gender, or whether the reason arises from social factors. A software development methodology called “Agile†has arisen in recent years which focus on collaboration, working software, and a sustainable workweek. Studies have shown that adopting Agile techniques in the classroom helps to retain women in computer information academic curricula and that adopting them in …
Programming Language Fragmentation And Developer Productivity: An Empirical Study, Jonathan L. Krein
Programming Language Fragmentation And Developer Productivity: An Empirical Study, Jonathan L. Krein
Theses and Dissertations
In an effort to increase both the quality of software applications and the efficiency with which applications can be written, developers often incorporate multiple programming languages into software projects. Although language specialization arguably introduces benefits, the total impact of the resulting language fragmentation (working concurrently in multiple programming languages) on developer performance is unclear. For instance, developers may solve problems more efficiently when they have multiple language paradigms at their disposal. However, the overhead of maintaining efficiency in more than one language may outweigh those benefits. This thesis represents a first step toward understanding the relationship between language fragmentation and …
Mining Iterative Generators And Representative Rules For Software Specification Discovery, David Lo, Jinyan Li, Limsoon Wong, Siau-Cheng Khoo
Mining Iterative Generators And Representative Rules For Software Specification Discovery, David Lo, Jinyan Li, Limsoon Wong, Siau-Cheng Khoo
Research Collection School Of Computing and Information Systems
Billions of dollars are spent annually on software-related cost. It is estimated that up to 45 percent of software cost is due to the difficulty in understanding existing systems when performing maintenance tasks (i.e., adding features, removing bugs, etc.). One of the root causes is that software products often come with poor, incomplete, or even without any documented specifications. In an effort to improve program understanding, Lo et al. have proposed iterative pattern mining which outputs patterns that are repeated frequently within a program trace, or across multiple traces, or both. Frequent iterative patterns reflect frequent program behaviors that likely …
Revision Of Remote (Recursively Estimating Multi-Threaded Observation Tool Enterprise) For Commercialization, Jeongtaek Hong
Revision Of Remote (Recursively Estimating Multi-Threaded Observation Tool Enterprise) For Commercialization, Jeongtaek Hong
Theses Digitization Project
The purpose of this study is to have ReMoTe be commercialized or released as open source at some future date to the general public. ReMoTe will provide an enhanced user interface that will allow users easy to use functions and setup their projects and define their thread and phases. ReMoTe will have the ability to handle muliple projects, and specify any number of phases for any thread.
Teaching Software Engineering Project Management-A Novel Approach For Software Engineering Programs, Craig Caulfield, David Veal, Stanislaw Maj
Teaching Software Engineering Project Management-A Novel Approach For Software Engineering Programs, Craig Caulfield, David Veal, Stanislaw Maj
Research outputs 2011
In response to real and perceived short-comings in the quality and productivity of software engineering practices and projects, professionally-endorsed graduate and post-graduate curriculum guides have been developed to meet technical developments and evolving industry demands. Each of these curriculum guidelines identifies better software project management skills as critical for all graduating students, but they provide little guidance on how to achieve this. One possible way is to use a serious game - a game designed to teach and educate players about some of the dynamic complexities of the field in a safe and inexpensive environment. This paper presents the results …
A Reasoning Framework For Dependability In Software Architectures, Tacksoo Im
A Reasoning Framework For Dependability In Software Architectures, Tacksoo Im
All Dissertations
The degree to which a software system possesses specified levels of software quality attributes, such as performance and modifiability, often have more influence on the success and failure of those systems than the functional requirements. One method of improving the level of a software quality that a product possesses is to reason about the structure of the software architecture in terms of how well the structure supports the quality. This is accomplished by reasoning through software quality attribute scenarios while designing the software architecture of the system.
As society relies more heavily on software systems, the dependability of those systems …
An Organizational Maturity Model Of Software Product Line Engineering, Faheem Ahmed, Luiz Fernando Capretz
An Organizational Maturity Model Of Software Product Line Engineering, Faheem Ahmed, Luiz Fernando Capretz
Electrical and Computer Engineering Publications
Software product line engineering is an inter-disciplinary concept. It spans the dimensions of business, architecture, process, and the organization. Some of the potential benefits of this approach include cost reduction, improvements in product quality and a decrease in product development time. The increasing popularity of software product line engineering in the software industry necessitates a process maturity evaluation methodology. Accordingly, this paper presents an organizational maturity model of software product line engineering for evaluating the maturity of organizational dimension. The model assumes that organizational theories, behavior, and management play a critical role in the institutionalization of software product line engineering …
Analysis And Transformation Of Pipe-Like Web Mashups For End User Programmers, Kathryn T. Stolee
Analysis And Transformation Of Pipe-Like Web Mashups For End User Programmers, Kathryn T. Stolee
School of Computing: Dissertations, Theses, and Student Research
Mashups are becoming increasingly popular as end users are able to easily access, manipulate, and compose data from several web sources. To support end users, communities are forming around mashup development environments that facilitate sharing code and knowledge. We have observed, however, that end user mashups tend to suffer from several deficiencies, such as inoperable components or references to invalid data sources, and that those deficiencies are often propagated through the rampant reuse in these end user communities.
In this work, we identify and specify ten code smells indicative of deficiencies we observed in a sample of 8,051 pipe-like web …
The Significance Of Learning Style With Respect To Achievement In First Year Programming Students, Vivian Campbell, Michael Johnstone
The Significance Of Learning Style With Respect To Achievement In First Year Programming Students, Vivian Campbell, Michael Johnstone
Research outputs pre 2011
Study investigates the relationship between the Kolb learning style of first-year programming students and their level of achievement. The method of data collection is described and the process of hypothesis testing is explained. The students in this study were predominately converger and accommodator learning styles. Statistical tests indicated no overall difference between the results of students with different learning styles but a difference was found along Kolb's concrete-abstract axis. A number of possible impacts on teaching are discussed and suggestions made for future research.
Software Engineering: Application Of 80/20 Rule In Software Engineering Waterfall Model, Muzaffar Iqbal, Muhammad Rizwan
Software Engineering: Application Of 80/20 Rule In Software Engineering Waterfall Model, Muzaffar Iqbal, Muhammad Rizwan
International Conference on Information and Communication Technologies
Software process is the most important part of software project management, and software process models are important means of implementing the software process in any software organization. When there is need to improve the software process, then the need to improve the work-task part (software process models) of the software process must arise. As, there is need of increasing the commitment of software project managers through out the software development life cycle (SDLC), so we need to give them the list of activities in Waterfall Model, which should be made efficient by the software development team, to get the 80% …
Data Mining For Software Engineering, Tao Xie, Suresh Thummalapenta, David Lo, Chao Liu
Data Mining For Software Engineering, Tao Xie, Suresh Thummalapenta, David Lo, Chao Liu
Research Collection School Of Computing and Information Systems
To improve software productivity and quality, software engineers are increasingly applying data mining algorithms to various software engineering tasks. However, mining SE data poses several challenges. The authors present various algorithms to effectively mine sequences, graphs, and text from such data.
The Impact Of Process Choice In High Maturity Environments: An Empirical Analysis, Narayanasamy Ramasubbu, Rajesh Krishna Balan
The Impact Of Process Choice In High Maturity Environments: An Empirical Analysis, Narayanasamy Ramasubbu, Rajesh Krishna Balan
Research Collection School Of Computing and Information Systems
We present the results of a three year field study of the software development process choices made by project teams at two leading offshore vendors. In particular, we focus on the performance implications of project teams that chose to augment structured, plan-driven processes to implement the CMM level-5 Key Process Areas (KPAs) with agile methods. Our analysis of 112 software projects reveals that the decision to augment the firm-recommended, plan-driven approach with improvised, agile methods was significantly affected by the extent of client knowledge and involvement, newness of technology, and the project size. Furthermore this decision had a significant and …
Improving Effort Estimation By Voting Software Estimation Models, Luiz Fernando Capretz, Venus Marza
Improving Effort Estimation By Voting Software Estimation Models, Luiz Fernando Capretz, Venus Marza
Electrical and Computer Engineering Publications
Estimating software development effort is an important task in the management of large software projects. The task is challenging, and it has been receiving the attentions of researchers ever since software was developed for commercial purpose. A number of estimation models exist for effort prediction. However, there is a need for novel models to obtain more accurate estimations. The primary purpose of this study is to propose a precise method of estimation by selecting the most popular models in order to improve accuracy. Consequently, the final results are very precise and reliable when they are applied to a real dataset …
Sub-Circuit Selection And Replacement Algorithms Modeled As Term Rewriting Systems, Eric D. Simonaire
Sub-Circuit Selection And Replacement Algorithms Modeled As Term Rewriting Systems, Eric D. Simonaire
Theses and Dissertations
Intent protection is a model of software obfuscation which, among other criteria, prevents an adversary from understanding the program’s function for use with contextual information. Relating this framework for obfuscation to malware detection, if a malware detector can perfectly normalize a program P and any obfuscation (variant) of the program O(P), the program is not intent protected. The problem of intent protection on programs can also be modeled as intent protection on combinational logic circuits. If a malware detector can perfectly normalize a circuit C and any obfuscation (variant) O(C) of the circuit, the circuit is not intent protected. In …
Rejuvenate Pointcut: A Tool For Pointcut Expression Recovery In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Awais Rashid
Rejuvenate Pointcut: A Tool For Pointcut Expression Recovery In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Awais Rashid
Publications and Research
Aspect-oriented programming (AOP) strives to localize the scattered and tangled implementations of crosscutting concerns (CCCs) by allowing developers to declare that certain actions (advice) should be taken at specific points (join points) during the execution of software where a CCC (an aspect) is applicable. However, it is non-trivial to construct optimal pointcut expressions (a collection of join points) that capture the true intentions of the programmer and, upon evolution, maintain these intentions. We demonstrate an AspectJ source-level inferencing tool called rejuvenate pointcut which helps developers maintain pointcut expressions over the lifetime of a software product. A key insight into the …
Work Dispersion, Process-Based Learning And Offshore Software Development Performance, Narayanasamy Ramasubbu, Sunil Mithas, M. S. Krishnan, Chris Kemerer
Work Dispersion, Process-Based Learning And Offshore Software Development Performance, Narayanasamy Ramasubbu, Sunil Mithas, M. S. Krishnan, Chris Kemerer
Research Collection School Of Computing and Information Systems
In this paper we develop a learning-mediated model of offshore software project productivity and quality to examine whether widely adopted structured software processes are effective in mitigating the negative effects of work dispersion in offshore software development. We explicate how the key process areas of the capability maturity model (CMM) can be utilized as a platform to launch learning routines in offshore software development and thereby explain why some offshore software development process improvement initiatives are more effective than others. We validate our learning-mediated model of offshore software project performance by utilizing data collected from 42 offshore software projects of …