![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming
Software effort estimation is one of the oldest and most important problems in software project management, and thus today there are a large number of models, each with its own unique strengths and weaknesses in general, and even more importantly, in relation to the environment and context in which it is to be applied. Trendowicz and Jeffery present a comprehensive look at the principles of software effort estimation and support software practitioners in systematically selecting and applying the most suitable effort estimation approach. Their book not only presents "what" approach to take and "how" to apply and improve it, but also explains "why" certain approaches should be used in specific project situations. Moreover, it explains popular estimation methods, summarizes estimation best-practices, and provides guidelines for continuously improving estimation capability. Additionally, the book offers invaluable insights into project management in general, discussing issues including project trade-offs, risk assessment, and organizational learning. Overall, the authors deliver an essential reference work for software practitioners responsible for software effort estimation and planning in their daily work and who want to improve their estimation skills. At the same time, for lecturers and students the book can serve as the basis of a course in software processes, software estimation, or project management.
The book offers an original view on channel coding, based on a unitary approach to block and convolutional codes for error correction. It presents both new concepts and new families of codes. For example, lengthened and modified lengthened cyclic codes are introduced as a bridge towards time-invariant convolutional codes and their extension to time-varying versions. The novel families of codes include turbo codes and low-density parity check (LDPC) codes, the features of which are justified from the structural properties of the component codes. Design procedures for regular LDPC codes are proposed, supported by the presented theory. Quasi-cyclic LDPC codes, in block or convolutional form, represent one of the most original contributions of the book. The use of more than 100 examples allows the reader gradually to gain an understanding of the theory, and the provision of a list of more than 150 definitions, indexed at the end of the book, permits rapid location of sought information.
Software Visualization: From Theory to Practice was initially
selected as a special volume for "The Annals of Software
Engineering (ANSE) Journal," which has been discontinued. This
special edited volume, is the first to discuss software
visualization in the perspective of software engineering. It is a
collection of 14 chapters on software visualization, covering the
topics from theory to practical systems. The chapters are divided
into four Parts: Visual Formalisms, Human Factors, Architectural
Visualization, and Visualization in Practice. They cover a
comprehensive range of software visualization topics, including
Software Visualization: From Theory to Practice is designed to meet the needs of both an academic and a professional audience composed of researchers and software developers. This book is also suitable for seniorundergraduate and graduate students in software engineering and computer science, as a secondary text or a reference.
As the world becomes increasingly dependent on the use of computers, the need for quality software which can be produced at reasonable cost increases. This IFIP proceedings brings together the work of leading researchers and practitioners who are concerned with the efficient production of quality software.
How do you design personalized user experiences that delight and
provide value to the customers of an eCommerce site?
Personalization does not guarantee high quality user experience: a
personalized user experience has the best chance of success if it
is developed using a set of best practices in HCI. In this book 35
experts from academia, industry and government focus on issues in
the design of personalized web sites. The topics range from the
design and evaluation of user interfaces and tools to information
architecture and computer programming related to commercial web
sites. The book covers four main areas:
Languages like C#, VB .NET, and Delphi include built-in support for events, and these events become very powerful when they connect the objects and components of a system. Events make it possible for such parts to interact without any coupling. And the resulting parts can be developed and tested individuallywhich keeps the code clean and simple. Component-based development (CBD) is an extension of object-oriented programming. CBD does away with the language and vendor-specific limitations of OOP, and makes software reuse more practical and accelerates the development process. Event-based programming is the next logical step in CBD, and makes components more reusable due to their decoupled nature. But event-based systems are easier to develop, which means theyre cheaper and more reliable than traditional OOP or CBD systems. This book teaches you how to develop software based on parts that interact primarily through an event mechanism. Youll learn how to use events in many different situations, to solve recurring development problems without coupling. The book introduces Signal Wiring Diagram, a novel form of software diagram similar to the circuit diagrams used by hardware designers. The book concludes with a series of case studies, incorporating all featured concepts. In a nutshell, youll want to pick up a copy of this book because it Provides source code in both C# and VB .NET Shows how to use an event-based paradigm to reduce or completely eliminate coupling between classes and components Describes components, including coordinators, workers, builders, binders, and routers Contains three complete case studies that model concepts being used to design small, medium, and largesystems
Automatic Re-engineering of Software Using Genetic Programming describes the application of Genetic Programming to a real world application area - software re-engineering in general and automatic parallelization specifically. Unlike most uses of Genetic Programming, this book evolves sequences of provable transformations rather than actual programs. It demonstrates that the benefits of this approach are twofold: first, the time required for evaluating a population is drastically reduced, and second, the transformations can subsequently be used to prove that the new program is functionally equivalent to the original. Automatic Re-engineering of Software Using Genetic Programming shows that there are applications where it is more practical to use GP to assist with software engineering rather than to entirely replace it. It also demonstrates how the author isolated aspects of a problem that were particularly suited to GP, and used traditional software engineering techniques in those areas for which they were adequate. Automatic Re-engineering of Software Using Genetic Programming is an excellent resource for researchers in this exciting new field.
Transformational programming and parallel computation are two emerging fields that may ultimately depend on each other for success. Perhaps because ad hoc programming on sequential machines is so straightforward, sequential programming methodology has had little impact outside the academic community, and transformational methodology has had little impact at all. However, because ad hoc programming for parallel machines is so hard, and because progress in software construction has lagged behind architectural advances for such machines, there is a much greater need to develop parallel programming and transformational methodologies.Parallel Algorithm Derivation and Program Transformation stimulates the investigation of formal ways to overcome problems of parallel computation, with respect to both software development and algorithm design. It represents perspectives from two different communities: transformational programming and parallel algorithm design, to discuss programming, transformational, and compiler methodologies for parallel architectures, and algorithmic paradigms, techniques, and tools for parallel machine models.Parallel Algorithm Derivation and Program Transformation is an excellent reference for graduate students and researchers in parallel programming and transformational methodology. Each chapter contains a few initial sections in the style of a first-year, graduate textbook with many illustrative examples. The book may also be used as the text for a graduate seminar course or as a reference book for courses in software engineering, parallel programming or formal methods in program development.
Software architecture is a primary factor in the creation and evolution of virtually all products involving software. It is a topic of major interest in the research community where pronusmg formalisms, processes, and technologies are under development. Architecture is also of major interest in industry because it is recognized as a significant leverage point for manipulating such basic development factors as cost, quality, and interval. Its importance is attested to by the fact that there are several international workshop series as well as major conference sessions devoted to it. The First Working IFIP Conference on Software Architecture (WICSAl) provided a focused and dedicated forum for the international software architecture community to unify and coordinate its effort to advance the state of practice and research. WICSA 1 was organized to facilitate information exchange between practising software architects and software architecture researchers. The conference was held in San Antonio, Texas, USA, from February 22nd to February 24th, 1999; it was the initiating event for the new IFIP TC-2 Working Group on Software Architecture. This proceedings document contains the papers accepted for the conference. The papers in this volume comprise both experience reports and technical papers. The proceedings reflect the structure of the conference and are divided into six sections corresponding to the working groups established for the conference.
VII Preface In many fields of mathematics, geometry has established itself as a fruitful method and common language for describing basic phenomena and problems as well as suggesting ways of solutions. Especially in pure mathematics this is ob vious and well-known (examples are the much discussed interplay between lin ear algebra and analytical geometry and several problems in multidimensional analysis). On the other hand, many specialists from applied mathematics seem to prefer more formal analytical and numerical methods and representations. Nevertheless, very often the internal development of disciplines from applied mathematics led to geometric models, and occasionally breakthroughs were b ed on geometric insights. An excellent example is the Klee-Minty cube, solving a problem of linear programming by transforming it into a geomet ric problem. Also the development of convex programming in recent decades demonstrated the power of methods that evolved within the field of convex geometry. The present book focuses on three applied disciplines: control theory, location science and computational geometry. It is our aim to demonstrate how methods and topics from convex geometry in a wider sense (separation theory of convex cones, Minkowski geometry, convex partitionings, etc.) can help to solve various problems from these disciplines."
Reactive systems are computing systems which are interactive, such as real-time systems, operating systems, concurrent systems, control systems, etc. They are among the most difficult computing systems to program. Temporal logic is a formal tool/language which yields excellent results in specifying reactive systems. This volume, the first of two, subtitled Specification, has a self-contained introduction to temporal logic and, more important, an introduction to the computational model for reactive programs, developed by Zohar Manna and Amir Pnueli of Stanford University and the Weizmann Institute of Science, Israel, respectively.
This book is about the verification of reactive systems. A reactive system is a system that maintains an ongoing interaction with its environment, as opposed to computing some final value on termination. The family of reactive systems includes many classes of programs whose correct and reliable construction is con sidered to be particularly challenging, including concurrent programs, embedded and process control programs, and operating systems. Typical examples of such systems are an air traffic control system, programs controlling mechanical devices such as a train, or perpetually ongoing processes such as a nuclear reactor. With the expanding use of computers in safety-critical areas, where failure is potentially disastrous, correctness is crucial. This has led to the introduction of formal verification techniques, which give both users and designers of software and hardware systems greater confidence that the systems they build meet the desired specifications. Framework The approach promoted in this book is based on the use of temporal logic for specifying properties of reactive systems, and develops an extensive verification methodology for proving that a system meets its temporal specification. Reactive programs must be specified in terms of their ongoing behavior, and temporal logic provides an expressive and natural language for specifying this behavior. Our framework for specifying and verifying temporal properties of reactive systems is based on the following four components: 1. A computational model to describe the behavior of reactive systems. The model adopted in this book is that of a Fair Transition System (FTS)."
This book is the first comprehensive survey of the field of constraint databases, written by leading researchers. Constraint databases are a fairly new and active area of database research. The key idea is that constraints, such as linear or polynomial equations, are used to represent large, or even infinite, sets in a compact way. The ability to deal with infinite sets makes constraint databases particularly promising as a technology for integrating spatial and temporal data with standard relational databases. Constraint databases bring techniques from a variety of fields, such as logic and model theory, algebraic and computational geometry, as well as symbolic computation, to the design and analysis of data models and query languages.
The Formal Aspects of Computing Science (FACS) Specialist Group of the British Computer Society set up a seriesof evening seminarsin 2005to report on advances in the application of formal design and analysis techniques in all the stages of software development. The seminars attracted an audience fromboth academiaand industry, andgavethem the opportunity to hear and meet pioneers andkeyresearchersin computing science.Normally it wouldbe necessaryto travelabroadand attend an internationalconference to be in the presence of such respected ?gures; instead, the evening seminar programme, overa period of threeyears, broughtthe keynotespeakers of the conference to theBritishComputerSocietyheadquarters, fortheconvenienceofanaudience basedinLondon.Severalspeakersfromtheperiod2005-2007kindlydeveloped their talks into full papers, which form the basis of this volume. Iamdelightedtowelcomethepublicationofsuchanexcellentandcomp- hensiveseriesofcontributions.Theyarenowavailableinbookformtoaneven wider audience, including developers interested in solutions already available, and researchers interested in problems which remain for future solution. Sir Tony Hoare Preface They envy the distinction I have won; let them therefore, envy my toils, my honesty, and the methods by which I gained it. - Sallust (86-34 BC) Formalmethods area powerfultechniqueforhelping toensure the correctness of software. The growth in their use has been slow but steady and they are typically applied in critical systems where safety or security is paramoun
Python Programming and Numerical Methods: A Guide for Engineers and Scientists introduces programming tools and numerical methods to engineering and science students, with the goal of helping the students to develop good computational problem-solving techniques through the use of numerical methods and the Python programming language. Part One introduces fundamental programming concepts, using simple examples to put new concepts quickly into practice. Part Two covers the fundamentals of algorithms and numerical analysis at a level that allows students to quickly apply results in practical settings.
"Optimal Design of Distributed Control and Embedded Systems "focuses on the design of special control and scheduling algorithms based on system structural properties as well as on analysis of the influence of induced time-delay on systems performances. It treats the optimal design of distributed and embedded control systems (DCESs) with respect to communication and calculation-resource constraints, quantization aspects, and potential time-delays induced by the associated communication and calculation model. Particular emphasis is put on optimal control signal scheduling based on the system state. In order to render this complex optimization problem feasible in real time, a time decomposition is based on periodicity induced by the static scheduling is operated. The authors present a co-design approach which subsumes the synthesis of the optimal control laws and the generation of an optimal schedule of control signals on real-time networks as well as the execution of control tasks on a single processor. The authors also operate a control structure modification or a control switching based on a thorough analysis of the influence of the induced time-delay system influence on stability and system performance in order to optimize DCES performance in case of calculation and communication resource limitations. Although the richness and variety of classes of DCES preclude a completely comprehensive treatment or a single best method of approaching them all, this co-design approach has the best chance of rendering this problem feasible and finding the optimal or some sub-optimal solution. The text is rounded out with references to such applications as car suspension and unmanned vehicles. "Optimal Design of Distributed Control and Embedded Systems" will be of most interest to academic researchers working on the mathematical theory of DCES but the wide range of environments in which they are used also promotes the relevance of the text for control practitioners working in the avionics, automotive, energy-production, space exploration and many other industries."
The inclusion of experts in communicability in the software industry has allowed timeframes to speed up in the commercialization of new technological products worldwide. However, this constant evolution of software in the face of the hardware revolution opens up a host of new horizons to maintain and increase the quality of the interactive systems following a set of standardized norms and rules for the production of interactive software. Currently, we see some efforts towards this goal, but they are still partial solutions, incomplete, and flawed from the theoretical as well as practical points of view. If the quality of the interactive design is analyzed, it is left to professionals to generate systems that are efficient, reliable, user-friendly, and cutting-edge. The Handbook of Research on Software Quality Innovation in Interactive Systems analyzes the quality of the software applied to the interactive systems and considers the constant advances in the software industry. This book reviews the past and present of information and communication technologies with a projection towards the future, along with analyses of software, software design, phrases to use, and the purposes for software applications in interactive systems. This book is ideal for students, professors, researchers, programmers, analysists of systems, computer engineers, interactive designers, managers of software quality, and evaluators of interactive systems.
For professionals who need to design, implement or manage a quality software program, this volume identifies ten major components that make up a solid program in line with ISO 9001 quality management precepts. This second edition is expanded by over 20 per cent, with updated references, text revisions and new chapters on software safety and software risk management. It seeks to provide the starting points for a standardized documentation system, and better understanding of the individual program components and how they integrate to form the whole system.
This book provides a comprehensive introduction to various mathematical approaches to achieving high-quality software. An introduction to mathematics that is essential for sound software engineering is provided as well as a discussion of various mathematical methods that are used both in academia and industry. The mathematical approaches considered include:
Additionally, technology transfer of the mathematical methods to industry is considered. The book explains the main features of these approaches and applies mathematical methods to solve practical problems. Written with both student and professional in mind, this book assists the reader in applying mathematical methods to solve practical problems that are relevant to software engineers.
Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout their complete lifecycle. Traditionally it has been concerned with technical goals for, functions of, and constraints on software systems. Aurum and Wohlin, however, argue that it is no longer appropriate for software systems professionals to focus only on functional and non-functional aspects of the intended system and to somehow assume that organizational context and needs are outside their remit. Instead, they call for a broader perspective in order to gain a better understanding of the interdependencies between enterprise stakeholders, processes, and software systems, which would in turn give rise to more appropriate techniques and higher-quality systems. Following an introductory chapter that provides an exploration of key issues in requirements engineering, the book is organized in three parts. Part 1 presents surveys of state-of-the art requirements engineering process research along with critical assessments of existing models, frameworks and techniques. Part 2 addresses key areas in requirements engineering, such as market-driven requirements engineering, goal modeling, requirements ambiguity, and others. Part 3 concludes the book with articles that present empirical evidence and experiences from practices in industrial projects. Its broader perspective gives this book its distinct appeal and makes it of interest to both researchers and practitioners, not only in software engineering but also in other disciplines such as business process engineering and management science.
Fine pitch high lead count integrated circuit packages represent a dramatic change from the conventional methods of assembling electronic components to a printed interconnect circuit board. To some, these FPTpackages appear to bean extension of the assembly technology called surface mount or SMT. Many of us who have spent a significant amount of time developing the process and design techniques for these fine pitchpackages haveconcluded that these techniquesgobeyondthose commonly useed for SMT. In 1987 the presentauthor, convincedofthe uniqueness ofthe assembly and design demands ofthese packages, chaired ajoint committee where the members agreed to use fine pitch technology (FPT) as the defining term for these demands. The committee was unique in several ways, one being that it was the first time three U. S. standards organizations, the IPC (Lincolnwood, IL), theEIA(Washington, D. C. ), and theASTM (Philadelphia), cametogether tocreate standards before a technology was in high demand. The term fine pitch technology and its acronym FPT have since become widely accepted in the electronics industry. The knowledge of the terms and demands of FPT currently exceed the usage of FPT packaged components, but this is changing rapidly because of the size, performance, and cost savings of FPT. I have resisted several past invitations to write other technical texts. However, I feel there are important advantages and significant difficulties to be encountered with FP
Semi-infinite programming (briefly: SIP) is an exciting part of mathematical programming. SIP problems include finitely many variables and, in contrast to finite optimization problems, infinitely many inequality constraints. Prob lems of this type naturally arise in approximation theory, optimal control, and at numerous engineering applications where the model contains at least one inequality constraint for each value of a parameter and the parameter, repre senting time, space, frequency etc., varies in a given domain. The treatment of such problems requires particular theoretical and numerical techniques. The theory in SIP as well as the number of numerical SIP methods and appli cations have expanded very fast during the last years. Therefore, the main goal of this monograph is to provide a collection of tutorial and survey type articles which represent a substantial part of the contemporary body of knowledge in SIP. We are glad that leading researchers have contributed to this volume and that their articles are covering a wide range of important topics in this subject. It is our hope that both experienced students and scientists will be well advised to consult this volume. We got the idea for this volume when we were organizing the semi-infinite pro gramming workshop which was held in Cottbus, Germany, in September 1996."
This thesis primarily focuses on how to carry out intelligent sensing and understand the high-dimensional and low-quality visual information. After exploring the inherent structures of the visual data, it proposes a number of computational models covering an extensive range of mathematical topics, including compressive sensing, graph theory, probabilistic learning and information theory. These computational models are also applied to address a number of real-world problems including biometric recognition, stereo signal reconstruction, natural scene parsing, and SAR image processing.
|
You may like...
Gold Nuggets from God's Mine - 366 Daily…
Denise Smith-Lewis
Paperback
Bad Girls Of The Bible - And What We Can…
Liz Curtis Higgs
Paperback
|