Open Source Software Systems

Author(s):  
R. B. Lenin ◽  
S. Ramaswamy ◽  
Liguo Yu ◽  
R. B. Govindan

Complex software systems and the huge amounts of data they produce are becoming an integral part of our organizations. We are also becoming increasingly dependent on high quality software products in our everyday lives. These systems ‘evolve’ as we identify and correct existing defects, provide new functionalities, or increase their nonfunctional qualities - such as security, maintainability, performance, etc. Simultaneously, more software development projects are distributed over multiple locations (often globally) and are often several millions of dollars in development costs. Consequently, as the Internet continually eliminates geographic boundaries, the concept of doing business within a single country has given way to companies focusing on competing in an international marketplace. The digitalization of work and the reorganization of work processes across many organizations have resulted in routine and/or commodity components being outsourced.

2010 ◽  
Vol 2 (4) ◽  
pp. 28-47
Author(s):  
R. B. Lenin ◽  
S. Ramaswamy ◽  
Liguo Yu ◽  
R. B. Govindan

Complex software systems and the huge amounts of data they produce are becoming an integral part of our organizations. We are also becoming increasingly dependent on high quality software products in our everyday lives. These systems ‘evolve’ as we identify and correct existing defects, provide new functionalities, or increase their nonfunctional qualities - such as security, maintainability, performance, etc. Simultaneously, more software development projects are distributed over multiple locations (often globally) and are often several millions of dollars in development costs. Consequently, as the Internet continually eliminates geographic boundaries, the concept of doing business within a single country has given way to companies focusing on competing in an international marketplace. The digitalization of work and the reorganization of work processes across many organizations have resulted in routine and/or commodity components being outsourced.


2014 ◽  
Vol 27 (4) ◽  
pp. 66-81
Author(s):  
Peng Xu ◽  
Yurong Yao

Offshoring has become a viable alternative for companies to lower software development costs and leverage labor resources worldwide. To achieve success in offshoring software development projects, a vendor must choose appropriate development methodologies. This study aims to examine how methodology fit affects offshoring project performance. It proposes that methodology fit affects project performance through interfirm knowledge sharing between vendors and clients. In addition, the impact of methodology fit on knowledge sharing is dependent on relational capital between vendors and clients. A survey was conducted among software companies in China that provide offshoring services. 108 completed questionnaires were collected. The results confirm this article's hypotheses.


Author(s):  
Alexander Baumeister ◽  
Markus Ilg

There are numerous forecast models of software development costs, however, various problems become apparent in context to practical application. Standardized methods, such as COCOMO II have to be calibrated at an individual operational level on the basis of the underlying database. This paper presents a new activity based approach that is based on business specific cost data that can be easily integrated into existing management accounting systems. This approach can be applied to software development projects based on the unified process in which activity driven budgeting promises several advantages compared to common tools in use. It supports enterprise specific cost forecasting and control and can be easily linked with risk analysis. In addition to the presentation of a conceptual design model, the authors present a framework for activity driven budgeting and cost management of software development projects combined with concrete implementation examples.


Author(s):  
Saqib Saeed ◽  
Farrukh Masood Khawaja ◽  
Zaigham Mahmood

Pervasive systems and increased reliance on embedded systems require that the underlying software is properly tested and has in-built high quality. The approaches often adopted to realize software systems have inherent weaknesses that have resulted in less robust software applications. The requirement of reliable software suggests that quality needs to be instilled at all stages of a software development paradigms, especially at the testing stages of the development cycle ensuring that quality attributes and parameters are taken into account when designing and developing software. In this respect, numerous tools, techniques, and methodologies have also been proposed. In this chapter, the authors present and review different methodologies employed to improve the software quality during the software development lifecycle.


Author(s):  
Xavier Ferre ◽  
Natalia Juristo ◽  
Ana M. Moreno

Usability has become a critical quality factor in software systems, and it has been receiving increasing attention over the last few years in the SE (software engineering) field. HCI techniques aim to increase the usability level of the final software product, but they are applied sparingly in mainstream software development, because there is very little knowledge about their existence and about how they can contribute to the activities already performed in the development process. There is a perception in the software development community that these usability-related techniques are to be applied only for the development of the visible part of the UI (user interface) after the most important part of the software system (the internals) has been designed and implemented. Nevertheless, the different paths taken by HCI and SE regarding software development have recently started to converge. First, we have noted that HCI methods are being described more formally in the direction of SE software process descriptions. Second, usability is becoming an important issue on the SE agenda, since the software products user base is ever increasing and the degree of user computer literacy is decreasing, leading to a greater demand for usability improvements in the software market. However, the convergence of HCI and SE has uncovered the need for an integration of the practices of both disciplines. This integration is a must for the development of highly usable systems. In the next two sections, we will look at how the SE field has viewed usability. Following upon this, we address the existing approaches to integration. We will then detail the pending issues that stand in the way of successful integration efforts, concluding with the presentation of an approach that might be successful in the integration endeavor.


2012 ◽  
pp. 1609-1625
Author(s):  
Alexander Baumeister ◽  
Markus Ilg

There are numerous forecast models of software development costs, however, various problems become apparent in context to practical application. Standardized methods, such as COCOMO II have to be calibrated at an individual operational level on the basis of the underlying database. This paper presents a new activity based approach that is based on business specific cost data that can be easily integrated into existing management accounting systems. This approach can be applied to software development projects based on the unified process in which activity driven budgeting promises several advantages compared to common tools in use. It supports enterprise specific cost forecasting and control and can be easily linked with risk analysis. In addition to the presentation of a conceptual design model, the authors present a framework for activity driven budgeting and cost management of software development projects combined with concrete implementation examples.


Author(s):  
IMED HAMMOUDA ◽  
KAI KOSKIMIES ◽  
TOMMI MIKKONEN

Knowledge representation, acquisition, and sharing in software development projects is challenging due to the involvement of different kinds of stakeholders and large heterogeneous repositories of artifacts. In this paper, we argue that the concept of a concern can be used to facilitate the management of knowledge concerning the various system artifacts. Concerns represent pieces of knowledge pertaining to various viewpoints and interests of the stakeholders. In order to represent concerns, we propose the use of a non-intrusive role-based mechanism called a fragment. Using this mechanism, tacit knowledge can be made explicit by mapping stakeholders interests to artifact repositories, concern-based queries can be addressed to the repositories, and concerns can be combined to produce new knowledge. A concern-based prototype tool environment for knowledge management has been built and used for evaluating the approach in the context of industrial case studies.


Author(s):  
Anas AL-Badareen

    Abstract— Since the idea of software reuse appeared in 1968, software reuse has become a software engineering discipline. Software reuse is one of the main techniques used to enhance the productivity of software development, which it helps reducing the time, effort, and cost of developing software systems, and enhances the quality of software products. However, software reuse requires understanding, modifying, adapting and testing processes in order to be performed correctly and efficiently. This study aims to analyze and discuss the process of software reuse, identify its elements, sources and usages. The alternatives of acquiring and using software assets either normal or reusable assets are discussed. As a result of this study, four main methods are proposed in order to use the concept of reuse in the software development process. These methods are proposed based on the source of software assets regardless the types of software assets and their usages.


Development of complex and quality software necessitates the use of a development model, so that the development process is efficient, reliable and faster. Software development life cycle (SDLC) is a well-defined and wellorganized process used to plan, develop, deploy and maintain high quality software systems. DevOps is one recent addition to SDLC that ensures that the development and operations team collaborate to accelerate the deployment and delivery of higher quality software products. This paper throws a light on how development processes are accelerated using DevOps tactics like continuous integration and deployment (CI/CD) pipelines. however, there are several factors that prevent the organizations from using these approaches. Discovering the evolution of DevOps and its continuous practices, gives a thorough understanding of the importance of the DevOps culture. Manual deployment and testing increase the feedback time of a commit operation. The paper discusses various tools available in the DevOps community that can be used to automate various stages of continuous integration and deployment pipeline, so that the feedback time is reduced.


Author(s):  
SUMA. V ◽  
ARFA BAIG ◽  
DIVYASHREE B J ◽  
N B SONALI ◽  
S AKSHAYA

Evolution of software has lead to the fast growth of technology whose impact can be witnessed in all the domains of scientific and engineering applications. Hence engineering high quality software is one of the core challenges of all IT industries. The software models which are being used for the development of the software products may lead to inconsistencies. Nevertheless, theexistence of several methodologies during the development process in order to overcome inconsistencies operates at static mode leading towards expensive nature of rework on those inconsistencies. Therefore, this paper presents a dynamic model which resolves the aforementioned issue by capturing inconsistencies dynamically in an automated mode using Dynamic automated inconsistency detection (DAID) model. The implementation results of DAID capture the design inconsistencies dynamically at the time of their injection points in lieu of inconsistency detection during validation testing. This approach of dynamic design inconsistency detection reduces cost, time and its associated overheads. Further implementation of DAID in an automated mode increases productivity, quality and sustainability in IT industries.


Sign in / Sign up

Export Citation Format

Share Document