Advances in Systems Analysis, Software Engineering, and High Performance Computing - Tools and Techniques for Software Development in Large Organizations
Latest Publications


TOTAL DOCUMENTS

7
(FIVE YEARS 7)

H-INDEX

0
(FIVE YEARS 0)

Published By IGI Global

9781799818632, 9781799818656

Author(s):  
Girish Babu ◽  
Charitra Kamalaksh Patil

Robust DevOps plays a huge role in the health and sanity of software. The metadata generated during DevOps need to be harnessed for deriving useful insights on the health of the software. This area of work can be classified as code analytics and comprises of the following (but not limited to): 1. commit history from the source code management system (SCM); 2. the engineers that worked on the commit; 3. the reviewers on the commit; 4. the extent of build (if applicable) and test validation prior to the commit, the types of failures found in iterative processes, and the fixes done; 5. test extent of test coverage on the commit; 6. any static profiling on the code in the commit; 7. the size and complexity of the commit; 8. many more. This chapter articulates many ways the above information can be used for effective software development.


Author(s):  
Iresha Rubasinghe ◽  
Dulani Meedeniya ◽  
Indika Perera

Software development in DevOps practice is a widely used approach to cope with the demand for frequent artefact changes. These changes require a well-defined method to manage artefact consistency to ease the continuous integration process. This chapter proposes a traceability management approach for the artefact types in the main phases of the software process including requirements, design, source code, testing, and configuration. This chapter addresses traceability management, including trace link creation, change detection, impact analysis, change propagation, validation, and visualisation. This chapter presents a tool named SAT-Analyser that is applicable for any software development method and designed for continuous integration, multi-user collaboration, and DevOps tool stack compatibility. The SAT-Analyser is assessed using case studies and shown an impact analysis accuracy of 0.93 of F-measure. Further, the feedback by DevOps practitioners has shown the suitability and innovativeness of the proposed approach.


Author(s):  
Dulani Meedeniya ◽  
Iresha Rubasinghe ◽  
Indika Perera

DevOps practices preserve the continuous innovation in software development. The collaborative nature and stakeholder communication are keys in DevOps that lead to highly effective and quality software outcomes with customer satisfaction. The software artefacts involved in a DevOps practice must adapt to frequent changes due to continuous stakeholder feedback. Hence, it is challenging to artefact consistency throughout the software life cycle. Although artefact traceability preserves the consistency management with theoretical support, there are practical limitations in traceability visualisation, change impact analysis, and change propagation aspects. This chapter presents an analysis of existing studies focused on software artefact traceability for the suitability in DevOps. It also identifies leading limitations and possible future research directions to resolve for the benefit of researchers and software practitioners.


Author(s):  
Laurie Williams ◽  
Kent Beck ◽  
Jeffrey Creasey ◽  
Andrew Glover ◽  
James Holman ◽  
...  

Predictable, rapid, and data-driven feature rollout; lightning-fast; and automated fix deployment are some of the benefits most large software organizations worldwide are striving for. In the process, they are transitioning toward the use of continuous deployment practices. Continuous deployment enables companies to make hundreds or thousands of software changes to live computing infrastructure every day while maintaining service to millions of customers. Such ultra-fast changes create a new reality in software development. Over the past four years, the Continuous Deployment Summit, hosted at Facebook, Netflix, Google, and Twitter has been held. Representatives from companies like Cisco, Facebook, Google, IBM, Microsoft, Netflix, and Twitter have shared the triumphs and struggles of their transition to continuous deployment practices—each year the companies press on, getting ever faster. In this chapter, the authors share the common strategies and practices used by continuous deployment pioneers and adopted by newcomers as they transition and use continuous deployment practices at scale.


Author(s):  
Syed Mohsin Saif

The recent advancements in information and communication technology (ICT) have inspired all the operational domains of both public and private sector enterprise to endorse this technology. Software development plays a crucial role in supporting ICT. Software effort estimation serves as a critical factor in software application development, and it helps application development teams to complete the development process on time and within budget. Many developmental approaches have been used for software effort estimation, but most of them were conventional software methods and therefore failed to produce accurate results when it came to web or mobile effort estimation. This chapter explains different types of software applications, software estimation models, the importance of software effort estimation, and challenges faced in software effort estimation.


Author(s):  
Priti Srinivas Sajja ◽  
Rajendra A. Akerkar

Every business has an underlying information system. Quality and creditability of a system depend mainly on provided requirements. Good quality requirements of a system increase the degree of quality of the system. Hence, requirements determinations is of prime importance. Inadequate and misunderstood requirements are major problems in requirements determination. Major stakeholders of the requirements are non-computer professional users, who may provide imprecise, vague, and ambiguous requirements. Further, the system development process may be partly automated and based on platform such as web or Semantic Web. In this case, a proper ontology to represent requirements is needed. The chapter proposes a fuzzy RDF/XML-based ontology to document various requirements. A generic architecture of requirements management system is also provided. To demonstrate the presented approach, a case of student monitoring and learning is presented with sample software requirements specifications and interfaces to collect requirements. The chapter concludes with advantages, applications, and future enhancements.


Author(s):  
Vishnu Pendyala

Software engineering operations in large organizations are primarily comprised of integrating code from multiple branches, building, testing the build, and releasing it. Agile and related methodologies accelerated the software development activities. Realizing the importance of the development and operations teams working closely with each other, the set of practices that automated the engineering processes of software development evolved into DevOps, signifying the close collaboration of both development and operations teams. With the advent of cloud computing and the opening up of firewalls, the security aspects of software started moving into the applications leading to DevSecOps. This chapter traces the journey of the software engineering operations over the last two to three decades, highlighting the tools and techniques used in the process.


Sign in / Sign up

Export Citation Format

Share Document