![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming > Software engineering
A collection of the most up-to-date research-oriented chapters on information systems development and database, this book provides an understanding of the capabilities and features of new ideas and concepts in information systems development, databases, and forthcoming technologies.
M. CARPENTIER Director General DG XIII, Telecommunications, Information Industries and Innovation of the Commission of the European Communities It is with great pleasure that I introduce and recommend this collection of guidelines produced by EWICS TC7. This Technical Committee has consistently attracted technical experts of high quality from all over Europe and the standard of the Committee's work has reflected this. The Committee has been sponsored by the Commission of the European Communities since 1978. During this period, there has been the opportunity to observe the enthusiasm and dedication in the activities of the group, the expertise and effort invested in its work, the discipline in meeting objectives and the quality of the resulting guidelines. It is no surprise that these guidelines have influenced the work of international standardisation bodies. Now the first six of EWICS TCTs guidelines are being made available as a book. I am convinced that all computer system developers who use them will greatly enhance their chances of achieving quality systems. v Acknowledgements In the preparation of this book, the editoLisgrateful to P. Bishop, G. Covington II, C. Goring, and W. Quirk for their help in editing the guidelines. In addition, he would like to thank S. Bologna, W. Ehrenberger, M. Ould, J. Rata, L. Sintonen and J. Zalewski for reviewing the chapters and providing additional material.
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 3 is based on the maxim: "Before software can be designed its requirements must be well understood, and before the requirements can be expressed properly the domain of the application must be well understood." This book covers the process from the development of domain descriptions, via the derivation of requirements prescriptions from domain models, to the refinement of requirements into software designs, i.e., architectures and component design. Emphasis is placed on what goes into proper domain descriptions and requirements prescriptions, how one acquires and analyses the domain knowledge and requirements expectations, and how one validates and verifies domain and requirements models. The reader can take an informal route through Vol. 3, and this would be suitable for undergraduate courses on software engineering. Advanced students, lecturers, and researchers may instead follow the formal route through Vol. 3, and in this case Vol. 1 is a prerequisite text. 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 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.
In today s world, services and data are integrated in ever new constellations, requiring the easy, flexible and scalable integration of autonomous, heterogeneous components into complex systems at any time. Event-based architectures inherently decouple system components. Event-based components are not designed to work with specific other components in a traditional request/reply mode, but separate communication from computation through asynchronous communication mechanisms via a dedicated notification service. Muhl, Fiege, and Pietzuch provide the reader with an in-depth description of event-based systems. They cover the complete spectrum of topics, ranging from a treatment of local event matching and distributed event forwarding algorithms, through a more practical discussion of software engineering issues raised by the event-based style, to a presentation of state-of-the-art research topics in event-based systems, such as composite event detection and security. Their presentation gives researchers a comprehensive overview of the area and lots of hints for future research. In addition, they show the power of event-based architectures in modern system design, thus encouraging professionals to exploit this technique in next generation large-scale distributed applications like information dissemination, network monitoring, enterprise application integration, or mobile systems.
The great challenge of reverse engineering is recovering design information from legacy code: the concept recovery problem. This monograph describes our research effort in attacking this problem. It discusses our theory of how a constraint-based approach to program plan recognition can efficiently extract design concepts from source code, and it details experiments in concept recovery that support our claims of scalability. Importantly, we present our models and experiments in sufficient detail so that they can be easily replicated. This book is intended for researchers or software developers concerned with reverse engineering or reengineering legacy systems. However, it may also interest those researchers who are interested using plan recognition techniques or constraint-based reasoning. We expect the reader to have a reasonable computer science background (i.e., familiarity with the basics of programming and algorithm analysis), but we do not require familiarity with the fields of reverse engineering or artificial intelligence (AI). To this end, we carefully explain all the AI techniques we use. This book is designed as a reference for advanced undergraduate or graduate seminar courses in software engineering, reverse engineering, or reengineering. It can also serve as a supplementary textbook for software engineering-related courses, such as those on program understanding or design recovery, for AI-related courses, such as those on plan recognition or constraint satisfaction, and for courses that cover both topics, such as those on AI applications to software engineering. ORGANIZATION The book comprises eight chapters.
Computers are currently used in a variety of critical applications, including systems for nuclear reactor control, flight control (both aircraft and spacecraft), and air traffic control. Moreover, experience has shown that the dependability of such systems is particularly sensitive to that of its software components, both the system software of the embedded computers and the application software they support. Software Performability: From Concepts to Applications addresses the construction and solution of analytic performability models for critical-application software. The book includes a review of general performability concepts along with notions which are peculiar to software performability. Since fault tolerance is widely recognized as a viable means for improving the dependability of computer system (beyond what can be achieved by fault prevention), the examples considered are fault-tolerant software systems that incorporate particular methods of design diversity and fault recovery. Software Performability: From Concepts to Applications will be of direct benefit to both practitioners and researchers in the area of performance and dependability evaluation, fault-tolerant computing, and dependable systems for critical applications. For practitioners, it supplies a basis for defining combined performance-dependability criteria (in the form of objective functions) that can be used to enhance the performability (performance/dependability) of existing software designs. For those with research interests in model-based evaluation, the book provides an analytic framework and a variety of performability modeling examples in an application context of recognized importance. The material contained in this book will both stimulate future research on related topics and, for teaching purposes, serve as a reference text in courses on computer system evaluation, fault-tolerant computing, and dependable high-performance computer systems.
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.
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.
Proceedings of the Centre for Software Reliability Conference entitled Software Certification, held at the Penta Hotel, Gatwick, UK, 13-16 September 1988
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 Seventh Edition of Donald Reifer's popular, bestselling
tutorial summarizes what software project managers need to know to
be successful on the job. The text provides pointers and approaches
to deal with the issues, challenges, and experiences that shape
their thoughts and performance. To accomplish its goals, the volume
explores recent advances in dissimilar fields such as management
theory, acquisition management, globalization, knowledge
management, licensing, motivation theory, process improvement,
organization dynamics, subcontract management, and technology
transfer.
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."
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.
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.
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.
"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
Software and Systems Traceability provides a comprehensive description of the practices and theories of software traceability across all phases of the software development lifecycle. The term software traceability is derived from the concept of requirements traceability. Requirements traceability is the ability to track a requirement all the way from its origins to the downstream work products that implement that requirement in a software system. Software traceability is defined as the ability to relate the various types of software artefacts created during the development of software systems. Traceability relations can improve the quality of a product being developed, and reduce the time and cost of development. More specifically, traceability relations can support evolution of software systems, reuse of parts of a system by comparing components of new and existing systems, validation that a system meets its requirements, understanding of the rationale for certain design and implementation decisions, and analysis of the implications of changes in the system.
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 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.
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.
This book presents a guide to the core features of Java - and some more recent innovations - enabling the reader to build skills and confidence though tried-and-trusted stages, supported by exercises that reinforce key learning points. All of the most useful and commonly applied Java syntax and libraries are introduced, along with many example programs that can provide the basis for more substantial applications. Use of the Eclipse IDE and the JUnit testing framework is integral to the book, ensuring maximum productivity and code quality, although to ensure that skills are not confined to one environment the fundamentals of the Java compiler and run time are also explained. Additionally, coverage of the Ant tool will equip the reader with the skills to automatically build, test and deploy applications independent of an IDE. Features: presents information on Java 7; contains numerous code examples and exercises; provides source code, self-test questions and PowerPoint slides at an associated website. |
You may like...
Hardware Accelerator Systems for…
Shiho Kim, Ganesh Chandra Deka
Hardcover
R3,950
Discovery Miles 39 500
Clean Architecture - A Craftsman's Guide…
Robert Martin
Paperback
(1)
Principles of Big Graph: In-depth…
Ripon Patgiri, Ganesh Chandra Deka, …
Hardcover
R3,925
Discovery Miles 39 250
Designing the User Interface: Strategies…
Ben Shneiderman, Catherine Plaisant, …
Paperback
R2,037
Discovery Miles 20 370
Essential Java for Scientists and…
Brian Hahn, Katherine Malan
Paperback
R1,266
Discovery Miles 12 660
Edge/Fog Computing Paradigm: The…
Pethuru Raj, Kavita Saini, …
Hardcover
R3,966
Discovery Miles 39 660
Dark Silicon and Future On-chip Systems…
Suyel Namasudra, Hamid Sarbazi-Azad
Hardcover
R3,940
Discovery Miles 39 400
|