Monday, February 16, 2009

Nature of Computation or Enterprise Modeling with UML

Nature of Computation

Author: Stephan Mertens

In the last decade, the boundary between physics and computer science has become a hotbed of interdisciplinary collaboration. Every passing year shows that physicists and computer scientists have a great deal to say to each other, sharing metaphors, intuitions, and mathematical techniques. In this book, two leading researchers in this area introduce the reader to the fundamental concepts of computational complexity. They go beyond the usual discussion of P, NP and NP-completeness to explain the deep meaning of the P vs. NP question, and explain many recent results which have not yet appeared in any textbook. They then give in-depth explorations of the major interfaces between computer science and physics: phase transitions in NP-complete problems, Monte Carlo algorithms, and quantum computing. The entire book is written in an informal style that gives depth with a minimum of mathematical formalism, exposing the heart of the matter without belabouring technical details. The only mathematical prerequisites are linear algebra, complex numbers, and Fourier analysis (and most chapters can be understood without even these). It can be used as a textbook for graduate students or advanced undergraduates, and will be enjoyed by anyone who is interested in understanding the rapidly changing field of theoretical computer science and its relationship with other sciences.



Interesting textbook: Multithreaded Programming with Java Technology or The Essential Guide to Digital Set Top Boxes and Interactive TV

Enterprise Modeling with UML: Designing Successful Software through Business Analysis

Author: Chris Marshall

Written for practitioners interested in business systems and software applications, this book fuses object technology, workflow, data warehousing, and distributed system concepts into a coherent model that has been successfully implemented worldwide. Enterprises using these concepts are well positioned to thrive in the emerging global business arena. Enterprise Modeling with UML describes specific methods for modeling large, complex, and adaptable enterprise systems, using the Unified Modeling Language (UML) to illustrate its concepts and components.. "Enterprise Modeling with UML addresses in detail the four key elements of an enterprise model: purpose, processes, entities, and organization. Written from a business perspective rather than technical standpoint, the book covers such vital topics as: formalizing business concepts, models, and components; creating and communicating the value of an enterprise; designing, scheduling, tracking, and automating processes; describing business entities in organizational contexts; modeling hierarchical and networked organizations and coordinating such organizations to form value chains; and building adaptable enterprise systems from reusable software components.. "The accompanying CD-ROM contains Java and XML examples of many of the ideas and models presented in the book.

Booknews

A book/CD-ROM guide fuses object technology, workflow, data warehousing, and distributed system concepts into a coherent model. Describes specific methods for modeling large, complex, and adaptable enterprise systems, using the Unified Markup Language (UML) to illustrate concepts and components. Addresses in detail four key elements of an enterprise model: purpose, processes, entities, and organization. The accompanying CD-ROM contains Java and XML examples. The author has managed the design and development of information systems using object technology for some 10 years. Annotation c. Book News, Inc., Portland, OR (booknews.com)



Table of Contents:
PREFACE:

Recent years have seen the convergence of many disciplines, facilitated by extraordinary social, political, economic, and technological change. Not least has been the convergence of business, information, and natural systems thinking into the new discipline of business engineering. This book describes how complex business systems may be designed and implemented using enterprise components and supporting tools. The CD-ROM at the back of the book contains implementations of the components and tools in Java and XML.

Business Engineering

The purpose of this book is to describe a specific way in which to model enterprises. The focus is on business rather than technological aspects, with examples describing large, complex, and adaptable systems. The book is intended primarily for practitioners of the emergent discipline of business engineering, and is of use both to business people who are sensitive to the strategic potential of technology, and to technologists who understand that business requirements must drive systems design and deployment.

Recent developments in computers and communications enable global business systems that are as much between as within organizations. There are no universal standards for such business systems, and such standards are unlikely to be established in the near future. However, concepts based on the principles of contract and law that have existed for thousands of years, and new insights from the study of complex adaptive systems, may be applied to disparate enterprise applications to enable them to work as though they were part of a single global business network. This book attempts to describethemain features of such systems.

The promise of software components has been recognized for many years, based mainly on the experience of other industries. Automobiles were handmade by craftsmen from raw materials until Henry Ford assembled cars using interchangeable parts, and electronic hardware was assembled by skilled technicians from discrete components until Robert Noyce developed the integrated circuit--but information systems must still be coded line by line by talented programmers. However, several key developments now make reusable software components not only viable, but essential to any enterprise that wants to survive into the twenty-first century.

  • Ubiquitous networks connect almost every computer through standard communications protocols.
  • The CORBA, COM+ and EJB component object models make interoperable software components feasible.
  • Component design concepts, methods and notations can be shared using the Unified Modeling Language (UML).
  • Practical e-commerce standards and vocabularies using the Extensible Markup Language (XML) are under development.
  • Enterprise modeling concepts are being developed and standardized in the ISO Reference Model for Open Distributed Processing (RM-ODP).

Each of these is necessary, but not individually sufficient, to enable widespread adoption of software components for enterprise systems. Together they provide the means to revolutionize the software industry to the same extent that the motor and electronics industries have been transformed.

An enterprise and its systems are too complex to understand from a single perspective, so its model is composed of several components, each representing a different area of concern. A component defines an aspect of the model in a specific frame of reference and at a particular level of abstraction, or from the point of view of an organization role. Each role defines a domain of expertise, terminology, and conventions that influence how a role player perceives the business world. For example, what is needed of a vehicle by a driver, an accountant, a transport manager, and a maintenance engineer, differ according to their respective roles. In the past, this has caused organizations and their systems to be fragmented along functional lines, resulting in divergent purpose, discontinuous processes, and "stovepipe" applications. To prevent this from occurring, an architectural framework is required to link the components of the model into a coherent whole.

Structure of the Book

This book describes concepts primarily from the business viewpoint, and assumes that suitable software components can be created if a sufficiently precise business specification exists. The tools and components included in the CD-ROM attempt to illustrate the validity of this assumption. The UML notation and Java and XML languages are used in the design and implementation of these enterprise components.

Chapter 1 is an overview of the management and organization concepts that underpin the models that are described in subsequent chapters. Specific concepts of business purpose, process, entity, and organization are outlined to provide a context for the remainder of the book. The purpose of an organization is described in Chapter 2, with reference to strategy, planning, and contracts. It outlines relationships among data, information, knowledge, understanding, and decision making; which is also needed by an organization to learn and adapt, and to communicate its value to customers and other stakeholders.

Chapter 3 describes business processes as the means by which purpose is achieved. Process design, scheduling, enactment, tracking, improvement, and automation are covered. The concepts, tools, and components are suitable for formal process engineering and for the unstructured activities of ad hoc work. The human, mechanical, material, financial, intellectual, and other entities used and produced by processes are described in Chapter 4. Entities are modeled from various points of view to describe the different aspects of behavior required of them by processes.

Organization concepts are described in Chapter 5 with reference to their roles in adaptive systems, distributed networks, contexts for modeling, and so on. Organizations manage their processes and entities to achieve purpose, and work with others to form value networks. Certain ideas are presented to predict trends in e-commerce. The Appendix illustrates with simple examples how such concepts are used in real applications.

Conventions Used in Book

Each chapter introduces its concepts with text and diagrams that are hopefully comprehensible to business people, without the need for detailed knowledge of technology. Object orientation is introduced through business objects--models that are not necessarily implemented in software--described and diagrammed using the UML notation. In most cases, summary diagrams are used in preference to detailed diagrams to illustrate conceptual rather than detailed design. Words that appear in italic type when first used are defined in the Glossary.

The CD-ROM contains Java and XML implementations of the ideas and models described in the Appendix. Java code conventions are used where practical, but code is abbreviated, and many package statements, documentation, and comments are excluded, in order to simplify the listings Sun 1997. No attempt is made to explore the business engineering process, or to describe business and software engineering artifacts and tools. However, the CD-ROM contains copies of a tool that enables round trip engineering of Java business objects using Rational Rose. It also includes detailed HTML documentation, and a tutorial to help readers acquaint themselves with its contents.

No comments:

Post a Comment