![]() |
![]() |
Your cart is empty |
||
Books > Computing & IT > Computer programming > Software engineering
The demand for large-scale dependable, systems, such as Air Traffic Management, industrial plants and space systems, is attracting efforts of many word-leading European companies and SMEs in the area, and is expected to increase in the near future. The adoption of Off-The-Shelf (OTS) items plays a key role in such a scenario. OTS items allow mastering complexity and reducing costs and time-to-market; however, achieving these goals by ensuring dependability requirements at the same time is challenging. CRITICAL STEP project establishes a strategic collaboration between academic and industrial partners, and proposes a framework to support the development of dependable, OTS-based, critical systems. The book introduces methods and tools adopted by the critical systems industry, and surveys key achievements of the CRITICAL STEP project along four directions: fault injection tools, V&V of critical systems, runtime monitoring and evaluation techniques, and security assessment.
This book contains the collection of papers presented at the conference of the International Federation for Information Processing Working Group 8.2 "Information and Organizations." The conference took place during June 21-24, 2009 at the Universidade do Minho in Guimaraes, Portugal. The conference entitled "CreativeSME - The Role of IS in Leveraging the Intelligence and Creativity of SME's" attracted high-quality submissions from across the world. Each paper was reviewed by at least two reviewers in a double-blind review process. In addition to the 19 papers presented at the conference, there were five panels and four workshops, which covered a range of issues relevant to SMEs, creativity and information systems. We would like to show our appreciation of the efforts of our two invited keynote speakers, Michael Dowling of the University of Regensburg, Germany and Carlos Zorrinho, Portuguese coordinator of the Lisbon Strategy and the Technological Plan. The following organizations supported the conference through financial or other contributions and we would like to thank them for their engagement: "
In recent years, cloud computing has gained a significant amount of attention by providing more flexible ways to store applications remotely. With software testing continuing to be an important part of the software engineering life cycle, the emergence of software testing in the cloud has the potential to change the way software testing is performed. Software Testing in the Cloud: Perspectives on an Emerging Discipline is a comprehensive collection of research by leading experts in the field providing an overview of cloud computing and current issues in software testing and system migration. Deserving the attention of researchers, practitioners, and managers, this book aims to raise awareness about this new field of study.
This book explores how agile development practices, in particular pair programming, code review and automated testing, help software development teams to perform better. Agile software engineering has become the standard software development paradigm over the last decade, and the insights provided here are taken from a large-scale survey of 80 professional software development teams working at SAP SE in Germany. In addition, the book introduces a novel measurement tool for assessing the performance of software development teams. No previous study has researched this topic with a similar data set comprising insights from more than 450 professional software engineers.
Software Engineering Techniques Applied to Agricultural Systems presents cutting-edge software engineering techniques for designing and implementing better agricultural software systems based on the object-oriented paradigm and the Unified Modeling Language (UML). The focus is on the presentation of rigorous step-by-step approaches for modeling flexible agricultural and environmental systems, starting with a conceptual diagram representing elements of the system and their relationships. Furthermore, diagrams such as sequential and collaboration diagrams are used to explain the dynamic and static aspects of the software system. This second edition includes: a new chapter on Object Constraint Language (OCL), a new section dedicated to the Model-VIEW-Controller (MVC) design pattern, new chapters presenting details of two MDA-based tools - the Virtual Enterprise and Olivia Nova and a new chapter with exercises on conceptual modeling. It may be highly useful to undergraduate and graduate students as the first edition has proven to be a useful supplementary textbook for courses in mathematical programming in agriculture, ecology, information technology, agricultural operations research methods, agronomy and soil science and applied mathematical modeling. The book has broad appeal for anyone involved in software development projects in agriculture and to researchers in general who are interested in modeling complex systems. From the reviews of the first edition: "The book will be useful for those interested in gaining a quick understanding of current software development techniques and how they are applied in practice... this is a good introductory text on the application of OOAD, UML and design patters to the creation of agricultural systems. It is technically sound and well written." -Computing Reviews, September 2006
The increased computational power and software tools available to
engineers have increased the use and dependence on modeling and
computer simulation throughout the design process. These tools have
given engineers the capability of designing highly complex systems
and computer architectures that were previously unthinkable. Every
complex design project, from integrated circuits, to aerospace
vehicles, to industrial manufacturing processes requires these new
methods. This book fulfills the essential need of system and
control engineers at all levels in understanding modeling and
simulation. This book, written as a true text/reference has become
a standard sr./graduate level course in all EE departments
worldwide and all professionals in this area are required to update
their skills. * Presents a working foundation necessary for compliance with
High Level Architecture (HLA) standards
Model-driven software development drastically alters the software development process, which is characterized by a high degree of innovation and productivity. Emerging Technologies for the Evolution and Maintenance of Software Models contains original academic work about current research and research projects related to all aspects affecting the maintenance, evolution, and reengineering (MER), as well as long-term management, of software models. The mission of this book is to present a comprehensive and central overview of new and emerging trends in software model research and to provide concrete results from ongoing developments in the field.
The series covers new developments in computer technology. Most chapters present an overview of a current subfield within computers, with many citations, and often include new developments in the field by the authors of the individual chapters. Topics include hardware, software, theoretical underpinnings of computing, and novel applications of computers. This current volume emphasizes architectural advances and includes five chapters on hardware development, games for mobile devices such as cell phones, and open source software development.
This book presents source code modularization as a key activity in reverse engineering to extract the software architecture from the existing source code. To this end, it provides detailed techniques for source code modularization and discusses their effects on different software quality attributes. Nonetheless, it is not a mere survey of source code modularization algorithms, but rather a consistent and unifying theoretical modularization framework, and as such is the first publication that comprehensively examines the models and techniques for source code modularization. It enables readers to gain a thorough understanding of topics like software artifacts proximity, hierarchical and partitional modularization algorithms, search- and algebraic-based software modularization, software modularization evaluation techniques and software quality attributes and modularization. This book introduces students and software professionals to the fundamental ideas of source code modularization concepts, similarity/dissimilarity metrics, modularization metrics, and quality assurance. Further, it allows undergraduate and graduate students in software engineering, computer science, and computer engineering with no prior experience in the software industry to explore the subject in a step-by-step manner. Practitioners benefit from the structured presentation and comprehensive nature of the materials, while the large number of bibliographic references makes this book a valuable resource for researchers working on source code modularization.
The three-volume set IFIP AICT 368-370 constitutes the refereed post-conference proceedings of the 5th IFIP TC 5, SIG 5.1 International Conference on Computer and Computing Technologies in Agriculture, CCTA 2011, held in Beijing, China, in October 2011. The 189 revised papers presented were carefully selected from numerous submissions. They cover a wide range of interesting theories and applications of information technology in agriculture, including simulation models and decision-support systems for agricultural production, agricultural product quality testing, traceability and e-commerce technology, the application of information and communication technology in agriculture, and universal information service technology and service systems development in rural areas. The 59 papers included in the third volume focus on simulation, optimization, monitoring, and control technology.
The purpose of the 13th International Conference on Computer and Information Science (SNPD 2012) held on August 8-10, 2012 in Kyoto, Japan was to bring together researchers and scientists, businessmen and entrepreneurs, teachers and students to discuss the numerous fields of computer science, and to share ideas and information in a meaningful way. Our conference officers selected the best 17 papers from those papers accepted for presentation at the conference in order to publish them in this volume. The papers were chosen based on review scores submitted by members of the program committee, and underwent further rounds of rigorous review. The conference organizers selected 17 outstanding papers from SNPD 2012, all of which you will find in this volume of Springer's Studies in Computational Intelligence.
This book presents four mathematical essays which explore the foundations of mathematics and related topics ranging from philosophy and logic to modern computer mathematics. While connected to the historical evolution of these concepts, the essays place strong emphasis on developments still to come. The book originated in a 2002 symposium celebrating the work of Bruno Buchberger, Professor of Computer Mathematics at Johannes Kepler University, Linz, Austria, on the occasion of his 60th birthday. Among many other accomplishments, Professor Buchberger in 1985 was the founding editor of the Journal of Symbolic Computation; the founder of the Research Institute for Symbolic Computation (RISC) and its chairman from 1987-2000; the founder in 1990 of the Softwarepark Hagenberg, Austria, and since then its director. More than a decade in the making, Mathematics, Computer Science and Logic - A Never Ending Story includes essays by leading authorities, on such topics as mathematical foundations from the perspective of computer verification; a symbolic-computational philosophy and methodology for mathematics; the role of logic and algebra in software engineering; and new directions in the foundations of mathematics. These inspiring essays invite general, mathematically interested readers to share state-of-the-art ideas which advance the never ending story of mathematics, computer science and logic. Mathematics, Computer Science and Logic - A Never Ending Story is edited by Professor Peter Paule, Bruno Buchberger s successor as director of the Research Institute for Symbolic Computation. "
The advent of powerful processing technologies and the advances in software development tools have drastically changed the approach and implementation of computational research in fundamental properties of living systems through simulating and synthesizing biological entities and processes in artificial media. Nowadays realistic physical and physiological simulation of natural and would-be creatures, worlds and societies becomes a low-cost task for ordinary home computers. The progress in technology has dramatically reshaped the structure of the software, the execution of a code, and visualization fundamentals. This has led to the emergence of novel breeds of artificial life software models, including three-dimensional programmable simulation environment, distributed discrete events platforms and multi-agent systems. This second edition reflects the technological and research advancements, and presents the best examples of artificial life software models developed in the World and available for users.
This extensively revised and updated new edition of "Specification of Software Systems" builds upon the original focus on "software specification" with added emphasis on the practice of formal methods for "specification and verification activities" for different types of software systems and at different stages of developing software systems. Topics and features: provides a wide coverage of formal specification techniques and a clear writing style, supported by end-of-chapter bibliographic notes for further reading; presents a logical structure, with sections devoted to specification fundamentals, basics of formalism, logic, set theory and relations, property-oriented specification methods, and model-based specification techniques; contains end-of-chapter exercises and numerous case studies, with potential course outlines suggested in the Preface; covers Object-Z, B-Method, and Calculus of Communicating Systems; offers material that can be taught with tool-supported laboratory projects.
"As projects get more complicated, managers stop learning from their - perience. It is important to understand how that happens and how to change it.... Fallible estimates: In software development, initial estimates for a project shape the trajectory of decisions that a manager makes over its life. For ex- ple, estimates of the productivity of the team members influence decisions about the size of the team, which in turn affect the team's actual output. The trouble is that initial estimates usually turn out to be wrong. " (Sengupta, 2008) This book aims directly to increase the awareness among managers and practitioners that estimation is as important as the work to be done in so- ware and systems development. You can manage what you can measure! Readers will find in this book a collection of lessons learned from the worldwide "metrics community," which we have documented and enhanced with our own experiences in the field of software measurement and estimating. Our goal is to support our readers to harvest the benefits of estimating and - prove their software development processes. We present the 5 ISO/I- acknowledged Functional Sizing Methods with variants, experiences, counting rules, and case studies - and most importantly, illustrate through practical - amples how to use functional size measurement to produce realistic estimates. The book is written in a practical manner, especially for the busy practitioner community. It is aimed to be used as a manual and an assistant for everyday work.
The emphasis on new and changing technologies and process models in today s software development obscures the fact that software engineering is still primarily a human-based activity and that the success of a software project largely depends on the decisions made by humans during engineering. Rationale management is concerned with making these design and development decisions explicit to all stakeholders involved. Dutoit, McCall, Mistrik and Paech begin their book with a historical survey of different rationale approaches. It is followed by four parts describing: the fundamental problems and possible solution approaches in rationale management, rationale management during requirements engineering, rationale management during software architecting, and rationale management for organizing reusable bodies of knowledge. The result is a detailed summary of research on design rationale. It provides researchers with an excellent state-of-the-art overview, and professional software engineers will find many examples, resources and incentives to enhance their ability to make decisions during all phases of the software lifecycle. Allen Dutoit, Ray McCall, Ivan Mistrik and Barbara Paech have done an excellent job of this in "Rationale management in software engineering." The chapters in this volume show how design rationale can be incorporated into the heart of the software development process - into requirements engineering, software architecture, and code design. (John M. Carroll, Edward M. Frymoyer Professor of Information Sciences and Technology, Penn State University, USA, ACM CHI Lifetime Achievement Award)
Job titles like Technical Architect and Chief Architect nowadays abound in software industry, yet many people suspect that architecture is one of the most overused and least understood terms in professional software development. Gorton s book tries to resolve this dilemma. It concisely describes the essential elements of knowledge and key skills required to be a software architect. The explanations encompass the essentials of architecture thinking, practices, and supporting technologies. They range from a general understanding of structure and quality attributes through technical issues like middleware components and service-oriented architectures to recent technologies like model-driven architecture, software product lines, aspect-oriented design, and the Semantic Web, which will presumably influence future software systems. This second edition contains new material covering enterprise architecture, agile development, enterprise service bus technologies, RESTful Web services, and a case study on how to use the MeDICi integration framework. All approaches are illustrated by an ongoing real-world example. So if you work as an architect or senior designer (or want to someday), or if you are a student in software engineering, here is a valuable and yet approachable knowledge source for you.
This book gives a practical introduction to model-based testing,
showing how to write models for testing purposes and how to use
model-based testing tools to generate test suites. It is aimed at
testers and software developers who wish to use model-based
testing, rather than at tool-developers or academics.
Genetic algorithms today constitute a family of e?ective global optimization methods used to solve di?cult real-life problems which arise in science and technology. Despite their computational complexity, they have the ability to explore huge data sets and allow us to study exceptionally problematic cases in which the objective functions are irregular and multimodal, and where information about the extrema location is unobtainable in other ways. Theybelongtotheclassofiterativestochasticoptimizationstrategiesthat, during each step, produce and evaluate the set of admissible points from the search domain, called the random sample or population. As opposed to the Monte Carlo strategies, in which the population is sampled according to the uniform probability distribution over the search domain, genetic algorithms modify the probability distribution at each step. Mechanisms which adopt sampling probability distribution are transposed from biology. They are based mainly on genetic code mutation and crossover, as well as on selection among living individuals. Such mechanisms have been testedbysolvingmultimodalproblemsinnature,whichiscon?rmedinpart- ular by the many species of animals and plants that are well ?tted to di?erent ecological niches. They direct the search process, making it more e?ective than a completely random one (search with a uniform sampling distribution). Moreover,well-tunedgenetic-basedoperationsdonotdecreasetheexploration ability of the whole admissible set, which is vital in the global optimization process. The features described above allow us to regard genetic algorithms as a new class of arti?cial intelligence methods which introduce heuristics, well tested in other ?elds, to the classical scheme of stochastic global search.
Service-oriented architectures are of vital importance to enterprises maintaining order and service reputation with stakeholders, and by utilizing the latest technologies, advantage can be gained and time and effort saved. Enhancing Enterprise and Service-Oriented Architectures with Advanced Web Portal Technologies offers the latest research and development within the field, filled with case studies, research, methodologies, and frameworks from contributors around the world. In order to stay abreast of the cutting-edge research in the field, it is vital for academics and practitioners to stay involved and studied with the latest publications. This volume contains a wide range of subject matters, levels of technical expertise and development, and new technological advances within the field, and will serve as an excellent resource both as a handbook and a research manual.
This volume comprises selected extended papers written by prominent researchers participating in the International MultiConference of Engineers and Computer Scientists 2015, Hong Kong, 18-20 March 2015. The conference served as a platform for discussion of frontier topics in theoretical and applied engineering and computer science, and subjects covered include communications systems, control theory and automation, bioinformatics, artificial intelligence, data mining, engineering mathematics, scientific computing, engineering physics, electrical engineering, and industrial applications. The book describes the state-of-the-art in engineering technologies and computer science and its applications, and will serve as an excellent reference for industrial and academic researchers and graduate students working in these fields.
This book is a self-contained, practical introduction how to use FeatureIDE for modeling and implementing variable systems. In particular, readers learn how to analyze domains using feature models, specify requirements in form of configurations, and how to generate code based on conditional compilation and feature-oriented programming. Given the interactive style of the book, readers can directly try out the open-source development environment. All code examples are available in the standard distribution on GitHub and can immediately been used for individual modifications. Each part of the book is presented as a step-by-step tutorial and additionally illustrated using an ongoing example of elevator control software written in Java. Written by the core development team of FeatureIDE, this book is suitable for students using a tool for deepening the theoretical foundations of variability modeling and implementation, and as a reference for practitioners needing a stable and scalable tool for industrial applications. FeatureIDE is the most used open-source tool for feature modeling and has been continuously improved since 2004. The success of FeatureIDE is due to being a vehicle for cutting-edge product-line research by still providing an easy-to-use and seamless integration into Eclipse.
The series "Studies in Computational Intelligence" (SCI) publishes new developments and advances in the various areas of computational intelligence quickly and with a high quality. The intent is to cover the theory, applications, and design methods of computational intelligence, as embedded in the fields of engineering, computer science, physics and life science, as well as the methodologies behind them. The series contains monographs, lecture notes and edited volumes in computational intelligence spanning the areas of neural networks, connectionist systems, genetic algorithms, evolutionary computation, artificial intelligence, cellular automata, self-organizing systems, soft computing, fuzzy systems, and hybrid intelligent systems. Critical to both contributors and readers are the short publication time and world-wide distribution - this permits a rapid and broad dissemination of research results. The purpose of the first ACIS International Symposium on Software and Network Engineering held on December 19-20, 2012 on the Seoul National University campus, Seoul, Korea is to bring together scientist, engineers, computer users, students to share their experiences and exchange new ideas, and research results about all aspects (theory, applications and tools) of software & network engineering, and to discuss the practical challenges encountered along the way and the solutions adopted to solve them The symposium organizers selected the best 12 papers from those papers accepted for presentation at the symposium in order to publish them in this volume. The papers were chosen based on review scores submitted by members of the program committee, and underwent further rigorous rounds of review. The symposium organizers selected the best 12 papers from those papers accepted for presentation at the symposium in order to publish them in this volume. The papers were chosen based on review scores submitted by members of the program committee, and underwent further rigorous rounds of review."
This introduction to cryptography employs a programming-oriented approach to study the most important cryptographic schemes in current use and the main cryptanalytic attacks against them. Discussion of the theoretical aspects, emphasizing precise security definitions based on methodological tools such as complexity and randomness, and of the mathematical aspects, with emphasis on number-theoretic algorithms and their applications to cryptography and cryptanalysis, is integrated with the programming approach, thus providing implementations of the algorithms and schemes as well as examples of realistic size. A distinctive feature of the author's approach is the use of Maple as a programming environment in which not just the cryptographic primitives but also the most important cryptographic schemes are implemented following the recommendations of standards bodies such as NIST, with many of the known cryptanalytic attacks implemented as well. The purpose of the Maple implementations is to let the reader experiment and learn, and for this reason the author includes numerous examples. The book discusses important recent subjects such as homomorphic encryption, identity-based cryptography and elliptic curve cryptography. The algorithms and schemes which are treated in detail and implemented in Maple include AES and modes of operation, CMAC, GCM/GMAC, SHA-256, HMAC, RSA, Rabin, Elgamal, Paillier, Cocks IBE, DSA and ECDSA. In addition, some recently introduced schemes enjoying strong security properties, such as RSA-OAEP, Rabin-SAEP, Cramer--Shoup, and PSS, are also discussed and implemented. On the cryptanalysis side, Maple implementations and examples are used to discuss many important algorithms, including birthday and man-in-the-middle attacks, integer factorization algorithms such as Pollard's rho and the quadratic sieve, and discrete log algorithms such as baby-step giant-step, Pollard's rho, Pohlig--Hellman and the index calculus method. This textbook is suitable for advanced undergraduate and graduate students of computer science, engineering and mathematics, satisfying the requirements of various types of courses: a basic introductory course; a theoretically oriented course whose focus is on the precise definition of security concepts and on cryptographic schemes with reductionist security proofs; a practice-oriented course requiring little mathematical background and with an emphasis on applications; or a mathematically advanced course addressed to students with a stronger mathematical background. The main prerequisite is a basic knowledge of linear algebra and elementary calculus, and while some knowledge of probability and abstract algebra would be helpful, it is not essential because the book includes the necessary background from these subjects and, furthermore, explores the number-theoretic material in detail. The book is also a comprehensive reference and is suitable for self-study by practitioners and programmers." |
![]() ![]() You may like...
Essential Java for Scientists and…
Brian Hahn, Katherine Malan
Paperback
R1,296
Discovery Miles 12 960
Edge/Fog Computing Paradigm: The…
Pethuru Raj, Kavita Saini, …
Hardcover
R4,112
Discovery Miles 41 120
Research Anthology on Architectures…
Information R Management Association
Hardcover
R14,048
Discovery Miles 140 480
|