![]() |
![]() |
Your cart is empty |
||
Books > Computing & IT > Computer programming > Software engineering
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.
How to Reduce Code Complexity and Develop Software More Sustainably "Mark Seemann is well known for explaining complex concepts clearly and thoroughly. In this book he condenses his wide-ranging software development experience into a set of practical, pragmatic techniques for writing sustainable and human-friendly code. This book will be a must-read for every programmer." -- Scott Wlaschin, author of Domain Modeling Made Functional Code That Fits in Your Head offers indispensable, practical advice for writing code at a sustainable pace and controlling the complexity that causes projects to spin out of control. Reflecting decades of experience helping software teams succeed, Mark Seemann guides you from zero (no code) to deployed features and shows how to maintain a good cruising speed as you add functionality, address cross-cutting concerns, troubleshoot, and optimize. You'll find valuable ideas, practices, and processes for key issues ranging from checklists to teamwork, encapsulation to decomposition, API design to unit testing. Seemann illuminates his insights with code examples drawn from a complete sample project. Written in C#, they're designed to be clear and useful to anyone who uses any object-oriented language including Java , C++, and Python. To facilitate deeper exploration, all code and extensive commit messages are available for download. Choose mindsets and processes that work, and escape bad metaphors that don't Use checklists to liberate yourself, improving outcomes with the skills you already have Get past "analysis paralysis" by creating and deploying a vertical slice of your application Counteract forces that lead to code rot and unnecessary complexity Master better techniques for changing code behavior Discover ways to solve code problems more quickly and effectively Think more productively about performance and security If you've ever suffered through bad projects or had to cope with unmaintainable legacy code, this guide will help you make things better next time and every time. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
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
Building upon the success of best-sellers The Clean Coder and Clean Code, legendary software craftsman Robert C. "Uncle Bob" Martin shows how to bring greater professionalism and discipline to application architecture and design. As with his other books, Martin's Clean Architecture doesn't merely present multiple choices and options, and say "use your best judgment": it tells you what choices to make, and why those choices are critical to your success. Martin offers direct, no-nonsense answers to key architecture and design questions like: What are the best high level structures for different kinds of applications, including web, database, thick-client, console, and embedded apps? What are the core principles of software architecture? What is the role of the architect, and what is he/she really trying to achieve? What are the core principles of software design? How do designs and architectures go wrong, and what can you do about it? What are the disciplines and practices of professional architects and designers? Clean Architecture is essential reading for every software architect, systems analyst, system designer, and software manager -- and for any programmer who aspires to these roles or is impacted by their work.
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.
st This volume contains the proceedings of two conferences held as part of the 21 IFIP World Computer Congress in Brisbane, Australia, 20-23 September 2010. th The first part of the book presents the proceedings of DIPES 2010, the 7 IFIP Conference on Distributed and Parallel Embedded Systems. The conference, int- duced in a separate preface by the Chairs, covers a range of topics from specification and design of embedded systems through to dependability and fault tolerance. rd The second part of the book contains the proceedings of BICC 2010, the 3 IFIP Conference on Biologically-Inspired Collaborative Computing. The conference is concerned with emerging techniques from research areas such as organic computing, autonomic computing and self-adaptive systems, where inspiraton for techniques - rives from exhibited behaviour in nature and biology. Such techniques require the use of research developed by the DIPES community in supporting collaboration over multiple systems. We hope that the combination of the two proceedings will add value for the reader and advance our related work.
Distributed Computing is rapidly becoming the principal computing paradigm in diverse areas of computing, communication, and control. Processor clusters, local and wide area networks, and the information highway evolved a new kind of problems which can be solved with distributed algorithms.In this textbook a variety of distributed algorithms are presented independently of particular programming languages or hardware, using the graphically suggestive technique of Petri nets which is both easy to comprehend intuitively and formally rigorous. By means of temporal logic the author provides surprisingly simple yet powerful correctness proofs for the algorithms.The scope of the book ranges from distributed control and synchronization of two sites up to algorithms on any kind of networks. Numerous examples show that description and analysis of distributed algorithms in this framework are intuitive and technically transparent.
Networked information technology (NIT) systems are synonymous with network-centric or net-centric systems and constitute the cornerstone of the fast-growing information age. NIT systems' field of application ranges from the traditional worldwide telecommunication systems, banking and financial transactions, on-line travel reservation systems, and remote data acquisition and control to the present-day e-commerce and distance learning to tomorrow's patient medical records, remote surgery, intelligent transportation systems, and communications and control in deep space. To date, however, the design and development of NIT systems have been ad-hoc, and lacking a scientific theory. A new text presents a scientific theory of NIT systems and logically develops the fundamental principles to help synthesize control algorithms for these systems. The algorithms are referred to as asynchronous, distributed decision-making (ADDM) algorithms, and their characteristics include correct operation, robustness, reliability, scalability, stability, and performance. The book explains through several case studies and actual research the conception, development, experimental testing, validation, and rigorous performance analysis of practical ADDM algorithms for real-world systems from a number of diverse disciplines. It concludes by exploring the benefits and impact of ADDM algorithms in the future. Topics and features: *develops a logical yet practical approach to synthesizing ADDM algorithms for NIT systems *addresses design of NIT systems using a scientific manner *essential for NIT engineers who plan to design, build, deploy, maintain, and evolve NIT systems that span virtually every aspect of human behavior *includes actual case studies to help readers develop clarity and application of key principles
This book discusses smart, agile software development methods and their applications for enterprise crisis management, presenting a systematic approach that promotes agility and crisis management in software engineering. The key finding is that these crises are caused by both technology-based and human-related factors. Being mission-critical, human-related issues are often neglected. To manage the crises, the book suggests an efficient agile methodology including a set of models, methods, patterns, practices and tools. Together, these make a survival toolkit for large-scale software development in crises. Further, the book analyses lifecycles and methodologies focusing on their impact on the project timeline and budget, and incorporates a set of industry-based patterns, practices and case studies, combining academic concepts and practices of software engineering.
Secure and Resilient Software: Requirements, Test Cases, and Testing Methods provides a comprehensive set of requirements for secure and resilient software development and operation. It supplies documented test cases for those requirements as well as best practices for testing nonfunctional requirements for improved information assurance. This resource-rich book includes:
Offering ground-level, already-developed software nonfunctional requirements and corresponding test cases and methods, this book will help to ensure that your software meets its nonfunctional requirements for security and resilience. The accompanying CD filled with helpful checklists and reusable documentation provides you with the tools needed to integrate security into the requirements analysis, design, and testing phases of your software development lifecycle. Some Praise for the Book: This book pulls together the state of the art in thinking about
this important issue in a holistic way with several examples. It
takes you through the entire lifecycle from conception to
implementation ... . ...provides the reader with the tools necessary to jump-start
and mature security within the software development lifecycle
(SDLC).
Dispelling much of the folklore surrounding software maintenance, Software Maintenance Success Recipes identifies actionable formulas for success based on in-depth analysis of more than 200 real-world maintenance projects. It details the set of factors that are usually present when effective software maintenance teams do their work and instructs on the methods required to achieve success. Donald J. Reifer an award winner for his contributions to the field of software engineering and whose experience includes managing the DoD Software Initiatives Office provides step-by-step guidance on how to structure the job to complete the work related to the task. Covering all phases of maintenance up to software retirement, he identifies the resources required to ready support system operation during transition and turnover, details best practices for establishing a maintenance infrastructure, and spells out a wealth of best practices aimed at maintaining and sustaining the product once it is deployed. This book tells you how to manage today 's ever-evolving maintenance environment so you can build the foundation for sound maintenance work. It explains how to create a robust management infrastructure, ensure proper resources are available, establish a user support structure, and conduct a meaningful measurement program. Filled with real-world examples and a detailed case study that is threaded across chapters, it provides you with the understanding and tools to plan for a major upgrade and determine the best time to retire your current software systems.
It is said that business re-engineering is part of our transition
to a post-industrial society. The purpose of this book is to
present an approach to how to reorganize businesses using the
discipline of software engineering as a guiding paradigm. The
author's thesis is that software engineering provides the necessary
analytical expertise for defining business processes and the tools
to transform process descriptions to support systems.
Innovations and Advanced Techniques in Systems, Computing Sciences and Software Engineering includes a set of rigorously reviewed world-class manuscripts addressing and detailing state-of-the-art research projects in the areas of Computer Science, Software Engineering, Computer Engineering, and Systems Engineering and Sciences. Innovations and Advanced Techniques in Systems, Computing Sciences and Software Engineering includes selected papers form the conference proceedings of the International Conference on Systems, Computing Sciences and Software Engineering (SCSS 2007) which was part of the International Joint Conferences on Computer, Information and Systems Sciences and Engineering (CISSE 2007). |
![]() ![]() You may like...
VLISP A Verified Implementation of…
Joshua D. Guttman, Mitchell Wand
Hardcover
R4,499
Discovery Miles 44 990
Stabilization and H Control of Switched…
Jun Fu, Ruicheng Ma
Hardcover
R2,873
Discovery Miles 28 730
Environmental Dilemmas - Ethical…
Robert Mugerauer, Lynne Manzo
Hardcover
Sustainable Technologies, Policies, and…
Andrei Jean-Vasile, Turek Rahoveanu Adrian, …
Hardcover
R4,985
Discovery Miles 49 850
The Green Building Materials Manual - A…
Hannah Rae Roth, Meghan Lewis, …
Hardcover
R1,897
Discovery Miles 18 970
Interfacing with C++ - Programming…
Jayantha Katupitiya, Kim Bentley
Hardcover
R1,728
Discovery Miles 17 280
|