This article needs additional citations for verification. (July 2015)
Information engineering (IE), also known as information technology engineering (ITE), information engineering methodology (IEM) or data engineering, is a software engineering approach to designing and developing information systems.
A data engineer is someone who creates big data ETL pipelines, and makes it possible to take huge amounts of data and translate it into insights. They are focused on the production readiness of data and things like formats, resilience, scaling, and security. Data engineers usually hail from a software engineering background and are proficient in programming languages like Java, Python and Scala.
Information technology engineering (ITE) involves an architectural approach for planning, analyzing, designing, and implementing applications. ITE 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".
ITE has many purposes, including organization planning, business re-engineering, application development, information systems planning, and systems re-engineering. ITE can be used to analyze, design, and implement data structures in an enterprise. The goal of ITE is to allow for a business to improve the way it manages its resources such as capital, people, and information systems to achieve its business goals. The importance of ITE and its concepts have increased rapidly with the growth of current technology. ITE assumes that logical data representations are stable; which is the opposite to the processes that use the data, which constantly change. This allows for the logical data model, which reflects an organization's ideas, to be the basis for systems development.
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 checkered 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. 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, 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.
As businesses began to progress along in society, so did the need for information engineering practices to be implemented in a widespread manner to increase productivity, efficiency, and profits among businesses. Everything a business does can almost always be assisted by technology in some manner. This is where the methodology of information engineering becomes important. Businesses will always have problems to solve and the development of technology assisted by the information engineering methodology has become one of the best things to happen in the business world. Problems that manually had to be done by hand can now be done by computer, such as payroll and benefits for a company. Using information engineering to solve problems can save time, money, and reduce the possibility of human error.
The phases of information engineering
- Strategic business planning: Business objectives that executives set for what's to come are characterized in key business plans, with their more noteworthy definition in tactical business plans and implementation in operational business plans. Most businesses today recognize the fundamental need to grow a business plan that follows this strategy. It is often difficult to implement these plans because of the lack of transparency at the tactical and operational degrees of organizations. This kind of planning requires feedback to allow for early correction of problems that are due to miscommunication and misinterpretation of their business plan.
- Data modelling: The ideal basis for data models is to be based on directions made by management for the future of the business. These directions are defined within business plans. Data models can provide a clear insight into future business needs, when business plans become unavailable or out of date. Data models can be developed from any statement of a policy, goal, objective, or strategy for a business and its needs. Data that has been consistently updated over time can be useful within a business to see how things have changed and how the needs of the business are different going forward.
- Process modelling: Process modelling is similar to data modelling in the sense that it is taking a broad look at the processes a business has required outlined by its business plan. Using an information engineering approach, processes can be linked to data and needs, to get a better sense of why the process exists and how it must be carried out. This allows for a business to get an overview of what it is currently doing, why it is doing the things it is doing, the importance of each thing, and how these things are being done.
- Systems design and implementation: The fourth and last phase of information engineering is systems design and implementation. After setting a business plan, data models are used to create process models, which are then used to design systems so they are ready for implementation. This phase is the finishing phase. The systems design and implementation phase takes what has been created by the previous three phases of information engineering and wraps it all into one final product, so that it is available to be implemented. This is where businesses can see the culmination of their information engineering phases and efforts. 
Information technology engineering topics
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 information systems departments to develop information systems that satisfied the information needs of the 1980s. These needs were 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 normalized 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.
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.
The synergy of tools and information engineering
An important aspect in the development of information engineering, using computers to assist with the design process enabled the ability to tackle larger and more complex problems. This development came along due to the lack of brain power possessed by humans to solve these complex problems that required too much information to be retained by the human brain. Some examples of this are definitions, layouts, character representations, report requirements, and identifiers. These are all examples of information that are better stored on computers than in the human brain. Along with the information, visual aspects to represent these pieces of information were required as well, further increasing the need for a technology-based solution to this problem.
In the 1980s, computers began to become much more widely used in the business worlds. This phenomenon led to the need of information in a faster and more efficient manner. This evolution of information engineering allowed for decisions to be made faster, data to be discovered faster, reports to be made faster, and for transaction response to be faster. Although speed was a primary factor in the way these companies did things, the information still had to be precise. This created a 'race' between companies, to see which had the best data in the fastest time using the least amount of resources.
This growth led to the idea of automation. Automation allowed for these processes to be quickly done without much of any human input. This increased speed, lowered inaccuracy, and increased efficiency. The information engineering approach has been growing rapidly in the past years as it has been proven to be one of the best development methodologies.
Information engineering as a field of study & career
With the massive development of technology in recent years, information engineering has become increasingly popular. The concepts behind information engineering are taught as early as elementary school and as late as masters and PhD programs within the field of information engineering. This popularity increase has led to a widespread boom in the number of people who are qualified to work in fields that are heavily information engineering based. Information engineering has become a career path of its own, and quite a lucrative one as well. Information engineers earn an average salary of $106,000 according to Glassdoor. Many top colleges and universities offer information engineering programs as well.
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 diagramming, process modeling and swimlane diagrams.
- Tamir, Mike; Miller, Steven; Gagliardi, Alessandro (December 11, 2015). "The Data Engineer". Rochester, NY. doi:10.2139/ssrn.2762013. S2CID 113342650. SSRN 2762013. Cite journal requires
- "Data Engineer vs. Data Scientist". Springboard Blog. February 7, 2019. Retrieved March 14, 2021.
- "Information engineering," part 3, part 4, part 5, Part 6" by Clive Finkelstein. In Computerworld, In depths, appendix. May 25 – June 15, 1981.
- Christopher Allen, Simon Chatwin, Catherine Creary (2003). Introduction to Relational Databases and SQL Programming.
- Terry Halpin, Tony Morgan (2010). Information Modeling and Relational Databases. p. 343
- Finkelstein, Clive. What are The Phases of Information Engineering.
- "Ie (information Engineering)". Gartner. Retrieved December 13, 2019.
- 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.
|Wikimedia Commons has media related to Information Engineering.|