Jump to content

Data engineering

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by ArguMentor (talk | contribs) at 20:55, 4 October 2018 (History). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Information technology engineering (ITE) or information engineering methodology (IEM) or sometimes just information engineering (IE), is a software engineering approach to designing and developing information systems, it used to be known most commonly as information engineering.

Overview

Information technology engineering involves an architectural approach for planning, analyzing, designing, and implementing applications. It has been defined by Steven M Davis as: "An integrated and evolutionary set of tasks and techniques that enhance business communication throughout an enterprise enabling it to develop people, procedures and systems to achieve its vision".[citation needed]

Information technology engineering has many purposes, including organization planning, business re-engineering, application development, information systems planning and systems re-engineering.

History

Information technology engineering used to be known more commonly as information engineering; this changed in the early 21st century, and information engineering took on a new meaning.

Information technology engineering has a somewhat chequered history that follows two very distinct threads. It originated in Australia between 1976 and 1980, and appears first in the literature in a series of Six InDepth articles by the same name published by US Computerworld in May - June 1981.[1] Information technology engineering first provided data analysis and database design techniques that could be used by database administrators (DBAs) and by systems analysts to develop database designs and systems based upon an understanding of the operational processing needs of organizations for the 1980s.

Clive Finkelstein is acknowledged as the "Father" of information technology engineering,[2][3] having developed its concepts from 1976 to 1980 based on original work carried out by him to bridge from strategic business planning to information systems. He wrote the first publication on information technology engineering: a series of six in depth articles of the same name published by US Computerworld in May - June 1981. He also co-authored with James Martin the influential Savant Institute Report titled: "Information Engineering", published in Nov 1981. The Finkelstein thread evolved from 1976 as the business driven variant of ITE. The Martin thread evolved into the data processing-driven (DP) variant of ITE. From 1983 till 1986 ITE evolved further into a stronger business-driven variant of ITE, which was intended to address a rapidly changing business environment. The then technical director, Charles M. Richter, from 1983 to 1987, guided by Clive Finkelstein, played a significant role by revamping the ITE methodology as well as helping to design the ITE software product (user-data) which helped automate the ITE methodology, opening the way to next generation Information Architecture.

The Martin thread was database design-driven from the outset and from 1983 was focused on the possibility of automating the development process through the provision of techniques for business description that could be used to populate a data dictionary or encyclopedia that could in turn be used as source material for code generation. The Martin methodology provided a foundation for the CASE (computer-aided software engineering) tool industry. Martin himself had significant stakes in at least four CASE tool vendors - InTech (Excelerator), Higher Order Software, KnowledgeWare, originally Database Design Inc, Information Engineering Workbench and James Martin Associates, originally DMW and now Headstrong (the original designers of the Texas Instruments' CA Gen and the principal developers of the methodology).

At the end of the 1980s and early 1990s the Martin thread incorporated rapid application development (RAD) and business process reengineering (BPR) and soon after also entered the object oriented field. Over this same period the Finkelstein thread evolved further into Enterprise Architecture (EA) and his business-driven ITE methods evolved into Enterprise Engineering for the rapid delivery of EA. This is described in his books: "Enterprise Architecture for Integration: Rapid Delivery Methods and Technologies". first edition by Clive Finkelstein (2006) in hardcover. The second edition (2011) is in PDF and as an iBook on the Apple iPad and ebook on the Amazon Kindle.

Information technology engineering topics

ITE variants

There are two variants of information technology engineering. These are called the DP-driven variant and the business-driven variant.

  • DP-driven: The DP-driven variant of information technology engineering was designed to enable IS Departments to develop information systems that satisfied the information needs of the 1980s - which was largely a DP-driven development environment. Most of the CASE tools available today support this DP-driven variant of ITE.
  • Business-driven: ITE was extended into strategic business planning for the business-driven variant of information technology engineering. This variant was designed for rapid change in the client/server, object-oriented environment of the business-driven 1990's.

Business-driven ITE is documented in the later books by Clive Finkelstein.

DP-driven Variant of ITE

  • Information Strategy Planning: The fundamental objective of Information Strategy Planning (ISP) is to develop a plan for implementing business systems to support business needs. The existing systems landscape is compared to the ambitions expressed in the current business plan and a number of development projects for new or enhanced systems are identified.
  • Outline Business Area Analysis: For each development project, business analysts define the business processes and data potentially required in the new system. These are modelled using process decomposition diagrams, process dependency diagrams and entity-relationship models.
  • Detailed Business Area Analysis: The purpose of a DBAA phase is to provide detailed models as a solid basis for system design. Processes are decomposed to elementary business processes and the business logic of the processes is expressed in data actions against the fully normalised data model. In this way, the process and data models are tested against one another before construction.
  • Business System Design: The purpose of a Business System Design project is to specify all aspects of a system that are relevant to its users, in preparation for the technical design, construction, and installation of one or more closely related databases and systems. The elementary processes are designed into procedures that can be executed by users. Unambiguous and consistent specifications with the volume of detail necessary to make planning and technical design decisions are prepared.
  • Technical Design: A Technical Design project prepares an implementation area for construction and installation. The key tasks are structured to produce a system and database that meet the user's acceptance criteria and are technically sound.
  • Construction: The objective of the Construction stage is to produce a system, as defined in the technical specification, on time and within budget. The system should be of an acceptable quality, and contain all necessary operating and user procedures. The task is complete when the acceptance criteria for the business system are met.
  • Transition: Transition is defined as the period during which newly developed procedures gradually replace or are interfaced with existing procedures. The execution of a Transition project obviously demands a thorough understanding of both the system to be installed and the systems to be replaced.

Business-driven Variant of ITE for Rapid Delivery

  • Strategy Analysis: This is a rapid delivery method for senior managers and business unit managers for refinement of existing strategic business plans, or development of new strategic business plans if none exist yet.
  • Strategic Modeling: This uses a facilitated modeling session with senior business managers who review the strategic business plans to develop a strategic model. This is an enterprise data model where many-to-many associations have been decomposed to identify priority business activities and processes identified by management. This uses entity dependency analysis to automatically derive project plans and project maps from the strategic model. It results in reusable processes for rapid delivery into production as integrated databases and reusable systems.
  • Tactical and Operational Modeling: This uses the same approach as for strategic modeling, but focuses on tactical business units - expanding into tactical attribute detail and later operational attribute detail for physical database generation and installation.
  • Activity Modeling: Activity models, based on IDEF0 and activity-based costing, are used to document priority business activities for rapid delivery.
  • Process Modeling: Business Process Modeling Notation (BPMN) is used, supported by modeling tools, to define process model diagrams in BPMN of priority activities for rapid delivery into production.
  • Code Generation: BPMN process model diagrams are used to generate XML-based code in Business Process Execution Language (BPEL) for execution.

ITE techniques

Some techniques that are used during an ITE project are:

  • Entity analysis: identifies all the things that the enterprise may want to hold data about. The analysis classifies all of the things into different entity types, revealing how they relate to each other. Which is being described in the entity model.
  • Function analysis and process dependency: takes a function (a major business activity) of the enterprise and breaks it down into elementary business processes. From this, two diagrams are prepared: the process decomposition diagram, which shows the breakdown of a business function, and the process dependency diagram, which shows the interdependencies of business processes.
  • Process logic analysis: describes the sequences of actions carried out by a business process and shows which data are used by each action.
  • Entity type lifecycle analysis: describes the significant business changes to entities and confirm that processes have been modelled to effect these changes
  • Matrix cross-checking: creates cross-references between data objects and processes to verify that they are necessary and complete.
  • Normalization: provides a formal means of confirming the correctness of the entity model.
  • Cluster analysis: helps define the scope of design areas for proposed business systems.
  • Data flow and data analysis: makes a comparison possible between the business area models and the systems currently supporting this area, these current systems are analyzed using data flow and data analysis techniques.

Software tools

There are several tools supporting information technology engineering

  • CA Gen from Texas Instruments Software. This was subsequently sold to Sterling Software and then to Computer Associates. It still exists, in an evolved form within the Advantage suite. As of 2006 referred to as ALL:Fusion Gen, capable of generating J2EE and JAVA web applications in addition to legacy client/server and mainframe platforms.
  • Metastorm's ProVision product provides support for many types of modeling techniques using a repository-based tool.
  • Microsoft Visio provides diagramming support for some diagrammatic techniques, such as ER modeling using Crow's foot notation, data flow diagrammng, process modeling and swimlane diagrams.

Other tools include Bachman's Data Analyst, Excelerator, and more. See computer-aided software engineering.

Further reading

  • John Hares (1992). "Information engineering for the Advanced Practitioner", Wiley.
  • Clive Finkelstein (1989). An Introduction to Information engineering : From Strategic Planning to Information Systems. Sydney: Addison-Wesley.
  • Clive Finkelstein (1992). "Information Engineering: Strategic Systems Development". Sydney: Addison-Wesley.
  • Ian Macdonald (1986). "Information engineering". in: Information Systems Design Methodologies. T.W. Olle et al. (ed.). North-Holland.
  • Ian Macdonald (1988). "Automating the Information engineering methodology with the Information engineering Facility". In: Computerized Assistance during the Information Systems Life Cycle. T.W. Olle et al. (ed.). North-Holland.
  • James Martin and Clive Finkelstein. (1981). Information engineering. Technical Report (2 volumes), Savant Institute, Carnforth, Lancs, UK.
  • James Martin (1989). Information engineering. (3 volumes), Prentice-Hall Inc.
  • Clive Finkelstein (2006) "Enterprise Architecture for Integration: Rapid Delivery Methods and Technologies". First Edition, Artech House, Norwood MA in hardcover.
  • Clive Finkelstein (2011) "Enterprise Architecture for Integration: Rapid Delivery Methods and Technologies". Second Edition in PDF at www.ies.aust.com and as an ibook on the Apple iPad and ebook on the Amazon Kindle.

See also

References

  1. ^ "Information engineering," part 3, part 4, part 5, Part 6" by Clive Finkelstein. In Computerworld, In depths, appendix. May 25 - June 15, 1981.
  2. ^ Christopher Allen, Simon Chatwin, Catherine Creary (2003). Introduction to Relational Databases and SQL Programming.
  3. ^ Terry Halpin, Tony Morgan (2010). Information Modeling and Relational Databases. p. 343