Home > Store

Visual Modeling Technique: Object Technology Using Visual Programming

Register your product to gain access to bonus material or receive a coupon.

Visual Modeling Technique: Object Technology Using Visual Programming

Book

  • Sorry, this book is no longer in print.
Not for Sale

Description

  • Copyright 1997
  • Dimensions: 7-3/8" x 9-1/4"
  • Edition: 1st
  • Book
  • ISBN-10: 0-8053-2574-3
  • ISBN-13: 978-0-8053-2574-4

This ground-breaking book describes the Visual Modelling Technique (VMT), a comprehensive methodology that integrates visual programming into the object-oriented application development life cycle. VMT expands the life cycle significantly by adding to it the re-engineering of corporate business processes; in addition, the methodology captures the enterprise's business rules and uses them to augment the use-case construct in a very powerful way.

The book shows how the visual programming paradigm, when supported by effective tools, becomes central to the productivity of object developers. The authors explain in a clear and systematic way how to use visual programming to efficiently perform real-world modelling and application construction from reusable software parts.

VMT is a proven methodology that is used by many corporations in North America, Europe, Latin America, and Asia. The IBM Software Solutions Laboratories have selected VMT as the methodology of choice for the VisualAge for Smalltalk and C++ Developer Certification programs.

Highlights of Visual Modelling Technique:

  • Explains how to build object models by drawing knowledge from use-cases, domain descriptions, and problem statements.

  • Describes how to build both model and view components with visual programming.

  • Examines the design of distributed object applications with object request brokers and distributed languages.

  • Illustrates how to chart business processes and shows how to build enterprise architectures based on processes and objects.

  • Discusses the role of business rules in capturing requirements.

  • Presents the management issues to consider when transitioning to object technology.

  • Includes a real-life case study that is developed throughout the book and highlights all aspects of the VMT methodology.



0805325743B04062001

Sample Content

Table of Contents

(Each chapter concludes with "Summary".)

I. VISUAL MODELING TECHNIQUE.

1. Introduction: Why VMT?

Contents of an Object Methodology.

Visual Programming.

Application Development Phases.

The Application Development Process.

Process Models and Methodologies.

Object Methodologies.

VMT: A Complementary Approach.

Summary.

2. The VMT Analysis Phase.

Modelling.

Object-Oriented Analysis.

Requirements Modelling.

Analysis Prototyping.

Building an Object Model.

The Model Dictionary.

Analyzing Object Responsibilities.

Dynamic Modeling.

Validating and Refining Analysis Models.

Summary.

3. Case Study: The Foreign Currency Exchange System - Analysis Phase.

Problem Statement.

Project Iterations.

Analysis.

Object Modelling.

Model Dictionary.

Initial CRC Cards.

Dynamic Model.

Summary.

4. Object Persistence Using Relational Databases.

Persistent Objects.

Basic Concepts of Relational Databases.

Mapping Objects to Relational Schemas.

Object Identifiers.

Mapping Object Classes to Tables.

Mapping Associations and Aggregations to Tables.

Mapping Generalizations to Tables.

Performance Considerations.

Summary.

5. The VMT Design Phase.

System Design.

Object Design.

Object Persistence Design.

Database Access Design.

Summary.

6. Implementation with VMT: From Model to Code.

The VisualAge Development Environment.

The Mapping Process.

Programming by Contract: Building Software from Parts.

Developing a GUI with Visual Components.

Summary.

7. Case Study: Designing the Foreign Currency Exchange System.

System Design.

Object Design.

Design Decisions and Implementation Strategies.

Designing for Object Persistence Using a Relational Database.

Refining the Object Model Using Design Patterns.

Summary.

II. VMT AND DISTRIBUTED OBJECTS.

8. Object Technology and Distributed Systems.

Distributed Systems.

Approaches to Building Distributed Systems.

Challenges in Building Distributed Systems.

Data and Function Placement.

Distributed Object Computing.

Distributed Object Applications.

Summary.

9. Designing Distributed Object Applications with VMT.

System Design.

Object Design.

Object Persistence Design.

Summary.

10. Case Study: Extending the FCE System with Distributed Objects.

Distributed FCE Application Scenarios.

Design Considerations.

Application Development Iterations.

Case Study: The FCE Application in a Distributed Object Environment.

Design.

Designing the Customer Management Application Using DSOM.

Designing the Currency Management Application Using the VisualAge Distributed Feature.

Summary.

III. MANAGEMENT ASPECTS.

11. Managing Object-Oriented Development Projects.

VMT and Development Process Models.

Prototyping.

Rapid Application Development.

Supportive Development Environments.

Development Approaches for Object-Oriented Projects.

Staffing and Training.

Estimating Project Cost and Duration.

The Transition to Object-Oriented Technology.

Summary.

12. Testing and Documentation.

Testing in Object-Oriented Development.

Documentation.

Summary.

IV. BUSINESS PROCESS REENGINEERING AND OBJECT TECHNOLOGY.

13. Business Process Reengineering.

The LOVEM Approach for Process Mapping.

Line of Visibility Charts.

The Family of Line of Visibility Charts.

Processes.

Process Path Management.

Levels of Complexity and Levels of Detail.

Comparison of Logical and Physical Representations.

Views of a Business.

Summary.

14. Integrating Business Process Reengineering with Object-Oriented Modelling.

Object-Oriented Modeling in the BPR Cycle.

An Integrated Approach Using LOVEM and VMT.

Use Cases and JLOVCs.

Business Engineering Enabled by Process Visualization.

Forward Reengineering Methods with PLOVCs, JLOVCs, and Use Cases.

Identifying Business Objects.

Enterprise Modeling.

Industry Architectures.

Components of Industry and Implementation Models.

Charting Industry Architectures Using Objects.

Further Trends in Integration.

Summary.

15. Augmenting VMT Requirements Modeling with Business Rules.

Requirements.

Business Rules in Reengineering.

Visual Modeling of Requirements with Business Rules.

Business Rules and Reuse.

Summary.

16. Conclusion: Trends And Perspectives.
Appendix A. FCE Specifications.
Appendix B. FCE Implementation Details.
Appendix C. The Common Object Request Broker Architecture (CORBA).
Appendix D. The System Object Model (SOM).
Appendix E. IBM Distributed Smalltalk Technology.
Bibliography.
Index. 0805325743T04062001

Preface

"If I have seen further than other men, it is by standing on the shoulders of giants."

- Sir Isaac Newton

The IBM Almaden Research Center, south of San Jose, CA, is in an area of great natural beauty. Considering the process of Object Technology development in this setting brings to mind a simple analogy. Taming the West was an incremental process. First, the pioneers opened trails into the wilderness and marked the way to go. They mapped the mountain peaks and the waterholes, the peaceful meadows and the treacherous quicksands. And once the territory was open, safe, and growing, immigrants came from everywhere, attracted by the new opportunities.

Now, everyone wants to live in the new territory. New vehicles cruise the region faster, but the pioneer trails are narrow; some must be expanded, some combined, and some replaced with streets with pavements, sidewalks, and stores, so the dwellers can travel efficiently as well as shop. It is time for highway builders as well as for masons and plumbers to go to work resolving some of these problems.

Object-oriented technology and its applications went through a process very much like that new territory. First came the programmers, the language definers, and the compiler builders for Simula, Smalltalk, C++, Clos, Eiffel - too many to name. Hackers played with messages, discussed encapsulation, and dreamed about "software integrated circuits." Everyone agreed that the new approach offered a lot of potential to enforce well-known principles of software engineering that most were too lazy to apply, but nobody was sure how to realize the potential in a systematic way.

The designers then showed how object-oriented code had to be planned and built. Approaches such as those described in the first Grady Booch book, Object-Oriented Analysis and Design with Applications, the CRC technique, and Responsibility-Driven Design, became popular. In the meantime, the theorists established a framework of respectability for object technology through discussion of issues such as the implications of inheritance and polymorphism, relationships with formal language theory, and the differences between classes and types.

The last to arrive on the scene were the analysts, who reminded everyone that, in the end, it was all about solving real-world business problems. Object modelling transformed approaches into methodologies and gave object technology the respectability it needed to attract the MIS crowd. Starting from data modelling, the new methods evolved by including the dynamic aspects of the real world that data modelling ignored. OMT, OOSE, and the Booch Method provided a pathway between business requirements and the resulting application code. Meanwhile, theory and design evolved accordingly, with Design by Contract and Syntropy leading the way toward formality in object-oriented design.

All these efforts notwithstanding, there is a long way to go from attraction to acceptance, and an even longer one from acceptance to embracing. Languages and methodologies are not enough; the corporate world demands productivity, which translated to application development means that tools are needed to support every aspect of development. For instance, modelling can be successful only if the proper modelling tool is used, especially when iterations are encouraged. Also, application development from components entails the use of tools to construct, store, browse, retrieve, and assemble components with others from a components repository.

In 1991, when IBM started to build what is now known as IBM VisualAge for Smalltalk, it became obvious to the authors that existing object-oriented methodologies were inadequate to harness the power of visual programming. The dominant view at the time was that visual programming was to be used mainly for GUI building. We saw an opportunity to enhance the productivity of the development of the whole application, but we also saw a need to integrate visual development into the application development life cycle, from requirements to code. To that end we developed Visual Modelling Technique (VMT), the methodology we describe in this book.

When we developed VMT, we decided not to reinvent the wheel but to take from existing methodologies the elements proven to be successful, combine them to meet our needs, and add components to address the specific needs of visual programming. We were strongly influenced by a memorable panel session at OOPSLA 93 called "Shootout at the OO Corral," where the pioneers in object-oriented methodologies explained clearly the weak and strong points of their methodologies, and what each would like to adopt from the work of their fellows and why. We decided to build into VMT the enhancements that were pointed out at that session.

VMT covers a larger span in the application development life cycle than most methodologies. The statement that "object technology models the real world" was immediately challenged by the question "which real world?" We adhered to Hammer's thoughts about business process reengineering in "Reengineering the Corporation," Ham 95 but we needed a visual way to express the processes of an enterprise and the changes the reengineering activity would produce. We postulated that the real world we want to model resides in the reengineered enterprise, described through its processes rather than through its organization; the VMT methodology should thus be applied to support a process architecture that adds value to the corporation and enhances customer satisfaction.

Fortunately, the Line of Visibility Enterprise Modelling (LoVEM) that IBM Canada (reengineering consulting practice) has developed provides an excellent reengineering approach based on graphical descriptions of the enterprise processes as they are today ("as-is" processes), and as they will be after the reengineering effort ("to-be" processes). This graphical description is supported by a flexible tool developed by IBM Boeblingen Lab called Business Process Modeler (BPM), which makes process charting easy and allowed us to integrate business process reengineering with object application development to build automation support for the reengineered ("to-be") real world.

Once the relationships were established among the processes and the objects used by the supporting automation systems, we were able to define and build a blueprint for creating very rich and descriptive enterprise architectures based on the enterprise processes and objects. This architecture can be customized to a particular corporation or abstracted to an industry level, describing the fundamental processes and objects of a given industry.

The work on business process reengineering led us to the need for capturing the business rules that govern both the essence and the details of a business. To that end, we augmented the use case paradigm by splitting each use case into its component input and output transactions, and making explicit the business rules that govern the outcome of each transaction. This powerful approach would have been very difficult to handle in any practical way without the support of a good development tool. We found an excellent visual tool for handling business requirements, including transactions and rules, at the IBM Santa Teresa Laboratory in San Jose, California. This tool facilitates our use case decomposition and augmenting approach.

This book is directed to people who are already familiar with object-oriented technology and want to put the technology in place so it can live up to its promises. The content of this book will appeal to MIS managers, object architects, modelers, designers, programmers, and anyone who is involved in developing real-life object-oriented applications. It will also be useful to business process engineers and consultants involved in business process modelling and automation.

How This Book Is Organized

Part 1 of the book describes the VMT methodology and its application. Chapter 1 sets the stage for the description of the VMT methodology. It discusses the contents of an object methodology and the importance of modern visual programming tools in the application development process. The chapter also describes the object-oriented application development process and the methodologies that had an influence in the building of VMT. Chapter 2 introduces the VMT methodology and describes the way it approaches object-oriented analysis. Chapter 3 demonstrates the application of VMT analysis techniques to a case study based on a real-life foreign currency exchange (FCE) application.

Chapter 4 introduces the use of relational databases to store persistent objects. Chapter 5 looks at the VMT design phase. Chapter 6 describes the transition from the model step by step and shows how designing by contract can be used to leverage object-oriented visual programming. Chapter 7 applies the design techniques to the FCE application modeled in Chapter 4.

Part 2 of the book extends VMT to the design of distributed object-oriented systems. Chapter 8 introduces the subject. Chapter 9 explains designing distributed object applications with VMT. Chapter 10 returns to the case study of Chapter 4, looking at distributed objects.

Part 3 of the book examines the project management aspects of using VMT in developing applications to meet business needs resulting from reengineering. Chapter 11 discusses the various project management issues, such as staffing and training, project estimation, etc. Chapter 12 discusses testing and documentation considerations.

Part 4 of the book discusses the integration of VMT with business processing engineering. Chapter 13 describes business processing engineering and the Line of Visibility Enterprise Modelling (LOVEM) method. Chapter 14 discusses integrating VMT with business process reengineering based on LOVEM. Chapter 15 discusses augmenting VMT requirements modelling with business rules and transactions. Chapter 16 provides perspectives in object technology development trends and concluding remarks.

Acknowledgments

The VMT methodology was created in 1993 and has evolved greatly since. Its creation and current shape were influenced by our exchange of ideas with many individuals, to whom we are grateful.

We thank the many specialists who came from IBM locations worldwide to ITSO San Jose, California to work on the projects that documented, tested, and enhanced aspects of the methodology - their contributions to the IBM redbooks: GG24-4227, SG24-4390, SG24-4521 have been valuable to our task in developing VMT and this book.

Paul Webb of the IBM Canada LoVEM Business Process Reengineering practice helped us to understand the nature of business processes and discussed with us their relationship to the object technology concepts, allowing us to integrate in both a clear and logical way. Dr. Paul Luker, Head of the Computer Science Department at De Montfort University in Leicester, UK, encouraged us to continue our work and provided us with academic feedback about the validity and correctness of our approaches. Dr. Carlos Goti, creator of IBM VisualAge Requirements Tool, discussed the world of business rules with us, provided us with beta versions of the tool, helped us in developing the enhanced VMT requirement modelling approach by augmenting the use cases with business rules and transactions, and implemented some of our requests in the VisualAge Requirements Tool.

No methodology is really sound unless it has been used productively in real business environments. We are thankful to the CIOs, development managers, and developers in businesses worldwide, who have used this methodology in their projects and given us highly useful feedback. In IBM, Skip McGaughey championed our VMT initiative. IBM Software Solutions has chosen VMT for the IBM VisualAge Developer Certification program in Smalltalk, C++, and object-oriented COBOL, and we are grateful to Michael Ha and Oma Sewhdat for their support of that choice, to Marc Carrel (IBM ITSO-San Jose) and Peter Jakab (IBM Toronto Lab) who used VMT in C++ environments, and Joe DeCarlo (IBM ITSO-San Jose) who ran projects using VMT with object-oriented COBOL.

This book would not have been possible without the support of Jens Tiedemann, IBM ITSO-San Jose Center Manager, who provided us with the needed resources. Barbara Isa, at the IBM Santa Teresa Lab, gave us invaluable support to overcome the unavoidable legal and contractual hurdles involved in publishing.Books are written by the authors, but are made legible by editors. We want to recognize Maggie Cutler, ITSO-San Jose Center editor, and Barbara Conway, copyeditor, for helping us to express our thoughts in a clear and concise style. And thanks to Carter Shanklin, Senior Acquisitions Editor and Teri Hyde, Senior Production Editor, and the rest of the Addison-Wesley staff for their key roles in the success of this book.

California, April, 1996
D. S. T
F. W. F
A. S.



0805325743P04062001

Updates

Submit Errata

More Information

InformIT Promotional Mailings & Special Offers

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.

Overview


Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.

This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

Collection and Use of Information


To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:

Questions and Inquiries

For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.

Online Store

For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.

Surveys

Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.

Contests and Drawings

Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.

Newsletters

If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.

Service Announcements

On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.

Customer Service

We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.

Other Collection and Use of Information


Application and System Logs

Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.

Web Analytics

Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.

Cookies and Related Technologies

This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.

Do Not Track

This site currently does not respond to Do Not Track signals.

Security


Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.

Children


This site is not directed to children under the age of 13.

Marketing


Pearson may send or direct marketing communications to users, provided that

  • Pearson will not use personal information collected or processed as a K-12 school service provider for the purpose of directed or targeted advertising.
  • Such marketing is consistent with applicable law and Pearson's legal obligations.
  • Pearson will not knowingly direct or send marketing communications to an individual who has expressed a preference not to receive marketing.
  • Where required by applicable law, express or implied consent to marketing exists and has not been withdrawn.

Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.

Correcting/Updating Personal Information


If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.

Choice/Opt-out


Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.

Sale of Personal Information


Pearson does not rent or sell personal information in exchange for any payment of money.

While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.

Supplemental Privacy Statement for California Residents


California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.

Sharing and Disclosure


Pearson may disclose personal information, as follows:

  • As required by law.
  • With the consent of the individual (or their parent, if the individual is a minor)
  • In response to a subpoena, court order or legal process, to the extent permitted or required by law
  • To protect the security and safety of individuals, data, assets and systems, consistent with applicable law
  • In connection the sale, joint venture or other transfer of some or all of its company or assets, subject to the provisions of this Privacy Notice
  • To investigate or address actual or suspected fraud or other illegal activities
  • To exercise its legal rights, including enforcement of the Terms of Use for this site or another contract
  • To affiliated Pearson companies and other companies and organizations who perform work for Pearson and are obligated to protect the privacy of personal information consistent with this Privacy Notice
  • To a school, organization, company or government agency, where Pearson collects or processes the personal information in a school setting or on behalf of such organization, company or government agency.

Links


This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.

Requests and Contact


Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.

Changes to this Privacy Notice


We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.

Last Update: November 17, 2020