Methodologies and Technologies for Rapid Enterprise Architecture Delivery

Google
 
Web www.ies.aust.com

| Home | Courses | Certification | Projects | Papers | Contact Us |

Home
Courses

Certification

Projects
Papers
TEN Archive

Contact Us

Search

 

 A Visible Solution Paper

Software Process Improvement

Printable PDF Version

 Visible Methodology and Tools

By Alan Perkins
Vice President, Consulting Services

Copyright © 1997, Visible Systems Corporation


Contents

Visible Helps Improve Software Development Processes


Introduction

Visible helps its clients become world-class software developers. With our assistance, clients improve processes and procedures until they are able to consistently develop quality information systems that exactly meet their customers’ information needs.

We help each client develop and document its own strategically driven, customer-focused, model- based, software development methodology (based our own Enterprise Engineering methodology and customized to meet the unique needs and corporate culture of our client). More information about our methodology and tools can be found in the Visible Solution, "Enterprise Engineering."

Visible helps clients by serving as methodology experts, as trainers, as coaches to internal staff, as skilled facilitators, and, when appropriate, as members of client project teams.

As a result of our assistance:

 Staff skills and productivity improve so that better software is developed faster.

 Standards are established and enforced.

 Metrics are identified and utilized.

 Appropriate tool sets are acquired and used.

 Software development quality becomes consistent and repeatable.

 Changing requirements are met rapidly and well.

 Maintenance costs (typically, 70 to 80 percent of software development budgets) are reduced significantly, often as much as 75%.

 Our clients achieve progressively better levels of the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM). The CMM is today’s most widely used benchmark for software process improvement.

While helping improve their software development processes, we help our clients specifically with developing an Enterprise Information Architecture encompassing data, technology, and components.

  • Components – the purpose of component-based software development, whether Object-Oriented (OO) or a more traditional approach, is to promote reusability of software in order to reduce both development and maintenance effort while providing consistency. The key to successful component-based development is component management and the key to component management is knowing what components have already been developed, knowing their characteristics, and enforcing component standards and reuse. The most effective tool for managing components is an enterprise-wide, model-based, architecture repository.
  • Data – in order to support reusable component development, the repository also includes a logical model of the enterprise data architecture that is the environment in which the components function. This is particularly true for OO components that encompass process and data. A logical enterprise data model differs from physical data models defined for each component and system in that it provides, by definition, the enterprise view of corporate information, including critical business rules. Data elements in the physical models, used as the basis for database and component development, are linked to the appropriate logical data element or elements to facilitate component analysis, design and maintenance.
  • Technology – the enterprise data architecture and the component architecture are linked to an enterprise technology architecture that describes the platforms, topologies, database management systems, operating systems, etc. on which components will execute and on which enterprise data resides. This is particularly critical for organizations using the Internet or an Intranet.

Additional information can be found in the Visible Solution, "Enterprise Information Architecture."

With our help, our clients rapidly transform traditional, time-consuming, bug-prone, maintenance-heavy, software development processes into repeatable, effective processes based upon a business-driven, model-based, customer-focused, component development methodology tailored to their environment.

The most important element of our assistance is skills and knowledge transfer to client staff. A major part of this assistance involves formal training for software development staff and occasionally for other executives, managers and employees. In addition, our consultants help with actual projects that meet client needs and their customers’ needs. While working on these projects, Visible consultants provide informal training and coaching so that internal staff learn by example and learn through experience

The scope and duration of our involvement with any client depends upon several factors including the capacity for staff to assimilate new approaches to system development and the number of concurrent projects that are undertaken.


General Approach

Of course, our clients have ultimate responsibility for improving their software development capabilities and for meeting customer needs. Nevertheless, we can help make the improvements faster and easier by serving as trainers, as coaches to internal action teams, and as skilled facilitators and members of project teams when appropriate. Our assistance helps ensure successful completion of the projects in which we are involved.

Effectively assimilating a new methodology into an enterprise typically requires culture change. The key critical success factor for culture change is management commitment. This commitment translates to allocation of sufficient resources to achieve the project's goal. Commitment from senior management, and all participants, involves a willingness to accept risks associated with any new course of action. Commitment means enthusiastic support for project goals, project teams and the new methodology with an understanding that few projects are painless. In order to be fully effective, a new methodology must be integrated with on-going business initiatives as well as with existing systems management programs. A discussion of the practices and infrastructure that are required for effectively implementing change can be found in the Visible Solution, "Change Management."

Our general approach for helping develop and assimilate a new methodology tailored to fit the particular needs and corporate culture of a client is briefly described below. This usually requires several phases. Each phase of our involvement provides the basis for determining the scope and schedule of the following phases. For example, our initial evaluation provides us with sufficient information to develop a general work plan for our entire engagement. We are also able to project the exact scope of the first (planning) phase. Completing the planning phase then provides us the basis for scheduling the second (development) phase; and so on

Evaluation

The first task in our approach is to document and evaluate current software development processes and the skills of internal staff. This enables us to establish a baseline for improvement and to develop a plan for the next phases.

Planning

Once we have ascertained the current state of software development capabilities, we help develop a plan for methodology development and assimilation. The plan includes goals, strategies and objectives for meeting requirements. During this phase we also help establish corporate standards and metrics and refine corporate strategies. Then we help develop implementation plans for every strategy.

Because resources are often limited, addressing all enterprise needs simultaneously is impractical and not even desirable. Therefore, part of the planning effort includes determining which project(s) to conduct. The following are guidelines we use making the decisions about where to start.

  • Begin with the highest priority business need first to achieve the greatest return on investment.
  • Apply the methodology beginning as high up, or broadly across, the enterprise as possible to leverage investments.
  • Assign the most knowledgeable, flexible and energetic people in the enterprise to the project.
  • Select a well-defined area with relatively stable business rules to achieve quick results, or
  • Select a poorly defined area with volatile business rules and contentious issues to show the power of the new methodology.
  • Consider a pilot project if necessary to get approval for the higher priority projects

A pilot project is one that is usually narrow in scope and does not represent a priority enterprise need. It is usually done as an evaluation of the methodology. However, there is actually a higher risk of project failure using a pilot project as the first application of your new methodology because of a lack of management commitment, minimal return on investment or early termination because of higher priorities. There are also risks due to extensive time and effort establishing:

  • An initial business model (The Visible Universal Model can help to offset this risk)
  • Information resource management capabilities
  • Enterprise Engineering expertise.

Nevertheless, any project can serve as a vehicle for skills and knowledge transfer. Along with providing highest quality training and coaching, Visible consultants furnish expert services to help ensure the success of the project. In any of the following areas we are uniquely qualified to provide immediate assistance:

  • Data Warehouse: We help determine corporate strategic information requirements and then design, develop and implement a data warehouse, a data mart at a time, to meet those requirements. Data (Information) Warehouse projects involve aspects of both data reverse engineering and client/server implementation as well as strategic and performance planning. Developing the enterprise architecture necessary for the data warehouse also can be accelerated through the use of our Visible Universal Model. More detail about our approach can be found in the Visible Solution, "Strategic Data Warehouse Development."
  • Data Reverse Engineering: We help analyze and document existing operational systems and databases to provide a complete "as is" model of current data, application and technology architectures. This helps better maintain the existing systems while new infrastructure and replacement applications are developed. Data reverse engineering also facilitates developing transforming and sanitizing programs to populate the corporate data warehouse and data marts.
  • Enterprise Client/Server: Using the results of data reverse engineering, we help design and implement a modern topology and technology infrastructure for automated systems.

Development

During this phase, we work closely with IS executives, managers and staff to document a rigorous and repeatable methodology that, when implemented, results in consistent quality software development. Once the methodology is defined, we help select tools that best support it.

Implementation

Our involvement in this phase is primarily training, training and more training -- for IS staff, project leaders (training for the trainers) and for other executives and managers as appropriate. Our training is the key vehicle for helping assimilate a new methodology. During the early phases of methodology assimilation, our training involves formal courses with broad participation. As internal staff begins actively using the new methodology on internal projects, the nature of the training becomes more informal and is focused on specific project-oriented skill sets. This training is conducted when and where it is needed. This "just-in-time" training is a hallmark of Visible.

During the first projects using the new methodology, we provide coaches for internal project teams. This is particularly useful for teams that are just beginning to use the new methodology – our involvement ensures that nothing gets off track. In addition, more experienced project teams call upon us to perform occasional quality assurance.

We pride ourselves on our ability to transfer skills and knowledge that allow clients to gain mastery of their methodology and tools. Achieving mastery generally requires a minimum of three complete development cycles.

  1. During the first cycle, one or more Visible consultants help the enterprise complete a project while training enterprise personnel assigned to an internal "Action Team." Visible consultants are actively involved in every aspect of this initial development cycle. During every task of the project, enterprise analysts, developers and potential information system users receive appropriate training that ensures they have the skills and knowledge necessary to participate effectively.
  2. In the second cycle, Visible consultants closely monitor and coach enterprise personnel as the Action Team completes the next project. We also provide additional formal and informal training, if necessary.
  3. Finally, internal enterprise personnel perform a complete development cycle with minimal assistance from Visible. Typically our assistance is in the form of progress and quality assurance reviews. By the end of this third cycle, enterprise personnel should be fully capable of using their improved processes and developing quality information system components on their own.

Staffing

The success of any project is directly related to the experience and proven capabilities of the individual professionals assigned to the engagement. Visible recognizes that the most important staffing consideration relates to the interaction between the consultants and project participants and key stakeholders. We also recognize that a strong partnership between project managers and Visible consultants will ensure that all project activities and tasks are coordinated and completed with the highest degree of quality.

In choosing the members of our service teams, we select senior personnel with a strong blend of relevant expertise, technical proficiency and facilitation and training skills. Periodically, these consultants may call upon Visible principals to provide additional technical expertise and perform quality control reviews of the work performed. During our relationship with a client, many individuals may be assigned to perform the tasks required. We continuously ensure that the quality of our service team is in no way diminished by the addition or replacement of Visible consultants.

Our "Enterprise Engineers" are excellent workshop facilitators and project team leaders knowledgeable in all aspects of our methodology and supporting products. They are also experts in both the application and communication of that knowledge.

All of our consultants adhere to the following statements of principles:

  •  We have a commitment to providing our customers with reliable and high-quality service at a reasonable cost, increasing customer satisfaction and building mutual trust and respect by serving in a competent and helpful manner.
  •  We have a commitment to a secure and productive working environment where excellence in performance is sought, expected, and rewarded.
  •  We strive for ethical conduct, mutual trust, dedication and teamwork in an atmosphere where communication is open, reliable and consistent. We treat each other with dignity, respect and sensitivity and promote the opportunity to develop individual capabilities.
  •  We have a commitment to managing and utilizing resources in an efficient, productive and economical manner that will ensure a fair return and promote continued stakeholder confidence.
  •  We have a commitment to conduct business with suppliers and other business partners in a fair, ethical, professional and timely manner, affording those qualified a reasonable opportunity to participate.
  •  We have a commitment to the communities where we live, work and serve.
  •  We have a commitment to our employees to provide professional and career growth opportunities that enhance their quality of life and self esteem.
  •  Our commitment is based upon the principle that if we take care of our employees, they will take care of our customers.

Staff Management

The most senior consultant on-site perform day to day management. Overall program management and quality assurance is the responsibility of the Visible managing principal assigned when an enterprise becomes a Visible client.

Visible follows a set of key procedures that serve as the foundation for effective project management and review. These procedures involve project planning, project scheduling, project control and project quality assurance. The following are general summaries of the procedures.

Project Planning: Project plans are completed as we define activities, assignments, and resource requirements with client staff. The plans include the project scope and required deliverables, and express in detail the specific tasks to be accomplished.

Project Scheduling: Project plans are the source for project schedules. During the development of detailed plans, time estimates are determined. These estimates are the direct result of working with a project team and will be dependent on the activity to be performed, such as facilitation, document review, software analysis, observation, interview, comparative analysis, etc. The resulting estimated effort is then translated into overall project timetables, with individual milestones and metrics.

Project Control: Project control is the primary responsibility of the project team with input from the assigned managing principal. The project team is responsible for on-going progress reporting and control.

Project Quality Assurance: Managing Principals spend the majority of their effort in review, challenge and direction of consultant activities. This critical analysis ensures that problems are thoroughly analyzed, findings are well documented, conclusions are accurately developed, recommendations are relevant to the issue addressed, and the highest-quality work is delivered to our clients. We will also provide any additional quality review determined by clients to be essential to the project.

Formal Training

While every project will involve considerable informal training, there will be occasions when formal training courses will be required. Our formal courses are usually conducted by very senior Visible consultants and are separately priced. Participants in our formal courses receive course materials, education copies of the appropriate Visible tool, and certificates indicating successful completion. The cost for the courses includes not only the four to five days of quality instruction, it also includes the cost of the materials and a week of course preparation by our instructors and administrative staff.

For those courses that include hands-on exercises, we recommend that each participant have access to a PC on which the education version of our tool has been installed. If a PC is not available for every participant, we recommend that no more than two people share a PC.

The table below is a partial list of the formal courses that are available from Visible.

Course
Enterprise Engineering Overview
Business Planning
Business Process Reengineering
Strategic Data Modeling
Advanced (Tactical/Operational) Data Modeling
Process Modeling
Systems Design/Implementation
Project & Model Management
Data Warehouse/Data Architecture Development
Structured Planning, Analysis and Design

Visible Tools

The continuing evolution and integration of system development and support tools is enabling enterprises to apply techniques quicker than before while also ensuring increased quality. Visible offers several tools that help enterprises assimilate a new system development methodology and develop quality information systems rapidly and consistently. Visible tools support every phase and level of software development (see illustration below).


There is a three-level hierarchy of software development tools. At the top of the hierarchy are architecture tools that support developing and maintaining conceptual models of an enterprise. These models are analogous to the models and drawings rendered by a building architect. They show the overall requirements, but don’t show where the pipes and wires and fixtures should be.

The mid-level tools are used to design the applications that meet the requirements modeled with the architecture tools. In the building metaphor, these tools are used to develop the blueprints for the physical structure.

The remainder of the tools in the hierarchy are those that are used to actually develop applications.

The tools at each level should be able to pass models to each other. Physical designs should be derived from and/or linked to conceptual models. "Power tools" should be able to generate applications based upon design specifications

Visible Advantageand the Visible Universal Model™ are designed specifically to help develop and maintain the conceptual models that make up an Enterprise Information Architecture. Visible Advantage also helps develop application system blueprints by providing the capability to describe physical databases for any platform and any data management system. These physical database models can be used to generate the data definition language that will create the database. The database models can also be interchanged with Visible Analyst™.

Visible Analyst is designed to help develop and maintain application system designs (blueprints). Visible Analyst provides interfaces to the most used and most popular power tools for application development. Developers can also use Visible Analyst as a power tool to generate application code.

More detailed descriptions of Visible system development tools follow:


As an important first step, our clients often acquire an enterprise-wide license for our hypermedia methodology reference product, Visible Advisorä . Visible Advisor embodies the knowledge and experience our firm has gained by helping hundreds of organizations successfully apply Business and Information Engineering for over twenty years. This knowledge-based hypermedia reference product enhances the comprehension and retention of our methodology. It fully documents the methodology so that each task and technique can be applied consistently, ensuring high quality, integrated results across projects, departments or enterprise. Because Visible’s methodology is continually advancing, client organizations receive automatic updates leveraging their methodology investment into the future.

Visible Advisor supports the improvement of software development practices by providing guidelines and examples of techniques and practices (data modeling, object-oriented design, client/server architecture, commercial product evaluation, etc.). Our hypermedia reference product helps increase and maintain the skill level of systems development professionals even when Visible consultants are no longer working with them.


In order to fully assimilate a new methodology and apply it successfully, every enterprise project team needs to use standard tool sets. We recommend that our CASE tool, Visible Advantageä , be one of those tools.

Visible Advantage is a universal, computer-based, Enterprise Engineering support tool that includes an integrated, relational encyclopedia, extensive reporting capability, and state-of-the-art modeling, charting, analysis and information system design tools. Visible Advantage has menus and forms that provide easy access to its powerful capabilities. These features, along with automatic prompts, expert "knowledge-base" and on-line "Help," make Visible Advantage very user-friendly. Visible Advantage is Windowsä -based and is available in both stand-alone and enterprise (Novellä and WindowsNTä ) versions.

Visible Advantage can be used effectively as a strategic planning tool to produce superior, multi-level strategic plans. In addition, Visible Advantage can be used to document an enterprise's performance measures and link them to appropriate elements of strategic plans. This linkage allows quick reaction to changes in environment, policy or customer requirements. More importantly, using Visible Advantage, the information requirements that support an enterprise's performance measures can also be modeled and translated into database, data warehouse, decision support system (DSS), and executive information system (EIS) designs. These designs can then be developed and implemented, assuring that an enterprise’s information systems meet its information needs.

Visible Advantage is the only CASE tool that allows multiple physical (de-normalized) database designs to be created from subsets of a single logical (fully-normalized) enterprise data model in which every element can be linked to one or more strategic, business, or system requirements.

We find that using our methodology and CASE tool facilitates communication within our clients’ organizations. Our approach and symbology become the medium for information exchange. Articulating and developing and documenting business rules and requirements throughout the various hierarchical levels of an organization becomes the means by which everyone involved comes to have the same understanding of project goals and requirements.

In order to provide consistent superior performance, and to allow for portability, we recommend both stand-alone and networked versions of Visible Advantage.


We recommend using our Visible Universal ModelÔ product to accelerate the creation of a common, cohesive Enterprise Information Architecture. Such architectures are necessary to build quality Data Warehouses, Executive Information Systems, and Decision Support Systems.

It is commonly understood that developing an enterprise architecture can take a year or more of calendar time and many thousands of hours of consultant, staff, and customer effort. By using the Visible Universal Model as the framework for building your architecture we can accelerate the process and significantly reduce the resource requirements.

The Visible Universal Model is the result of years of experience gained by Visible consultants in many diverse businesses. Our Visible Universal Model contains common object classes that support multiple activities; rather than activity specific object classes often developed over and over again in different guises. Recognition of repeating business patterns during the development of business models over the years has permitted Visible to establish these object classes. In addition, the model provides the basic data relationships that often are not stated during the "system requirements gathering" phase of many projects.

The organization of the Visible Universal Model into "universal" business objects supports cross-functional, cross-organizational, object-oriented software development. Each business object can be quickly tailored to your specific requirements and then implemented as a new information system on an accelerated basis. We will help your staff modify the business objects to reflect your culture and information needs.


In order to design and develop applications based upon the physical database designs created with Visible Advantage, we also recommend that clients license Visible AnalystÔ . Visible Analyst is the best value, multi-user, application development tool in the middle of the market. Visible Analyst is the only application development tool that automates data, process, function, state-event and object modeling (Rumbaugh OMT class notations) in one integrated product through a central repository. Visible Analyst is used to create data flow diagrams, process models, structure charts and object models that enterprise project teams use for application analysis and design.

Visible Analyst supports multiple methodologies through support of industry standard techniques. Because Visible Analyst automates the techniques being used today such as data and process modeling while also automating the techniques of tomorrow such as object modeling, customers gain a path from their existing environment and skills to the future.

Visible Analyst enables true enterprise application engineering by storing and documenting in a central repository data, processes, and objects that can be shared for real-time, multi-user application development throughout the organization. Enterprise information is "downloaded" to "satellite" projects, so that developers can share metadata (i.e., data models, class models, and even process models) from the enterprise model. Then, the satellite projects can be "uploaded" and merged back into the enterprise project. Unlike competitive products, for which a developer checks out a piece of the model that can be used by only one developer, Visible Analyst enables concurrent access of metadata objects by multiple developers.

Visible Analyst is especially important to IS managers who must ensure the successful integration of complex enterprise applications being developed at different sites for different users. With Visible Analyst, they can evolve project by project to a single knowledge-based repository that will eventually represent everything in their business. At the same time, they have a top-level planning, analysis, and design tool that controls the data and object definitions to ensure consistency among applications. And, because Visible Analyst supports repeatable processes, it provides the infrastructure for true object-oriented development, which results in higher-quality business applications, more meaningful data warehouses, and effective multi-tier client/server systems.

Visible Analyst is a multi-user CASE tool for application and database development. Visible Analyst’s true strength lies in its integrated and multi-user repository. All objects in a project are automatically populated, stored, catalogued, and cross-referenced against other related repository objects. Visible Analyst utilizes a variety of powerful relational databases to manage the repository, including Sybase, Oracle, Microsoft, Gupta, and bTrieve. Visible Analyst can both generate to, and reverse engineer from, virtually any ANSI 89 or 92 SQL database as well as for the AS/400 (via DDS).

Visible Analyst provides a high level of integration with third party development tools. Supported products include PowerBuilder, SQLWindows, Uniface, Unify Vision, and Visual Basic. It can also generate SQL, COBOL and C code.

Visible Analyst provides a unique combination of functionality, multi-user capabilities, repository integration, and ease of use. Visible Analyst integrates Process, Data, and Objects as the locus point for good system design. It supports a variety of development approaches and contains comprehensive model types and diagnostics.


Summary

Visible consultants help organizations develop and assimilate their own system development methodology through formal training and through informal, just-in-time, skill and knowledge transfer while participating in mission-critical projects. When appropriate, every project team receives training and coaching on the effective use of Visible’s suite of support tools.

For every project in which we are involved, Visible consultants provide expert opinion, clear direction and guidance to internal staff to ensure on-time, on-budget completion. Visible's approach to team guidance centers around the development of a partnership with the organizations with which we work. We have a vested interest in the success of our partners. Project teams are structured as partnerships of consultants and internal staff, so that the staff acquires the techniques of the methodology while the project goals are being accomplished.

Visible’s Enterprise Engineering techniques have been developed over years of practical experience through their application with client projects worldwide. As Enterprise Engineering has been applied across a broad range of projects, the techniques have become even richer and more rigorous. The methodology has gained wide acceptance because of its comprehensiveness and business focus. Enterprise Engineering yields not only quality systems, but also quality infrastructure.

Enterprise Engineering is significantly more effective than traditional methodologies even when it is applied on a single project. However, our methodology is more than just one business activity. It is a continuous function with on-going benefits to the enterprise if it is used appropriately. As an enterprise applies its version of Enterprise Engineering on more and more projects and across a broader scope, the benefits increase exponentially. Comprehensively applying the methodology’s rigorous and integrated techniques ultimately lead your processes to become equally as rigorous and well integrated.

Visible is uniquely qualified to help organizations develop and assimilate a rigorous and repeatable methodology for information system development. We have the experience and the skills to ensure success in increasing levels of customer satisfaction while continually improving system development infrastructure.

Back to Contents.


More Information

For more information concerning this Visible Solution, please contact:

North America

Visible Systems Corporation
201 Spring Street Lexington MA 02421 USA
Phone: +1-781-778-0200 · Fax  +1-781-778-0208

Web Site:
http://www.visible.com
Email: mcesino@visible.com

Asia-Pacific

Clive Finkelstein, Managing Director
Information Engineering Services Pty Ltd
PO Box 246, Hillarys Perth WA 6923 Australia
Phone: +61-8-9402-8300 Fax: +61-8-9402-8322

Web Site: http://www.ies.aust.com/
Email:
cfink@ies.aust.com

 

 

| Home | Courses | Certification | Projects | Papers | TEN Archive | Contact Us | [Search |

(c) Copyright 1995-2015 Clive Finkelstein. All Rights Reserved.