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
"Companies have been implementing large agile projects for a number of years, but the 'stigma' of 'agile only works for small projects' continues to be a frequent barrier for newcomers and a rallying cry for agile critics. What has been missing from the agile literature is a solid, practical book on the specifics of developing large projects in an agile way. Dean Leffingwell's book Scaling Software Agility fills this gap admirably. It offers a practical guide to large project issues such as architecture, requirements development, multi-level release planning, and team organization. Leffingwell's book is a necessary guide for large projects and large organizations making the transition to agile development." -Jim Highsmith, director, Agile Practice, Cutter Consortium, author of Agile Project Management "There's tension between building software fast and delivering software that lasts, between being ultra-responsive to changes in the market and maintaining a degree of stability. In his latest work, Scaling Software Agility, Dean Leffingwell shows how to achieve a pragmatic balance among these forces. Leffingwell's observations of the problem, his advice on the solution, and his description of the resulting best practices come from experience: he's been there, done that, and has seen what's worked." -Grady Booch, IBM Fellow Agile development practices, while still controversial in some circles, offer undeniable benefits: faster time to market, better responsiveness to changing customer requirements, and higher quality. However, agile practices have been defined and recommended primarily to small teams. In Scaling Software Agility, Dean Leffingwell describes how agile methods can be applied to enterprise-class development. Part I provides an overview of the most common and effective agile methods. Part II describes seven best practices of agility that natively scale to the enterprise level. Part III describes an additional set of seven organizational capabilities that companies can master to achieve the full benefits of software agility on an enterprise scale. This book is invaluable to software developers, testers and QA personnel, managers and team leads, as well as to executives of software organizations whose objective is to increase the quality and productivity of the software development process but who are faced with all the challenges of developing software on an enterprise scale. Foreword Preface Acknowledgments About the Author Part I: Overview of Software Agility Chapter 1: Introduction to Agile Methods Chapter 2: Why the Waterfall Model Doesn't Work Chapter 3: The Essence of XP Chapter 4: The Essence of Scrum Chapter 5: The Essence of RUP Chapter 6: Lean Software, DSDM, and FDD Chapter 7: The Essence of Agile Chapter 8: The Challenge of Scaling Agile Part II: Seven Agile Team Practices That Scale Chapter 9: The Define/Build/Test Component Team Chapter 10: Two Levels of Planning and Tracking Chapter 11: Mastering the Iteration Chapter 12: Smaller, More Frequent Releases Chapter 13: Concurrent Testing Chapter 14: Continuous Integration Chapter 15: Regular Reflection and Adaptation Part III: Creating the Agile Enterprise Chapter 16: Intentional Architecture Chapter 17: Lean Requirements at Scale: Vision, Roadmap, and Just-in-Time Elaboration Chapter 18: Systems of Systems and the Agile Release Train Chapter 19: Managing Highly Distributed Development Chapter 20: Impact on Customers and Operations Chapter 21: Changing the Organization Chapter 22: Measuring Business Performance Conclusion: Agility Works at Scale Bibliography Index
This book offers a practical introduction to the use of artificial intelligence (AI) techniques to improve and optimise the various phases of the software development process, from the initial project planning to the latest deployment. All chapters were written by leading experts in the field and include practical and reproducible examples. Following the introductory chapter, Chapters 2-9 respectively apply AI techniques to the classic phases of the software development process: project management, requirement engineering, analysis and design, coding, cloud deployment, unit and system testing, and maintenance. Subsequently, Chapters 10 and 11 provide foundational tutorials on the AI techniques used in the preceding chapters: metaheuristics and machine learning. Given its scope and focus, the book represents a valuable resource for researchers, practitioners and students with a basic grasp of software engineering.
The use of cyber-physical systems in recent computing, communication, and control methods to design and operate intelligent and autonomous systems using cutting-edge technologies has led to many advances. By studying emerging trends in these systems, programming techniques can be optimized and strengthened to create a higher level of effectiveness. Cyber-Physical Systems for Next-Generation Networks provides emerging research on using cyber-physical systems (CPS) as a method to control design and operation of intelligent systems through next-generation networks. While highlighting issues such as increasing CPS complexity due to components within physical and industrial systems, this publication explores information on real-time sensing, reasoning, and adaptation for cyber-physical systems while gaining an understanding of evolutionary computing for it. This book is a valuable resource for engineers, academicians, researchers, and graduate-level students seeking current research on CPS in cutting-edge technologies.
Extensive research conducted by the Hasso Plattner Design Thinking Research Program at Stanford University in Palo Alto, California, USA, and the Hasso Plattner Institute in Potsdam, Germany, has yielded valuable insights on why and how design thinking works. The participating researchers have identified metrics, developed models, and conducted studies, which are featured in this book, and in the previous volumes of this series. This volume provides readers with tools to bridge the gap between research and practice in design thinking with varied real world examples. Several different approaches to design thinking are presented in this volume. Acquired frameworks are leveraged to understand design thinking team dynamics. The contributing authors lead the reader through new approaches and application fields and show that design thinking can tap the potential of digital technologies in a human-centered way. It also presents new ideas in neurodesign from Stanford University and the Hasso Plattner Institute in Potsdam, inviting the reader to consider newly developed methods and how these insights can be applied to different domains. Design thinking can be learned. It has a methodology that can be observed across multiple settings and accordingly, the reader can adopt new frameworks to modify and update existing practice. The research outcomes compiled in this book are intended to inform and provide inspiration for all those seeking to drive innovation - be they experienced design thinkers or newcomers.
Proceedings of the 2012 International Conference on Information Technology and Software Engineering presents selected articles from this major event, which was held in Beijing, December 8-10, 2012. This book presents the latest research trends, methods and experimental results in the fields of information technology and software engineering, covering various state-of-the-art research theories and approaches. The subjects range from intelligent computing to information processing, software engineering, Web, unified modeling language (UML), multimedia, communication technologies, system identification, graphics and visualizing, etc. The proceedings provide a major interdisciplinary forum for researchers and engineers to present the most innovative studies and advances, which can serve as an excellent reference work for researchers and graduate students working on information technology and software engineering. Prof. Wei Lu, Dr. Guoqiang Cai, Prof. Weibin Liu and Dr. Weiwei Xing all work at Beijing Jiaotong University.
This open access book, published to mark the 15th anniversary of the International Software Quality Institute (iSQI), is intended to raise the profile of software testers and their profession. It gathers contributions by respected software testing experts in order to highlight the state of the art as well as future challenges and trends. In addition, it covers current and emerging technologies like test automation, DevOps, and artificial intelligence methodologies used for software testing, before taking a look into the future. The contributing authors answer questions like: "How is the profession of tester currently changing? What should testers be prepared for in the years to come, and what skills will the next generation need? What opportunities are available for further training today? What will testing look like in an agile world that is user-centered and fast-paced? What tasks will remain for testers once the most important processes are automated?" iSQI has been focused on the education and certification of software testers for fifteen years now, and in the process has contributed to improving the quality of software in many areas. The papers gathered here clearly reflect the numerous ways in which software quality assurance can play a critical role in various areas. Accordingly, the book will be of interest to both professional software testers and managers working in software testing or software quality assurance.
This open access book discusses the most modern approach to auditing complex digital systems and technologies. It combines proven auditing approaches, advanced programming techniques and complex application areas, and covers the latest findings on theory and practice in this rapidly developing field. Especially for those who want to learn more about novel approaches to testing complex information systems and related technologies, such as blockchain and self-learning systems, the book will be a valuable resource. It is aimed at students and practitioners who are interested in contemporary technology and managerial implications.
This handbook distils the wealth of expertise and knowledge from a large community of researchers and industrial practitioners in Software Product Lines (SPLs) gained through extensive and rigorous theoretical, empirical, and applied research. It is a timely compilation of well-established and cutting-edge approaches that can be leveraged by those facing the prevailing and daunting challenge of re-engineering their systems into SPLs. The selection of chapters provides readers with a wide and diverse perspective that reflects the complementary and varied expertise of the chapter authors. This perspective covers the re-engineering processes, from planning to execution. SPLs are families of systems that share common assets, allowing a disciplined software reuse. The adoption of SPL practices has shown to enable significant technical and economic benefits for the companies that employ them. However, successful SPLs rarely start from scratch, but instead, they usually start from a set of existing systems that must undergo well-defined re-engineering processes to unleash new levels of productivity and competitiveness. Practitioners will benefit from the lessons learned by the community, captured in the array of methodological and technological alternatives presented in the chapters of the handbook, and will gain the confidence for undertaking their own re-engineering challenges. Researchers and educators will find a valuable single-entry point to quickly become familiar with the state-of-the-art on the topic and the open research opportunities; including undergraduate, graduate students, and R&D engineers who want to have a comprehensive understanding of techniques in reverse engineering and re-engineering of variability-rich software systems.
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.
This is a how-to book for solving geometric problems robustly or error free in actual practice. The contents and accompanying source code are based on the feature requests and feedback received from industry professionals and academics who want both the descriptions and source code for implementations of geometric algorithms. The book provides a framework for geometric computing using several arithmetic systems and describes how to select the appropriate system for the problem at hand. Key Features: A framework of arithmetic systems that can be applied to many geometric algorithms to obtain robust or error-free implementations Detailed derivations for algorithms that lead to implementable code Teaching the readers how to use the book concepts in deriving algorithms in their fields of application The Geometric Tools Library, a repository of well-tested code at the Geometric Tools website, https://www.geometrictools.com, that implements the book concepts
By proposing and forming a mobile manipulator for modern multi-floor buildings, A Robotic Framework for the Mobile Manipulator: Theory and Application helps readers visualize an end-to-end workflow for making a robot system work in a targeted environment. From a product-oriented viewpoint, this book is considered as a bridge from theories to real products, in which robotic software modules and the robotic system integration are mainly concerned. In the end, readers will have an overview of how to build and integrate various single robotic modules to execute a list of designed tasks in the real world, as well as how to make a robot system work independently, without human interventions. With references and execution guidelines provided at the end of each chapter, the book will be a useful tool for developers and researchers looking to expand their knowledge about the robotics and the robotic software.
Management and enables them to deal with the demands and complexities of modern, agile systems/software/hardware development teams. The book examines the project/program manager beyond the concepts of leadership and aims to connect to employees' sense of identity. The text examines human psychological concepts such as "locus of control," which will help the manager understand their team members' view and how best to manage their "world" contributions. The authors cover new management tools and philosophies for agile systems/software/hardware development teams, with a specific focus on how this relates to engineering and computer science. This book also includes practical case studies. Discusses management skills needed as they relate to the advances in software development practices Examines how to manage an agile development team that includes teams across geographically, ethnically, and culturally diverse backgrounds Embraces all of the aspects of modern management and leadership
To achieve consistent software project success under the pressures of today's software development environment, software organizations require achievable plans including viable estimates of schedule, resources, and risks. To estimate realistically, you must understand how to apply sound estimation processes, tools, and data. Software Sizing, Estimation, and Risk Management: When Performance is Measured Performance Improves is a practical, hands-on discussion of the software estimation, planning, and control process. This includes critical factors that impact estimates, methods for selecting and applying appropriate measures to projects, proper software sizing, and processes to identify and manage risk. The authors use their expertise in sizing, estimation, process engineering, and risk management to clearly demonstrate problems that make many estimates crumble and solutions that provide successful project plans. The book offers insight not available anywhere else, enabling you to recognize and avoid downstream impacts resulting from poor estimates.
This book presents the main theoretical foundations behind smart services as well as specific guidelines and practically proven methods on how to design them. Furthermore, it gives an overview of the possible implementation architectures and shows how the designed smart services can be realized with specific technologies. Finally, it provides four specific use cases that show how smart services have been realized in practice and what impact they have within the businesses. The first part of the book defines the basic concepts and aims to establish a shared understanding of terms, such as smart services, service systems, smart service systems or cyber-physical systems. On this basis, it provides an analysis of existing work and includes insights on how an organization incorporating smart services could enhance and adjust their management and business processes. The second part on the design of smart services elaborates on what constitutes a successful smart service and describes experiences in the area of interdisciplinary teams, strategic partnerships, the overall service systems and the common data basis. In the third part, technical reference architectures are presented in detail, encompassing topics on the design of digital twins in cyber physical systems, the communication between entities and sensors in the age of Industry 4.0 as well as data management and integration. The fourth part then highlights a number of analytical possibilities that can be realized and that can constitute or be part of smart services, including machine learning and artificial intelligence methods. Finally, the applicability of the introduced design and development method is demonstrated by considering specific real-world use cases. These include services in the industrial and mobility sector, which were developed in direct cooperation with industry partners. The main target audience of this book is industry-focused readers, especially practitioners from industry, who are involved in supporting and managing digital business. These include professionals working in business development, product management, strategy, and development, ranging from middle management to Chief Digital Officers. It conveys all the basics needed for developing smart services and successfully placing them on the market by explaining technical aspects as well as showcasing practical use cases.
Software engineering research can trace its roots to a few highly influential individuals. Among that select group is Leon J. Osterweil, who has been a major force in driving software engineering from its infancy to its modern reality. For more than three decades, Prof. Osterweil's work has fundamentally defined or significantly impacted major directions in software analysis, development tools and environments, and software process--all critical parts of software engineering as it is practiced today. His exceptional contributions to the field have been recognized with numerous awards and honors through his career, including the ACM SIGSOFT Outstanding Research Award, in recognition of his extensive and sustained research impact, and the ACM SIGSOFT Influential Educator Award, in recognition of his career-long achievements as an educator and mentor. In honor of Prof. Osterweil's profound accomplishments, this book was prepared for a special honorary event held during the 2011 International Conference on Software Engineering (ICSE). It contains some of his most important published works to date, together with several new articles written by leading authorities in the field, exploring the broad impact of his work in the past and how it will further impact software engineering research in the future. These papers, part of the core software engineering legacy and now available in one commented volume for the first time, are grouped into three sections: flow analysis for software dependability, the software lifecycle, and software process.
This book gives an overview of existing models that cover the whole lifecycle of an IoT application, ranging from its design, implementation, deployment, operation, and monitoring to its final termination and retirement. Models provide abstraction and can help IoT application developers into creating more robust, secure, and reliable applications. Furthermore, adaptation of applications can be eased by using these models, leading to an increased dynamic of the developed IoT applications. In the book, research of the last years in the area of model based approaches to the Internet of Things is described and these approaches are incorporated into the lifecycle of IoT applications. Finally, use cases from different domains are introduced that show how these models could be applied in real-world applications.
This book presents a comprehensive survey of the Vesta system for software configuration management (SCM). Vesta, unlike other SCM systems, is specifically designed to handle very large software projects comprising tens of millions of lines of code and beyond. Researchers in the field of software engineering and specialists in the construction of software development tools will especially benefit from this work, but it will also appeal to those responsible for designing and deploying configuration management solutions for large software systems. Three important but hard-to-achieve properties lie at the heart of Vesta's unique approach to software configuration management: Every build is repeatable Every build is incremental Every build is consistent To realize these properties in a practical SCM system, Vesta provides a novel repository to store the versions of the files that make up an evolving software system and a flexible language for writing modular configuration descriptions that define how the system is put together. This book explains in depth these facilities and the suite of tools that supports them, together with a methodology for applying them in practice. Readers who seek more information about Vesta may download the entire system as well as other publications, reference documents, and user documentation from the Vesta home page at http: //www.vestasys.org.
This book constitutes the refereed post-conference proceedings of the 17th IFIP WG 5.1 International Conference on Product Lifecycle Management, PLM 2020, held in Rapperswil, Switzerland, in July 2020. The conference was held virtually due to the COVID-19 crisis. The 60 revised full papers presented together with 2 technical industrial papers were carefully reviewed and selected from 80 submissions. The papers are organized in the following topical sections: smart factory; digital twins; Internet of Things (IoT, IIoT); analytics in the order fulfillment process; ontologies for interoperability; tools to support early design phases; new product development; business models; circular economy; maturity implementation and adoption; model based systems engineering; artificial intelligence in CAx, MBE, and PLM; building information modelling; and industrial technical contributions.
A wide range of modern computer applications require the performance and flexibility of parallel and distributed systems. Better software support is required if the technical advances in these systems are to be fully exploited by commerce and industry. This involves the provision of specialised techniques and tools as well as the integration of standard software engineering methods. This book will reflect current advances in this area, and will address issues of theory and practice with contributions from academia and industry. It is the aim of the book to provide a focus for information on this developing which will be of use to both researchers and practitioners.
The book describes state-of-the-art advances in simulators and emulators for quantum computing. It introduces the main concepts of quantum computing, defining q-bits, explaining the parallelism behind any quantum computation, describing measurement of the quantum state of information and explaining the process of quantum bit entanglement, collapsed state and cloning. The book reviews the concept of quantum unitary, binary and ternary quantum operators as well as the computation implied by each operator. It provides details of the quantum processor, providing its architecture, which is validated via execution simulation of some quantum instructions.
On behalf of the Organizing Committee for this event, we are glad to welcome you to IWASE 2006, the First International Workshop on Advanced Software Engineering. We hope you will enjoy the traditional Chilean hospitality and, of course, please tell us how we can make your visit a pleasant and useful experience. The goal of this Workshop is to create a new forum for researchers, professionals and educators to discuss advanced software engineering topics. A distinctive feature of this Workshop is its attempt to foster interactions between the Latin-American software engineering community and computer scientists around the world. This is an opportunity to discuss with other researchers or simply to meet new colleagues. IWASE 2006 has been organized to facilitate strong interactions among those attending it and to offer ample time for discussing each paper. IWASE 2006 attracted 28 submissions from 14 countries, 8 of them outside Latin-America. Each of the 28 articles was reviewed by at least three members of the Program Committee. As a result of this rigorous reviewing process, 13 papers were accepted: nine fiill papers and four work-in-progress papers. These papers were grouped in four tracks; software architecture, software modeling, software development process and experiences in software development.
Software programs are formal entities with precise meanings independent of their programmers, so the transition from ideas to programs necessarily involves a formalisation at some point. The first part of this graduate-level introduction to formal methods develops an understanding of what constitutes formal methods and what their place is in Software Engineering. It also introduces logics as languages to describe reasoning and the process algebra CSP as a language to represent behaviours. The second part offers specification and testing methods for formal development of software, based on the modelling languages CASL and UML. The third part takes the reader into the application domains of normative documents, human machine interfaces, and security. Use of notations and formalisms is uniform throughout the book. Topics and features: Explains foundations, and introduces specification, verification, and testing methods Explores various application domains Presents realistic and practical examples, illustrating concepts Brings together contributions from highly experienced educators and researchers Offers modelling and analysis methods for formal development of software Suitable for graduate and undergraduate courses in software engineering, this uniquely practical textbook will also be of value to students in informatics, as well as to scientists and practical engineers, who want to learn about or work more effectively with formal theories and methods. Markus Roggenbach is a Professor in the Dept. of Computer Science of Swansea University. Antonio Cerone is an Associate Professor in the Dept. of Computer Science of Nazarbayev University, Nur-Sultan. Bernd-Holger Schlingloff is a Professor in the Institut fur Informatik of Humboldt-Universitat zu Berlin. Gerardo Schneider is a Professor in the Dept. of Computer Science and Engineering of University of Gothenburg. Siraj Ahmed Shaikh is a Professor in the Institute for Future Transport and Cities of Coventry University.
Software testing is rapidly evolving as a critical sub-discipline of software engineering. The industry needs professionals educated in the modern methods and tools of software testing and quality assurance. Based on the needs of software professionals, "Practical Software Testing" takes a unique approach to teaching readers how to effectively plan for testing, design test cases, test at multiple levels, organize a testing team, and optimize use of testing tools. It introduces testing concepts that are managerial-, technical-, and process-oriented, using the Testing Maturity Model (TMM) as a framework. Features: *includes a sample test plan, comprehensive exercises, and definitions for software testing and quality *introduces both technical and managerial aspects of testing in a clear and precise style, for integrated learning *balanced perspective and comprehensive view of all testing aspects *uses the TMM framework to introduce testing in a systematic, evolutionary way, and describes industrial TMM applications *covers testing topics with either procedurally based or object-oriented programming code With its accessible, practical, and well-focused framework, this new resource provides an integrated presentation of software-testing processes and practices. Professionals and practitioners in software testing, software quality assurance, or software validation and verification will benefit greatly from using this essential resource.
Soft computing is playing an increasing role in the study of complex systems in science and engineering. There is a large spectrum of successful applications of soft computing in very different applications domains such as aerospace, communication, consumer appliances, electric power systems, process engineering, transportation, and manufacturing automation and robotics. It has taken a while to bring the early ideas of soft computing to an area and a discipline that seems to be more than appropriate for that. Here it is! This book studies SOFT computing in SOFTware engineering environment. The book is HARD in terms of its results. It covers a range of core topics from software engineering that are soft from its very nature: selection of components, software design, software reuse, software cost estimation and software processes. Soft computing differs from conventional (hard) computing in its ability to be tolerant of imprecision, uncertainty, partial truth, and approximation. The guiding principle of soft computing is: Exploit the tolerance for imprecision, uncertainty, partial truth, and approximation to achieve tractability, robustness and low solution cost. The role model for soft computing is the human mind. This seems to be a natural fit with software engineering, a human-based development activity based on sound engineering principles. A recent survey by researchers reveals that "Software Engineering research tends to be quite self-contained, not relying on other disciplines for its thinking". |
You may like...
Research Anthology on Architectures…
Information R Management Association
Hardcover
R13,357
Discovery Miles 133 570
Edsger Wybe Dijkstra - His Life, Work…
Krzysztof R. Apt, Tony Hoare
Hardcover
R3,075
Discovery Miles 30 750
Writing Better Requirements - Writing…
Ian Alexander, Richard Stevens
Paperback
R2,122
Discovery Miles 21 220
|