![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming > Software engineering
This book constitutes the refereed proceedings of five International Workshops held as parallel events of the 18th IFIP WG 12.5 International Conference on Artificial Intelligence Applications and Innovations, AIAI 2022, virtually and in Hersonissos, Crete, Greece, in June 2022: the 11th Mining Humanistic Data Workshop (MHDW 2022); the 7th 5G-Putting Intelligence to the Network Edge Workshop (5G-PINE 2022); the 1st workshop on AI in Energy, Building and Micro-Grids (AIBMG 2022); the 1st Workshop/Special Session on Machine Learning and Big Data in Health Care (ML@HC 2022); and the 2nd Workshop on Artificial Intelligence in Biomedical Engineering and Informatics (AIBEI 2022). The 35 full papers presented at these workshops were carefully reviewed and selected from 74 submissions.
Manufacturing computers in series was quite a feat in the 1950s. As mathematical as it gets, the machines discussed here were called X1 and X8. The industrial achievement combined with the background in a mathematical research center made the company Electrologica a legend in Dutch computing. The tales in this book are told by those who have a right to tell. Highly engaged professionals take readers back to their pioneering work with the machines and in retrospect unveil some of the values, which went without saying in the 1960s. To disagree, Paul Klint relates the contrasting views on software in Dutch research traditions. ALGOL culture: Frans Kruseman Aretz takes the reader along to the detailed decisions on constructing compilers and shows the values of an ALGOL culture transpiring. Signposts: Dirk Dekker for the first time 'owns' his algorithm for mutual exclusion. In particle physics: Rene van Dantzig's use case was an Electrologica X8 computer controlling two other computers in three-dimensional detection of colliding particles. Early steps in AI: Lambert Meertens' tale of the X8 machine composing a violin quartet comes with his original presentation, as well as the code in ALGOL 60. The reflections of first hand experiences combine well with the second thoughts of historical research into archival sources. Historians Huub de Beer and Gerard Alberts offer a view into the boardrooms of the local enterprise Electrologica, and of the electronics multinational Philips. Where pioneers and historians meet in an inspiring dialogue, the reader gains a view on the often implicit decisions constituting the field. Fortuitously, a copy of the X8 was retrieved from Kiel, Germany, and put on display at Rijksmuseum Boerhaave, Leiden. Sparked by the very material presence of an X8, the present book takes stock of the state of historiography of Electrologica. Gerard Alberts is an associate professor in History of Digital Cultures, retired from the University of Amsterdam. Jan Friso Groote is a full professor of Formal Methods at the Eindhoven University of Technology.
DESCRIPTION Types are often seen as a tool for checking errors, with the programmer writing a complete program first and using the type checker to detect errors. And while tests are used to show presence of errors, they can only find errors that you explicitly test for. In typedriven development, types become your tools for constructing programs and, used appropriately, can show the absence of errors. And you can express precise relationships between data, your assumptions are explicit and checkable, and you can precisely state and verify properties. Type-driven development lets users write extensible code, create simple specifications very early in development, and easily create mock implementation for testing. Type-Driven Development with Idris, written by the creator of Idris, teaches programmers how to improve the performance and accuracy of programs by taking advantage of a state-of-the-art type system. This book teaches readers using Idris, a language designed from the very beginning to support type-driven development. Readers learn how to manipulate types just like any other construct (numbers, strings, lists, etc.). This book teaches how to use type-driven development to build real-world software, as well as how to handle side-effects, state and concurrency, and interoperating with existing systems. By the end of this book, readers will be able to develop robust and verified software in Idris and apply type-driven development methods to programming in other languages. KEY FEATURES * Written by the creator of Idris * Improve performance and accuracy of programs * Teaches Idris, a new type-driven development language * Hands-on code examples * Build real-world software AUDIENCE Written for programmers with knowledge of basic functional programming concepts. ABOUT THE TECHNOLOGY Type-driven development lets you write extensible code, create simple specifications very early in development, and easily create mock implementation for testing. In type-driven development, types become your tools for constructing programs and, used appropriately, can show the absence of errors.
Extensive research conducted by the Hasso Plattner Design Thinking Research Program at Stanford University in Palo Alto, California, USA, and the Hasso Plattner Institute in Potsdam, Germany, has yielded valuable insights on why and how design thinking works. Researchers have identified metrics, developed models, and conducted studies, which are featured in this book, and in the previous volumes of this series. Offering readers a closer look at design thinking, and its innovation processes and methods, this volume covers topics ranging from understanding success factors of design thinking to exploring the potential that lies in the use of digital technologies. Furthermore, readers learn how special-purpose design thinking can be used to solve thorny problems in complex fields, such as the health sector or software development. Thinking and devising innovations are inherently human activities - so is design thinking. Accordingly, design thinking is not merely the result of special courses or of being gifted or trained: it is a way of dealing with our environment and improving techniques, technologies and life. As such, the research outcomes compiled in this book should increase knowledge and provide inspiration to all seeking to drive innovation - be they experienced design thinkers or newcomers.
The agile transformation is an act of transforming an organization's form or nature gradually to one that can embrace and thrive in a flexible, collaborative, self-organizing, and fast-changing environment. It seems like most of the companies starting an agile transformation never reach the goal of agility, but there are those few that truly become agile and reap incredible benefits by utilizing DevOps as well. This book introduces the theory and practice of the "double-flywheels model" of Continuous Delivery 2.0: Discovery Loop, which allows information technology (IT) organizations to help businesses figure out the most efficacious ways to develop. Additionally, it explores applications of the Verification Loop that allows IT organizations to deliver value quickly and safely with high quality. Along the way, the book provides an array of insights and case studies that dive into all the aspects of software delivery, and how to implement Continuous Delivery in the most economical way for long-run business development. Features Organization culture and software architecture Business requirement management Pipeline and tooling Branching and releasing strategy Automation strategy Configuration and artefacts management Deployment and production healthy The case studies at the end of the book-scenarios in which the author was personally involved-are explored in depth and meticulously detailed in order to represent typical agile transition scenarios that will benefit all readers.
1) The book provides a basic understanding to readers who want to start their career in web application development. The book develops an understanding of the basics concepts and then takes a broader turn to enlighten the readers about the horizons which can be accessed using JavaScript. 2) JavaScript is exhaustively used in almost all kinds of application development, be it the web applications, cross platform mobile applications, server backend applications. JavaScript is now being used for full stack development and is thus used to write independent applications. Since the need for JavaScript web developers is high, the numbers of students should be high as well. 3) As compared to other books in the market, the proposed book would cover more topics (or, better, levels) in a single volume.
Architectural coordination of enterprise transformation (ACET) integrates and aggregates local information and provides different viewpoints, such as financial, structural, or skill perspectives to the respective stakeholder groups, with the aim of creating a consensus and shared understanding of an enterprise transformation among the stakeholders. Its core purpose is to inform decision-makers with both local and enterprise-wide concerns so that the overall transformation goals can be successfully pursued, i.e. reducing inconsistencies and including local decisions in the overarching goals. This book consists of three major parts, framed by an introduction and a summary. To enable readers to gain a better understanding of the issues involved in real-world enterprise transformations as well as the possible role of architectural coordination and the associated challenges, Part I provides an analysis of status quo of corporate ACET practice. Part II then continues with an exploration of the challenges facing ACET from a theoretical perspective. Based on these challenges, Part III then presents a collection of components for a possible design theory for ACET. Instead of an integrated method, this collection of components constitutes method fragments that can be arranged in different ways depending on the perspective taken, the actual enterprise architecture management approach, the enterprise transformation type and the transformation's context.
The aim of the book is to create a bridge between two 'lands' that are usually kept separate: technical tools and legal rules should be bound together for moulding a special 'toolbox' to solve present and future issues. The volume is intended to contribute to this 'toolbox' in the area of software services, while addressing how to make legal studies work closely with engineers' and computer scientists' fields of expertise, who are increasingly involved in tangled choices on daily programming and software development. In this respect, law has not lost its importance and its own categories in the digital world, but as well as any social science needs to experience a new realistic approach amid technological development and individuals' fundamental rights and freedoms.
Software engineering is of major importance to all enterprises; however, the key areas of software quality and software process improvement standards and models are currently geared toward large organizations, where most software organizations are small and medium enterprises. ""Software Process Improvement for Small and Medium Enterprises"" offers practical and useful guidelines, models, and techniques for improving software processes and products for small and medium enterprises, utilizing the authoritative, demonstrative tools of case studies and lessons learned to provide academics, scholars, and practitioners with an invaluable research source.
This book is about describing the meaning of programming languages. The author teaches the skill of writing semantic descriptions as an efficient way to understand the features of a language. While a compiler or an interpreter offers a form of formal description of a language, it is not something that can be used as a basis for reasoning about that language nor can it serve as a definition of a programming language itself since this must allow a range of implementations. By writing a formal semantics of a language a designer can yield a far shorter description and tease out, analyse and record design choices. Early in the book the author introduces a simple notation, a meta-language, used to record descriptions of the semantics of languages. In a practical approach, he considers dozens of issues that arise in current programming languages and the key techniques that must be mastered in order to write the required formal semantic descriptions. The book concludes with a discussion of the eight key challenges: delimiting a language (concrete representation), delimiting the abstract content of a language, recording semantics (deterministic languages), operational semantics (non-determinism), context dependency, modelling sharing, modelling concurrency, and modelling exits. The content is class-tested and suitable for final-year undergraduate and postgraduate courses. It is also suitable for any designer who wants to understand languages at a deep level. Most chapters offer projects, some of these quite advanced exercises that ask for complete descriptions of languages, and the book is supported throughout with pointers to further reading and resources. As a prerequisite the reader should know at least one imperative high-level language and have some knowledge of discrete mathematics notation for logic and set theory.
This fourth Edition presents new examples on submodules, derived type i/o, object oriented programming, abstract interfaces and procedure pointers, C interop, sorting and searching, statistics and converting to more modern versions of Fortran. Key Features Highlights the core language features of modern Fortran including data typing, array processing, control structures, functions, subroutines, modules and submodules, user defined types, pointers, operator overloading, generic programming, parallel programming, abstract interfaces, procedure pointers Pinpoints common problems that occur when programming Illustrates the use of several compilers Introduction to Programming with Fortran has been written for the complete beginner with little or no programming background as well as existing Fortran programmers and those with programming experience in other languages
Embedded Software Development With C offers both an effectual reference for professionals and researchers, and a valuable learning tool for students by laying the groundwork for a solid foundation in the hardware and software aspects of embedded systems development. Key features include a resource for the fundamentals of embedded systems design and development with an emphasis on software, an exploration of the 8051 microcontroller as it pertains to embedded systems, comprehensive tutorial materials for instructors to provide students with labs of varying lengths and levels of difficulty, and supporting website including all sample codes, software tools and links to additional online references.
This book presents an overview of the latest smart transportation systems, IoV connectivity frameworks, issues of security and safety in VANETs, future developments in the IoV, technical solutions to address key challenges, and other related topics. A connected vehicle is a vehicle equipped with Internet access and wireless LAN, which allows the sharing of data through various devices, inside as well as outside the vehicle. The ad-hoc network of such vehicles, often referred to as VANET or the Internet of vehicles (IoV), is an application of IoT technology, and may be regarded as an integration of three types of networks: inter-vehicle, intra-vehicle, and vehicular mobile networks. VANET involves several varieties of vehicle connectivity mechanisms, including vehicle-to-infrastructure (V2I), vehicle-to-vehicle (V2V), vehicle-to-cloud (V2C), and vehicle-to-everything (V2X). According to one survey, it is expected that there will be approximately 380 million connected cars on the roads by 2020. IoV is an important aspect of the new vision for smart transportation. The book is divided into three parts: examining the evolution of IoV (basic concepts, principles, technologies, and architectures), connectivity of vehicles in the IoT (protocols, frameworks, and methodologies), connected vehicle environments and advanced topics in VANETs (security and safety issues, autonomous operations, machine learning, sensor technology, and AI). By providing scientific contributions and workable suggestions from researchers and practitioners in the areas of IoT, IoV, and security, this valuable reference aims to extend the body of existing knowledge.
This book presents a guide to navigating the complicated issues of quality and process improvement in enterprise software implementation, and the effect these have on the software development life cycle (SDLC). Offering an integrated approach that includes important management and decision practices, the text explains how to create successful automated solutions that fit user and customer needs, by mixing different SDLC methodologies. With an emphasis on the realities of practice, the book offers essential advice on defining business requirements, and managing change. This revised and expanded second edition includes new content on such areas as cybersecurity, big data, and digital transformation. Features: presents examples, case studies, and chapter-ending problems and exercises; concentrates on the skills needed to distinguish successful software implementations; considers the political and cultural realities in organizations; suggests many alternatives for how to manage and model a system.
This book constitutes the refereed proceedings of the 17th IFIP WG 2.13 International Conference on Open Source Systems, OSS 2021, held virtually in May 2021.The 4 full papers and 3 short papers presented were carefully reviewed and selected from 23 submissions. The papers cover a wide range of topics in the field of free/libre open source software (FLOSS) and discuss theories, practices, experiences, and tools on development and applications of OSS systems, with a specific focus on two aspects:(a) the development of open source systems and the underlying technical, social, and economic issue, (b) the adoption of OSS solutions and the implications of such adoption both in the public and in the private sector.
Modern systems are an intertwined mesh of human process, physical security, and technology. Attackers are aware of this, commonly leveraging a weakness in one form of security to gain control over an otherwise protected operation. To expose these weaknesses, we need a single unified model that can be used to describe all aspects of the system on equal terms. Designing Secure Systems takes a theory-based approach to concepts underlying all forms of systems - from padlocks, to phishing, to enterprise software architecture. We discuss how weakness in one part of a system creates vulnerability in another, all the while applying standards and frameworks used in the cybersecurity world. Our goal: to analyze the security of the entire system - including people, processes, and technology - using a single model. We begin by describing the core concepts of access, authorization, authentication, and exploitation. We then break authorization down into five interrelated components and describe how these aspects apply to physical, human process, and cybersecurity. Lastly, we discuss how to operate a secure system based on the NIST Cybersecurity Framework (CSF) concepts of "identify, protect, detect, respond, and recover." Other topics covered in this book include the NIST National Vulnerability Database (NVD), MITRE Common Vulnerability Scoring System (CVSS), Microsoft's Security Development Lifecycle (SDL), and the MITRE ATT&CK Framework.
For courses in Software Engineering, Software Development, or Object-Oriented Design and Analysis at the Junior/Senior or Graduate level. This text can also be utilized in short technical courses or in short, intensive management courses. Shows students how to use both the principles of software engineering and the practices of various object-oriented tools, processes, and products. Using a step-by-step case study to illustrate the concepts and topics in each chapter, Bruegge and Dutoit emphasize learning object-oriented software engineer through practical experience: students can apply the techniques learned in class by implementing a real-world software project. The third edition addresses new trends, in particular agile project management (Chapter 14 Project Management) and agile methodologies (Chapter 16 Methodologies).
This book describes, from a computer science viewpoint the software, methods of simulating and analysing crowds with a particular focus on the effects of panic in emergency situations. The power of modern technology impacts on modern life in multiple ways every day. A variety of scientific models and computational tools have been developed to improve human safety and comfort in built environments. In particular, understanding pedestrian behaviours during egress situations is of considerable importance in such contexts. Moreover, some places are built for large numbers of people (such as train stations and airports and high volume special activities such as sporting events). Simulating Crowds in Egress Scenarios discusses the use of computational crowd simulation to reproduce and evaluate egress performance in specific scenarios. Several case studies are included, evaluating the work and different analyses, and comparisons of simulation data versus data obtained from real-life experiments are given.
Model-driven software development (MDSD) drastically alters the software development process, characterized by a high degree of innovation and productivity. However, quality assurance application in the domain of software models and model-driven software development is still in an emergent phase.""Model-Driven Software Development: Integrating Quality Assurance"" provides in-depth coverage of important concepts, issues, trends, methodologies, and technologies in quality assurance for model-driven software development. This Premier Reference Source provides educators, researchers, and practitioners with a comprehensive overview of current trends in research and practice of quality assurance in MDSD.
This book collects essential research on the practical application of executable business process modeling in real-world projects, i.e., model-driven solutions for the support and automation of digital business processes that are created using languages such as BPEL or BPMN. It mainly focuses on empirical research, but also includes an up-to-date cross-section of case studies in order to assess examples of BPM's practical impact in the industry. On the one hand, executable models are formally and precisely defined so that computers can interpret and execute them; on the other, they are visualized so that humans can describe, document and optimize business processes at a higher level of abstraction than with traditional textual programming languages. While these important research areas have long been separated from one another, this book is an attempt at cross-fertilization, driven by the insight that business processes are the software behind today's digital organizations, and that achieving a precise representation of such processes is key to their reliable execution. Consequently, the book presents various case studies and experiments that investigate questions of interest to both academia (e.g., identifying challenges for which no solution exists; sharing new insights into how existing approaches are actually used) and industry (e.g., guidelines on using certain technologies and on modeling comprehensible and executable processes). Both researchers and practitioners will benefit from the presentation of how concepts are transformed into working solutions. The studies are presented in a structured manner and with sufficient rigor to be considered empirical research, further enhancing the book's value for the research community, while practitioners will find concrete guidance on making the right decisions for their projects.
Based on the practical experiences of its authors, who collectively have spent several decades teaching software skills to scientists. Readers only need a basic understanding of Python includes over a hundred exercises to allow readers to practice their skills
This updated and reorganized Fifth edition of Software Testing: A Craftsman's Approach continues to be a valuable reference for software testers, developers, and engineers, by applying the strong mathematics content of previous editions to a coherent treatment of software testing. Responding to instructor and student survey input, the authors have streamlined chapters and examples. The Fifth Edition: Has a new chapter on feature interaction testing that explores the feature interaction problem and explains how to reduce tests Uses Java instead of pseudo-code for all examples including structured and object-oriented ones Presents model-based development and provides an explanation of how to conduct testing within model-based development environments Explains testing in waterfall, iterative, and agile software development projects Explores test-driven development, reexamines all-pairs testing, and explains the four contexts of software testing Thoroughly revised and updated, Software Testing: A Craftsman's Approach, Fifth Edition is sure to become a standard reference for those who need to stay up to date with evolving technologies in software testing.
Certifiable Software Applications 3: Downward Cycle describes the descending phase of the creation of a software application, detailing specification phases, architecture, design and coding, and important concepts on modeling and implementation. For coding, code generation and/or manual code production strategies are explored. As applications are coded, a presentation of programming languages and their impact on certifiability is included. |
You may like...
Hardware Accelerator Systems for…
Shiho Kim, Ganesh Chandra Deka
Hardcover
R3,950
Discovery Miles 39 500
Essential Java for Scientists and…
Brian Hahn, Katherine Malan
Paperback
R1,266
Discovery Miles 12 660
Data Prefetching Techniques in Computer…
Pejman Lotfi-Kamran, Hamid Sarbazi-Azad
Hardcover
R3,923
Discovery Miles 39 230
Research Anthology on Architectures…
Information R Management Association
Hardcover
R12,620
Discovery Miles 126 200
Research Anthology on Architectures…
Information R Management Association
Hardcover
R12,639
Discovery Miles 126 390
|