![]() |
![]() |
Your cart is empty |
||
Books > Computing & IT > Computer programming
Defining a new development life-cycle methodology, together with a set of associated techniques and tools to develop highly critical systems using formal techniques, this book adopts a rigorous safety assessment approach explored via several layers (from requirements analysis to automatic source code generation). This is assessed and evaluated via a standard case study: the cardiac pacemaker. Additionally a formalisation of an Electrocardiogram (ECG) is used to identify anomalies in order to improve existing medical protocols. This allows the key issue - that formal methods are not currently integrated into established critical systems development processes - to be discussed in a highly effective and informative way. "Using Event-B for Critical Device Software Systems" serves as a valuable resource for researchers and students of formal methods. The assessment of critical systems development is applicable to all industries, but engineers and physicians from the health domain will find the cardiac pacemaker case study of particular value.
A Student Guide to Object-Oriented Development is an introductory text that follows the software development process, from requirements capture to implementation, using an object-oriented approach. The book uses object-oriented techniques to present a practical viewpoint on developing software, providing the reader with a basic understanding of object-oriented concepts by developing the subject in an uncomplicated and easy-to-follow manner. It is based on a main worked case study for teaching purposes, plus others with password-protected answers on the web for use in coursework or exams. Readers can benefit from the authors' years of teaching experience. The book outlines standard object-oriented modelling techniques and illustrates them with a variety of examples and exercises, using UML as the modelling language and Java as the language of implementation. It adopts a simple, step by step approach to object-oriented development, and includes case studies, examples, and exercises with solutions to consolidate learning. There are 13 chapters covering a variety of topics such as sequence and collaboration diagrams; state diagrams; activity diagrams; and implementation diagrams. This book is an ideal reference for students taking undergraduate introductory/intermediate computing and information systems courses, as well as business studies courses and conversion masters' programmes.
Graphs are widely used to represent structural information in the form of objects and connections between them. Graph transformation is the rule-based manipulation of graphs, an increasingly important concept in computer science and related fields. This is the first textbook treatment of the algebraic approach to graph transformation, based on algebraic structures and category theory. Part I is an introduction to the classical case of graph and typed graph transformation. In Part II basic and advanced results are first shown for an abstract form of replacement systems, so-called adhesive high-level replacement systems based on category theory, and are then instantiated to several forms of graph and Petri net transformation systems. Part III develops typed attributed graph transformation, a technique of key relevance in the modeling of visual languages and in model transformation. Part IV contains a practical case study on model transformation and a presentation of the AGG (attributed graph grammar) tool environment. Finally the appendix covers the basics of category theory, signatures and algebras. The book addresses both research scientists and graduate students in computer science, mathematics and engineering.
Recently, rapid and fundamental advances in computing technologies have been driving the role and scope of software systems to a new level. A number of new types of software systems are emerging, among which service based systems, cloud computing, pervasive computing, and Internet of Things are eminent examples. These systems have imposed new challenges on their design, development, testing and maintenance, and are demanding for new appropriate approaches and tools. Advanced Design Approaches to Emerging Software Systems: Principles, Methodology and Tools provides relevant theoretical frameworks and the latest empirical research findings in the area. This book will help to clarify the present chaotic and confusing literature of the current state of the art and knowledge in the areas of the design and engineering of the many emerging software systems. This book also facilitates the exchange and evolution of software engineering advances among multiple disciplines, research, industry, and user communities.
A software architecture manifests the major early design decisions, which determine the system's development, deployment and evolution. Thus, making better architectural decisions is one of the large challenges in software engineering. Software architecture knowledge management is about capturing practical experience and translating it into generalized architectural knowledge, and using this knowledge in the communication with stakeholders during all phases of the software lifecycle. This book presents a concise description of knowledge management in the software architecture discipline. It explains the importance of sound knowledge management practices for improving software architecture processes and products, and makes clear the role of knowledge management in software architecture and software development processes. It presents many approaches that are in use in software companies today, approaches that have been used in other domains, and approaches under development in academia. After an initial introduction by the editors, the contributions are grouped in three parts on "Architecture Knowledge Management," "Strategies and Approaches for Managing Architectural Knowledge," and "Tools and Techniques for Managing Architectural Knowledge." The presentation aims at information technology and software engineering professionals, in particular software architects and software architecture researchers. For the industrial audience, the book gives a broad and concise understanding of the importance of knowledge management for improving software architecture process and building capabilities in designing and evaluating better architectures for their mission- and business-critical systems. For researchers, the book will help to understand the applications of various knowledge management approaches in an industrial setting and to identify research challenges and opportunities.
Machine learning is the study of building computer programs that improve their performance through experience. To meet the challenge of developing and maintaining larger and complex software systems in a dynamic and changing environment, machine learning methods have been playing an increasingly important role in many software development and maintenance tasks. Advances in Machine Learning Applications in Software Engineering provides analysis, characterization and refinement of software engineering data in terms of machine learning methods. This book depicts applications of several machine learning approaches in software systems development and deployment, and the use of machine learning methods to establish predictive models for software quality. Advances in Machine Learning Applications in Software Engineering offers readers suggestions by proposing future work and areas in this emerging research field.
Correcting the Great Mistake People often mistake one thing for another. That's human nature. However, one would expect the leaders in a particular ?eld of endeavour to have superior ab- ities to discriminate among the developments within that ?eld. That is why it is so perplexing that the technology elite - supposedly savvy folk such as software developers, marketers and businessmen - have continually mistaken Web-based graphics for something it is not. The ?rst great graphics technology for the Web, VRML, has been mistaken for something else since its inception. Viewed variously as a game system, a format for architectural walkthroughs, a platform for multi-user chat and an augmentation of reality, VRML may qualify as the least understood invention in the history of inf- mation technology. Perhaps it is so because when VRML was originally introduced it was touted as a tool for putting the shopping malls of the world online, at once prosaic and horrifyingly mundane to those of us who were developing it. Perhaps those ?rst two initials,"VR,"created expectations of sprawling, photorealistic f- tasy landscapes for exploration and play across the Web. Or perhaps the magnitude of the invention was simply too great to be understood at the time by the many, ironically even by those spending the money to underwrite its development. Regardless of the reasons, VRML suffered in the mainstream as it was twisted to meet unintended ends and stretched far beyond its limitations.
."NET 2.0 for Delphi Programmers" explores .NET from a Delphi programmers viewpoint, and it is ideal for Delphi programmers moving to .NET. It presents the core concepts of the .NET world in terms you are familiar with. This book will help you with Delphi for .NET as well as C#. Apress publishes migration books for both VB 6 and C++ programmers moving to .NET. Consider this the Delphi installment of Apress migration books! There is ample coverage of C# as well as Delphi for .NET inside this newest addition.
Provides a comprehensive overview and introduction to the concepts, methodologies, analysis, design and applications of metasynthetic computing and engineering. The author: * Presents an overview of complex systems, especially open complex giant systems such as the Internet, complex behavioural and social problems, and actionable knowledge discovery and delivery in the big data era. * Discusses ubiquitous intelligence in complex systems, including human intelligence, domain intelligence, social intelligence, network intelligence, data intelligence and machine intelligence, and their synergy through metasynthetic engineering. * Explains the concept and methodology of human-centred, human-machine-cooperated qualitative-to-quantitative metasynthesis for understanding and managing open complex giant systems, and its computing approach: metasynthetic computing. * Introduces techniques and tools for analysing and designing problem-solving systems for open complex problems and systems. Metasynthetic Computing and Engineering uses the systematology methodology in addressing system complexities in open complex giant systems, for which it may not only be effective to apply reductionism or holism. The book aims to encourage and inspire discussions, design, implementation and reflection of effective methodologies and tools for computing and engineering open complex systems and problems. Researchers, research students and practitioners in complex systems, artificial intelligence, data science, computer science, and even system science, cognitive science, behaviour science, and social science, will find this book invaluable.
The past decades have seen significant improvements in 3D imaging where the related techniques and technologies have advanced to a mature state. These exciting developments have sparked increasing interest in the challenges and opportunities afforded by 3D sensing. As a consequence, the emerging area of safety and security related imaging incorporates these important new technologies beyond the limitations of 2D image processing.This book presents the thoroughly revised versions of lectures given by leading researchers during the Workshop on Advanced 3D Imaging for Safety and Security in conjunction with the International Conference on Computer Vision and Pattern Recognition CVPR 2005, held in San Diego, CA, USA in June 2005.It covers the current state of the art in 3D imaging for safety and security.
The Stellent Content Server has a flexible and highly extensible service-oriented architecture. It is relatively easy to develop custom applications with it, or make modifications to the existing interface. However, there has never been a good manual on how to make such applications. Thata (TM)s where this book comes in: to help administrators and web developers create custom applications with the Content Server. It contains step-by-step instructions on how to create many different types of applications, including simple business forms, new web interfaces for existing services, new skins, and new functionality with custom Java code. It also contains detailed reference material for the inner workings of the Content Server. Youa (TM)ll need this vital resource when creating custom Stellent applications, and youa (TM)ll find this information only in this complete guide to Stellent Content Server.
This book seeks to promote the structured, standardized and accurate use of software measurement at all levels of modern software development companies. To do so, it focuses on seven main aspects: sound scientific foundations, cost-efficiency, standardization, value-maximization, flexibility, combining organizational and technical aspects, and seamless technology integration. Further, it supports companies in their journey from manual reporting to automated decision support by combining academic research and industrial practice. When scientists and engineers measure something, they tend to focus on two different things. Scientists focus on the ability of the measurement to quantify whatever is being measured; engineers, however, focus on finding the right qualities of measurement given the designed system (e.g. correctness), the system's quality of use (e.g. ease of use), and the efficiency of the measurement process. In this book, the authors argue that both focuses are necessary, and that the two are complementary. Thus, the book is organized as a gradual progression from theories of measurement (yes, you need theories to be successful!) to practical, organizational aspects of maintaining measurement systems (yes, you need the practical side to understand how to be successful). The authors of this book come from academia and industry, where they worked together for the past twelve years. They have worked with both small and large software development organizations, as researchers and as measurement engineers, measurement program leaders and even teachers. They wrote this book to help readers define, implement, deploy and maintain company-wide measurement programs, which consist of a set of measures, indicators and roles that are built around the concept of measurement systems. Based on their experiences introducing over 40,000 measurement systems at over a dozen companies, they share essential tips and tricks on how to do it right and how to avoid common pitfalls.
This book introduces the reader with little or no previous computer-programming experience to the Python programming language of interest for a physicist or a natural-sciences student. The book starts with basic interactive Python in order to acquire an introductory familiarity with the language, than tackle Python scripts (programs) of increasing complexity, that the reader is invited to run on her/his computer. All program listings are discussed in detail, and the reader is invited to experiment on what happens if some code lines are modified. The reader is introduced to Matplotlib graphics for the generation of figures representing data and function plots and, for instance, field lines. Animated function plots are also considered. A chapter is dedicated to the numerical solution of algebraic and transcendental equations, the basic mathematical principles are discussed and the available Python tools for the solution are presented. A further chapter is dedicated to the numerical solution of ordinary differential equations. This is of vital importance for the physicist, since differential equations are at the base of both classical physics (Newton's equations) and quantum mechanics (Schroedinger's equation). The shooting method for the numerical solution of ordinary differential equations with boundary conditions at two boundaries is also presented. Python programs for the solution of two quantum-mechanics problems are discussed as examples. Two chapters are dedicated to Tkinter graphics, which gives the user more freedom than Matplotlib, and to Tkinter animation. Programs displaying the animation of physical problems involving the solution of ordinary differential equations (for which in most cases there is no algebraic solution) in real time are presented and discussed. Finally, 3D animation is presented with Vpython.
This book focuses on the design, development, management, governance and application of evolving software processes that are aligned with changing business objectives, such as expansion to new domains or shifting to global production. In the context of an evolving business world, it examines the complete software process lifecycle, from the initial definition of a product to its systematic improvement. In doing so, it addresses difficult problems, such as how to implement processes in highly regulated domains or where to find a suitable notation system for documenting processes, and provides essential insights and tips to help readers manage process evolutions. And last but not least, it provides a wealth of examples and cases on how to deal with software evolution in practice. Reflecting these topics, the book is divided into three parts. Part 1 focuses on software business transformation and addresses the questions of which process(es) to use and adapt, and how to organize process improvement programs. Subsequently, Part 2 mainly addresses process modeling. Lastly, Part 3 collects concrete approaches, experiences, and recommendations that can help to improve software processes, with a particular focus on specific lifecycle phases. This book is aimed at anyone interested in understanding and optimizing software development tasks at their organization. While the experiences and ideas presented will be useful for both those readers who are unfamiliar with software process improvement and want to get an overview of the different aspects of the topic, and for those who are experts with many years of experience, it particularly targets the needs of researchers and Ph.D. students in the area of software and systems engineering or information systems who study advanced topics concerning the organization and management of (software development) projects and process improvements projects.
The Handbook of Service Description introduces an in-depth overview of service description efforts. The book also highlights the recent Unified Service Description Language (USDL) in detail and discusses its methods. The Handbook of Service Description is the normative scientific reference for the upcoming standardization of the Unified Service Description Language (USDL). Complete documentation is included. The Handbook of Service Description is designed for those working in the service science industry as a reference book. Advanced-level students focused on computer science, engineering and business will also find this book a valuable asset.
Programming Finite Elements in Java (TM) teaches the reader how to programme the algorithms of the finite element method (FEM) in Java (TM). The compact, simple code helps the student to read the algorithms, to understand them and thus to be able to refine them. All of the main aspects of finite element techniques are considered: finite element solution; generation of finite element meshes; and visualization of finite element models and results with Java 3D (TM). The step-by-step presentation includes algorithm programming and code explanation at each point. Problems and exercises are provided for each chapter, with Java (TM) source code and problem data sets available from http://extras.springer.com/2010/978-1-84882-971-8.
Dr. Tom and Debra Shinder have become synonymous with Microsoft's
flagship firewall product ISA Server, as a result of Tom's
prominent role as a member of the beta development team, and Tom
and Deb's featured placement on both Microsoft's ISA Server Web
site and ISAserver.org. Tom and Deb's book on the first release of
the product "Configuring ISA Server 2000" dominated the ISA Server
2000 book market having sold over 40,000 copies worldwide, and the
ISA Server community is eagerly awaiting Tom and Deb's book on ISA
Server 2004, which is the dramatically upgraded new release from
Microsoft.
The original edition of this book was celebrated for its coverage of the central concepts of practical optimization techniques. This updated edition expands and illuminates the connection between the purely analytical character of an optimization problem, expressed by properties of the necessary conditions, and the behavior of algorithms used to solve a problem. Incorporating modern theoretical insights, this classic text is even more useful.
Maintaining SQL Server 2005 high availability in a global information environment is the database administrators greatest practical challenge. Availability is as much about people and processes as it is about technology. Microsoft SQL Server 2005 High Availability covers the technology, people, processes, and real-world best practices for planning, deploying, administering, and maintaining highly available SQL Server 2005 instances. With years of experience as a database consultant and production DBA, Allan Hirt provides in-depth, detailed advice on what it takes to ensure SQL Server high availability for businesses of any size. This is not an academic text; its not based on lab experiments, but on real-world experience. This book is a dramatic update and revision of the authors previous best-seller on SQL Server 2000. It gives sound guidance to DBAs and system administrators on how to really get the job done.
This book presents the theory of continuum mechanics for mechanical, thermodynamical, and electrodynamical systems. It shows how to obtain governing equations and it applies them by computing the reality. It uses only open-source codes developed under the FEniCS project and includes codes for 20 engineering applications from mechanics, fluid dynamics, applied thermodynamics, and electromagnetism. Moreover, it derives and utilizes the constitutive equations including coupling terms, which allow to compute multiphysics problems by incorporating interactions between primitive variables, namely, motion, temperature, and electromagnetic fields. An engineering system is described by the primitive variables satisfying field equations that are partial differential equations in space and time. The field equations are mostly coupled and nonlinear, in other words, difficult to solve. In order to solve the coupled, nonlinear system of partial differential equations, the book uses a novel collection of open-source packages developed under the FEniCS project. All primitive variables are solved at once in a fully coupled fashion by using finite difference method in time and finite element method in space.
This book puts the spotlight on how a real-time kernel works using Micrium's C/OS-III as a reference. The book consists of two complete parts. The first describes real-time kernels in generic terms. Part II provide examples for the reader, using the Inineon XMC4500. Together with the IAR Systems Embedded Workbench for ARM development tools, the evaluation board provides everything necessary to enable the reader to be up and running quickly, as well as a fun and educational experience, resulting in a high-level of proficiency in a short time. This book is written for serious embedded systems programmers, consultants, hobbyists, and students interested in understanding the inner workings of a real-time kernel. C/OS-III is not just a great learning platform, but also a full commercial-grade software package, ready to be part of a wide range of products. C/OS-III is a highly portable, ROMable, scalable, preemptive real-time, multitasking kernel designed specifically to address the demanding requirements of today's embedded systems. C/OS-III is the successor to the highly popular C/OS-II real-time kernel but can use most of C/OS-II's ports with minor modifications. Some of the features of C/OS-III are: Preemptive multitasking with round-robin scheduling of tasks at the same priority Unlimited number of tasks and other kernel objects Rich set of services: semaphores, mutual exclusion semaphores with full priority inheritance, event flags, message queues, timers, fixed-size memory block management, and more. Built-in performance measurements
Papers in this unique volume were developed from the 2006 conference hosted by IBM, Service Science, Management, and Engineering (SSME) Education for the 21st Century. The book incorporates a variety of perspectives, informed by an international background in SSME experience and education, including management, business, social science, computer science and engineering. Readers will derive an understanding of education needs and program offerings in SSME.
DSSSL (Document Style Semantics and Specification Language) is an ISO standard (ISO/IEC 10179: 1996) published in the year 1996. DSSSL is a standard of the SGML family (Standard Generalized Markup Language, ISO 8879:1986), whose aim is to establish a processing model for SGML documents. For a good understanding of the SGML standard, many books exist including Author's guide[BryanI988] and The SGML handbook[GoldfarbI990]. A DSSSL document is an SGML document, written with the same rules that guide any SGML document. The structure of a DSSSL document is explained in Chapter 2. DSSSL is based, in part, on scheme, a standard functional programming language. The DSSSL subset of scheme along with the procedures supported by DSSSL are explained in Chapter 3. The DSSSL standard starts with the supposition of a pre-existing SGML document, and offers a series of processes that can be performed on it: * Groves The first process that is performed on an SGML document in DSSSL is always the analysis of the document and the creation of a grove. The DSSSL standard shares many common characteristics with another standard of the SGML family, HyTime (ISO/IEC 10744). These standards were developed in parallel, and their developers designed a common data model, the grove, that would support the processing needs of each standard.
This book develops a crowdsourced sensor-cloud service composition framework taking into account spatio-temporal aspects. This book also unfolds new horizons to service-oriented computing towards the direction of crowdsourced sensor data based applications, in the broader context of Internet of Things (IoT). It is a massive challenge for the IoT research field how to effectively and efficiently capture, manage and deliver sensed data as user-desired services. The outcome of this research will contribute to solving this very important question, by designing a novel service framework and a set of unique service selection and composition frameworks. Delivering a novel service framework to manage crowdsourced sensor data provides high-level abstraction (i.e., sensor-cloud service) to model crowdsourced sensor data from functional and non-functional perspectives, seamlessly turning the raw data into "ready to go" services. A creative indexing model is developed to capture and manage the spatio-temporal dynamism of crowdsourced service providers. Delivering novel frameworks to compose crowdsourced sensor-cloud services is vital. These frameworks focuses on spatio-temporal composition of crowdsourced sensor-cloud services, which is a new territory for existing service oriented computing research. A creative failure-proof model is also designed to prevent composition failure caused by fluctuating QoS. Delivering an incentive model to drive the coverage of crowdsourced service providers is also vital. A new spatio-temporal incentive model targets changing coverage of the crowdsourced providers to achieve demanded coverage of crowdsourced sensor-cloud services within a region. The outcome of this research is expected to potentially create a sensor services crowdsourcing market and new commercial opportunities focusing on crowdsourced data based applications. The crowdsourced community based approach adds significant value to journey planning and map services thus creating a competitive edge for a technologically-minded companies incentivizing new start-ups, thus enabling higher market innovation. This book primarily targets researchers and practitioners, who conduct research work in service oriented computing, Internet of Things (IoT), smart city and spatio-temporal travel planning, as well as advanced-level students studying this field. Small and Medium Entrepreneurs, who invest in crowdsourced IoT services and journey planning infrastructures, will also want to purchase this book.
Agile methods have taken software development by storm - but a growing controversy over their true effectiveness now pits proponents against detractors in a heated battle of claims. Here at last is a completely impartial guide that gives project managers both expert objective analysis of Agile software development methods and much-needed tools for evaluating the suitability of Agile methods for their organization. The book reviews the Agile Manifesto and the 12 Agile Principles, and discusses in detail each practice of the six most widely recognized Agile methods. Software developers get clear and unbiased insight into adoption implications, the benefits that may accrue, and the potential pitfalls they face. At its core, this unique assessment resource helps developers systematically address key Agile adoption issues involving organizational culture, customers, staff, tools and processes, and project considerations. A comprehensive start-to-finish worksheet makes it easy for professionals to document observations, draw justifiable conclusions, and market their recommendations to the company. The guide also features expert guidelines for customizing an Agile method, training staff, testing the new method, and evaluating its performance - should readers go the Agile route. Practical ready-to-use tools, including equations and templates in Excel format, are provided in a handy workbook which can be accessed through the author's website. |
![]() ![]() You may like...
Cases on Open-Linked Data and Semantic…
Patricia Ordonez De Pablos, Miltiadis D Lytras, …
Hardcover
R4,768
Discovery Miles 47 680
Software Quality Control, Error…
Judith Clapp, Saul F. Stanten, …
Hardcover
Essential Java for Scientists and…
Brian Hahn, Katherine Malan
Paperback
R1,341
Discovery Miles 13 410
Computing with Data - An Introduction to…
Guy Lebanon, Mohamed El-Geish
Hardcover
R2,907
Discovery Miles 29 070
|