![]() |
![]() |
Your cart is empty |
||
Books > Computing & IT > Computer programming > Software engineering
Although software engineering can trace its beginnings to a NATO conf- ence in 1968, it cannot be said to have become an empirical science until the 1970s with the advent of the work of Prof. Victor Robert Basili of the University of Maryland. In addition to the need to engineer software was the need to understand software. Much like other sciences, such as physics, chemistry, and biology, software engineering needed a discipline of obs- vation, theory formation, experimentation, and feedback. By applying the scientific method to the software engineering domain, Basili developed concepts like the Goal-Question-Metric method, the Quality-Improvement- Paradigm, and the Experience Factory to help bring a sense of order to the ad hoc developments so prevalent in the software engineering field. On the occasion of Basili's 65th birthday, we present this book c- taining reprints of 20 papers that defined much of his work. We divided the 20 papers into 6 sections, each describing a different facet of his work, and asked several individuals to write an introduction to each section. Instead of describing the scope of this book in this preface, we decided to let one of his papers, the keynote paper he gave at the International C- ference on Software Engineering in 1996 in Berlin, Germany to lead off this book. He, better than we, can best describe his views on what is - perimental software engineering.
Software effort estimation is one of the oldest and most important problems in software project management, and thus today there are a large number of models, each with its own unique strengths and weaknesses in general, and even more importantly, in relation to the environment and context in which it is to be applied. Trendowicz and Jeffery present a comprehensive look at the principles of software effort estimation and support software practitioners in systematically selecting and applying the most suitable effort estimation approach. Their book not only presents "what" approach to take and "how" to apply and improve it, but also explains "why" certain approaches should be used in specific project situations. Moreover, it explains popular estimation methods, summarizes estimation best-practices, and provides guidelines for continuously improving estimation capability. Additionally, the book offers invaluable insights into project management in general, discussing issues including project trade-offs, risk assessment, and organizational learning. Overall, the authors deliver an essential reference work for software practitioners responsible for software effort estimation and planning in their daily work and who want to improve their estimation skills. At the same time, for lecturers and students the book can serve as the basis of a course in software processes, software estimation, or project management.
The volume provides a comprehensive, up-to-date account on recent developments concerning the incorporation of fuzzy capabilities in Petri Net models. The results of such studies originated the class of models that have been designated by Fuzzy Petri Nets. The recent papers specially elaborated for this volume range over several aspects of fuzziness in Petri nets. They form an interesting collection of original works that covers a great variety of relevant problems concerning the concept of Fuzzy Petri Net model. The articles approach several of the most outstanding issues in the framework of Fuzzy Petri nets, such as the representation of time, consistency checking, learning, design, computational efficiency, modelling flexibility, among others. From the material collected in the book one can extract the points of view of leading researchers concerning the basic and advanced concepts, advantages, potential applications and open problems, related to the field.
With the emergence of cloud computing, traditional approaches to software engineering must be adapted in order to take full advantage of the benefits promised by cloud technologies. This timely and authoritative text/reference presents the latest research on "Software Engineering Frameworks for the Cloud Computing Paradigm," drawn from an international selection of researchers and practitioners. The book offers both a discussion of relevant software engineering approaches and practical guidance on enterprise-wide software deployment in the cloud environment, together with real-world case studies. Topics and features: presents the state of the art in software engineering approaches for developing cloud-suitable applications; discusses the impact of the cloud computing paradigm on software engineering, including the semantic web; offers guidance and best practices for students and practitioners of cloud-based applications architecture; examines the stages of the software development lifecycle, with a focus on the requirements engineering and testing of cloud-based applications; reviews the efficiency and performance of cloud-based applications; explores feature-driven and cloud-aided software design, presenting strategies for cloud adoption and migration; provides relevant theoretical frameworks, practical approaches and current and future research directions. This practical and clearly-structured volume is an ideal self-study primer for students of cloud computing and software engineering. Software engineers, application developers and IT infrastructure managers will also find the work to be an invaluable reference.
Distributed Infrastructure Support For E-Commerce And Distributed
Applications is organized in three parts. The first part
constitutes an overview, a more detailed motivation of the problem
context, and a tutorial-like introduction to middleware systems.
The second part is comprised of a set of chapters that study
solutions to leverage the trade-off between a transparent
programming model and application-level enabled resource control.
The third part of this book presents three detailed distributed
application case studies and demonstrates how standard middleware
platforms fail to adequately cope with resource control needs of
the application designer in these three cases:
As technology continues to evolve, the popularity of mobile computing has become inherent within today's society. With the majority of the population using some form of mobile device, it has become increasingly important to develop more efficient cloud platforms. Modern Software Engineering Methodologies for Mobile and Cloud Environments investigates emergent trends and research on innovative software platforms in mobile and cloud computing. Featuring state-of-the-art software engineering methods, as well as new techniques being utilized in the field, this book is a pivotal reference source for professionals, researchers, practitioners, and students interested in mobile and cloud environments.
The resilience of computing systems includes their dependability as well as their fault tolerance and security. It defines the ability of a computing system to perform properly in the presence of various kinds of disturbances and to recover from any service degradation. These properties are immensely important in a world where many aspects of our daily life depend on the correct, reliable and secure operation of often large-scale distributed computing systems. Wolter and her co-editors grouped the 20 chapters from leading researchers into seven parts: an introduction and motivating examples, modeling techniques, model-driven prediction, measurement and metrics, testing techniques, case studies, and conclusions. The core is formed by 12 technical papers, which are framed by motivating real-world examples and case studies, thus illustrating the necessity and the application of the presented methods. While the technical chapters are independent of each other and can be read in any order, the reader will benefit more from the case studies if he or she reads them together with the related techniques. The papers combine topics like modeling, benchmarking, testing, performance evaluation, and dependability, and aim at academic and industrial researchers in these areas as well as graduate students and lecturers in related fields. In this volume, they will find a comprehensive overview of the state of the art in a field of continuously growing practical importance.
This book opens the "black box" of software sourcing by explaining how dynamic software alignment is established and how it impacts business performance outcomes. By investigating how software-sourcing modes are related to value generation in the post-implementation phase, it shows researchers and managers the impact logic of on-demand, on-premises, and in-house software on dynamic fit and process-level performance outcomes in a client organization. It describes dynamic IT alignment as the key to success in a fast-moving digital world with software-as-a-service on the rise and highlights the fact that today companies can choose between developing software in-house (make) or sourcing packaged systems in an on-premises (buy) or an on-demand (lease) mode. This book is the first to explicitly compare these sourcing arrangements with each other in terms of alignment and business performance.
Software Visualization: From Theory to Practice was initially
selected as a special volume for "The Annals of Software
Engineering (ANSE) Journal," which has been discontinued. This
special edited volume, is the first to discuss software
visualization in the perspective of software engineering. It is a
collection of 14 chapters on software visualization, covering the
topics from theory to practical systems. The chapters are divided
into four Parts: Visual Formalisms, Human Factors, Architectural
Visualization, and Visualization in Practice. They cover a
comprehensive range of software visualization topics, including
Software Visualization: From Theory to Practice is designed to meet the needs of both an academic and a professional audience composed of researchers and software developers. This book is also suitable for seniorundergraduate and graduate students in software engineering and computer science, as a secondary text or a reference.
This book on multimedia tools for communicating mathematics arose from presentations at an international workshop organized by the Centro de Matemática e Aplicacoes Fundamentais at the University of Lisbon, in November 2000, with the collaboration of the Sonderforschungsbereich 288 at the University of Technology in Berlin, and of the Centre for Experimental and Constructive Mathematics at Simon Fraser University in Burnaby, Canada. The MTCM2000 meeting aimed at the scientific methods and algorithms at work inside multimedia tools, and it provided an overview of the range of present multimedia projects, of their limitations and the underlying mathematical problems. This book presents some of the tools and algorithms currently being used to create new ways of making enhanced interactive presentations and multimedia courses. It is an invaluable and up-to-date reference book on multimedia tools presently available for mathematics and related subjects.
The goal of this book is to present the most advanced research works in realistic computer generated images. It is made up of the papers presented during a Eurographics workshop that has been held in Rennes (France) on June 1990. Although realism in computer graphics has existed for many years, we have considered that two research directions can now clearly be identified. One makes use of empirical methods to efficiently create images that look real. As opposed to this approach, the other orientation makes use of physics to produce images that are exact representations of the real world (at the expense of additional processing time), hence the term photosimulation which indeed was the subject of this book. The objectives of this workshop were to assemble experts from physics and computer graphics in order to contribute to the introduction of physics-based approaches in the field of computer generated images. The fact that this workshop was the first entirely devoted to this topic was a bet and fortunately it turned out that it was a success. The contents of this book is organized in five chapters: Efficient Ray Tracing Meth ods, Theory of Global Illumination Models, Photometric Algorithms, Form-Factor Cal culations and Physics-Based Methods.
Unit Integration Testing (UIT) had been a challenge because there was no tool that could help in XHR programming and unit integration validations in an efficient way until Cypress arrived. Cypress started releasing versions in 2015 and became popular in 2018 with version 2.0.0. This book explores Cypress scripts that help implement 'shift left testing', which is a dream come true for many software testers. Shift left occurs in the majority of testing projects, but could not be implemented fully because tools were unavailable and knowledge was lacking about the possibilities of testing early in the life cycle. Shift left is a key testing strategy to help testing teams focus less on defect identifications and more on developing practices to prevent defects. Cypress scripts can help front-end developers and quality engineers to work together to find defects soon after web components are built. These components can be tested immediately after they are built with Cypress Test Driven Development (TDD) scripts. Thus, defects can be fixed straight away during the development stage. Testing teams do not have to worry about finding these same defects in a later development stage because Cypress tests keep verifying components in the later stages. Defect fixing has become much cheaper with Cypress than when other tools are used. The book also covers Behaviour Driven Development (BDD)-based Gherkin scripts and the Cypress Cucumber preprocessor, which can improve test scenario coverage. Automated Software Testing with Cypress is written to fulfil the BDD and TDD needs of testing teams. Two distinct open source repositories are provided in Github to help start running Cypress tests in no time!
A best-seller in its French edition, the construction of this book is original and its success in the French market demonstrates its appeal. It is based on three principles: 1. An organization of the chapters by families of algorithms : exhaustive search, divide and conquer, etc. At the contrary, there is no chapter only devoted to a systematic exposure of, say, algorithms on strings. Some of these will be found in different chapters. 2. For each family of algorithms, an introduction is given to the mathematical principles and the issues of a rigorous design, with one or two pedagogical examples. 3. For its most part, the book details 150 problems, spanning on seven families of algorithms. For each problem, a precise and progressive statement is given. More important, a complete solution is detailed, with respect to the design principles that have been presented ; often, some classical errors are pointed at. Roughly speaking, two thirds of the book are devoted to the detailed rational construction of the solutions.
As the world becomes increasingly dependent on the use of computers, the need for quality software which can be produced at reasonable cost increases. This IFIP proceedings brings together the work of leading researchers and practitioners who are concerned with the efficient production of quality software.
Transformational programming and parallel computation are two emerging fields that may ultimately depend on each other for success. Perhaps because ad hoc programming on sequential machines is so straightforward, sequential programming methodology has had little impact outside the academic community, and transformational methodology has had little impact at all. However, because ad hoc programming for parallel machines is so hard, and because progress in software construction has lagged behind architectural advances for such machines, there is a much greater need to develop parallel programming and transformational methodologies.Parallel Algorithm Derivation and Program Transformation stimulates the investigation of formal ways to overcome problems of parallel computation, with respect to both software development and algorithm design. It represents perspectives from two different communities: transformational programming and parallel algorithm design, to discuss programming, transformational, and compiler methodologies for parallel architectures, and algorithmic paradigms, techniques, and tools for parallel machine models.Parallel Algorithm Derivation and Program Transformation is an excellent reference for graduate students and researchers in parallel programming and transformational methodology. Each chapter contains a few initial sections in the style of a first-year, graduate textbook with many illustrative examples. The book may also be used as the text for a graduate seminar course or as a reference book for courses in software engineering, parallel programming or formal methods in program development.
For professionals who need to design, implement or manage a quality software program, this volume identifies ten major components that make up a solid program in line with ISO 9001 quality management precepts. This second edition is expanded by over 20 per cent, with updated references, text revisions and new chapters on software safety and software risk management. It seeks to provide the starting points for a standardized documentation system, and better understanding of the individual program components and how they integrate to form the whole system.
Software architecture is a primary factor in the creation and evolution of virtually all products involving software. It is a topic of major interest in the research community where pronusmg formalisms, processes, and technologies are under development. Architecture is also of major interest in industry because it is recognized as a significant leverage point for manipulating such basic development factors as cost, quality, and interval. Its importance is attested to by the fact that there are several international workshop series as well as major conference sessions devoted to it. The First Working IFIP Conference on Software Architecture (WICSAl) provided a focused and dedicated forum for the international software architecture community to unify and coordinate its effort to advance the state of practice and research. WICSA 1 was organized to facilitate information exchange between practising software architects and software architecture researchers. The conference was held in San Antonio, Texas, USA, from February 22nd to February 24th, 1999; it was the initiating event for the new IFIP TC-2 Working Group on Software Architecture. This proceedings document contains the papers accepted for the conference. The papers in this volume comprise both experience reports and technical papers. The proceedings reflect the structure of the conference and are divided into six sections corresponding to the working groups established for the conference.
"Proceedings of the 2012 International Conference on Information
Technology and Software Engineering" presents selected articles
from this major event, which was held in Beijing, December 8-10,
2012. This book presents the latest research trends, methods and
experimental results in the fields of information technology and
software engineering, covering various state-of-the-art research
theories and approaches. The subjects range from intelligent
computing to information processing, software engineering, Web,
unified modeling language (UML), multimedia, communication
technologies, system identification, graphics and visualizing,
etc.
This book constitutes the refereed proceedings of the 21st IFIP WG 5.5 Working Conference on Virtual Enterprises, PRO-VE 2020, held in Valencia, Spain, in November 2020. The conference was held virtually.The 53 full papers were carefully reviewed and selected from 135 submissions. They provide a comprehensive overview of major challenges and recent advances in various domains related to the digital transformation and collaborative networks and their applications with a strong focus on the following areas related to the main theme of the conference: collaborative business ecosystems; collaborative business models; collaboration platform; data and knowledge services; blockchain and knowledge graphs; maintenance, compliance and liability; digital transformation; skills for organizations of the future; collaboration in open innovation; collaboration in supply chain; simulation and analysis in collaborative systems; product and service systems; collaboration impacts; boosting sustainability through collaboration in Agri-food 4.0; digital innovation hubs for digitalizing European industry; and collaborative networks for health and wellness data management.
This book provides a comprehensive introduction to various mathematical approaches to achieving high-quality software. An introduction to mathematics that is essential for sound software engineering is provided as well as a discussion of various mathematical methods that are used both in academia and industry. The mathematical approaches considered include:
Additionally, technology transfer of the mathematical methods to industry is considered. The book explains the main features of these approaches and applies mathematical methods to solve practical problems. Written with both student and professional in mind, this book assists the reader in applying mathematical methods to solve practical problems that are relevant to software engineers.
Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout their complete lifecycle. Traditionally it has been concerned with technical goals for, functions of, and constraints on software systems. Aurum and Wohlin, however, argue that it is no longer appropriate for software systems professionals to focus only on functional and non-functional aspects of the intended system and to somehow assume that organizational context and needs are outside their remit. Instead, they call for a broader perspective in order to gain a better understanding of the interdependencies between enterprise stakeholders, processes, and software systems, which would in turn give rise to more appropriate techniques and higher-quality systems. Following an introductory chapter that provides an exploration of key issues in requirements engineering, the book is organized in three parts. Part 1 presents surveys of state-of-the art requirements engineering process research along with critical assessments of existing models, frameworks and techniques. Part 2 addresses key areas in requirements engineering, such as market-driven requirements engineering, goal modeling, requirements ambiguity, and others. Part 3 concludes the book with articles that present empirical evidence and experiences from practices in industrial projects. Its broader perspective gives this book its distinct appeal and makes it of interest to both researchers and practitioners, not only in software engineering but also in other disciplines such as business process engineering and management science.
The Formal Aspects of Computing Science (FACS) Specialist Group of the British Computer Society set up a seriesof evening seminarsin 2005to report on advances in the application of formal design and analysis techniques in all the stages of software development. The seminars attracted an audience fromboth academiaand industry, andgavethem the opportunity to hear and meet pioneers andkeyresearchersin computing science.Normally it wouldbe necessaryto travelabroadand attend an internationalconference to be in the presence of such respected ?gures; instead, the evening seminar programme, overa period of threeyears, broughtthe keynotespeakers of the conference to theBritishComputerSocietyheadquarters, fortheconvenienceofanaudience basedinLondon.Severalspeakersfromtheperiod2005-2007kindlydeveloped their talks into full papers, which form the basis of this volume. Iamdelightedtowelcomethepublicationofsuchanexcellentandcomp- hensiveseriesofcontributions.Theyarenowavailableinbookformtoaneven wider audience, including developers interested in solutions already available, and researchers interested in problems which remain for future solution. Sir Tony Hoare Preface They envy the distinction I have won; let them therefore, envy my toils, my honesty, and the methods by which I gained it. - Sallust (86-34 BC) Formalmethods area powerfultechniqueforhelping toensure the correctness of software. The growth in their use has been slow but steady and they are typically applied in critical systems where safety or security is paramoun
Reverse Engineering brings together in one place important contributions and up-to-date research results in this important area. Reverse Engineering serves as an excellent reference, providing insight into some of the most important issues in the field.
Until now, there has been a lack of a complete knowledge base to fully comprehend Low power (LP) design and power aware (PA) verification techniques and methodologies and deploy them all together in a real design verification and implementation project. This book is a first approach to establishing a comprehensive PA knowledge base. LP design, PA verification, and Unified Power Format (UPF) or IEEE-1801 power format standards are no longer special features. These technologies and methodologies are now part of industry-standard design, verification, and implementation flows (DVIF). Almost every chip design today incorporates some kind of low power technique either through power management on chip, by dividing the design into different voltage areas and controlling the voltages, through PA dynamic and PA static verification, or their combination. The entire LP design and PA verification process involves thousands of techniques, tools, and methodologies, employed from the r egister transfer level (RTL) of design abstraction down to the synthesis or place-and-route levels of physical design. These techniques, tools, and methodologies are evolving everyday through the progression of design-verification complexity and more intelligent ways of handling that complexity by engineers, researchers, and corporate engineering policy makers. |
![]() ![]() You may like...
Graphical Programming Using LabVIEW (TM…
Julio Cesar Rodriguez-Quinonez, Oscar Real-Moreno
Hardcover
Opinion Mining and Text Analytics on…
Pantea Keikhosrokiani, Moussa Pourya Asl
Hardcover
R10,065
Discovery Miles 100 650
Stream Data Mining: Algorithms and Their…
Leszek Rutkowski, Maciej Jaworski, …
Hardcover
R4,936
Discovery Miles 49 360
Intelligent Distributed Computing X…
Costin Badica, Amal EL Fallah-Seghrouchni, …
Hardcover
R4,945
Discovery Miles 49 450
Big Data and Smart Service Systems
Xiwei Liu, Rangachari Anand, …
Hardcover
System on Chip Design Languages…
Anne Mignotte, Eugenio Villar, …
Hardcover
R4,517
Discovery Miles 45 170
|