首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
Software Quality Journal - There is a need for methodologies which can enhance the quality of software and improve software developmental efficiencies. One such approach commonly used by software...  相似文献   

2.
A study that evaluates new-paradigm-oriented software development environments which have been developed in the five-year formal approach to software environment technology (FASET) project is reviewed. For this study, a software environment evaluation technology based on a software quality evaluation process model defined in ISO/IEC 9126 has been developed. The evaluation technology has been applied to the R&D project at the middle and final phase of development. The evaluation results provide useful information to develop a widely acceptable evaluation technology and to improve the new-paradigm-oriented software development environments that are based on various specification methods: the algebraic specification method, function-oriented specification method, declarative specification method, natural-language-oriented specification method, diagrammatic specification method, state-transition-oriented specification method, and model-based specification method  相似文献   

3.
Behavioral risks such as shirking and misappropriation of information assets are more prominent in offshore software development context and could adversely affect offshore outsourcing success. This paper studies the moderating effects of different relational norms on the link between behavioral risks and offshore software development success. We focused on three major modes of relational norms: norm of flexibility, norm of solidarity and norm of information exchange. Using PLS path modeling to test a sample of 40 US corporations engaged in offshore software development, we found that the norms of solidarity and flexibility reduced the negative effects shirking risk on offshore software development success. Our results suggest that client firms shall benefit by forming the right mode of relational norms to achieve offshore success.  相似文献   

4.
5.
This paper investigates trust in software outsourcing relationships. The study is based on an empirical investigation of eighteen high maturity software vendor companies based in India. Our analysis of the literature suggests that trust has received a lot of attention in all kinds of business relationships. This includes inter-company relationships, whether cooperative ventures or subcontracting relationships, and relationship among different parts of a single company. However, trust has been relatively under-explored in software outsourcing relationships. In this paper, we present a detailed empirical investigation of trust in commercial software outsourcing relationships. The investigation presents what vendor companies perceive about getting trust from client companies in outsourcing relationships. We present the results in two parts—(1) achieving trust initially in outsourcing relationships and (2) maintaining trust in ongoing outsourcing relationships. Our findings confirm that the critical factors to achieving trust initially in an outsourcing relationship include previous clients' reference and experience of vendor in outsourcing engagements. Critical factors identified for maintaining trust in an established outsourcing relationship include transparency, demonstrability, honesty, process followed and commitment. Our findings also suggest that trust is considered to be very fragile in outsourcing relationships.  相似文献   

6.
We use knowledge‐based theory to develop and test a model of client–vendor knowledge transfer at the level of the individual offshore information systems engineer. We define knowledge transfer in this context in terms of mechanisms by which an offshore engineer employed by a vendor can (a) gain understanding of their onshore client; and (b) utilize their knowledge for the benefit of the client. Over large geographic, cultural and institutional distances, effective knowledge transfer is difficult to achieve, although it is central to the success of many offshore outsourcing contracts. Our empirical test consists of a survey of vendor software engineers physically located in India but working on development projects for clients in Europe and the United States. The findings support predictions regarding engineer exposure to explicit and tacit knowledge: We find client–vendor knowledge transfer to the offshore vendor engineer to be positively associated with formal training and client embedment. We also test whether an offshore vendor engineer's inappropriate reliance on informal discussions in the offshore location hinders effective client–vendor knowledge transfer. Our result for this is mixed. Finally, we show differences between offshore engineers who have had previous onshore experience and those who have not. Client embedment is a potent driver of knowledge transfer when the offshore engineer has had previous onshore placement, while it acts to reduce inappropriate reliance on informal discussions for those that have not had an onshore placement.  相似文献   

7.
Most of the available literature on quality management is based on management’s perception; few studies examine critical issues of quality management from the customer’s perspective, especially in the software industry. In order to gain an insight into what customers expect from a product/service, an analysis of quality management from customer’s point of view is essential. Such an understanding would help the managers to adopt strategies that can enhance the satisfaction level of their customers. The present study highlights the critical factors of quality management in the software industry from the customer’s perspective. Six critical factors are identified: and an instrument, comprising these factors, is developed and validated so as to measure the customer’s perception of quality management in the software industry. George Issac is an Assistant Professor in Mar Athanasius College of Engineering, Kothamangalam, India. He holds a B.Sc (Engg.) degree in Mechanical Engineering from Kerala University, and M.Tech and Ph.D degrees in Management from IIT Madras. His research areas are TQM and Organizational Behavior. He has published articles in the area of quality management in journals such as Total Quality Management and Business Excellence, and Quality Management Journal of American Society for Quality. Chandrasekharan Rajendran is a Professor of Operations Management in the Indian Institute of Technology Madras. His research interests are in TQM, Scheduling and Simulation. He has published several articles in international journals. He has publications in the area of TQM in journals such as Total Quality Management, International Journal of Production Research, International Journal of Service Industry Management, International Journal of Bank Marketing, and Journal of Services Marketing. He serves as referee for many journals. He is a recipient of the Alexander von Humboldt Fellowship of Germany. R.N. Anantharaman is a Professor of Management in the Indian Institute of Technology, Madras. His research interests are in TQM, Organizational Behavior and Industrial Psychology. He has published several articles in international journals. He has published research articles in the area of TQM, HRM Practices, Change Management, etc., in Journals such as Total Quality Management, International Journal of Production Research, International Journal of Bank Marketing, International Journal of Service Industry Management, Journal of Services Marketing, International Journal of Human Resource Management, and Journal of Transnational Management Development.  相似文献   

8.
Global software development is rapidly becoming the norm for technology companies. Previous qualitative research suggests that distributed development may increase development cycle time for individual work items (modification requests). We use both data from the source code change management system and survey data to model the extent of delay in a distributed software development organization and explore several possible mechanisms for this delay. One key finding is that distributed work items appear to take about two and one-half times as long to complete as similar items where all the work is colocated. The data strongly suggest a mechanism for the delay, i.e., that distributed work items involve more people than comparable same-site work items, and the number of people involved is strongly related to the calendar time to complete a work item. We replicate the analysis of change data in a different organization with a different product and different sites and confirm our main findings. We also report survey results showing differences between same-site and distributed social networks, testing several hypotheses about characteristics of distributed social networks that may be related to delay. We discuss implications of our findings for practices and collaboration technology that have the potential for dramatically speeding distributed software development.  相似文献   

9.
ContextSoftware engineering organizations routinely define and implement processes to support, guide and control project execution. An assumption underlying this process-centric approach to business improvement is that the quality of the process will influence the quality, cost and time-to-release of the software produced. A critical question thus arises of what constitutes quality for software engineering processes.ObjectiveTo identify criteria used by experienced practitioners to judge the quality of software engineering processes and to understand how knowledge of these criteria and their relationships may be useful for those undertaking software process improvement activities.MethodInterviews were conducted with 17 experienced software engineering practitioners from a range of geographies, roles and industry sectors. Published reports from 30 software process improvement case-studies were selected from multiple peer-reviewed software journals. A qualitative Grounded Theory-based methodology was employed to systematically analyze the collected data to synthesize a model of quality for software engineering processes.ResultsThe synthesized model suggests that practitioners perceive the overall quality of a software engineering process based on four quality attributes: suitability, usability, manageability and evolvability. Furthermore, these judgments are influenced by key properties related to the semantic content, structure, representation and enactment of that process. The model indicates that these attributes correspond to particular organizational perspectives and that these differing views may explain role-based conflicts in the judgement of process quality.ConclusionConsensus exists amongst practitioners about which characteristics of software engineering process quality most influence project outcomes. The model presented provides a terminological framework that can facilitate precise discussion of software engineering process issues and a set of criteria that can support activities for software process definition, evaluation and improvement. The potential exists for further development of this model to facilitate optimization of process properties to match organizational needs.  相似文献   

10.
This paper describes an investigation into estimating the quality of functional programs. The work reported here is part of a larger, ongoing study into a quantitative analysis of the effect of utilizing different programming paradigms on code quality. Before undertaking such a comparative analysis it was necessary to establish a baseline of quality indicators which could then be used as metrics for the remainder of the project. Thus the aim of the research presented here was to evaluate a set of suggested indicators corresponding to internal attributes by investigating the correlation between the suggested indicators and the desired external quality-type attributes of the code. A method for the evaluation of the suggested metrics is discussed and the results of performing such an evaluation for functional programs are presented.  相似文献   

11.
We present the results of an extensive and substantial case study on pair programming, which was carried out in courses for software development at the University of Dortmund, Germany. Thirteen software development teams with about 100 students took part in the experiments. The groups were divided into two sets with different working conditions. In one set, the group members worked on their projects in pairs. Even though the paired teams could only use half of the workstations the teams of individual workers could use, the paired teams produced nearly as much code as the teams of individual workers at the same time. In addition, the code produced by the paired teams was easier to read and to understand. This facilitates finding errors and maintenance.  相似文献   

12.
Software is typically improved and modified in small increments (we refer to each of these increments as a modification record—MR). MRs are usually stored in a configuration management or version control system and can be retrieved for analysis. In this study we retrieved the MRs from several mature open software projects. We then concentrated our analysis on those MRs that fix defects and provided heuristics to automatically classify them. We used the information in the MRs to visualize what files are changed at the same time, and who are the people who tend to modify certain files. We argue that these visualizations can be used to understand the development stage of in which a project is at a given time (new features are added, or defects are being fixed), the level of modularization of a project, and how developers might interact between each other and the source code of a system.  相似文献   

13.
ContextSharing expert knowledge is a key process in developing software products. Since expert knowledge is mostly tacit, the acquisition and sharing of tacit knowledge along with the development of a transactive memory system (TMS) are significant factors in effective software teams.ObjectiveWe seek to enhance our understanding human factors in the software development process and provide support for the agile approach, particularly in its advocacy of social interaction, by answering two questions: How do software development teams acquire and share tacit knowledge? What roles do tacit knowledge and transactive memory play in successful team performance?MethodA theoretical model describing the process for acquiring and sharing tacit knowledge and development of a TMS through social interaction is presented and a second predictive model addresses the two research questions above. The elements of the predictive model and other demographic variables were incorporated into a larger online survey for software development teams, completed by 46 software SMEs, consisting of 181 individual team members.ResultsOur results show that team tacit knowledge is acquired and shared directly through good quality social interactions and through the development of a TMS with quality of social interaction playing a greater role than transactive memory. Both TMS and team tacit knowledge predict effectiveness but not efficiency in software teams.ConclusionIt is concluded that TMS and team tacit knowledge can differentiate between low- and high-performing teams in terms of effectiveness, where more effective teams have a competitive advantage in developing new products and bringing them to market. As face-to-face social interaction is key, collocated, functionally rich, domain expert teams are advocated rather than distributed teams, though arguably the team manager may be in a separate geographic location provided that there is frequent communication and effective use of issue tracking tools as in agile teams.  相似文献   

14.
The thought processes of people have a significant impact on software quality, as software is designed, developed and tested by people. Cognitive biases, which are defined as patterned deviations of human thought from the laws of logic and mathematics, are a likely cause of software defects. However, there is little empirical evidence to date to substantiate this assertion. In this research, we focus on a specific cognitive bias, confirmation bias, which is defined as the tendency of people to seek evidence that verifies a hypothesis rather than seeking evidence to falsify a hypothesis. Due to this confirmation bias, developers tend to perform unit tests to make their program work rather than to break their code. Therefore, confirmation bias is believed to be one of the factors that lead to an increased software defect density. In this research, we present a metric scheme that explores the impact of developers’ confirmation bias on software defect density. In order to estimate the effectiveness of our metric scheme in the quantification of confirmation bias within the context of software development, we performed an empirical study that addressed the prediction of the defective parts of software. In our empirical study, we used confirmation bias metrics on five datasets obtained from two companies. Our results provide empirical evidence that human thought processes and cognitive aspects deserve further investigation to improve decision making in software development for effective process management and resource allocation.  相似文献   

15.
In this paper, we investigate the impact of team size on the software development effort. Using field data of over 200 software projects from various industries, we empirically test the impact of team size and other variables—such as software size in function points, ICASE tool and programming language type—on software development effort. Our results indicate that software size in function points significantly impacts the software development effort. The two-way interactions between function points and use of ICASE tool, and function points and language type are significant as well. Additionally, the interactions between team size and programming language type, and team size and use of ICASE tool were all significant.
James A. RodgerEmail:
  相似文献   

16.
Software code review, i.e., the practice of having other team members critique changes to a software system, is a well-established best practice in both open source and proprietary software domains. Prior work has shown that formal code inspections tend to improve the quality of delivered software. However, the formal code inspection process mandates strict review criteria (e.g., in-person meetings and reviewer checklists) to ensure a base level of review quality, while the modern, lightweight code reviewing process does not. Although recent work explores the modern code review process, little is known about the relationship between modern code review practices and long-term software quality. Hence, in this paper, we study the relationship between post-release defects (a popular proxy for long-term software quality) and: (1) code review coverage, i.e., the proportion of changes that have been code reviewed, (2) code review participation, i.e., the degree of reviewer involvement in the code review process, and (3) code reviewer expertise, i.e., the level of domain-specific expertise of the code reviewers. Through a case study of the Qt, VTK, and ITK projects, we find that code review coverage, participation, and expertise share a significant link with software quality. Hence, our results empirically confirm the intuition that poorly-reviewed code has a negative impact on software quality in large systems using modern reviewing tools.  相似文献   

17.
More and more software projects use Commercial-Off-The-Shelf (COTS) components. Although previous studies have proposed specific COTS-based development processes, there are few empirical studies that investigate how to use and customize COTS-based development processes for different project contexts. This paper describes an exploratory study of state-of-the-practice of COTS-based development processes. Sixteen software projects in the Norwegian IT companies have been studied by structured interviews. The results are that COTS-specific activities can be successfully incorporated in most traditional development processes (such as waterfall or prototyping), given proper guidelines to reduce risks and provide specific assistance. We have identified four COTS-specific activities—the build vs. buy decision, COTS component selection, learning and understanding COTS components, and COTS component integration – and one new role, that of a knowledge keeper. We have also found a special COTS component selection activity for unfamiliar components, combining Internet searches with hands-on trials. The process guidelines are expressed as scenarios, problems encountered, and examples of good practice. They can be used to customize the actual development processes, such as in which lifecycle phase to put the new activities into. Such customization crucially depends on the project context, such as previous familiarity with possible COTS components and flexibility of requirements.
Vigdis B. KampenesEmail:
  相似文献   

18.
A study of the reasons for delay in software development is described. The aim of the study was to gain an insight into the reasons for differences between plans and reality in development activities in order to be able to take actions for improvement. A classification was used to determine the reasons. 160 activities, comprising over 15000 hours of work, have been analyzed. The results and interpretations of the results are presented. Insight into the predominant reasons for delay enabled actions for improvements to be taken in the department concerned. Because the distribution of reasons for delay varied widely from one department to another, it is recommended that every department should gain an insight into its reasons for delay in order to be able to take adequate actions for improvement  相似文献   

19.
In this paper we argue that occupational health expertise should be directly involved in the software design process, and describe an exploratory study where health experts and users participated in the analysis, design and evaluation of a prototype. We addressed the problem of poor overview and control in electronic case handling. We used methods primarily from the participatory design field in combination with a framework describing some of the main risk factors for stress-related disorders in VDU work. We conducted observation interviews where the questions were based on the risk factors of high demand, low control and poor support. The interviews were the main lever for addressing these factors and making them 'visible' in the process. They could then be turned into requirements, design criteria and scenarios that we used as a basis for our design.  相似文献   

20.
Research into software design models in general, and into the UML in particular, focuses on answering the question how design models are used, completely ignoring the question if they are used. There is an assumption in the literature that the UML is the de facto standard, and that use of design models has had a profound and substantial effect on how software is designed by virtue of models giving the ability to do model-checking, code generation, or automated test generation. However for this assumption to be true, there has to be significant use of design models in practice by developers.This paper presents the results of a survey summarizing the answers of 3785 developers answering the simple question on the extent to which design models are used before coding. We relate their use of models with (i) total years of programming experience, (ii) open or closed development, (iii) educational level, (iv) programming language used, and (v) development type.The answer to our question was that design models are not used very extensively in industry, and where they are used, the use is informal and without tool support, and the notation is often not UML. The use of models decreased with an increase in experience and increased with higher level of qualification. Overall we found that models are used primarily as a communication and collaboration mechanism where there is a need to solve problems and/or get a joint understanding of the overall design in a group. We also conclude that models are seldom updated after initially created and are usually drawn on a whiteboard or on paper.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号