Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization Date: 28 April 2011, 06:10
|
Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization By Muthu Ramachandran, Rogerio Atem de Carvalho * Publisher: Engineering Science Reference * Number Of Pages: 592 * Publication Date: 2009-08-25 * ISBN-10 / ASIN: 1605667315 * ISBN-13 / EAN: 9781605667317 Product Description: Global software development and productivity related technologies are the key to today's globalization with new technologies and concepts being developed continually. In such an ever-evolving environment, teachers, researchers, and professionals in the discipline need access to the most current information about the concepts, issues, trends, and technologies in this emerging field. The Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization provides an authoritative collection of international research on software engineering and enterprise systems. Presenting unique coverage of topics such as agile software engineering, requirements traceability, and distributed software development, this Handbook of Research offers an innovative repository of knowledge useful to academicians, practitioners, and researchers in various related fields. Table of Contents: Section I: Integrated Requirements Engineering and Software Engineering: Process and Frameworks Chapter I: Best Practices Guidlines for Agile Requirements Engineering Practices Developing software that meets the customers or stakeholders’ needs and expectation is the ultimate goal of the software development methodology. To meet their need we have to perform requirement engineering which helps to identify and structure requirements. In traditional software development methods end users or stakeholders predefined their requirements and sent to the development team to analysis and negotiation to produce requirement specification. In many cases it is risky or very difficult and not economical to produce a complete, verifiable set of requirements. Traditional software development has a problem to deal with requirement change after careful analysis and negotiation. This problem is well tackled by the Agile Practices as it’s recommends an on-site customer to represents their requirements through user stories on story cards. Generally customers have rarely a general picture of the requirements or system in their mind which leads problems related to requirements like requirements conflicts, missing requirements, and ambiguous requirements etc, and does not address non-functional requirements from exploration phase. This chapter introduces best knowledge based guidelines for agile requirements engineering to enhance the quality of requirements (story cards). Chapter II: Requirements Engineering in a Model-Based Methodology for Embedded Automotive Software This chapter resumes the requirements engineering in a model-based methodology for embedded automotive software. The methodology relies on two standard languages: EAST-ADL for automotive architecture description and SysML for systems modeling. The requirements engineering in the methodology describes phases of elicitation, modeling, traceability, verification and validation. It is illustrated by applying on a case study -- the knock controller -- a part of the engine management system. Chapter III: Agile Software Engineering This chapter aims to reveal agile techniques that have been applied to software development and have resulted in meaningful improvements in software productivity. Available literature generally state some claims on the gains associated with the use of particular agile methodologies in software development. What lacks however, is a comprehensive analysis of how the application of agile techniques as a family will lead to improvement in software productivity. This chapter therefore provides such details.Software productivity techniques provide ways of measuring three things in order to determine the productivity of software; software products, software production processes and structures, and software production setting. Agile methodologies improve software productivity by focusing on the software production process and structures. The fundamental concern of this chapter is to show that agile methodologies measure the production process activities in a different but effective way from the more traditional approaches. For example, time-to-market is reduced by use of an iterative incremental development approach. Chapter IV: Putting a TAG on Software: Purchaser-Centered Software Engineering This chapter describes the evolution of approaches to empirical software engineering from goal and data-driven to the latest purchaser-centered approach. The new Japanese Software Traceability and Accountability for Global software Engineering (STAGE) project is developing this approach to ensure the transparency of software development processes and products for software purchasers by “tagging” software with empirical software development data. Global software development raises unprecedented difficulties for developers, including the international and intercorporate coordination of development and distribution, the change to composition as the primary development approach, the shift to software everywhere talking to everything, and continuing upgrades and interaction with released software. To work effectively in this environment, empirical data collection, analysis, and feedback must extend throughout the software lifecycle including both production and usage data. Chapter V: Enhancing Testing Technologies for Globalization of Software Engineering and Productivity While successful at increasing code churn rates, global software development and evolution suffers from several quality assurance challenges. First, sub-groups within developer communities often work on loosely coupled parts of the application code. Each developer (sub-group) typically modifies a local “copy” of the code and frequently checks-in changes (and downloads other developers’ changes). Consequently, after making a change, a developer may not immediately realize that the local change has inadvertently broken other parts of the overall software code. This situation is compounded as there is little direct inter-developer communication -- almost all communication is done via web-based tools such as code commit log messages, bug reports, change-requests, and comments. This chapter outlines the challenges that global software development adds to the already-complex quality assurance process. Two case studies of real software projects implemented in a disturbed manner demonstrate the importance of continuous integration testing and the positive consequences of increasing the diversity of quality assurance techniques/tools. Finally, it concludes with an outline of how software integration testing needs to be enhanced to meet the new challenges of globalization. Chapter VI: Story Card Process Improvement Framework for Agile Requirements This chapter describes an ongoing process to define a suitable process improvement model for story cards based requirement engineering process and practices at agile software development environments. Key features of the SMM (Story card Maturity Model) process are: solves the problems related to the story cards like requirements conflicts, missing requirements, ambiguous requirements, define standard structure of story cards, to address non-functional requirements from exploration phase, and the use of a simplified and tailored assessment method for story cards based requirements engineering practices based on the CMM, which is poorly addressed at CMM. CMM does not cover how the quality of the requirements engineering process should be secured or what activities should be present for the requirements engineering process to achieve a certain maturity level. It is difficult to know what is not
|
DISCLAIMER:
This site does not store Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization on its server. We only index and link to Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization provided by other sites. Please contact the content providers to delete Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization if any and email us, we'll remove relevant links or contents immediately.
|
|
|