Structured Development for Real-Time Systems, Vol. III


Book Description

In the first two volumes of Structured Development for Real Time Systems, authors Paul Ward and Stephen Mellor described a comprehensive modeling notation and a set of guidelines for using the notation to build an essential model. In this final volume, the guidelines are extended to encompass the building of an implementation model, and the notation is extended to include a hierarchical description of code organization.







Formal Techniques in Real-Time and Fault-Tolerant Systems


Book Description

Formal Techniques in Real-Time and Fault-Tolerant Systems focuses on the state of the art in formal specification, development and verification of fault-tolerant computing systems. The term `fault-tolerance' refers to a system having properties which enable it to deliver its specified function despite (certain) faults of its subsystem. Fault-tolerance is achieved by adding extra hardware and/or software which corrects the effects of faults. In this sense, a system can be called fault-tolerant if it can be proved that the resulting (extended) system under some model of reliability meets the reliability requirements. The main theme of Formal Techniques in Real-Time and Fault-Tolerant Systems can be formulated as follows: how do the specification, development and verification of conventional and fault-tolerant systems differ? How do the notations, methodology and tools used in design and development of fault-tolerant and conventional systems differ? Formal Techniques in Real-Time and Fault-Tolerant Systems is divided into two parts. The chapters in Part One set the stage for what follows by defining the basic notions and practices of the field of design and specification of fault-tolerant systems. The chapters in Part Two represent the `how-to' section, containing examples of the use of formal methods in specification and development of fault-tolerant systems. The book serves as an excellent reference for researchers in both academia and industry, and may be used as a text for advanced courses on the subject.







Structured Development for Real-Time Systems, Vol. II


Book Description

Without a framework for organizing and codifying these ideas, systems modeling can become disjointed, frustrating, and ultimately ineffective. This book is extensively illustrated with detailed examples illuminating the main points discussed. Its four appendices provide fully worked examples of pertinent applications.




Real-Time Systems Design and Analysis


Book Description

The leading guide to real-time systems design-revised and updated This third edition of Phillip Laplante's bestselling, practical guide to building real-time systems maintains its predecessors' unique holistic, systems-based approach devised to help engineers write problem-solving software. Dr. Laplante incorporates a survey of related technologies and their histories, complete with time-saving practical tips, hands-on instructions, C code, and insights into decreasing ramp-up times. Real-Time Systems Design and Analysis, Third Edition is essential for students and practicing software engineers who want improved designs, faster computation, and ultimate cost savings. Chapters discuss hardware considerations and software requirements, software systems design, the software production process, performance estimation and optimization, and engineering considerations. This new edition has been revised to include: * Up-to-date information on object-oriented technologies for real-time including object-oriented analysis, design, and languages such as Java, C++, and C# * Coverage of significant developments in the field, such as: New life-cycle methodologies and advanced programming practices for real-time, including Agile methodologies Analysis techniques for commercial real-time operating system technology Hardware advances, including field-programmable gate arrays and memory technology * Deeper coverage of: Scheduling and rate-monotonic theories Synchronization and communication techniques Software testing and metrics Real-Time Systems Design and Analysis, Third Edition remains an unmatched resource for students and practicing software engineers who want improved designs, faster computation, and ultimate cost savings.




Real-Time Systems Development


Book Description

Real-Time Systems Development introduces computing students and professional programmers to the development of software for real-time applications. Based on the academic and commercial experience of the author, the book is an ideal companion to final year undergraduate options or MSc modules in the area of real-time systems design and implementation. Assuming a certain level of general systems design and programming experience, this text will extend students' knowledge and skills into an area of computing which has increasing relevance in a modern world of telecommunications and 'intelligent' equipment using embedded microcontrollers. This book takes a broad, practical approach in discussing real-time systems. It covers topics such as basic input and output; cyclic executives for bare hardware; finite state machines; task communication and synchronization; input/output interfaces; structured design for real-time systems; designing for multitasking; UML for real-time systems; object oriented approach to real-time systems; selecting languages for RTS development; Linux device drivers; and hardware/software co-design. Programming examples using GNU/Linux are included, along with a supporting website containing slides; solutions to problems; and software examples. This book will appeal to advanced undergraduate Computer Science students; MSc students; and, undergraduate software engineering and electronic engineering students. * Concise treatment delivers material in manageable sections* Includes handy glossary, references and practical exercises based on familiar scenarios* Supporting website contains slides, solutions to problems and software examples




PDCA/Test


Book Description

Most manuals assume software testing is being performed as part of a well-defined, structured development cycle based on clearly stated requirements and standards. Unfortunately, this is not often the case in the real world. Indeed, the one true constant in software development is change. PDCA/TEST presents a continuous quality framework bas




Computer-Aided Method Engineering: Designing CASE Repositories for the 21st Century


Book Description

Computer aided method engineering is about generation and use of information systems design techniques according to user needs. Some times such environments are called generic tools or MetaCASE. This book presents the methodology and architecture of a CASE repository.




How to Engineer Software


Book Description

A guide to the application of the theory and practice of computing to develop and maintain software that economically solves real-world problem How to Engineer Software is a practical, how-to guide that explores the concepts and techniques of model-based software engineering using the Unified Modeling Language. The author—a noted expert on the topic—demonstrates how software can be developed and maintained under a true engineering discipline. He describes the relevant software engineering practices that are grounded in Computer Science and Discrete Mathematics. Model-based software engineering uses semantic modeling to reveal as many precise requirements as possible. This approach separates business complexities from technology complexities, and gives developers the most freedom in finding optimal designs and code. The book promotes development scalability through domain partitioning and subdomain partitioning. It also explores software documentation that specifically and intentionally adds value for development and maintenance. This important book: Contains many illustrative examples of model-based software engineering, from semantic model all the way to executable code Explains how to derive verification (acceptance) test cases from a semantic model Describes project estimation, along with alternative software development and maintenance processes Shows how to develop and maintain cost-effective software that solves real-world problems Written for graduate and undergraduate students in software engineering and professionals in the field, How to Engineer Software offers an introduction to applying the theory of computing with practice and judgment in order to economically develop and maintain software.