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
Early research studies on open source software development often betrayed a mild surprise that loosely coordinated networks of volunteers could manage the design and implementation of highly complete software products. In the past few years, a wider research community has become increasingly aware of the tremendous contribution that open source development is making to the software industry, business and society in general. Software engineering researchers are exploring OSS specifically with respect to development tools and methodologies, while organizational scientists and economists are keen on understanding how open sources have brought large communities of people to help each other effectively.This book is an important step in the direction of a fuller understanding of the OSS phenomenon. It collects the proceedings of the Second International Conference on Open Software held in Como, Italy, from June 8th to June 10th, 2006. OSS 2006 was the foundation conference of the IFIP TC 2 WG 2.1 world interested in how OSS is produced, in its huge innovation potential in many different application fields and in OSS innovative business models. The 20 full papers of this volume were selected via a rigourous refereeing process among more than 100 submissions; 12 additional submissions, in view of their interest, were selected for publication in a more concise form.
Appropriate for both undergraduate and graduate introductory software engineering courses found in Computer Science and Computer Engineering departments. This text provides selective, in-depth coverage of the fundamentals of software engineering by stressing principles and methods through rigorous formal and informal approaches. The authors emphasize, identify, and apply fundamental principles that are applicable throughout the software lifecycle, in contrast to other texts which are based in the lifecycle model of software development. This emphasis enables students to respond to the rapid changes in technology that are common today.
Hardware Software Co-Design of a Multimedia SOC Platform is one of the first of its kinds to provide a comprehensive overview of the design and implementation of the hardware and software of an SoC platform for multimedia applications. Topics covered in this book range from system level design methodology, multimedia algorithm implementation, a sub-word parallel, single-instruction-multiple data (SIMD) processor design, and its virtual platform implementation, to the development of an SIMD parallel compiler as well as a real-time operating system (RTOS). Hardware Software Co-Design of a Multimedia SOC Platform is written for practitioner engineers and technical managers who want to gain first hand knowledge about the hardware-software design process of an SoC platform. It offers both tutorial-like details to help readers become familiar with a diverse range of subjects, and in-depth analysis for advanced readers to pursue further.
Advanced space exploration is performed by unmanned missions with integrated autonomy in both flight and ground systems. Risk and feasibility are major factors supporting the use of unmanned craft and the use of automation and robotic technologies where possible. Autonomy in space helps to increase the amount of science data returned from missions, perform new science, and reduce mission costs. Elicitation and expression of autonomy requirements is one of the most significant challenges the autonomous spacecraft engineers need to overcome today. This book discusses the Autonomy Requirements Engineering (ARE) approach, intended to help software engineers properly elicit, express, verify, and validate autonomy requirements. Moreover, a comprehensive state-of-the-art of software engineering for aerospace is presented to outline the problems handled by ARE along with a proof-of-concept case study on the ESA's BepiColombo Mission demonstrating the ARE's ability to handle autonomy requirements.
The challenges of designing, building, and maintaining large-scale, distributed enterprise systems are truly daunting. Written for all IT professionals, The Complete Book of Middleware will aid in resolving new business objectives, new technologies, and vendor disputes. This book focuses on the essential principles and priorities of system design and emphasizes the new requirements brought forward by the rise of e-commerce and distributed integrated systems. This reference highlights the changes to middleware technologies and standards. It offers a concise overview of middleware technology alternatives and distributed systems. Many increasingly complex examples are incorporated throughout and the book concludes with guidelines on the practice of IT architecture. Performance considerations such as caching and monitoring are reviewed and the appendix includes middleware resources and new modeling standards. The scope includes traditional middleware and also next-generation techniques that serve to glue disparate systems in the ever-expanding world of distributed network systems. Provided with concepts, principles, and alternatives discussed in The Complete Book of Middleware, systems architects, systems analysts, systems designers, systems developers, and programmers, can proceed with greater confidence in designing complex enterprise systems.
Within a scenario of globalised markets, where the capacity to efficiently cooperate with other firms starts to become essential in order to remain in the market in an economically, socially and environmentally cost-effective manner, it can be seen how the most innovative enterprises are beginning to redesign their business model to become interoperable. This goal of interoperability is essential, not only from the perspective of the individual enterprise but also in the new business structures that are now emerging, such as supply chains, virtual enterprises, interconnected organisations or extended enterprises, as well as in mergers and acquisitions. Composed of over 40 papers, Enterprise Interoperability V ranges from academic research through case studies to industrial and administrative experience of interoperability. The international nature of the authorship contnues to broaden. Many of the papers have examples and illustrations calculated to deepen understanding and generate new ideas. The I-ESA'12 Conference from which this book is drawn was organized by Polytechnic University of Valencia, on behalf INTERVAL, and the European Virtual Laboratory for Enterprise Interoperability (INTEROP-VLab) and sponsored by the International Federation for Information Processing (IFIP) and the International Federation of Automatic Control (IFAC). A concise reference to the state of the art in systems interoperability, Enterprise Interoperability V will be of great value to engineers and computer scientists working in manufacturing and other process industries and to software engineers and electronic and manufacturing engineers working in the academic environment.
Aimed at 2nd and 3rd year/MSc courses, Model Driven Software Development using UML and Java introduces MDD, MDA and UML, and shows how UML can be used to specify, design, verify and implement software systems using an MDA approach. Structured to follow two lecture courses, one intermediate (UML, MDA, specification, design, model transformations) and one advanced (software engineering of web applications and enterprise information systems), difficult concepts are illustrated with numerous examples, and exercises with worked solutions are provided throughout.
Over 12 years ago Logica started the development of TestFrame(r), a test method which enables organizations to develop and execute their tests in a structured way. Since then many new techniques have been developed, such as, most recently, "Service Oriented Architectures (SOAs)" or "Software as a Service (SaaS)," requiring updates to test procedures and processes that seemed well-established. These trends have prompted Logica to update and renew the TestFrame(r) method. Chris Schotanus new book takes into account the recent developments and his presentation is focused on supporting daily test practice. Every step within this structured test method is dealt with exhaustively, providing the reader with the necessary details for successful software testing. Yet his book will not only help test personnel to improve effectivity, it will also serve as a way to improve efficiency through its strong focus on reuse. This makes TestFrame the practical guide to testing information systems for everyone involved in software testing test developers, test managers, and staff charged with quality assurance."
Agile methods are a collection of different techniques and practices that share the same values and basic principles. ""Agile Software Development Quality Assurance"" provides in-depth coverage of the most important concepts, issues, trends, and technologies in agile software. This Premier Reference Source presents the research and instruction used to develop and implement software quickly, in small iteration cycles, and in close cooperation with the customer in an adaptive way. It is a comprehensive guide that helps researchers and practitioners in the agile software development process avoid risks and project failures that are frequently encountered in traditional software projects.
The book addresses software design issues related to methods for the analysis of construction engineering by means of modern CAD (computer-aided design) systems and provides validation for their use. Special attention is paid to the importance of the relevant mechanical models, their validity, and their external and internal coordination. There is a great deal of practical advice with examples of typical and atypical problems and errors, as well as tips for engineers to identify and avoid traps and pitfalls. Written for professional engineers and scientists, especially, for high-level developers and for CAD users, this book is also aimed at university professors and students preparing to work in this field.
Unit Integration Testing (UIT) had been a challenge because there was no tool that could help in XHR programming and unit integration validations in an efficient way until Cypress arrived. Cypress started releasing versions in 2015 and became popular in 2018 with version 2.0.0. This book explores Cypress scripts that help implement 'shift left testing', which is a dream come true for many software testers. Shift left occurs in the majority of testing projects, but could not be implemented fully because tools were unavailable and knowledge was lacking about the possibilities of testing early in the life cycle. Shift left is a key testing strategy to help testing teams focus less on defect identifications and more on developing practices to prevent defects. Cypress scripts can help front-end developers and quality engineers to work together to find defects soon after web components are built. These components can be tested immediately after they are built with Cypress Test Driven Development (TDD) scripts. Thus, defects can be fixed straight away during the development stage. Testing teams do not have to worry about finding these same defects in a later development stage because Cypress tests keep verifying components in the later stages. Defect fixing has become much cheaper with Cypress than when other tools are used. The book also covers Behaviour Driven Development (BDD)-based Gherkin scripts and the Cypress Cucumber preprocessor, which can improve test scenario coverage. Automated Software Testing with Cypress is written to fulfil the BDD and TDD needs of testing teams. Two distinct open source repositories are provided in Github to help start running Cypress tests in no time!
This book celebrates the 10-year anniversary of Software Center (a collaboration between 18 European companies and five Swedish universities) by presenting some of the most impactful and relevant journal or conference papers that researchers in the center have published over the last decade. The book is organized around the five themes around which research in Software Center is organized, i.e. Continuous Delivery, Continuous Architecture, Metrics, Customer Data and Ecosystems Driven Development, and AI Engineering. The focus of the Continuous Delivery theme is to help companies to continuously build high quality products with the right degree of automation. The Continuous Architecture theme addresses challenges that arise when balancing the need for architectural quality and more agile ways of working with shorter development cycles. The Metrics theme studies and provides insight to understand, monitor and improve software processes, products and organizations. The fourth theme, Customer Data and Ecosystem Driven Development, helps companies make sense of the vast amounts of data that are continuously collected from products in the field. Eventually, the theme of AI Engineering addresses the challenge that many companies struggle with in terms of deploying machine- and deep-learning models in industrial contexts with production quality. Each theme has its own part in the book and each part has an introduction chapter and then a carefully selected reprint of the most important papers from that theme. This book mainly aims at researchers and advanced professionals in the areas of software engineering who would like to get an overview about the achievement made in various topics relevant for industrial large-scale software development and management - and to see how research benefits from a close cooperation between industry and academia.
The constantly evolving technological infrastructure of the modem world presents a great challenge of developing software systems with increasing size, complexity, and functionality. The software engineering field has seen changes and innovations to meet these and other continuously growing challenges by developing and implementing useful software engineering methodologies. Among the more recent advances are those made in the context of software portability, formal verification. techniques, software measurement, and software reuse. However, despite the introduction of some important and useful paradigms in the software engineering discipline, their technological transfer on a larger scale has been extremely gradual and limited. For example, many software development organizations may not have a well-defined software assurance team, which can be considered as a key ingredient in the development of a high-quality and dependable software product. Recently, the software engineering field has observed an increased integration or fusion with the computational intelligence (Cl) field, which is comprised of primarily the mature technologies of fuzzy logic, neural networks, genetic algorithms, genetic programming, and rough sets. Hybrid systems that combine two or more of these individual technologies are also categorized under the Cl umbrella. Software engineering is unlike the other well-founded engineering disciplines, primarily due to its human component (designers, developers, testers, etc. ) factor. The highly non-mechanical and intuitive nature of the human factor characterizes many of the problems associated with software engineering, including those observed in development effort estimation, software quality and reliability prediction, software design, and software testing."
Software engineering is playing an increasingly significant role in computing and informatics, necessitated by the complexities inherent in large-scale software development. To deal with these difficulties, the conventional life-cycle approaches to software engineering are now giving way to the "process system" approach, encompassing development methods, infrastructure, organization, and management. Until now, however, no book fully addressed process-based software engineering or set forth a fundamental theory and framework of software engineering processes.
Business practices are rapidly changing due to technological advances in the workplace. Organizations are challenged to implement new programs for more efficient business while maintaining their standards of excellence and achievement. Achieving Enterprise Agility through Innovative Software Development brings together the necessary methodologies and resources for organizations to understand the challenges and discover the solutions that will enhance their businesses. Including chapters on recent advances in software engineering, this publication will be an essential reference source for researchers, practitioners, students, and professionals in the areas of agile software methodologies, lean development, knowledge engineering, artificial intelligence, cloud computing, software project management, and component-based software engineering.
Requirements engineering is a field of knowledge concerned with the systematic process of eliciting, analyzing and modeling requirements. Though it is usually understood in relation to software system requirements, most of its principles and some of its techniques can be adapted to other problems dealing with complex sets of requirements. The engineering vision indicates that this should be a practical and well-defined process where trade-offs have to be considered to obtain the best results. Mature software development needs mature requirements engineering. This was true ten years ago when requirements engineering became an important component of the software development process. It remains true today when the pressure to deliver code on time and on budget is increasing, and the demand for higher quality software also increases. requirements. Each chapter addresses a specific problem where the authors summarize their experiences and results to produce well-fit and traceable requirements. Chapters highlight familiar issues with recent results and experiences which are accompanied by chapters describing well-tuned new methods for specific domains. The book is designed for a professional audience, composed of researchers and practitioners in industry. It is also suitable as a secondary text for graduate-level students in computer science and engineering.
This book explores the possibility of integrating design thinking into today's technical contexts. Despite the popularity of design thinking in research and practice, this area is still too often treated in isolation without a clear, consistent connection to the world of software development. The book presents design thinking approaches and experiences that can facilitate the development of software-intensive products and services. It argues that design thinking and related software engineering practices, including requirements engineering and user-centric design (UX) approaches, are not mutually exclusive. Rather, they provide complementary methods and tools for designing software-intensive systems with a human-centric approach. Bringing together prominent experts and practitioners to share their insights, approaches and experiences, the book sheds new light on the specific interpretations and meanings of design thinking in various fields such as engineering, management, and information technology. As such, it provides a framework for professionals to demonstrate the potential of design thinking for software development, while offering academic researchers a roadmap for further research.
"Handbook of Open Source Tools" introduces a comprehensive collection of advanced open source tools useful in developing software applications. The book contains information on more than 200 open-source tools which include software construction utilities for compilers, virtual-machines, database, graphics, high-performance computing, OpenGL, geometry, algebra, graph theory, GUIs and more. Special highlights for software construction utilities and application libraries are included. Each tool is covered in the context of a real like application development setting. This unique handbook presents a comprehensive discussion of advanced tools, a valuable asset used by most application developers and programmers; includes a special focus on Mathematical Open Source Software not available in most Open Source Software books, and introduces several tools (eg ACL2, CLIPS, CUDA, and COIN) which are not known outside of select groups, but are very powerful. "Handbook of Open Source Tools "is designed for application developers and programmers working with Open Source Tools. Advanced-level students concentrating on Engineering, Mathematics and Computer Science will find this reference a valuable asset as well.
This state-of-the-art book aims to address problems and solutions in implementing complex and high quality systems past the year 2000. In particular, it focuses on the development of languages, methods and tools and their further evaluation. Among the issues discussed are the following: evolution of software systems; specific application domains; supporting portability and reusability of software components; the development of networking software; and software architectures for various application domains. This book comprises the proceedings of the International Conference on Systems Implementation 2000: Languages, Methods and Tools, sponsored by the International Federation for Information Processing (IFIP) and was held in Germany, in February 1998. It will be particularly relevant to researchers in the field of software engineering and to software developers working in larger companies.
The object oriented paradigm has become one of the dominant forces in the computing world. According to a recent survey, by the year 2000, more than 80% of development organizations are expected to use object technology as the basis for their distributed development strategies.
A survey of the state of the art of deterministic resource-constrained project scheduling with time windows. General temporal constraints and several different types of limited resources are considered. A large variety of time-based, financial, and resource-based objectives - important in practice - are studied. A thorough structural analysis of the feasible region of project scheduling problems and a classification and detailed investigation of objective functions are performed, which can be exploited for developing efficient exact and heuristic solution methods. New interesting applications of project scheduling to production and operations management as well as investment projects are discussed in the second edition.
This book introduces the concept of software architecture as one of the cornerstones of software in modern cars. Following a historical overview of the evolution of software in modern cars and a discussion of the main challenges driving that evolution, Chapter 2 describes the main architectural styles of automotive software and their use in cars' software. Chapter 3 details this further by presenting two modern architectural styles, i.e. centralized and federated software architectures. In Chapter 4, readers will find a description of the software development processes used to develop software on the car manufacturers' side. Chapter 5 then introduces AUTOSAR - an important standard in automotive software. Chapter 6 goes beyond simple architecture and describes the detailed design process for automotive software using Simulink, helping readers to understand how detailed design links to high-level design. The new chapter 7 reports on how machine learning is exploited in automotive software e.g. for image recognition and how both on-board and off-board learning are applied. Next, Chapter 8 presents a method for assessing the quality of the architecture - ATAM (Architecture Trade-off Analysis Method) - and provides a sample assessment, while Chapter 9 presents an alternative way of assessing the architecture, namely by using quantitative measures and indicators. Subsequently Chapter 10 dives deeper into one of the specific properties discussed in Chapter 8 - safety - and details an important standard in that area, the ISO/IEC 26262 norm. Lastly, Chapter 11 presents a set of future trends that are currently emerging and have the potential to shape automotive software engineering in the coming years. This book explores the concept of software architecture for modern cars and is intended for both beginning and advanced software designers. It mainly aims at two different groups of audience - professionals working with automotive software who need to understand concepts related to automotive architectures, and students of software engineering or related fields who need to understand the specifics of automotive software to be able to construct cars or their components. Accordingly, the book also contains a wealth of real-world examples illustrating the concepts discussed and requires no prior background in the automotive domain. Compared to the first edition, besides the two new chapters 3 and 7 there are considerable updates in chapters 5 and 8 especially. |
You may like...
Research Anthology on Architectures…
Information R Management Association
Hardcover
R13,378
Discovery Miles 133 780
Writing Better Requirements - Writing…
Ian Alexander, Richard Stevens
Paperback
R2,122
Discovery Miles 21 220
|