Enterprise engineering is the body of knowledge, principles, and practices used to design all or part of an enterprise. An enterprise is a complex socio-technical system that comprises people, information, and technology that interact with each other and their environment in support of a common mission. One definition is: "an enterprise life-cycle oriented discipline for the identification, design, and implementation of enterprises and their continuous evolution", supported by enterprise modelling. The discipline examines each aspect of the enterprise, including business processes, information flows, material flows, and organizational structure. Enterprise engineering may focus on the design of the enterprise as a whole, or on the design and integration of certain business components.
Several types of enterprise engineering have emerged.
In engineering, enterprise engineering covers a wide variety of activities. Encompassing "the application of knowledge, principles, and disciplines related to the analysis, design, implementation and operation of all elements associated with an enterprise. In essence this is an interdisciplinary field which combines systems engineering and strategic management as it seeks to engineer the entire enterprise in terms of the products, processes and business operations,". this field is related to engineering management, operations management, service management and systems engineering.
In software development, enterprise engineering deals with the modelling and integration of various organizational and technical parts of business processes and functions. In information systems development, this has become an area of activity for the organization of systems analysis, and an extension to the existing scope of Information Modelling. It can also be viewed as an extension and generalization of the systems analysis and systems design phases of the software development process. Here, enterprise modelling can form part of the early, middle and late information system development life cycle.