![]() |
![]() |
Your cart is empty |
||
Books > Computing & IT > Computer programming > Software engineering
As human activities moved to the digital domain, so did all the well-known malicious behaviors including fraud, theft, and other trickery. There is no silver bullet, and each security threat calls for a specific answer. One specific threat is that applications accept malformed inputs, and in many cases it is possible to craft inputs that let an intruder take full control over the target computer system. The nature of systems programming languages lies at the heart of the problem. Rather than rewriting decades of well-tested functionality, this book examines ways to live with the (programming) sins of the past while shoring up security in the most efficient manner possible. We explore a range of different options, each making significant progress towards securing legacy programs from malicious inputs. The solutions explored include enforcement-type defenses, which excludes certain program executions because they never arise during normal operation. Another strand explores the idea of presenting adversaries with a moving target that unpredictably changes its attack surface thanks to randomization. We also cover tandem execution ideas where the compromise of one executing clone causes it to diverge from another thus revealing adversarial activities. The main purpose of this book is to provide readers with some of the most influential works on run-time exploits and defenses. We hope that the material in this book will inspire readers and generate new ideas and paradigms.
Part of a new four-volume series presenting best practices using UP to develop object-oriented, component-based software, this book examines the second UP phase--elaboration--focusing on defining, validating, and baselining the architecture for a system. Illustrations throughout.
This book is perhaps the first attempt to give full treatment to the topic of Software Design. It will facilitate the academia as well as the industry. This book covers all the topics of software design including the ancillary ones.
1. Provides a toolkit of templates for common VR interactions, as well as practical advice on when to use them and how to tailor them for specific use cases; 2. Includes case studies detailing the practical application of interaction theory discussed in each chapter; 3. Presents tables of guidelines for practicing VR developers, for reference during software development; 4. Covers procedures for Interface Evaluation - formulas and testing methodologies to ensure that VR interfaces are effective, efficient, engaging, error-tolerant, and easy to learn; 5. Non-linear organisation - chapters of the book on different concepts can be read to gain knowledge on a single topic, without requiring other chapters to be read beforehand; 6. Includes ancillaries - PowerPoint slides, 3D models, videos, and a teacher's guide
Features Teaches software design by showing programmers how to build the tools they use every day. Each chapter includes exercises to help readers check and deepen their understanding. All the example code can be downloaded, re-used, and modified under an open license.
People are happiest and most productive if they can choose what they work on and who they work with. Self-selecting teams give people that choice. Build well-designed and efficient teams to get the most out of your organization, with step-by-step instructions on how to set up teams quickly and efficiently. You'll create a process that works for you, whether you need to form teams from scratch, improve the design of existing teams, or are on the verge of a big team re-shuffle. Discover how New Zealand's biggest e-commerce company completely restructured their business through Self-Selection. In the process, find out how to create high-performing groups by letting people self-organize into small, cross-functional teams. Step-by-step guides, easy-to-follow diagrams, practical examples, checklists, and tools will enable you to run a Self-Selection process within your organization.If you're a manager who wants to structure your organization into small teams, you'll discover why Self-Selection is the fastest and safest way to do so. You'll prepare for and organize a Self-Selection event and make sure your Self-Selection participants and fellow managers are on board and ready.If you're a team member, you'll discover what it feels like to be part of a Self-Selection process and what the consequences are for your daily work. You'll learn how to influence your colleagues and bosses to be open to the idea of Self-Selection. You'll provide your manager with a plan for how to facilitate a Self-Selection event, and with evidence that the system works.If you're feeling the pain and chaos of adding new people to your organization, or just want to ensure that your teams have the right people with the right skills, Self-Selection will help you create the effective teams you need.
This book describes the state-of-the-art of software ecosystems. It constitutes a fundamental step towards an empirically based, nuanced understanding of the implications for management, governance, and control of software ecosystems. This is the first book of its kind dedicated to this emerging field and offers guidelines on how to analyze software ecosystems; methods for managing and growing; methods on transitioning from a closed software organization to an open one; and instruments for dealing with open source, licensing issues, product management and app stores. It is unique in bringing together industry experiences, academic views and tackling challenges such as the definition of fundamental concepts of software ecosystems, describing those forces that influence its development and lifecycles, and the provision of methods for the governance of software ecosystems. This book is an essential starting point for software industry researchers, product managers, and entrepreneurs. Contributors: T. Aaltonen, T.A. Alspaugh, C. Alves, M. Anvaari, H.U. Asuncion, O. Barbosa, S. Biffl, S. Brinkkemper, M.A. Cusumano, E. den Hartigh, D. Dhungana, R.P. dos Santos, A. Finkelstein, M. Goeminne, I. Groher, I. Hammouda, S. Jansen, A. Jimenez Salas, J. Kabbedijk, M. Kauppinen, T. Kilamo, Y.-R. Li, L. Luinenburg, T. Mens, T. Mikkonen, K.M. Popp, W. Scacchi, E. Schludermann, J. Souer, M. Tol, J. van Angeren, G. van Capelleveen, M. Viljainen, W. Visscher, C. Werner
Solid requirements engineering has increasingly been recognized as the key to improved, on-time, and on-budget delivery of software and systems projects. New software tools are emerging that are empowering practicing engineers to improve their requirements engineering habits. However, these tools are not usually easy to use without significant training. Requirements Engineering for Software and Systems, Fourth Edition is intended to provide a comprehensive treatment of the theoretical and practical aspects of discovering, analyzing, modeling, validating, testing, and writing requirements for systems of all kinds, with an intentional focus on software-intensive systems. It brings into play a variety of formal methods, social models, and modern requirements writing techniques to be useful to practicing engineers. The book is intended for professional software engineers, systems engineers, and senior and graduate students of software or systems engineering. Since the first edition, there have been made many changes and improvements to this textbook. Feedback from instructors, students, and corporate users was used to correct, expand, and improve the materials. The fourth edition features two newly added chapters: "On Non-Functional Requirements" and "Requirements Engineering: Road Map to the Future." The latter provides a discussion on the relationship between requirements engineering and such emerging and disruptive technologies as Internet of Things, Cloud Computing, Blockchain, Artificial Intelligence, and Affective Computing. All chapters of the book were significantly expanded with new materials that keep the book relevant to current industrial practices. Readers will find expanded discussions on new elicitation techniques, agile approaches (e.g., Kanpan, SAFe, and DEVOps), requirements tools, requirements representation, risk management approaches, and functional size measurement methods. The fourth edition also has significant additions of vignettes, exercises, and references. Another new feature is scannable QR codes linked to sites containing updates, tools, videos, and discussion forums to keep readers current with the dynamic field of requirements engineering.
Software analysis patterns play an important role in reducing the overall cost and compressing the time of software project lifecycles. However, building reusable and stable software analysis patterns is still considered a major and delicate challenge. This book proposes a novel concept for building analysis patterns based on software stability and is a modern approach for building stable, highly reusable, and widely applicable analysis patterns. The book also aims to promote better understanding of problem spaces and discusses how to focus requirements analysis accurately. It demonstrates a new approach to discovering and creating stable analysis patterns (SAPs). This book presents a pragmatic approach to understanding problem domains, utilizing SAPs for any field of knowledge, and modeling stable software systems, components, and frameworks. It helps readers attain the basic knowledge that is needed to analyze and extract analysis patterns from any domain of interest. Readers also learn to master methods to document patterns in an effective, easy, and comprehensible manner. Bringing significant contributions to the field of computing, this book is a unique and comprehensive reference manual on SAPs. It provides insight on handling the understanding of problem spaces and supplies methods and processes to analyze user requirements accurately as well as ways to use SAPs in building myriad cost-effective and highly maintainable systems. The book also shows how to link SAPs to the design phase thereby ensuring a smooth transition between analysis and design.
This book provides techniques for offshore center managers and head office managers to motivate and manage globally distributed teams, which are spread across the offshore center and the head office, and thereby achieve higher productivity. Readers learn how to integrate the offshore center with the head office to make the offshore team an extension of the head office. While integrating teams with the head office, offshore center managers can still retain independence and authority to meet team aspirations. The book provides insight into devising new organizational structures to balance the authority and responsibilities of offshore center and head office managers. Head office managers responsible for managing globally distributed projects learn how to achieve a higher success rate on their projects and be better rewarded for their efforts in offshoring. Head office managers also learn techniques to make more significant contributions in their expatriate assignments to the offshore center. This book guides both the offshore center managers and the head office managers to fully realize the potential of the offshore center, which can result in higher revenues and profitability.
SAFe (R) 5.0: The World's Leading Framework for Business Agility "Those who master large-scale software delivery will define the economic landscape of the twenty-first century. SAFe 5.0 is a monumental release that I am convinced will be key in helping countless enterprise organizations succeed in their shift from project to product." -Dr. Mik Kersten, CEO of Tasktop and author of the book Project to Product Business agility is the ability to compete and thrive in the digital age by quickly responding to unprecedented market changes, threats, and emerging opportunities with innovative business solutions. SAFe (R) 5.0 Distilled: Achieving Business Agility with Scaled Agile Framework (R) explains how adopting SAFe helps enterprises use the power of Agile, Lean, and DevOps to outflank the competition and deliver complex, technology-based business solutions in the shortest possible time. This book will help you Understand the business case for SAFe: its benefits, and the problems it solves Learn the technical, organizational and leadership competencies needed for business agility Refocus on customer centricity with design thinking Better align strategy and execution with Lean Portfolio Management Learn the leadership skills needed to thrive in the digital age Increase the flow of value to customers with value stream networks Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
A commitment to usability in user interface design and
development offers enormous benefits, including greater user
productivity, more competitive products, lower support costs, and a
more efficient development process. But what does it mean to be
committed to usability? Inside, a twenty-year expert answers this
question in full, presenting the techniques of Usability
Engineering as a series of product lifecycle tasks that result
directly in easier-to-learn, easier-to-use software.
As software RandD investment increases, the benefits from short feedback cycles using technologies such as continuous deployment, experimentation-based development, and multidisciplinary teams require a fundamentally different strategy and process. This book will cover the three overall challenges that companies are grappling with: speed, data and ecosystems. Speed deals with shortening the cycle time in RandD. Data deals with increasing the use of and benefit from the massive amounts of data that companies collect. Ecosystems address the transition of companies from being internally focused to being ecosystem oriented by analyzing what the company is uniquely good at and where it adds value.
Nowadays software engineers not only have to worry about the technical knowledge needed to do their job, but they are increasingly having to know about the legal, professional and commercial context in which they must work. With the explosion of the Internet and major changes to the field with the introduction of the new Data Protection Act and the legal status of software engineers, it is now essential that they have an appreciation of a wide variety of issues outside the technical. Equally valuable to both students and practitioners, it brings together the expertise and experience of leading academics in software engineering, law, industrial relations, and health and safety, explaining the central principles and issues in each field and shows how they apply to software engineering.
Scientific descriptions of the climate have traditionally been based on the study of average meteorological values taken from different positions around the world. In recent years however it has become apparent that these averages should be considered with other statistics that ultimately characterize spatial and temporal variability. This book is designed to meet that need. It is based on a course in computational statistics taught by the author that arose from a variety of projects on the design and development of software for the study of climate change, using statistics and methods of random functions.
Updates content and introduces topics such as business changes and outsourcing. Addresses new cyber security risks such as IoT and Distributed Networks (i.e., blockchain). Covers strategy based on the OODA loop in the cycle. Demonstrates application of the concepts through short case studies of real-world incidents chronologically delineating related events. Discusses certifications and reference manuals in cyber security and digital forensics. Includes an entire chapter on tools used by professionals in the field.
Database technology and entity-relationship (ER) modeling have meanwhile reached the level of an established technology. This book presents the achievements of research in this field in a comprehensive survey. It deals with the entity-relationship model and its extensions with regard to an integrated development and modeling of database applications and, consequently, the specification of structures, behavior and interaction. Apart from research on the ER model and the syntax, semantics, and pragmatics of database modeling the book also presents techniques for the translation of the ER model into classical database models and languages such as relational, hierarchical, and network models and languages, and also into object-oriented models. The book is of interest for all database theoreticians as well as practitioners who are provided with the relevant foundations of database modeling.
This book constitutes the refereed proceedings of the informatics and cybernetics in intelligent systems section of the 10th Computer Science Online Conference 2021 (CSOC 2021), held online in April 2021. Modern cybernetics and computer engineering papers in the scope of intelligent systems are an essential part of actual research topics. In this book, a discussion of modern algorithms approaches techniques is held.
Experts from Andersen Consulting show you how to combine computing, communications, and knowledge to deliver a uniquely new-and entirely indispensable-competitive advantage. Lead, Follow, or get out of the way Your company's ability to sustain a competitive advantage is in jeopardy. Your competitors can imitate and improve faster than ever. You need to find ways to help your company discover and deliver and astounding solution, control its costs, and move on the next astounding solution. Web-based computing is the vital technology enabler for today's most important business opportunities, like E-Commerce. It is also the flexible foundation for future solutions. However, because of the complexities and difficulties it represents, it can be critical hurdle for IT shops and for an entire business. Enterprise Systems Architecture: Building Client/Server and Web-Based Systems is your guide through these complexities as you integrate your technology capabilities with your strategy, people, and processes to deliver astounding solutions. It Introduces you to basic principles and concepts, provides an overview of state-of-the-art in client/server and Web-based computing models, and develops a solid business case for implementation. Acquaints you with various technologies involved and describes a comprehensive network computing architecture. Details crucial analysis, design, and implementation issues, including design specifics for architectures, applications, and network; rollout strategies; and ongoing management of distributed operations. Explores emerging technologies and their likely impact on the future of netcentric computing. Here you'll find detailed information on the architectures and frameworks for network-based computing strategies for designing and implementing solutions strategies and methods for security. It also provides a full framework for testing applications, and in-depth dis
Features Teaches software design by showing programmers how to build the tools they use every day. Each chapter includes exercises to help readers check and deepen their understanding. All the example code can be downloaded, re-used, and modified under an open license.
Environment Modeling-Based Requirements Engineering for Software Intensive Systems provides a new and promising approach for engineering the requirements of software-intensive systems, presenting a systematic, promising approach to identifying, clarifying, modeling, deriving, and validating the requirements of software-intensive systems from well-modeled environment simulations. In addition, the book presents a new view of software capability, i.e. the effect-based software capability in terms of environment modeling.
The "servicemesh" pattern, implemented by platforms like Istio, helps you push operational issues into the infrastructure so the application code is easier to understand, maintain, and adapt. Istio in Action teaches you how to implement a full-featured Istio-based service mesh to manage a microservices application. Istio in Action is a comprehensive guide to handling authentication, routing, retrying, load balancing, collecting data, security, and other common network-related tasks using the Istio service mesh platform. With helpful diagrams and hands-on examples, you'll learn how to use this open-source service mesh to control routing, secure container applications, and monitor network traffic. You will also bring Istio to legacy systems without changes to your applications and discover how to use Istio in amulti-cloud world with the data layer deployed on a cluster like Kubernetes. Cloud-native applications can include thousands of clustered containers, distributed components, and complex interactions. To build them effectively, developers need a new approach to infrastructural concerns like monitoring, storage, scaling, orchestration, and security. The Istio platform offers a configurable infrastructure layer called a service mesh that reliably and efficiently manages day-to-day concerns like service discovery, load balancing, encryption, authentication and authorization, circuit breakers, and more. Open source andcloud-ready, Istio is a welcome upgrade from manually managed microservices infrastructure.
While emerging technologies create massive opportunity, especially for investors and companies that seek more adaptable forms of economic growth than currently available, value is held inert by traditional approaches, patents, and other closed systems. Yet, open data, content, and information may be the key to mass innovation for future technologies, although they bring difficult challenges to private-industry models that depend on the established ideas of intellectual property. It is from this foundational observation that OpenXFORM (a blending of the words Open and the engineering abbreviation for Transformation) was developed and is explored and described in this book. The intent of the model design is to synthesize an approach to the process of innovation, inspired by natural systems and human-centric design processes. OpenXFORM describes how an open system of innovation can adapt to the unregulated world of information, data, and content; can decompose its own information to release to the open world; and can discover ways to find the points of synergy among the studied and tested methodologies that put human relationships first. This book presents an explicit innovation process that shows how to move from a breakthrough idea through a process that encourages innovative thinkers to test their assumptions, validate hypotheses, and tune and tweak their ideas, not only to drive solutions for users but also to meet the strategic goals of their companies. The anatomy of innovation through OpenXFORM contains the process for moving ideas from a flight of fancy to an explicit concept that is ready to produce.
Emphasizing the connection between mathematical objects and their practical C++ implementation, this book provides a comprehensive introduction to both the theory behind the objects and the C and C++ programming. Object-oriented implementation of three-dimensional meshes facilitates understanding of their mathematical nature. Requiring no prerequisites, the text covers discrete mathematics, data structures, and computational physics, including high-order discretization of nonlinear equations. Exercises and solutions make the book suitable for classroom use and a supporting website supplies downloadable code. |
![]() ![]() You may like...
Information Retrieval and Management…
Information Reso Management Association
Hardcover
R8,005
Discovery Miles 80 050
Hiking Beyond Cape Town - 40 Inspiring…
Nina du Plessis, Willie Olivier
Paperback
The Land Is Ours - Black Lawyers And The…
Tembeka Ngcukaitobi
Paperback
![]()
Applications in Ubiquitous Computing
Raman Kumar, Sara Paiva
Hardcover
R1,549
Discovery Miles 15 490
SQL: 1999 - Understanding Relational…
Jim Melton, Alan R. Simon
Paperback
Race, Class And The Post-Apartheid…
John Reynolds, Ben Fine, …
Paperback
|