![]() |
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 focuses on the topic of improving software quality using adaptive control approaches. As software systems grow in complexity, some of the central challenges include their ability to self-manage and adapt at run time, responding to changing user needs and environments, faults, and vulnerabilities. Control theory approaches presented in the book provide some of the answers to these challenges.The book weaves together diverse research topics (such as requirements engineering, software development processes, pervasive and autonomic computing, service-oriented architectures, on-line adaptation of software behavior, testing and QoS control) into a coherent whole.Written by world-renowned experts, this book is truly a noteworthy and authoritative reference for students, researchers and practitioners to better understand how the adaptive control approach can be applied to improve the quality of software systems. Book chapters also outline future theoretical and experimental challenges for researchers in this area.
Plenty of software testing books tell you how to test well; this one tells you how to do it while decreasing your testing budget. A series of essays written by some of the leading minds in software testing, How to Reduce the Cost of Software Testing provides tips, tactics, and techniques to help readers accelerate the testing process, improve the performance of the test teams, and lower costs. The distinguished team of contributors-that includes corporate test leaders, best paper authors, and keynote speakers from leading software testing conferences-supply concrete suggestions on how to find cost savings without sacrificing outcome. Detailing strategies that testers can immediately put to use to reduce costs, the book explains how to make testing nimble, how to remove bottlenecks in the testing process, and how to locate and track defects efficiently and effectively. Written in language accessible to non-technical executives, as well as those doing the testing, the book considers the latest advances in test automation, ideology, and technology. Rather than present the perspective of one or two experts in software testing, it supplies the wide-ranging perspectives of a team of experts to help ensure your team can deliver a completed test cycle in less time, with more confidence, and reduced costs.
The Reference Model of Open Distributed Processing (RM-ODP) is an international standard that provides a solid basis for describing and building widely distributed systems and applications in a systematic way. It stresses the need to build these systems with evolution in mind by identifying the concerns of major stakeholders and then expressing the design as a series of linked viewpoints. Although RM-ODP has been a standard for more than ten years, many practitioners are still unaware of it. Building Enterprise Systems with ODP: An Introduction to Open Distributed Processing offers a gentle pathway to the essential ideas that constitute ODP and shows how these ideas can be applied when designing and building challenging systems. It provides an accessible introduction to the design principles for software engineers and enterprise architects. The book also explains the benefits of using viewpoints to produce simpler and more flexible designs and how ODP can be applied to service engineering, open enterprise, and cloud computing. The authors include guidelines for using the Unified Modeling Language (TM) (UML) notation and for structuring and writing system specifications. They elucidate how this fits into the model-driven engineering tool chain via approaches, such as Model-Driven Architecture (R) (MDA). They also demonstrate the power of RM-ODP for the design and organization of complex distributed IT systems in e-government, e-health, and energy and transportation industries. All concepts and ideas in the book are illustrated through a single running example that describes the IT support needed by a medium-sized company as it grows and develops. Complete UML models and more are available at http://theodpbook.lcc.uma.es/
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.
How do you detangle a monolithic system and migrate it to a microservice architecture? How do you do it while maintaining business-as-usual? As a companion to Sam Newman's extremely popular Building Microservices, this new book details a proven method for transitioning an existing monolithic system to a microservice architecture. With many illustrative examples, insightful migration patterns, and a bevy of practical advice to transition your monolith enterprise into a microservice operation, this practical guide covers multiple scenarios and strategies for a successful migration, from initial planning all the way through application and database decomposition. You'll learn several tried and tested patterns and techniques that you can use as you migrate your existing architecture. Ideal for organizations looking to transition to microservices, rather than rebuild Helps companies determine whether to migrate, when to migrate, and where to begin Addresses communication, integration, and the migration of legacy systems Discusses multiple migration patterns and where they apply Provides database migration examples, along with synchronization strategies Explores application decomposition, including several architectural refactoring patterns Delves into details of database decomposition, including the impact of breaking referential and transactional integrity, new failure modes, and more
A unique guide to the design and implementation of simulation software This book offers a concise introduction to the art of building simulation software, collecting the most important concepts and algorithms in one place. Written for both individuals new to the field of modeling and simulation as well as experienced practitioners, this guide explains the design and implementation of simulation software used in the engineering of large systems while presenting the relevant mathematical elements, concept discussions, and code development. The book approaches the topic from the perspective of Zeigler's theory of modeling and simulation, introducing the theory's fundamental concepts and showing how to apply them to engineering problems. Readers will learn five necessary skills for building simulations of complicated systems: Working with fundamental abstractions for simulating dynamic systemsDeveloping basic simulation algorithms for continuous and discrete event modelsCombining continuous and discrete event simulations into a coherent wholeApplying strategies for testing a simulationUnderstanding the theoretical foundations of the modeling constructs and simulation algorithms The central chapters of the book introduce, explain, and demonstrate the elements of the theory that are most important for building simulation tools. They are bracketed by applications to robotics, control and communications, and electric power systems; these comprehensive examples clearly illustrate how the concepts and algorithms are put to use. Readers will explore the design of object-oriented simulation programs, simulation using multi-core processors, and the integration of simulators into larger software systems. The focus on software makes this book particularly useful for computer science and computer engineering courses in simulation that focus on building simulators. It is indispensable reading for undergraduate and graduate students studying modeling and simulation, as well as for practicing scientists and engineers involved in the development of simulation tools.
Although the precepts of software engineering have been around for decades, the field has failed to keep pace with rapid advancements in computer hardware and software. Modern systems that integrate multiple platforms and architectures, along with the collaborative nature of users who expect an instantaneous global reach via the Internet, require updated software engineering methods. Social Software Engineering: Development and Collaboration with Social Networking examines the field through the spectrum of the social activities that now compose it. Supplying an up-to-date look at this ever-evolving field, it provides comprehensive coverage that includes security, legal, and privacy issues in addition to workflow and people issues. Jessica Keyes, former managing director of R&D for the New York Stock Exchange and noted columnist, correspondent, and author with more than 200 articles published, details the methodology needed to bring mission-critical software projects to successful conclusions. She provides readers with the understanding and tools required to fuse psychology, sociology, mathematics, and the principles of knowledge engineering to develop infrastructures capable of supporting the collaborative applications that today's users require.
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) combined with functional programming is the innovative combo that will get you there. In this pragmatic, down-to-earth guide, you'll see how applying the core principles of functional programming can result in software designs that model real-world requirements both elegantly and concisely - often more so than an object-oriented approach. Practical examples in the open-source F# functional language, and examples from familiar business domains, show you how to apply these techniques to build software that is business-focused, flexible, and high quality. Domain-driven design is a well-established approach to designing software that ensures that domain experts and developers work together effectively to create high-quality software. This book is the first to combine DDD with techniques from statically typed functional programming. This book is perfect for newcomers to DDD or functional programming - all the techniques you need will be introduced and explained. Model a complex domain accurately using the F# type system, creating compilable code that is also readable documentation---ensuring that the code and design never get out of sync. Encode business rules in the design so that you have "compile-time unit tests," and eliminate many potential bugs by making illegal states unrepresentable. Assemble a series of small, testable functions into a complete use case, and compose these individual scenarios into a large-scale design. Discover why the combination of functional programming and DDD leads naturally to service-oriented and hexagonal architectures. Finally, create a functional domain model that works with traditional databases, NoSQL, and event stores, and safely expose your domain via a website or API. Solve real problems by focusing on real-world requirements for your software. What You Need: The code in this book is designed to be run interactively on Windows, Mac and Linux. You will need a recent version of F# (4.0 or greater), and the appropriate .NET runtime for your platform. Full installation instructions for all platforms at fsharp.org.
The examination of social questions is a relatively new development in goegraphy, but social geography has now blossomed into a fully fledged sub-discipline which has in fact influenced significantly all other areas of geography. This book, first published in 1987, presents an overview of recent developments in all the major branches of social geography. As such it provides a valuable introduction to te subject, a review of the latest state of the art and a pointer to future research directions.
The latest work by the world's leading authorities on the use of formal methods in computer science is presented in this volume, based on the 1995 International Summer School in Marktoberdorf, Germany. Logic is of special importance in computer science, since it provides the basis for giving correct semantics of programs, for specification and verification of software, and for program synthesis. The lectures presented here provide the basic knowledge a researcher in this area should have and give excellent starting points for exploring the literature. Topics covered include semantics and category theory, machine based theorem proving, logic programming, bounded arithmetic, proof theory, algebraic specifications and rewriting, algebraic algorithms, and type theory.
Your customers want rock-solid, bug-free software that does exactly what they expect it to do. Yet they can't always articulate their ideas clearly enough for you to turn them into code. You need Cucumber: a testing, communication, and requirements tool-all rolled into one. All the code in this book is updated for Cucumber 2.4, Rails 5, and RSpec 3.5. Express your customers' wild ideas as a set of clear, executable specifications that everyone on the team can read. Feed those examples into Cucumber and let it guide your development. Build just the right code to keep your customers happy. You can use Cucumber to test almost any system or any platform. Get started by using the core features of Cucumber and working with Cucumber's Gherkin DSL to describe-in plain language-the behavior your customers want from the system. Then write Ruby code that interprets those plain-language specifications and checks them against your application. Next, consolidate the knowledge you've gained with a worked example, where you'll learn more advanced Cucumber techniques, test asynchronous systems, and test systems that use a database. Recipes highlight some of the most difficult and commonly seen situations the authors have helped teams solve. With these patterns and techniques, test Ajax-heavy web applications with Capybara and Selenium, REST web services, Ruby on Rails applications, command-line applications, legacy applications, and more. Written by the creator of Cucumber and the co-founders of Cucumber Ltd., this authoritative guide will give you and your team all the knowledge you need to start using Cucumber with confidence. What You Need: Windows, Mac OS X (with XCode) or Linux, Ruby 1.9.2 and upwards, Cucumber 2.4, Rails 5, and RSpec 3.5
Designed to conform to the ISO/IEC standard 14143, the Common Software Measurement International Consortium (COSMIC) Function Point method has become the major estimation technique based on international standards for building software-intensive systems. COSMIC Function Points: Theory and Advanced Practices supplies a cutting-edge look at current and emerging practices in the international software measurement community. The editors have assembled an international panel of experts who detail the steps for measuring the functional size of software and developing project estimates with improved accuracy. They explain how to evaluate and compare systems to improve software reuse and development. Touching on the essential aspects of the next generation of functional size measurement methods, the book delineates best estimation and measurement practices as well as the development of benchmarks for quality improvement, including Six Sigma. This complete resource covers software measurement and estimation methods and practices for embedded systems, business applications, communications software, and control systems. Each chapter supplies the practical understanding required to create, implement, standardize, distribute, and adapt functional size measurement and project estimation to virtually any software context. Praise for: ... an excellent overview ... provides a strong knowledge background for both practitioners and researchers. ... With its broad background, it is useful for practically implementing and successfully adapting other functional sizing methods ... . The COSMIC function point techniques presented in this book will help you to implement, master, and improve your estimation process.-Christof Ebert, Managing Director, Vector Consulting Services
An authoritative guide that explores in depth the cultural, technological and methodological concerns to practice three-timezone (3TZ) e-learning in educational contexts. It is important from a pedagogical and practical perspective to impart educational methods and tools that will enable students to be ready for the interconnected, cross-collaborative work environment advocated by modern business practice. The 'local is global' paradigm provides the platform on which students are able to effectively build their knowledge repertoire through the interaction and exchange of project tasks amongst local/global teams, where the traditional barriers of time and location are no longer applicable. The situational and social learning dimensions gained from the explored issues covered in the book will provide a greater awareness to the reader for the need for teaching practice for the '3TZ' enabled workforce. Contents * Teaching Practice-based Subjects in 3 Time Zones (3TZ) Virtual Student Exchange (VSX) Environment * Collaborative Team Project Management * Toward the 24-Hour Knowledge Factory in Software Development * 24/7 Application in Medical Research * Worldwide Teams in Software Development * Virtual Student Exchange: Developing New Educational Paradigms to Support 24-7 Engineering * Data and Knowledge-Transfer Model for the Development of Software Requirements analysis CASE Tools designed for Cross-Time-Zone Projects.
Many enterprises regard system-level testing as the final piece of the development effort, rather than as a tool that should be integrated throughout the development process. As a consequence, test teams often execute critical test plans just before product launch, resulting in much of the corrective work being performed in a rush and at the last minute. Presenting combinatorial approaches for improving test coverage, Testing Complex and Embedded Systems details techniques to help you streamline testing and identify problems before they occur -- including turbocharged testing using Six Sigma and exploratory testing methods. Rather than present the continuum of testing for particular products or design attributes, the text focuses on boundary conditions. Examining systems and software testing, it explains how to use simulation and emulation to complement testing. * Details how to manage multiple test hardware and software deliveries * Examines the contradictory perspectives of testing -- including ordered/ random, structured /unstructured, bench/field, and repeatable/non repeatable * Covers essential planning activities prior to testing, how to scope the work, and how to reach a successful conclusion * Explains how to determine when testing is complete Where you find organizations that are successful at product development, you are likely to find groups that practice disciplined, strategic, and thorough testing. Tapping into the authors' decades of experience managing test groups in the automotive industry, this book provides the understanding to help ensure your organization joins the likes of these groups.
This book focuses on metamodelling as a discipline, exploring its foundations, techniques and results. It presents a comprehensive metamodel that covers process, product and quality issues under a common framework. Issues covered include: An explanation of what metamodelling is and why it is necessary in the context of software engineering. Basic concepts and principles of traditional metamodelling, and some existing results of this approach. Problems associated with traditional approaches to Metamodelling are discussed, alongside an exploration of possible solutions and alternative approaches. Advanced topics such as the extension of the object-oriented paradigm for metamodelling purposes or the foundations of powertype-based tool development will be studied. Finally, a comprehensive case study is introduced and developed, showing how to use many of the concepts explained in the previous chapters. This book provides a comprehensive conceptual framework for metamodelling and includes case studies and exercises which will demonstrate practical uses of metamodelling. For lecturers and educators, the book provides a layered repository of contents, starting from the basics of metamodelling in the first chapters, through specific issues such as trans-layer control or non-strict approaches, up to advanced topics such as universal powertyping or extensions to the object-oriented paradigm. The book also serves as an in-depth reference guide to features and technologies to consider when developing in-house software development methods or customising and adopting off-the-shelf ones. Software tool developers and vendors can benefit from the book by finding in it a comprehensive guide tothe implementation of frameworks and toolsets for computer-aided software modelling and development.
This book introduces SpecDB, an intelligent database created to represent and host software specifications in a machine-readable format, based on the principles of artificial intelligence and unit testing database operations. SpecDB is demonstrated via two automated intelligent tools. The first automatically generates database constraints from a rule-base in SpecDB. The second is a reverse engineering tool that logs the actual execution of the program from the code.
Business success hinges on successfully creating products with the right features. You must correctly analyze the needs of the customer and match these needs with your resources to not only produce a product and but also deliver it in a timely manner. An in-depth understanding of systematic release planning can put you on this path. Authored by renowned expert Gunther Ruhe, Product Release Planning: Methods, Tools and Applications presents methods and tools to apply sound planning to product development and product management. The book covers the different aspects of supporting product release decisions ranging from foundations to methods, tools, and applications. Equal parts art and science, the actual decision-making is described as a process of combining rigorous methods with the intuition and experience of human experts. Ruhe provides a guided tour through the methodology and use of release planning, starting with technology and market needs and proceeding to product planning and finally to development projects. He studies three fundamental classes of problems: prioritization of features, product release planning on a strategic level (roadmapping), and release planning on an operational level (staffing). Presenting and discussing tool support for all the methods covered, the author supplies case studies that underpin the methodologies with practical examples. He also supplies trial accounts (read only) for the two most important decision tools for prioritization and product release planning. The author freely admits that the techniques presented are not supposed to be the ultimate truth, but a direction to go to support human decision-making, to better understand the rational of the decisions made, and to grow in the capability of mastering the whole planning process. About the Author: Gunther Ruhe holds an Industrial Research Chair in Software Engineering at University of Calgary. His main results and publications are in software engineering decision support, product release planning, project management, as well as measurement, simulation, optimization and empirical research for software-based systems. From 1996 until 2001 he was deputy director of the Fraunhofer Institute for Experimental Software Engineering in Kaiserslautern, Germany. He has comprehensive experience in industry collaboration projects and is the Founder and CEO of Expert Decisions Inc. Dr. Ruhe is a member of the ACM, the IEEE Computer Society and the German Computer Society GI.
Environmental Informatics is a fast growing field which deals with all methods from computer science, environmental planning, ecology and related subjects. As well as being an interdisciplinary area, Environmental Informatics provides an interface between all involved professional groups. Monitoring the state of the environment, analysing existing data, presenting the data to scientists and the public, as well as providing decision support are only some of the topics involved. Environmental Informatics is therefore a good foundation for the computer-assisted protection of the environment.
Colonialism and the Modernist Moment in the Early Novels of Jean Rhys explores the postcolonial significance of Rhys s modernist period work, which depicts an urban scene more varied than that found in other canonical representations of the period. Arguing against the view that Rhys comes into her own as a colonial thinker only in the post-WWII period of her career, this study examines the austere insights gained by Rhys s active cultivation of her fringe status vis-a-vis British social life and artistic circles, where her sharp study of the aporias of marginal lives and the violence of imperial ideology is distilled into an artistic statement positing the outcome of the imperial venture as a state of homelessness across the board, for colonized and metropolitans alike. Bringing to view heretofore overlooked emigre populations, or their children, alongside locals, Rhys s urbanites struggle to construct secure lives not simply as a consequence of commodification, alienation, or voluntary expatriation, but also as a consequence of marginalization and migration. This view of Rhys s early work asserts its vital importance to postcolonial studies, an importance that has been overlooked owing to an over hasty critical consensus that only one of her early novels contains significant colonial content. Yet, as this study demonstrates, proper consideration of colonial elements long considered only incidental illuminates a colonial continuum in Rhys s work from her earliest publications. "
Presents a novel metrics-based approach for detecting design problems in object-oriented software. Introduces an important suite of detection strategies for the identification of different well-known design flaws as well as some rarely mentioned ones.
Software engineering has over the years been applied in many different fields, ranging from telecommunications to embedded systems in car and aircraft industry as well as in production engineering and computer networks. Foundations in software technology lie in models allowing to capture application domains, detailed requirements, but also to understand the structure and working of software systems like software architectures and programs. These models have to be expressed in techniques based on discrete mathematics, algebra and logics. However, according to the very specific needs in applications of software technology, formal methods have to serve the needs and the quality of advanced software engineering methods, especially taking into account security aspects in Information Technology. This book presents mathematical foundations of software engineering and state-of-the-art engineering methods in their theoretical substance in the step towards practical applications to examine software engineering techniques and foundations used for industrial tasks. The contributions in this volume emerged from lectures of the 25th International Summer School on Engineering Theories of Software Intensive Systems, held at Marktoberdorf, Germany from August 3 to August 15, 2004.
This book addresses action research (AR), one of the main research methodologies used for academia-industry research collaborations. It elaborates on how to find the right research activities and how to distinguish them from non-significant ones. Further, it details how to glean lessons from the research results, no matter whether they are positive or negative. Lastly, it shows how companies can evolve and build talents while expanding their product portfolio. The book's structure is based on that of AR projects; it sequentially covers and discusses each phase of the project. Each chapter shares new insights into AR and provides the reader with a better understanding of how to apply it. In addition, each chapter includes a number of practical use cases or examples. Taken together, the chapters cover the entire software lifecycle: from problem diagnosis to project (or action) planning and execution, to documenting and disseminating results, including validity assessments for AR studies. The goal of this book is to help everyone interested in industry-academia collaborations to conduct joint research. It is for students of software engineering who need to learn about how to set up an evaluation, how to run a project, and how to document the results. It is for all academics who aren't afraid to step out of their comfort zone and enter industry. It is for industrial researchers who know that they want to do more than just develop software blindly. And finally, it is for stakeholders who want to learn how to manage industrial research projects and how to set up guidelines for their own role and expectations.
Imagine that you are the CEO of a software company. You know you compete in an environment that does not permit you to treat innovation as a secondary issue. But how should you manage your software innovation to get the most out of it? This book will provide you with the answer. Software innovation is multifaceted and the approaches used by companies can be very different. The team of authors that wrote this book took the assumption that there is no such thing as a universal software engineering process or innovation process. Some things work well for a certain company, others do not. The book is organized around what the authors call eight fundamental practice areas for innovation with software. Each practice area contains a number of activities that can help companies to master that practice area. It also contains industrial experience reports that illustrate the applicability of these practice areas in software companies and is structured in such a way that you can select and read only those practice areas that are relevant to your company. The book is written with an industrial target audience in mind. Its most important goal is to challenge companies by offering them a framework to become more innovation-driven, rather than engineering-driven. Intrigued? Here you will find details of what you and your company can do to understand, implement, and sustain continuous innovation.
"Design for software-intensive systems requires adequate methodology and tool support in order for researchers and practitioners to make use of and develop very large and complex systems. Software engineering environments help reduce the design costs of very large and intricate software systems while improving the quality of the software produced. Designing Software-Intensive Systems: Methods and Principles addresses the complex issues associated with software engineering environment capabilities for designing real-time embedded software systems. This groundbreaking work provides relevant theoretical foundations, principles, methodologies, frameworks, and the latest research findings in the field to deliver a superior knowledge base for those in computer science, software engineering, and fields alike."
This edited book presents scientific results of the 21st ACIS International Winter Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD2021-Winter) which was held on January 28-30, at Ho Chi Minh City, Vietnam. The aim of this conference was to bring together researchers and scientists, businessmen and entrepreneurs, teachers, engineers, computer users, and students to discuss the numerous fields of computer science and to share their experiences and exchange new ideas and information in a meaningful way and research results about all aspects (theory, applications, and tools) of computer and information science, and to discuss the practical challenges encountered along the way and the solutions adopted to solve them. The conference organizers selected the best papers from those papers accepted for presentation at the conference. The papers were chosen based on review scores submitted by members of the program committee and underwent further rigorous rounds of review. From this second round of review, 18 of most promising papers are then published in this Springer (SCI) book and not the conference proceedings. We impatiently await the important contributions that we know these authors will bring to the field of computer and information science. |
You may like...
Research Anthology on Architectures…
Information R Management Association
Hardcover
R12,633
Discovery Miles 126 330
Edge/Fog Computing Paradigm: The…
Pethuru Raj, Kavita Saini, …
Hardcover
R3,966
Discovery Miles 39 660
The Blockchain Technology for Secure and…
Neeraj Kumar, Shubhani Aggarwal, …
Hardcover
R3,960
Discovery Miles 39 600
Research Anthology on Architectures…
Information R Management Association
Hardcover
R12,630
Discovery Miles 126 300
Hardware Accelerator Systems for…
Shiho Kim, Ganesh Chandra Deka
Hardcover
R3,950
Discovery Miles 39 500
Dark Silicon and Future On-chip Systems…
Suyel Namasudra, Hamid Sarbazi-Azad
Hardcover
R3,940
Discovery Miles 39 400
Essential Java for Scientists and…
Brian Hahn, Katherine Malan
Paperback
R1,266
Discovery Miles 12 660
|