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
Computer interfaces and documentation are notoriously difficult for any user, regardless of his or her level of experience. Advances in technology are not making applications more friendly. Introducing concepts from linguistics and language teaching, Language and Communication proposes a new approach to computer interface design. The book explains for the first time why the much hyped user-friendly interface is treated with such derision by the user community. The author argues that software and hardware designers should consider such fundamental language concepts as meaning, context, function, variety, and equivalence. She goes on to show how imagining an interface as a new language can be an invaluable design exercise, calling into question deeply held beliefs and assumptions about what users will or will not understand. Written for a wide range of computer scientists and professionals, and presuming no prior knowledge of language-related terminology, this volume is a key step in the on-going information revolution.
Software development isn't an "ivory tower" exercise.Street coders get the job done by prioritizing tasks, making quick decisions, and knowing which rules to break. Street Coder: Rules to break and how to break themis a programmer's survival guide, full of tips, tricks, and hacks that will make you a more efficient programmer. This book's rebel mindset challenges status quo thinking and exposes the important skills you need on the job. You'll learnthe crucial importance of algorithms and data structures, turn programming chores into programming pleasures, and shatter dogmatic principles keeping you from your full potential. Every new coder starts out with a lot of theory; the "streetsmarts" come with experience. To be successful, you need to know how toput theory into action, understand why "best practices" are the best, and know when to go rogue and break the unbreakable rules.
From fundamental concepts and theories to implementation protocols and cutting-edge applications, the Handbook of Mobile Systems Applications and Services supplies a complete examination of the evolution of mobile services technologies. It examines service-oriented architecture (SOA) and explains why SOA and service oriented computing (SOC) will play key roles in the development of future mobile services. Investigating current service discovery frameworks, the book covers the basics of mobile services and applications developed in various contexts. The first section provides readers with the required background in mobile services architecture. Next, it details of middleware support for mobile services. The final section discusses security and applications of mobile services. Containing the contributions of leading researchers and academics from around the world, the book: Introduces a new location-based access control model Unveils a simple, yet powerful enhancement that enables Web services to locally manage workflow dependencies and handle messages resulting from multiple workflows Examines an event-based location aware query model that continuously aggregates data in specific areas around mobile sensors of interest Addresses the problem of location-based access control in the context of privacy protection Presents a layered architecture of context-aware middleware Considers the development of assistive technology solutions for the blind or visually impaired Discussing architecture for supporting multi-mode terminals in integrated heterogeneous wireless networks, this book addresses the network availability constraint to serve all mobile services originating from a single-user terminal. It examines QoS protocols and their enhancements in supporting user mobility. Analyzing mobile services security vulnerabilities, it details security design best practices that mobile service developers can use to improve the security of their mobile systems.
Software Engineering for Science provides an in-depth collection of peer-reviewed chapters that describe experiences with applying software engineering practices to the development of scientific software. It provides a better understanding of how software engineering is and should be practiced, and which software engineering practices are effective for scientific software. The book starts with a detailed overview of the Scientific Software Lifecycle, and a general overview of the scientific software development process. It highlights key issues commonly arising during scientific software development, as well as solutions to these problems. The second part of the book provides examples of the use of testing in scientific software development, including key issues and challenges. The chapters then describe solutions and case studies aimed at applying testing to scientific software development efforts. The final part of the book provides examples of applying software engineering techniques to scientific software, including not only computational modeling, but also software for data management and analysis. The authors describe their experiences and lessons learned from developing complex scientific software in different domains. About the Editors Jeffrey Carver is an Associate Professor in the Department of Computer Science at the University of Alabama. He is one of the primary organizers of the workshop series on Software Engineering for Science (http://www.SE4Science.org/workshops). Neil P. Chue Hong is Director of the Software Sustainability Institute at the University of Edinburgh. His research interests include barriers and incentives in research software ecosystems and the role of software as a research object. George K. Thiruvathukal is Professor of Computer Science at Loyola University Chicago and Visiting Faculty at Argonne National Laboratory. His current research is focused on software metrics in open source mathematical and scientific software.
This open access book is among the first cross-disciplinary works about Manufacturing 4.0. It includes chapters about the technical, the economic, and the social aspects of this important phenomenon. Together the material presented allows the reader to develop a holistic picture of where the manufacturing industry and the parts of the society that depend on it may be going in the future. Manufacturing 4.0 is not only a technical change, nor is it a purely technically driven change, but it is a societal change that has the potential to disrupt the way societies are constructed both in the positive and in the negative. This book will be of interest to scholars researching manufacturing, technological innovation, innovation management and industry 4.0.
The amount of software used in safety-critical systems is increasing at a rapid rate. At the same time, software technology is changing, projects are pressed to develop software faster and more cheaply, and the software is being used in more critical ways. Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance equips you with the information you need to effectively and efficiently develop safety-critical, life-critical, and mission-critical software for aviation. The principles also apply to software for automotive, medical, nuclear, and other safety-critical domains. An international authority on safety-critical software, the author helped write DO-178C and the U.S. Federal Aviation Administration s policy and guidance on safety-critical software. In this book, she draws on more than 20 years of experience as a certification authority, an avionics manufacturer, an aircraft integrator, and a software developer to present best practices, real-world examples, and concrete recommendations. The book includes:
An invaluable reference for systems and software managers, developers, and quality assurance personnel, this book provides a wealth of information to help you develop, manage, and approve safety-critical software more confidently.
This textbook covers the entire Business Process Management (BPM) lifecycle, from process identification to process monitoring, covering along the way process modelling, analysis, redesign and automation. Concepts, methods and tools from business management, computer science and industrial engineering are blended into one comprehensive and inter-disciplinary approach. The presentation is illustrated using the BPMN industry standard defined by the Object Management Group and widely endorsed by practitioners and vendors worldwide. In addition to explaining the relevant conceptual background, the book provides dozens of examples, more than 230 exercises - many with solutions - and numerous suggestions for further reading. This second edition includes extended and completely revised chapters on process identification, process discovery, qualitative process analysis, process redesign, process automation and process monitoring. A new chapter on BPM as an enterprise capability has been added, which expands the scope of the book to encompass topics such as the strategic alignment and governance of BPM initiatives. The textbook is the result of many years of combined teaching experience of the authors, both at the undergraduate and graduate levels as well as in the context of professional training. Students and professionals from both business management and computer science will benefit from the step-by-step style of the textbook and its focus on fundamental concepts and proven methods. Lecturers will appreciate the class-tested format and the additional teaching material available on the accompanying website.
Rely on this robust and thorough guide to build and maintain successful test automation. As the software industry shifts from traditional waterfall paradigms into more agile ones, test automation becomes a highly important tool that allows your development teams to deliver software at an ever-increasing pace without compromising quality. Even though it may seem trivial to automate the repetitive tester's work, using test automation efficiently and properly is not trivial. Many test automation endeavors end up in the "graveyard" of software projects. There are many things that affect the value of test automation, and also its costs. This book aims to cover all of these aspects in great detail so you can make decisions to create the best test automation solution that will not only help your test automation project to succeed, but also allow the entire software project to thrive.One of the most important details that affects the success of the test automation is how easy it is to maintain the automated tests. Complete Guide to Test Automation provides a detailed hands-on guide for writing highly maintainable test code. What You'll Learn Know the real value to be expected from test automation Discover the key traits that will make your test automation project succeed Be aware of the different considerations to take into account when planning automated tests vs. manual tests Determine who should implement the tests and the implications of this decision Architect the test project and fit it to the architecture of the tested application Design and implement highly reliable automated tests Begin gaining value from test automation earlier Integrate test automation into the business processes of the development team Leverage test automation to improve your organization's performance and quality, even without formal authority Understand how different types of automated tests will fit into your testing strategy, including unit testing, load and performance testing, visual testing, and more Who This Book Is For Those involved with software development such as test automation leads, QA managers, test automation developers, and development managers. Some parts of the book assume hands-on experience in writing code in an object-oriented language (mainly C# or Java), although most of the content is also relevant for nonprogrammers.
The book is a focused survey on probabilistic program semantics, conceived to tell a coherent story with a uniform notation. It is grouped into three themes: Part I is for 'users' of the techniques who will be developing actual programs; Part II gives mathematical foundations intended for those studying exactly how it was done and how to build semantic structures/models in their own work; and Part III describes a very 'hot' research direction, temporal logic and model checking. Topics and features: - introduces readers to very up-to-date research in the mathematics of rigorous development of randomized (probabilistic) algorithms- illustrates by example the typical steps necessary in computer science to build a mathematical model of any programming paradigm- presents results of a large and integrated body of research in the area of 'quantitative' program logics. An advanced research survey monograph, integrating three major topic areas.
In this practical guide, four Kubernetes professionals with deep experience in distributed systems, enterprise application development, and open source will guide you through the process of building applications with this container orchestration system. Based on the experiences of companies that are running Kubernetes in production successfully, many of the methods are also backed by concrete code examples. This book is ideal for those already familiar with basic Kubernetes concepts who want to learn common best practices. You'll learn exactly what you need to know to build your best app with Kubernetes the first time. Set up and develop applications in Kubernetes Learn patterns for monitoring, securing your systems, and managing upgrades, rollouts, and rollbacks Understand Kubernetes networking policies and where service mesh fits in Integrate services and legacy applications and develop higher-level platforms on top of Kubernetes Run machine learning workloads in Kubernetes
Whether ERP software, office applications, open-source products or online games: In terms of its economic characteristics, software differs fundamentally from industrial goods or services. Based on the economic principles and rules of the software industry, the book reveals strategies and business models to software vendors that comprise cooperation, distribution, pricing and production and industrialization strategies, as well as software as a service and platform concepts. Further aspects including the outsourcing behavior of software vendors and users; providing business software as open source software; selecting software; and the value chains in the software industry are also addressed. Based on a number of expert meetings, it contains numerous case studies and new empirical findings. Target audience of the book are professionals and executives from the software, consulting and IT branches as well as students and scholars of business administration, computer science, business and industrial engineering.
"All that have ever tried to impose change in their organization will immediately recognize and truly value the in-depth knowledge and experience captured in this book. It contains a collection of eye-openers that is a treasure chest for pioneers of new organizational ideas, A fantastic toolbox for use in future missions!" -Lise B. Hvatum, product development manager, Schlumberger "If you have need of changing your organization, and especially of introducing new techniques, then you want to understand what is in this book. It will help you avoid common pitfalls that doom many such projects and will show you a clear path to success. The techniques are derived from the experience of many individuals and organizations. Many are also fun to apply. This stuff is really cool-and really hot." -Joseph Bergin, professor of computer science, Pace University, New York "If change is the only guarantee in life, why is it so hard to do? As this book points out, people are not so much resistant to change itself as they are to being changed. Mary Lynn and Linda have successfully used the pattern form to capture and present the recurring lessons of successful change efforts and have placed a powerful knowledge resource in the hands of their readers." -Alan O'Callaghan, researcher, Software Technology Research Laboratory, De Montfort University, United Kingdom "The most difficult part of absorbing patterns, or any technology, into an organization is overcoming the people issues. The patterns in this book are the documentation of having gone through that experience, giving those that dare push the envelope a head start at success."-David E. DeLano, IBM Pervasive Computing "If you have ever wondered how you could possibly foster any cultural changes in your organization, in this book you will find a lot of concrete advice for doing so. I recommend that everyone read this book who has a vast interest in keeping his or her organization flexible and open for cultural change." -Jutta Eckstein, Independent Consultant, Objects In Action Author of Agile Software Development in the Large 48 Patterns for Driving and Sustaining Change in Your Organization Change. It's brutally tough to initiate, even harder to sustain. It takes too long. People resist it. But without it, organizations lose their competitive edge. Fortunately, you can succeed at making change. In Fearless Change, Mary Lynn Manns and Linda Rising illuminate 48 proven techniques, or patterns, for implementing change in organizations or teams of all sizes, and show you exactly how to use them successfully. Find out how to Understand the forces in your organization that drive and retard change Plant the seeds of change Drive participation and buy-in, from start to finish Choose an "official skeptic" to sharpen your thinking Make your changes appear less threatening Find the right timing and the best teaching moments Sustain your momentum Overcome adversity and celebrate success Inspired by the "pattern languages" that are transforming fields from software to architecture, the authors illuminate patterns for every stage of the change process: knowledge, persuasion, decision, implementation, and confirmation. These flexible patterns draw on the experiences of hundreds of leaders. They offer powerful insight into change-agent behavior, organizational culture, and the roles of every participant. Best of all, they're easy to use-and they work!
Multiagent systems (MAS) are one of the most exciting and the fastest growing domains in the intelligent resource management and agent-oriented technology, which deals with modeling of autonomous decisions making entities. Recent developments have produced very encouraging results in the novel approach of handling multiplayer interactive systems. In particular, the multiagent system approach is adapted to model, control, manage or test the operations and management of several system applications including multi-vehicles, microgrids, multi-robots, where agents represent individual entities in the network. Each participant is modeled as an autonomous participant with independent strategies and responses to outcomes. They are able to operate autonomously and interact pro-actively with their environment. In recent works, the problem of information consensus is addressed, where a team of vehicles communicate with each other to agree on key pieces of information that enable them to work together in a coordinated fashion. The problem is challenging because communication channels have limited range and there are possibilities of fading and dropout. The book comprises chapters on synchronization and consensus in multiagent systems. It shows that the joint presentation of synchronization and consensus enables readers to learn about similarities and differences of both concepts. It reviews the cooperative control of multi-agent dynamical systems interconnected by a communication network topology. Using the terminology of cooperative control, each system is endowed with its own state variable and dynamics. A fundamental problem in multi-agent dynamical systems on networks is the design of distributed protocols that guarantee consensus or synchronization in the sense that the states of all the systems reach the same value. It is evident from the results that research in multiagent systems offer opportunities for further developments in theoretical, simulation and implementations. This book attempts to fill this gap and aims at presenting a comprehensive volume that documents theoretical aspects and practical applications.
Multi-agent systems are claimed to be especially suited to the development of software systems that are decentralized, can deal flexibly with dynamic conditions, and are open to system components that come and go. This is why they are used in domains such as manufacturing control, automated vehicles, and e-commerce markets. Danny Weyns' book is organized according to the postulate that "developing multi-agent systems is 95% software engineering and 5% multi-agent systems theory." He presents a software engineering approach for multi-agent systems that is heavily based on software architecture - with, for example, tailored patterns such as "situated agent," "virtual environment," and "selective perception" - and on middleware for distributed coordination - with programming abstractions such as "views" and "roles." Next he shows the feasibility and applicability of this approach with the development of an automated transportation system consisting of a number of automatic guided vehicles transporting loads in an industrial setting. Weyns puts the development of multi-agent systems into a larger perspective with traditional software engineering approaches. With this, he opens up opportunities to exploit the body of knowledge developed in the multi-agent systems community to tackle some of the difficult challenges of modern-day software systems, such as decentralized control, location-awareness, self-adaption, and large-scale. Thus his book is of interest for both researchers and industrial software engineers who develop applications in areas such as distributed control systems and mobile applications where such requirements are of crucial importance.
One of the best languages for the development of financial engineering and instrument pricing applications is C++. This book has several features that allow developers to write robust, flexible and extensible software systems. The book is an ANSI/ISO standard, fully object-oriented and interfaces with many third-party applications. It has support for templates and generic programming, massive reusability using templates (?write once?) and support for legacy C applications. In this book, author Daniel J. Duffy brings C++ to the next level by applying it to the design and implementation of classes, libraries and applications for option and derivative pricing models. He employs modern software engineering techniques to produce industrial-strength applications: Using the Standard Template Library (STL) in financeCreating your own template classes and functionsReusable data structures for vectors, matrices and tensorsClasses for numerical analysis (numerical linear algebra ?)Solving the Black Scholes equations, exact and approximate solutionsImplementing the Finite Difference Method in C++Integration with the ?Gang of Four? Design PatternsInterfacing with Excel (output and Add-Ins)Financial engineering and XMLCash flow and yield curves Included with the book is a CD containing the source code in the Datasim Financial Toolkit. You can use this to get up to speed with your C++ applications by reusing existing classes and libraries. 'Unique... Let's all give a warm welcome to modern pricing
tools.'
Nonfunctional Requirements in Mobile Application Development is an empirical study that investigates how nonfunctional requirements--as compared with functional requirements--are treated by the software engineers during mobile application development. The book empirically analyzes the contribution of nonfunctional requirements to project parameters such as cost, time, and quality. Such parameters are of prime interest as they determine the survival of organizations in highly dynamic environments. The impact of nonfunctional requirements on project success is analyzed through surveys and case studies, both individually and relative to each other. Sources for data collection include industry, academia, and literature. The book also empirically studies the impact of nonfunctional requirements on the overall business success of both the software development firm and the software procuring firm. Project success is examined to determine if it leads to business success. The book provides rich empirical evidence to place nonfunctional requirements on par with functional requirements to achieve business success in highly competitive markets. This work enhances the body of knowledge through multiple empirical research methods including surveys, case studies, and experimentation to study software engineers' focus on nonfunctional requirements at both project and business levels. The book can guide both computer scientists and business managers in devising theoretical and technical solutions for software release planning to achieve business success.
Written by two very experienced instructors, with more than thirty years of teaching experience between them; Presents material that is grounded in practical applications that are representative of the problems researchers encounter in real life; Teaches readers the core features of modern JavaScript; Covers programming with callbacks and promises; Describes how to build data services and data visualization;
This book constitutes the refereed proceedings of the Third IFIP WG 5.5/SOCOLNET Doctoral Conference on Computing, Electrical and Industrial Systems, DoCEIS 2012, held in Costa de Caparica, Portugal, in February 2012. The 65 revised full papers were carefully reviewed and selected from numerous submissions. They cover a wide spectrum of topics ranging from collaborative enterprise networks to microelectronics. The papers are organized in topical sections on collaborative systems, service orientation, knowledge and content management, human interaction, Petri nets, smart systems, robotic systems, perceptional systems, signal processing, energy, renewable energy, energy smart grid, power electronics, electronics, optimization in electronics, telecommunications and electronics, and electronic materials. The book also includes papers from the Workshop on Data Anaylsis and Modeling Retina in Health and Disease.
Modern-day projects require software and systems engineers to work together in realizing architectures of large and complex software-intensive systems. To date, the two have used their own tools and methods to deal with similar issues when it comes to the requirements, design, testing, maintenance, and evolution of these architectures. Software and Systems Architecture in Action explores practices that can be helpful in the development of architectures of large-scale systems in which software is a major component. Examining the synergies that exist between the disciplines of software and systems engineering, it presents concepts, techniques, and methods for creating and documenting architectures. The book describes an approach to architecture design that is driven from systemic quality attributes determined from both the business and technical goals of the system, rather than just its functional requirements. This architecture-centric design approach utilizes analytically derived patterns and tactics for quality attributes that inform the architect's design choices and help shape the architecture of a given system. The book includes coverage of techniques used to assess the impact of architecture-centric design on the structural complexity of a system. After reading the book, you will understand how to create architectures of systems and assess their ability to meet the business goals of your organization. Ideal for anyone involved with large and complex software-intensive systems, the book details powerful methods for engaging the software and systems engineers on your team. The book is also suitable for use in undergraduate and graduate-level courses on software and systems architecture as it exposes students to the concepts and techniques used to create and manage architectures of software-intensive systems.
Pattern-oriented software architecture is a new approach to software development. This book represents the progression and evolution of the pattern approach into a system of patterns capable of describing and documenting large-scale applications. A pattern system provides, on one level, a pool of proven solutions to many recurring design problems. On another it shows how to combine individual patterns into heterogeneous structures and as such it can be used to facilitate a constructive development of software systems. Uniquely, the patterns that are presented in this book span several levels of abstraction, from high-level architectural patterns and medium-level design patterns to low-level idioms. The intention of, and motivation for, this book is to support both novices and experts in software development. Novices will gain from the experience inherent in pattern descriptions and experts will hopefully make use of, add to, extend and modify patterns to tailor them to their own needs. None of the pattern descriptions are cast in stone and, just as they are borne from experience, it is expected that further use will feed in and refine individual patterns and produce an evolving system of patterns.
As the complexity of today s networked computer systems grows,
they become increasingly difficult to understand, predict, and
control. Addressing these challenges requires new approaches to
building these systems. Adaptive, Dynamic, and Resilient Systems
supplies readers with various perspectives of the critical
infrastructure that systems of networked computers rely on. It
introduces the key issues, describes their interrelationships, and
presents new research in support of these areas.
Large Scale and Big Data: Processing and Management provides readers with a central source of reference on the data management techniques currently available for large-scale data processing. Presenting chapters written by leading researchers, academics, and practitioners, it addresses the fundamental challenges associated with Big Data processing tools and techniques across a range of computing environments. The book begins by discussing the basic concepts and tools of large-scale Big Data processing and cloud computing. It also provides an overview of different programming models and cloud-based deployment models. The book's second section examines the usage of advanced Big Data processing techniques in different domains, including semantic web, graph processing, and stream processing. The third section discusses advanced topics of Big Data processing such as consistency management, privacy, and security. Supplying a comprehensive summary from both the research and applied perspectives, the book covers recent research discoveries and applications, making it an ideal reference for a wide range of audiences, including researchers and academics working on databases, data mining, and web scale data processing. After reading this book, you will gain a fundamental understanding of how to use Big Data-processing tools and techniques effectively across application domains. Coverage includes cloud data management architectures, big data analytics visualization, data management, analytics for vast amounts of unstructured data, clustering, classification, link analysis of big data, scalable data mining, and machine learning techniques.
An Approach to Modelling Software Evolution Processes describes formal software processes that effectively support software evolution. The importance and popularity of software evolution increase as more and more successful software systems become legacy systems. For one thing, software evolution has become an important characteristic in the software life cycle; for another, software processes play an important role in increasing efficiency and quality of software evolution. Therefore, the software evolution process, the inter-discipline of software process and software evolution, becomes a key area in software engineering. The book is intended for software engineers and researchers in computer science. Prof. Tong Li earned his Ph.D. in Software Engineering at De Montfort University, U.K.; he has published five monographs and over one hundred papers. |
You may like...
Research Anthology on Architectures…
Information R Management Association
Hardcover
R13,372
Discovery Miles 133 720
|