![]() |
![]() |
Your cart is empty |
||
Books > Computing & IT > Computer programming > Software engineering
This book provides the most complete formal specification of the semantics of the Business Process Model and Notation 2.0 standard (BPMN) available to date, in a style that is easily understandable for a wide range of readers - not only for experts in formal methods, but e.g. also for developers of modeling tools, software architects, or graduate students specializing in business process management. BPMN - issued by the Object Management Group - is a widely used standard for business process modeling. However, major drawbacks of BPMN include its limited support for organizational modeling, its only implicit expression of modalities, and its lack of integrated user interaction and data modeling. Further, in many cases the syntactical and, in particular, semantic definitions of BPMN are inaccurate, incomplete or inconsistent. The book addresses concrete issues concerning the execution semantics of business processes and provides a formal definition of BPMN process diagrams, which can serve as a sound basis for further extensions, i.e., in the form of horizontal refinements of the core language. To this end, the Abstract State Machine (ASMs) method is used to formalize the semantics of BPMN. ASMs have demonstrated their value in various domains, e.g. specifying the semantics of programming or modeling languages, verifying the specification of the Java Virtual Machine, or formalizing the ITIL change management process. This kind of improvement promotes more consistency in the interpretation of comprehensive models, as well as real exchangeability of models between different tools. In the outlook at the end of the book, the authors conclude with proposing extensions that address actor modeling (including an intuitive way to denote permissions and obligations), integration of user-centric views, a refined communication concept, and data integration.
This unique volume explores cutting-edge management approaches to developing complex software that is efficient, scalable, sustainable, and suitable for distributed environments. Practical insights are offered by an international selection of pre-eminent authorities, including case studies, best practices, and balanced corporate analyses. Emphasis is placed on the use of the latest software technologies and frameworks for life-cycle methods, including the design, implementation and testing stages of software development. Topics and features: * Reviews approaches for reusability, cost and time estimation, and for functional size measurement of distributed software applications * Discusses the core characteristics of a large-scale defense system, and the design of software project management (SPM) as a service * Introduces the 3PR framework, research on crowdsourcing software development, and an innovative approach to modeling large-scale multi-agent software systems * Examines a system architecture for ambient assisted living, and an approach to cloud migration and management assessment * Describes a software error proneness mechanism, a novel Scrum process for use in the defense domain, and an ontology annotation for SPM in distributed environments* Investigates the benefits of agile project management for higher education institutions, and SPM that combines software and data engineering This important text/reference is essential reading for project managers and software engineers involved in developing software for distributed computing environments. Students and researchers interested in SPM technologies and frameworks will also find the work to be an invaluable resource. Prof. Zaigham Mahmood is a Senior Technology Consultant at Debesis Education UK and an Associate Lecturer (Research) at the University of Derby, UK. He also holds positions as Foreign Professor at NUST and IIU in Islamabad, Pakistan, and Professor Extraordinaire at the North West University Potchefstroom, South Africa.
Despite its increasing importance, the verification and validation of the human-machine interface is perhaps the most overlooked aspect of system development. Although much has been written about the design and developmentprocess, very little organized information is available on how to verifyand validate highly complex and highly coupled dynamic systems. Inability toevaluate such systems adequately may become the limiting factor in our ability to employ systems that our technology and knowledge allow us to design. This volume, based on a NATO Advanced Science Institute held in 1992, is designed to provide guidance for the verification and validation of all highly complex and coupled systems. Air traffic control isused an an example to ensure that the theory is described in terms that will allow its implementation, but the results can be applied to all complex and coupled systems. The volume presents the knowledge and theory ina format that will allow readers from a wide variety of backgrounds to apply it to the systems for which they are responsible. The emphasis is on domains where significant advances have been made in the methods of identifying potential problems and in new testing methods and tools. Also emphasized are techniques to identify the assumptions on which a system is built and to spot their weaknesses.
Proceedings of the Centre for Software Reliability Conference entitled Software Certification, held at the Penta Hotel, Gatwick, UK, 13-16 September 1988
Learn how applying risk management to each stage of the software engineering model can help the entire development process run on time and on budget. This practical guide identifies the potential threats associated with software development, explains how to establish an effective risk management program, and details the six critical steps involved in applying the process. It also explores the pros and cons of software and organizational maturity, discusses various software metrics approaches you can use to measure software quality, and highlights procedures for implementing a successful metrics program.
This book presents new concepts, techniques and promising programming models for designing software for chips with "many" (hundreds to thousands) processor cores. Given the scale of parallelism inherent to these chips, software designers face new challenges in terms of operating systems, middleware and applications. This will serve as an invaluable, single-source reference to the state-of-the-art in programming many-core chips. Coverage includes many-core architectures, operating systems, middleware, and programming models.
Rather than deciding whether or not to get involved in global sourcing, many companies are facing decisions about whether or not to apply agile methods in their distributed projects. These companies are often motivated by the opportunities to solve the coordination and communication difficulties associated with global software development. Yet while agile principles prescribe close interaction and co-location, the very nature of distributed software development does not support these prerequisites. Smite, Moe, and Agerfalk structured the book into five parts. In "Motivation" the editors introduce the fundamentals of agile distributed software development and explain the rationale behind the application of agile practices in globally distributed software projects. " Transition" describes implementation strategies, adoption of particular agile practices for distributed projects, and general concepts of agility. "Management" details practical implications for project planning, time management, and customer and subcontractor interaction. "Teams" discusses agile distributed team configuration, effective communication and knowledge transfer, and allocation of roles and responsibilities. Finally, in the "Epilogue" the editors summarize all contributions and present future trends for research and practice in agile distributed development. This book is primarily targeted at researchers, lecturers, and students in empirical software engineering, and at practitioners involved in globally distributed software projects. The contributions are based on sound empirical research and identify gaps and commonalities in both the existing state of the art and state of the practice. In addition, they also offer practical advice through many hints, checklists, and experience reports. Questions answered in this book include: What should companies expect from merging agile and distributed strategies? What are the stumbling blocks that prevent companies from realizing the benefits of the agile approach in distributed environments, and how can we recognize infeasible strategies and unfavorable circumstances? What helps managers cope with the challenges of implementing agile approaches in distributed software development projects? How can distributed teams survive the decisions taken by management and become efficient through the application of agile approaches?
With this book, Onn Shehory and Arnon Sturm, together with further contributors, introduce the reader to various facets of agent-oriented software engineering (AOSE). They provide a selected collection of state-of-the-art findings, which combines research from information systems, artificial intelligence, distributed systems and software engineering and covers essential development aspects of agent-based systems. The book chapters are organized into five parts. The first part introduces the AOSE domain in general, including introduction to agents and the peculiarities of software engineering for developing MAS. The second part describes general aspects of AOSE, like architectural models, design patterns and communication. Next, part three discusses AOSE methodologies and associated research directions and elaborates on Prometheus, O-MaSE and INGENIAS. Part four then addresses agent-oriented programming languages. Finally, the fifth part presents studies related to the implementation of agents and multi-agent systems. The book not only provides a comprehensive review of design approaches for specifying agent-based systems, but also covers implementation aspects such as communication, standards and tools and environments for developing agent-based systems. It is thus of interest to researchers, practitioners and students who are interested in exploring the agent paradigm for developing software systems.
Purpose The purpose of this book is to provide the reader with an understanding of the ISO 9000-3 guideline and how it applies to the specification, development, test, and maintenance of software. We will show that the basic practices and procedures that define software engineering and the ISO guideline are, for all intents and purposes, one and the same. We hope that the readers of this book will use the information found within not only to pass the certification audit but as a tool to be used to create the well-managed engineering environment needed to create reliable, well engineered products in a consistent manner. Audience This book is intended for senior software engineers, software managers, and non software managers within software organizations whose aim is to create an engi neering environment within their company or organization. In addition, individ uals outside the software organization who have responsibility for the specification of the software product and preparing their organization to take ownership of the developed product will find this book of great interest. Finally, those who must choose software companies to do business with or audit software companies to determine their ability to engineer and maintain a software product will find this book helpful. 2 Introduction Overview This book is made up of twenty-four chapters that can be grouped into four sections. Chapter 1 through Chapter 4 set the basis for the following chapters that deal directly with the guideline."
"Software Project Secrets: Why Software Projects Fail" offers a new path to success in the software industry. This book reaches out to managers, developers, and customers who use industry-standard methodologies, but whose projects still struggle to succeed. Author -->George Stepanek--> analyzes the project management methodology itself, a critical factor that has thus far been overlooked. He explains why it creates problems for software development projects and begins by describing 12 ways in which software projects are different from other kinds of projects. He also analyzes the project management body of knowledge to discover 10 hidden assumptions that are invalid in the context of software projects.-->Table of Contents-->IntroductionWhy Software Is DifferentProject Management AssumptionsCase Study: The Billing System ProjectThe New Agile MethodologiesBudgeting Agile ProjectsCase Study: The Billing System RevisitedAfterword
The art, craft, discipline, logic, practice, and science of developing large-scale software products needs a believable, professional base. The textbooks in this three-volume set combine informal, engineeringly sound practice with the rigour of formal, mathematics-based approaches. Volume 1 covers the basic principles and techniques of formal methods abstraction and modelling. First this book provides a sound, but simple basis of insight into discrete mathematics: numbers, sets, Cartesians, types, functions, the Lambda Calculus, algebras, and mathematical logic. Then it trains its readers in basic property- and model-oriented specification principles and techniques. The model-oriented concepts that are common to such specification languages as B, VDM-SL, and Z are explained here using the RAISE specification language (RSL). This book then covers the basic principles of applicative (functional), imperative, and concurrent (parallel) specification programming. Finally, the volume contains a comprehensive glossary of software engineering, and extensive indexes and references. These volumes are suitable for self-study by practicing software engineers and for use in university undergraduate and graduate courses on software engineering. Lecturers will be supported with a comprehensive guide to designing modules based on the textbooks, with solutions to many of the exercises presented, and with a complete set of lecture slides.
This unique text/reference describes an exciting and novel approach to supercomputing in the DataFlow paradigm. The major advantages and applications of this approach are clearly described, and a detailed explanation of the programming model is provided using simple yet effective examples. The work is developed from a series of lecture courses taught by the authors in more than 40 universities across more than 20 countries, and from research carried out by Maxeler Technologies, Inc. Topics and features: presents a thorough introduction to DataFlow supercomputing for big data problems; reviews the latest research on the DataFlow architecture and its applications; introduces a new method for the rapid handling of real-world challenges involving large datasets; provides a case study on the use of the new approach to accelerate the Cooley-Tukey algorithm on a DataFlow machine; includes a step-by-step guide to the web-based integrated development environment WebIDE.
The book is a collection of invited papers on Computational Intelligence for Privacy and Security. The majority of the chapters are extended versions of works presented at the special session on Computational Intelligence for Privacy and Security of the International Joint Conference on Neural Networks (IJCNN-2010) held July 2010 in Barcelona, Spain. The book is devoted to Computational Intelligence for Privacy and Security. It provides an overview of the most recent advances on the Computational Intelligence techniques being developed for Privacy and Security. The book will be of interest to researchers in industry and academics and to post-graduate students interested in the latest advances and developments in the field of Computational Intelligence for Privacy and Security.
Thisvolumecontainstheinvitedandregularpaperspresentedat TCS 2010, the 6thIFIP International Conference on Theoretical Computer Science, organised by IFIP Tech- cal Committee 1 (Foundations of Computer Science) and IFIP WG 2.2 (Formal - scriptions of Programming Concepts) in association with SIGACT and EATCS. TCS 2010 was part of the World Computer Congress held in Brisbane, Australia, during September 20-23, 2010 ( ). TCS 2010 is composed of two main areas: (A) Algorithms, Complexity and Models of Computation, and (B) Logic, Semantics, Speci?cation and Veri?cation. The selection process led to the acceptance of 23 papers out of 39 submissions, eachofwhichwasreviewedbythreeProgrammeCommitteemembers.TheProgramme Committee discussion was held electronically using Easychair. The invited speakers at TCS 2010 are: Rob van Glabbeek (NICTA, Australia) Bart Jacobs (Nijmegen, The Netherlands) Catuscia Palamidessi (INRIA and LIX, Paris, France) Sabina Rossi (Venice, Italy) James Harland (Australia) and Barry Jay (Australia) acted as TCS 2010 Chairs. We take this occasion to thank the members of the Programme Committees and the external reviewers for the professional and timely work; the conference Chairs for their support; the invited speakers for their scholarly contribution; and of course the authors for submitting their work to TCS 2010
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.
The 7th ACIS International Conference on Software Engineering Research, Management and Applications (SERA 2009) was held on Hainan Island, China from December 2 - 4. SERA '09 featured excellent theoretical and practical contributions in the areas of formal methods and tools, requirements engineering, software process models, communication systems and networks, software quality and evaluation, software engineering, networks and mobile computing, parallel/distributed computing, software testing, reuse and metrics, database retrieval, computer security, software architectures and modeling. 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 or the program committee, and underwent further rigorous rounds of review.
Metadata standards in today's ICT sector are proliferating at unprecedented levels, while automated information management systems collect and process exponentially increasing quantities of data. With interoperability and knowledge exchange identified as a core challenge in the sector, this book examines the role ontology engineering can play in providing solutions to the problems of information interoperability and linked data. At the same time as introducing basic concepts of ontology engineering, the book discusses methodological approaches to formal representation of data and information models, thus facilitating information interoperability between heterogeneous, complex and distributed communication systems. In doing so, the text advocates the advantages of using ontology engineering in telecommunications systems. In addition, it offers a wealth of guidance and best-practice techniques for instances in which ontology engineering is applied in cloud services, computer networks and management systems. Engineering and computer science professionals (infrastructure architects, software developers, service designers, infrastructure operators, engineers, etc.) are today confronted as never before with the challenge of convergence in software solutions and technology. This book will help them respond creatively to what is sure to be a period of rapid development. "
Universally acclaimed as the book on garbage collection. A complete and up-to-date revision of the 2012 Garbage Collection Handbook. Thorough coverage of parallel, concurrent and real-time garbage collection algortithms including C4, Garbage First, LXR, Shenandoah, Transactional Sapphire and ZGC, and garbage collection on the GPU. Clear explanation of the trickier aspects of garbage collection, including the interface to the run-time system, handling of finalisation and weak references, and support for dynamic languages. New chapters on energy aware garbage collection, and persistence and garbage collection. The e-book includes more than 40,000 hyperlinks to algorithms, figures, glossary entries, indexed items, original research papers and much more. Backed by a comprehensive online database of over 3,400 garbage collection-related publications
The VLISP project showed how to produce a comprehensively verified implemen tation for a programming language, namely Scheme [4, 15). Some of the major elements in this verification were: * The proof was based on the Clinger-Rees denotational semantics of Scheme given in [15). Our goal was to produce a "warts-and-all" verification of a real language. With very few exceptions, we constrained ourselves to use the se mantic specification as published. The verification was intended to be rigorous, but. not. complet.ely formal, much in the style of ordinary mathematical discourse. Our goal was to verify the algorithms and data types used in the implementat.ion, not their embodiment. in code. See Section 2 for a more complete discussion ofthese issues. Our decision to be faithful to the published semantic specification led to the most difficult portions ofthe proofs; these are discussed in [13, Section 2.3-2.4). * Our implementation was based on the Scheme48 implementation of Kelsey and Rees [17). This implementation t.ranslates Scheme into an intermediate-level "byte code" language, which is interpreted by a virtual machine. The virtual machine is written in a subset of Scheme called PreScheme. The implementationissufficient.ly complete and efficient to allow it to bootstrap itself. We believe that this is the first. verified language implementation with these properties.
An Introduction to R and Python for Data Analysis helps teach students to code in both R and Python simultaneously. As both R and Python can be used in similar manners, it is useful and efficient to learn both at the same time, helping lecturers and students to teach and learn more, save time, whilst reinforcing the shared concepts and differences of the systems. This tandem learning is highly useful for students, helping them to become literate in both languages, and develop skills which will be handy after their studies. This book presumes no prior experience with computing, and is intended to be used by students from a variety of backgrounds. The side-by-side formatting of this book helps introductory graduate students quickly grasp the basics of R and Python, with the exercises providing helping them to teach themselves the skills they will need upon the completion of their course, as employers now ask for competency in both R and Python. Teachers and lecturers will also find this book useful in their teaching, providing a singular work to help ensure their students are well trained in both computer languages. All data for exercises can be found here: https://github.com/tbrown122387/r_and_python_book/tree/master/data. Key features: - Teaches R and Python in a "side-by-side" way. - Examples are tailored to aspiring data scientists and statisticians, not software engineers. - Designed for introductory graduate students. - Does not assume any mathematical background.
Covers the methodology and state-of-the-art techniques of constrained verification, which is new and popular. It relates constrained verification with the also-hot technology called assertion-based design. Discussed and clarifies language issues, critical to both the above, which will help the implementation of these languages.
This book gathers chapters from some of the top international empirical software engineering researchers focusing on the practical knowledge necessary for conducting, reporting and using empirical methods in software engineering. Topics and features include guidance on how to design, conduct and report empirical studies. The volume also provides information across a range of techniques, methods and qualitative and quantitative issues to help build a toolkit applicable to the diverse software development contexts
also in: THE KLUWER INTERNATIONAL SERIES ON ASIAN STUDIES IN COMPUTER AND INFORMATION SCIENCE, Volume 1 |
![]() ![]() You may like...
Turbulence in Porous Media - Modeling…
Marcelo J. S. de Lemos
Hardcover
R4,222
Discovery Miles 42 220
Oracle Application Express by Design…
Patrick Cimolini
Paperback
Oracle Business Intelligence and Essbase…
Rosendo Abellera, Lakshman Bulusu
Hardcover
R1,985
Discovery Miles 19 850
Applications of Sliding Mode Control in…
Sundarapandian Vaidyanathan, Chang-Hua Lien
Hardcover
Numerical Methods for Energy…
Naser Mahdavi Tabatabaei, Nicu Bizon
Hardcover
R4,599
Discovery Miles 45 990
Sitting Pretty - White Afrikaans Women…
Christi van der Westhuizen
Paperback
![]()
Fluctuation-Induced Network Control and…
Masayuki Murata, Kenji Leibnitz
Hardcover
R3,628
Discovery Miles 36 280
|