ArticlePDF Available

Abstract and Figures

Component-based software development has gained wide acceptance within the computer science discipline and the software development industry. Apparently, application of this concept has not been attempted for the development of software for structural engineering applications. This paper presents the overall framework for component-based software development for integrated structural engineering applications using the principles of information transformation. An information-oriented review of the overall structural design process is carried out to develop the information content and transformations involved in this process. This information transformation concept is then used to propose a framework for the development of software for integrated structural design applications including the identification of key packages, patterns, components, class hierarchies and object models. Use of extensible markup language is proposed as the main information description and communication standard. The advantages of using the proposed framework are discussed along with application and implementation scenarios.
Content may be subject to copyright.
Component-Based, Information Oriented Structural
Engineering Applications
Naveed Anwar
; Worsak Kanok-Nukulchai
; and Dencho N. Batanov
Abstract: Component-based software development has gained wide acceptance within the computer science discipline and the software
development industry. Apparently, application of this concept has not been attempted for the development of software for structural
engineering applications. This paper presents the overall framework for component-based software development for integrated structural
engineering applications using the principles of information transformation. An information-oriented review of the overall structural
design process is carried out to develop the information content and transformations involved in this process. This information transfor-
mation concept is then used to propose a framework for the development of software for integrated structural design applications
including the identification of key packages, patterns, components, class hierarchies and object models. Use of extensible markup
language is proposed as the main information description and communication standard. The advantages of using the proposed framework
are discussed along with application and implementation scenarios.
DOI: 10.1061/(ASCE)0887-3801(2005)19:1(45)
CE Database subject headings: Data communication; Structural engineering; Information management; Computer applications
The mechanical and electronics industry has long embraced the
idea of the component-based manufacturing of their products. For
example, several components used in cars are identical across
different models or even different brands. A similar concept is
used in the manufacturing of computers, where the standard com-
ponents are assembled and integrated into different computer
models, brand names, and configurations.
The component-based manufacturing concept has been ex-
tended to the development of software applications in recent
years. component-based software development (CBSD) is a logi-
cal extension of object-oriented concepts and the corresponding
object technologies, which have pervaded in the software industry
since the early 1990s. With the almost universal availability of the
Internet and other network facilities it has become viable for ap-
plications software not only to be deployed at locations different
from their users’ computers, but also to break up and deploy large
systems from several locations. The CBSD has also made it pos-
sible for parts of the same software to be developed by different
organizations, and to assemble new applications from existing,
specialized, as well as generalized components. In such a sce-
nario, the component-based architecture can significantly formal-
ize, streamline, expedite, and enhance the software development
process for structural design applications as well.
Component-Based Software Development
Since the introduction of object-oriented concepts, a whole new
breed of object technologies and paradigms has evolved for the
development of software systems. One of these is the concept of
components. component-based software development is sup-
ported by, and has given rise to several new paradigms, program-
ming environments, languages, tools, and development architec-
tures. These include object linking and embedding, ActiveX,
common object model (COM), distributed common object model
(DCOM), Open DOC, Java Applets and Java Beans, common
object request broker architecture (CORBA), distributed comput-
ing, client server applications, and the new .Net framework, Sun
Open Network Environment (Sun One)(Sun Microsystems Inc.
1999) and the Java 2 Enterprise Edition (J2EE)(Brill 2001a).A
complete new way of building systems using software compo-
nents has evolved (Crnkovic 2002). Most programming languages
now provide support to the use of conventional function libraries,
as well as these new component-based developments. The .Net
framework introduced by Microsoft in July 2000, provides a pro-
ductive multilanguage environment for platform-independent de-
velopment and deployment of applications using extensible
markup language (XML) as the standard for communicating and
processing information between Web services (or components)
for Visual Basic (VB) and C-based programming (Brill 2001b).
The J2EE is a conceptual definition for enterprise system archi-
tecture providing design philosophy for large, scalable (Web-
enabled) systems. This definition comprises of several application
programming interface (API) for email, database, distributed
computing, and web-based applications. J2EE is a new deploy-
ment specification for packaging the Java component into a single
enterprise system. It extends the basic Java archive standard for a
single deployable file to the Web archive and enterprise archive
Associate Director, Asian Center for Engineering Computations and
Software (ACECOMS), Asian Institute of Technology (AIT), Bangkok,
Professor, School of Civil Engineering, Asian Institute of Technology
(AIT), Bangkok, Thailand.
Associate Professor, School of Advanced Technologies, Asian
Institute of Technology (AIT), Bangkok, Thailand.
Note. Discussion open until June 1, 2005. Separate discussions must
be submitted for individual papers. To extend the closing date by one
month, a written request must be filed with the ASCE Managing Editor.
The manuscript for this paper was submitted for review and possible
publication on March 17, 2003; approved on April 23, 2004. This paper is
part of the Journal of Computing in Civil Engineering, Vol. 19, No. 1,
January 1, 2005. ©ASCE, ISSN 0887-3801/2005/1-45–57/$25.00.
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
formats, for deploying large component-based systems (Brill
2001a). A component coordination model for component-based
systems has been presented (Mathee and Batanov 2000).Itis
believed that component-based approaches will be at the forefront
of software development in the next few years (Capretz et al.
2001). The challenges and difficulties faced during development,
implementation and use of component-based systems have been
addressed recently (Crnkovic and Larsson 2002). An application
framework for the development of simulation tools for construc-
tion projects has been proposed (Hajjar and AbouRizk 2000), that
is based on the object oriented library and design patterns. They
have demonstrated that use of component-based software devel-
opment significantly reduces the development time for new pro-
gram as well as adding functionality to existing tools. Krish-
namoorthy et al. (2002), have applied the concept of object-
oriented framework to the development of program for space
truss optimization. This framework, however, is only limited and
specific to the truss analysis and optimization problem using ge-
netic algorithm and not intended for overall integrated design of
general structural system.
A Case for Using Component-Based Software
Development in Structural Engineering
The structural engineering discipline, and hence the scope of
computer applications and software development, deals with a
very broad range of activities and applications. The applications
can be classified by the type of structure it handles and the extents
of the overall design process. The applications can be as small
and specific as a program for the design of reinforced concrete
cross sections, or as large and general as a fully integrated analy-
sis, design, detailing, and costing program for structures. Re-
cently, applications for design process management, design docu-
mentation, and web-based information collaboration have also
become popular (Pena Mora and Choudary 2001). Current struc-
tural engineering software not only addresses the computational
aspects but also focuses on interactive and graphical user inter-
faces, specialized pre- and postprocessing, graphic visualization,
database management, and integration and interaction with other
software systems (Adeli and Yu 1995) and (Stamatakis 2000).
Formal development of software typically deals with two dis-
ciplines or domains: software engineering (along with related
knowledge and expertise) and the application domain, such as
structural engineering as in this case (Pressman 1992). Significant
developments and diversifications have occurred in both the soft-
ware development industry and the structural engineering disci-
pline. At the same time the structural engineers expectations of
software range, application, and level of sophistication are ever
increasing. These expectations are driving attempts to develop
more complex, comprehensive, and integrated software systems.
It is becoming increasingly difficult for the researchers and devel-
opers of software for structural engineering to keep abreast of all
the latest developments, both within their own field and in the
general structural engineering industry. It therefore makes sense
for individual researchers or teams of developers to focus on their
own particular area of interest and expertise and develop pro-
grams and software within their specialty. These software or pro-
grams, when developed using well-defined frameworks and pat-
terns, can become software components that can then be
connected in a variety of ways to develop and deploy complete
systems or solutions. In a typical scenario, researchers in the finite
element technology could focus on developing a dedicated struc-
tural analysis component. Experts in computer graphics could de-
velop components for graphic display and manipulation of struc-
tural models, as well as visualization of response. Similarly,
specific components could be developed for design of concrete,
steel or composite structural members. These components could
be used time and again in a variety of ways and be physically
integrated into applications or used over the internet/network as
web services or application servers. The component frameworks
formalize and generalize the basic design issues in the structural
design software. component-based software development ulti-
mately hinges on the object oriented techniques and concepts.
Several successful applications of object oriented software devel-
opment in structural engineering have already been demonstrated
(Adeli and Yu 1995; Anwar and Kanok-Nukulchai 1996; Aster et
al. 1998; and Tailibayew 1999).
For these components to work together, a framework defining
the overall architecture must be developed. This framework has
two parts: that dealing with the computer science aspects (com-
monly known as horizontal framework), such as programming
environments, operating systems, communication protocols, hard-
ware compatibility etc.; and that dealing with the structural engi-
neering aspects (commonly known as vertical frameworks). Sev-
eral horizontal frameworks already exist for the first aspect, such
as COM/DCOM, CORBA (Pritchard 1999), and .Net, J2EE.As
for the vertical frameworks in architectural, engineering, and con-
struction discipline, an information technology (IT) based frame-
work for large scale project planning with special emphasis on IT
investment, and strategic planning using IT diffusion concepts has
been proposed (Pena-Mora et al. 1999). A detailed framework
using components library to build software for construction man-
agement applications has also been proposed (Pena-Mora et al.
2001). This paper demonstrates the importance and usability of
component-based software development in civil engineering ap-
plication. The paper presents not only the basic framework for
developing components using patterns, but also incorporates a
methodology for searching existing components and pattern for
reusability in new system. With regard to the development of
component-based software in structural engineering, however, no
well-defined domain-specific, vertical framework could be found
in the literature. The focus of the present research is to propose
such a framework to handle the structural engineering specific
aspects of the component-based software development, using the
concepts of information processing and transformation. The pro-
posed framework addresses the following issues related to soft-
ware for an integrated structural design process:
1. usage of a package-based software capable of handling the
structural design process;
2. definition of contents and functions of the basic and essential
3. the basic and essential components definition within each
package and identification of new components for develop-
4. the common representation of structural design information,
understandable by all packages and components;
5. standards and means for connections and communication be-
tween components and between packages;
6. the common infrastructure facilities needed for this frame-
work; and
7. implementation issues related to hardware, software, operat-
ing systems, and networks.
In short, the framework addresses the component standards,
specifications, interfaces, and implementation issues related to
structural design software.
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
Information View of Structural Design Process
Traditionally, the structural design process has been described and
viewed in terms of distinct design steps, such as conception, mod-
eling, analysis, design, detailing, drafting, and costing, (Kanok-
Nukulchai 1986) and (Anwar 1994). Consequently, computer pro-
grams and software were also traditionally developed to address
one or two design steps; for example, analysis programs, design
programs, and detailing programs. However, much research is
currently focused on the development of integrated systems ca-
pable of handling several of the design steps in the overall design
process using various forms of database and data flow models.
Although it is probably a cliché to use the terms “information
age” and “information oriented society,” they still reflect the re-
ality of the importance of information technology and provide an
incentive for taking a fresh look at the structural design process
from the information content and information processing point of
Structural Design Information Space
The structural design process is part of the overall planning and
design process that leads to construction, use and maintenance of
a construction projects. Information used in the structural design
process is therefore part of the overall construction information
space. This information space straddles several disciplines, in-
cluding planning and architecture, structural engineering, geo-
technical engineering, mechanical and services engineering, con-
struction engineering, and project management (Fig. 1). Each
discipline accesses and processes part of the overall project infor-
mation space, which invariably overlaps with the information
space processed by other disciplines. This means that information
needs to be shared across discipline boundaries. Traditionally, this
information sharing occurred through drawings, documents, ver-
bal or electronic communication, design guidelines, project briefs,
and other means. Each discipline processed and represented in-
formation in its own context, leaving the other discipline the task
of interpreting it for its own use. Several attempts (Grubbs et al.
1988); Przybylo and Mokrzycki 1989; Nguyen and Oloufa 2001;
and Pena-Mora and Choudary 2001 have been made to represent
civil engineering and building project databases in a universal
format that can be used across several disciplines, with varying
levels of success and acceptance by the industry. One of the well
established standards is CIMsteel Integration Standards (CIS/2),
which is an extended and enhanced second-generation release of
the CIMsteel Integration Standards (CIS), a set of formal comput-
ing specifications that allow software vendors to make their engi-
neering applications mutually compatible (CIS 2000). However,
CIS/2 has been developed particularly for steel framed buildings
and similar structures, and may not be suitable for other types of
Specifically, within the discipline of structural engineering, the
design information is divided into several subspaces; these in-
clude conceptual design information, modeling and analysis in-
formation, design information, detailing and drafting information,
material quantities, and costing information. The whole is defined
as the structural design information space. Each of these design
information subspaces is often handled by different specialists or
the same engineer in a different design step or design context.
However, most of this overall design information is common to
and is shared by several design processes. Fig. 2 shows that sig-
nificant information overlap and communication exists between
the modeling and analysis, analysis and design, design and detail-
ing, and detaining and drafting processes. All of these processes,
however, use and update the physical structure information. It is
obvious that, although the same basic physical information is
used by various design processes and steps, the context and for-
mat in which it is used may be drastically different. Fig. 2 also
illustrates the information flow paths within these information
spaces. In fact, from an information processing perspective, the
overall objective of the structural process is to produce enough
information for the physical construction of the project, based on
other information sources.
Information Processing Packages and Information
In traditional structured programming, the program structure was
derived using data flow diagrams (Pressman 1992). In recent
years, however, object-oriented concepts have replaced most of
the programming paradigms and data representation. Objects can
be viewed as entities that contain and process information. At a
higher level of abstraction, complete components and packages
can be viewed as information containers and processors. Data
processing has progressively given way to information process-
ing, which is now giving way to knowledge processing, and ulti-
mately to the processing of concepts and ideas. These new devel-
Fig. 1. Construction project information space
Fig. 2. Structural design information space
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
opments in the information technologies can be readily applied to
the development of an information model for the structural design
The information space and information flow described in the
proceeding section is used here as the starting point for develop-
ing the architecture of a typical integrated structural engineering
application. Each information-processing block, or design process
step in this case can be viewed as a “package.” The following
main information processing packages have been identified:
1. the conceptual and preliminary design package,
2. the structural modeling and analysis package,
3. the structural design package,
4. the structural detailing and drafting package, and
5. the material estimation and costing package.
In the conventional design process, these packages can be
linked together sequentially, each using the information provided
by the previous package and producing information for the next
package in line. The completion of this information flow, how-
ever, is dependent on the presence of all information processing
packages and their successful operation. In practical design a sig-
nificant amount of information is often available directly or can
be generated within each information package, without having to
go through preceding design steps. For example, design organi-
zations often have a repository of standard design solutions for
parts of the structure or for structural components and members.
Sometimes part of the structure cannot or need not be modeled for
analysis but may still be required in the design and detailing
process. It is therefore proposed here that rather than a sequential
information flow, the concept of information bus be adopted for
this model (Fig. 3). In this concept, each information block or
package, accesses and updates the overall information space as
needed. The information flow is therefore considered to occur on
an information bus passing outside of the packages so that it
becomes independent of the individual package processes or any
predetermined information flow sequence. Each package then
takes the information it needs from the information space through
this bus and returns the processed information in the same way.
Each package processes the information on request, which may
be issued either by another package or by the user, or by integra-
tion controller. In this manner the interdependency of the pack-
ages can be reduced significantly. This model also paves the way
for concurrent engineering, and for the blackboard architecture, in
which various processes can be started simultaneously without
the need to follow a predefined flow. In this architecture, the
entire structural design information space is assumed to exist,
irrespective of the existence of information packages or their
functionality or operation. The overall framework for develop-
ment and implementation software using this architecture is dis-
cussed in the following sections.
Information Oriented Component-Based Framework
By definition, Frameworks provide a skeletal design that can
be built upon to create an organized system where many packages
or components work together” (Stevens and Pooley 2000). The
basis for such a framework in the development of structural de-
sign applications is laid out in Fig. 3, where the overall informa-
tion space of a construction project and the role of structural
design are defined. The information space of the structural design
process and the role of various subprocesses therein are defined
earlier. A conceptual information package architecture is shown in
Fig. 4, with the proposed information flow mechanism.
Fig. 3. Information flow model for structural design process
Fig. 4. Conceptual structural design information package architec-
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
Overall Application Architecture and Frameworks
The overall software architecture for an integrated structural de-
sign based on the information transformation concepts can be
described in terms of three basic layers:
1. The application made up of one or more packages. Each
package handles one major information processing task in
the overall design process. This layer also handles the acti-
vation and marshaling of packages and acts as the main con-
2. Packages made up of one or more integrated components.
Each component provides specific services or handles dedi-
cated tasks within the package; and
3. The components made up of one or more objects. Each ob-
ject provides specific services or handles specific information
processing tasks.
The frameworks required to govern the design and develop-
ment of actual applications conforming to the above architecture
will now be defined. These include:
1. a general framework for the whole software that defines the
purpose of the software; the tasks to be assigned to each
package; and the way in which they will be located and used;
2. a package framework for each package that defines the tasks
to be assigned to each component and the way in which they
will be located and used; and
3. component frameworks, which are at a lower level and gov-
ern the design of the components themselves, define the be-
havior of the components as well their overall design in
terms of objects, classes, services, messages, etc.
The standardization of frameworks and components is
achieved through the use of design patterns. The design patterns
are recurring, planned solutions that work across a range of prob-
lems. The design patterns allow the discussion of design issues at
a higher level, enabling faster software design and a better under-
standing of the problem, and are used to present the frameworks
and components. Unified modeling language is used to graphi-
cally represent the design patterns.
Application Framework
In general, the top level role of the application is to define the
bounds of structural design information space; establish the extent
of information processing to be performed by the application;
establish ways and means of obtaining the information needed
from other information sources; identify and integrate packages to
complete the contents of the required information space; and fi-
nally, update and communicate with the outgoing information
sources. The overall application framework pattern is shown in
Fig. 4.
The bounds of the information space will depend on the types
of structures the software will handle and the level of integration
it will provide. The information may be provided to the software
through a fully interactive graphical user interface; command
driven macros; simple text based data files; or directly through
data and information links with other software or systems. The
software should have the means to handle both sequential and
random use case scenarios. A typical sequential use case follows
the traditional steps in the structural design process, in which each
package is activated, one by one, in a predetermined order. A
random use case involves the activation of any package in ran-
dom order. In this case, if the activated package needs some other
information in order to proceed, it attempts to obtain this from the
information bus. If the needed information is not available, it
informs the controller, which then requests that, either the user of
the application or other responsible packages generate this infor-
mation. This process continues until all needed information is
generated and processed.
In this architecture, the validity and concurrency of the infor-
mation must be ensured at all times by the application level func-
tionality. The propagating effect of information change, therefore,
needs to be implemented in the information model and its pro-
cessing. For this purpose the concepts of axiomatic design can be
used as demonstrated for dynamic planning of design/build
projects. Two types of basic frameworks are proposed, as de-
scribed below.
Loosely Integrated Application
In this framework, each package is completely self-contained and
all required components are compiled into the package. Each
package is in fact a complete application, but all packages are
integrated into a higher-level application that acts as a controller
of packages within a single user environment. In this case, the
user is free to access or use any of the packages independently or
as part of the overall application. The integration primarily pro-
vides a convenient means of using the packages and brings some
order or sequence to the design process. Here, most of the atomic
and composite components are used in each package indepen-
dently. In this framework, the main binding or integration be-
tween packages comes from the use of a common information
source or information bus as described earlier. This framework is
useful for the development of large applications for complex
structural system where each package itself is a fairly large appli-
cation. Individual packages in this framework may be developed
using a component framework at their own level.
Tightly Integrated Application (Cohesive Framework)
In this framework, all general-purpose components needed by all
packages are physically contained within the main application.
The packages may not be physically separate entities, and may
only contain the specific components that provide the final func-
tionality of the package. The general functionality used by more
than one package is provided by composite and atomic compo-
nents placed within the space of the main application, but outside
the space of the individual package. The actual implementation of
such a framework depends on the operating system, programming
languages, and the component technology being used. The whole
application will generally be compiled into a single executable,
whereas the components may either be inside the main executable
or in separate external files such as Active X files or Java beans.
The boundaries between packages may not be very rigid. This
framework is a truly component-based application. The required
number of components can vary from a few to several compo-
nents depending upon the types of structures to be handled by the
application and the level of functionality and sophistication.
Package Frameworks
The specific design and functionality of the individual packages
identified earlier will vary significantly depending on the type of
structure and level of integration of the packages. However, the
common framework and pattern for these packages can be defined
in terms of the basic role they play in the overall application.
Each package is basically an information processor. Upon activa-
tion, it takes the required information from the information space
using the information bus, converts it to appropriate context, pro-
cesses this information using its components and produces new
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
information or updates the initial information, converts it back to
the global context, and returns it to the main information space.
This framework pattern is shown in Fig. 5. The internal working
of the package is not of concern at this stage of framework defi-
nition. In some ways, the general package framework is similar to
the application framework, except that in this case the packages
within the application are replaced by components within the
Specific frameworks and patterns for some selected package
are developed next, identifying main components and their usage
within the package.
Conceptual and Preliminary Design Package
The conceptual and preliminary design package is primarily con-
cerned with the development of conceptual design, selection of
appropriate structural system, and carrying out of preliminary siz-
ing and location of the structural components. This package
should be capable of creating the basic structural model in terms
of defining key structural systems, elements, their location, and
their proportions. This may be carried out using direct input from
the users, suggested by expert systems, determined from prelimi-
nary calculations, selected by a neural network-based approach,
obtained from databases of previous projects, estimated by thumb
rules, defined by code-specified limits, or any other appropriate
technique. How this package works is not of concern at this stage
of software system definition. The important decisions to be taken
are related to what information will be needed (or consumed) by
this package and what information will be generated. Broadly, the
information needed by this package will be the architectural and
functional plans, system selection constraints, preferences, restric-
tions, and other specific requirements. The information generated
by the package will be a fairly well-defined structural model of
the structural system along with some basic material specification.
Modeling and Analysis Package
The modeling and analysis package is probably the most impor-
tant package in the overall application. The main function of this
package is to convert the structural model, which may be defined
by the user directly or generated by the preliminary design pack-
age, and convert it into an analysis or mathematical model. The
package will then analyze the model and produce the structural
response information. The analysis model is most likely a finite
element model, although other models may also be generated.
Several other pieces of information must be provided to this pack-
age in addition to the basic geometric model; this will include the
load or excitation information, material models, boundary and
foundation information, type of response needed, and specific re-
sponse related information. The information needed by this pack-
age may range from a simple dead load, live load, and static wind
loads to seismic time history or random wind-induced vibration.
The response may range from a simple linear elastic–static to a
nonlinear inelastic dynamic response. The nature and amount of
input and response information will vary significantly. Most struc-
tural responses, however, can ultimately be defined in terms of
nodal displacements, element actions, and element deformations.
The internal capabilities of this package will vary considerably
from one application to the next. However, the basic function of
the package is to convert the structural, geometric, and load in-
formation to structural response information. The minimum com-
ponent framework needed to accomplish this task is shown in Fig.
6. A modular framework for implementing the finite element
method has been presented (Yu and Kumar 2000). This frame-
work can be used to generalize and expand the modeling and
analysis package framework described above. The availability of
such specific frameworks for various aspects of structural design
processes in fact validates the need for development of an overall
framework for the software for integrated analysis and design of
structural systems.
The Designing package
The designing package is the second most important and complex
package in the overall application. The main function of this
package is to convert the structural response information to
element/component design and detailing information. This in-
volves consideration of material mechanics (steel, concrete, tim-
ber etc.), member type (beam, column, slab, footing, etc.), design
code requirements, local design practices, and to some extent, on
the engineers own experience and preferences. There is a certain
amount of overlap between the design, detailing, and drafting
activities. A fair amount of detailing information is generated dur-
ing the member design process; also, a considerable amount of
drafting information is generated during the detailing process.
The distinction between design detailing and detailing drafting
will depend on the extent of the application’s involvement in
these processes and the types of structures being handled. There is
typically more overlap in the design and detailing of reinforced
concrete structures than in that of steel structures. For these rea-
sons, developing a general framework for a designing package is
more difficult and complex than for an analysis package; how-
ever, the minimum component framework needed to accomplish
this task is shown in Fig. 7.
Detailing and Drafting Package
The main functionality of the detailing-drafting package is to
“elaborate” on the design-detailing information provided by the
design-detailing package or by the user. This depends to a large
extent on the type of structure, level of detailing needed, local
practices, and engineers’ preferences. The functionality of this
package will also depend on the level of detailing carried out by
the design package. The output from this package is the detailed
drawing, which is produced directly by the package and/or gen-
Fig. 5. Typical package framework
Fig. 6. Modeling and analysis package
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
erated in a form readable by external computer aided design ap-
plications. The overall framework of the detailing package is
shown in Fig. 8.
The Cost Estimation and Documentation Package
The cost estimation and documentation package may not be an
integral part of the integrated structural design application, but it
can greatly benefit the engineering firms involved in the prepara-
tion of cost estimates, contract documents, bills of quantities, and
bills of materials. The cost estimation package can, in fact, also be
used to prepare initial cost estimates from the preliminary design
information and in the comparative analysis of various design
alternatives. The main functionality of this package is to generate
bills of quantities, bills of materials, and costs based on whatever
level of information is available at the time of activation of this
Communication between Objects, Components,
and Packages
For the component-based software to work, communication must
be established at various levels amongst packages, components,
objects, and external information sources. In fact, one of the key
issues in the development and use of these component-based sys-
tems is finding a means of communicating and transferring infor-
mation between various parts. This involves hardware issues,
software issues, and establishment and adoption of appropriate
standards. The hardware issues relate to the physical connection
and transfer of a data stream, and are handled at various levels by
a number of protocols and well-established standards. This issue,
although significant, is not the focus of the present research, and
will not be discussed further. The second issue, related to soft-
ware, and the third, related to standards, are of direct significance
to the present research and will be addressed next. The commu-
nication occurring in typical package-based software can be con-
sidered at several levels.
Fig. 9 shows a graphical interpretation of this information
communication process. All the information transfer or sharing
outside the application can be done using XML or Databases by
either the application itself or by the packages of the application,
while components and objects share and transfer information be-
tween themselves, the packages and the application. In addition to
the information actually communicated between the various parts
of the system, a significant amount of data and information is
temporarily generated for local usage by a particular component
or for limited usage amongst various parts of the system. A sig-
nificant amount of information (or data) communication occurs
during the operation of typical integrated software at these levels.
The most generic and extensible information transfer standard
being used these days in the computing industry is XML, whose
advantages have been well documented and accepted. It is there-
fore proposed that XML be used as the standard backbone infor-
mation communication channel as it can handle structured defini-
tion and communicate a large amount of structural model,
analysis, design, and detailing information between packages and
between components. This requires the definition of standard
XML schemas to describe the information content and its struc-
ture, and the use of XML files based on these schemas containing
actual information about specific projects. A completely new set
of schemas have been developed in this research to describe and
communicate structural design information between components,
packages, and applications each schema describes the design in-
formation to be used in different context. All information contexts
are however linked to the basic physical description of the struc-
ture geometry, the demands placed on the structure, and the ex-
pected performance. Rivard and Fenves (2000), have described
the building entity and technology information model for repre-
sentation of structural information for conceptual design using
structural environment to support early phases of building design
(SEED). The same concept has been extended in the present re-
search to describe the entire design information for general struc-
Fig. 7. Designing package
Fig. 8. Detailing and drafting package
Fig. 9. Communication between objects, components, packages, and
Fig. 10. Relationship and dependency of some of information mod-
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
Fig. 11. Partial listing of structure information model in XML
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
Fig. 12. Partial listing of finite element model schema
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
tural systems. As in the case of SEED, the topological informa-
tion, which is considered invariant, is used as the basic
information from which other information models or contexts can
be derived. The above reference also described the building entity
in the attribute-value pair that can be easily extended to XML
description of information.
Other contextual information models derived from this basic
information model are shared and communicated using their own
information schema. The relationship and dependency of some of
the information models is shown in Fig. 10. The XML schema
describing the physical model, the geometric model, and the
analysis (finite element model in this case) have been developed
as part of this research and are available at Schema for
It is expected that at the implementation level, the components
or even package may need to use their own specific or internal
data formats, therefore, for the component-based frameworks pre-
sented here, each component or package will be required to
implement the general pattern shown earlier. In this pattern, the
internalizer is basically a parser that reads in XML data and con-
verts it into its internal format. Specific parser may by written for
each component or a general parser such as simple API for XML
or document object model be used for extracting required infor-
mation overall from the XML document. Partial listing of the
Geometric Model Information schema and a fragment of corre-
sponding the XML files are given in Figs. 11 and 12 Full details
of this aspect of the present research are presented in a separate
Implementation Issues
Although the basic concepts used in the development of the over-
all framework in this paper are general and independent of the
hardware or software systems, the actual implementation is gen-
erally geared towards, and is dependent upon, a particular hard-
ware and software environment. At present, several development
and deployment environments exist for implementing component-
based software development concepts on the PC. Some of the
most common are:
COM, DCOM, and ActiveX,
Net Framework.
The choice of the development and deployment environment
will depend on several factors including:
1. personal preferences, expertise, and training of the develop-
ers regarding various technologies and programming lan-
guages (Java, VB, FORTRAN, C⫹⫹, C#, etc.).
2. target users and their computing environment (Unix, Mac,
Windows, Linux, etc.).
3. the deployment architecture of the final software system
(stand alone, Client Server, Distributed, Internet based, etc.);
4. availability of existing software (and components) on the
particular system and environment.
There is no single recommended choice suitable for everyone
and every situation. However, literature and market reviews indi-
cate that the structural engineers themselves are developing most
structural engineering software, and mostly for Windows plat-
forms. Several of the available programs are either using
FORTRAN or C⫹⫹ for their computation engines and VB or
C⫹⫹ for their front end and user interfaces. Few references were
encountered on the use of Java and related technologies for the
development of structural engineering software. It appears that
the new .Net Framework from Microsoft may be a suitable choice
for the development of component-based software for structural
engineering applications using the proposed framework, as it in-
tegrates software development using C-Sharp (C-), VB, XML, and
ASP, and its deployment in network and internet environment.
The implementation of the current research has been tested using
the ActiveX and COM technologies. Both loosely integrated and
tightly integrated applications have been developed. Three differ-
ent approaches have been used to develop and implement the
component-based software, as described in sample applications:
1. Develop the component and compile as an ActiveX DLL. The
functionality of this component is then accessed by the users
of the component using the interface exposed by the objects
within the component. In this case all information between
the component and its client (or user program) occurs
through direct calls to the methods, properties or events of
Fig. 13. Design pattern for frame type member designer
Fig. 14. Information transfer and messaging between analysis and
design packages
Fig. 15. Overall framework of SAP2000 package
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
the component objects. The ActiveX standard is supported by
Visual Basic, Visual C
, Delphi, and to some extent by
2. The component is compiled as an ActiveX control. In this
case, it becomes available in the programming environment
as an insertable object, and becomes an integral part of the
client application. This approach is useful when the graphic
interface of the component needs to be combined with a
graphic interface of other components within the application.
3. In this approach, the entire component or a package is com-
piled as a separate execution file. In this case direct access
into the objects of components of this package is not pos-
sible, and the communication between the client application
and the component or package is through external data files
such as XML. Both the client and the server component need
to be aware of the schema used in the XML document.
Use of Standard Patterns and Components
The use of patterns has been commonplace in several manufac-
turing, engineering, and technological disciplines, and have been
reported in several areas, from architectural planning to software
engineering. The software components and packages are gener-
ally based on patterns that provide a basis for the reuse of designs,
and in some cases implementation. Several standard component
patterns have been developed to handle typical software issues,
some of which have been described (Griver et al. 2000;
Stamatakis 2000; and Cheesman and Daniels 2001) Some use of
design patterns for structural engineering applications addressing
specific problems has been found in the literature (Yu and Kumar
2000; Crnkovic 2002; and Krishnamoorthy et al. 2002). Several
design patterns have also been developed in the present research
that ranges for patterns of generalized preprocession analysis
solvers, member designers, to member details. A design pattern
for a frame-type member designer is shown in Fig. 13.
Sample Implementations
The concepts discussed in the proposed framework have been
applied to develop several applications, packages, and compo-
nents. Two examples are briefly described here to demonstrate the
application and implementation of the proposed framework at
various levels. The readers are welcome to contact the authors for
more information about the development of the applications de-
scribed below.
Building Analysis of Three-Dimensional Systems
The concepts discussed in the proposed framework have been
applied to develop software for integrated modeling analysis and
design of concrete buildings, building analysis of three-
Fig. 16. Template library main interface
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
dimensional systems (BATS)(Asian Center for Engineering
Computations and Software 2002). At the early stages of the de-
velopment process of this software it was decided that existing
software and programs within the writers Institute and Center
would be used as much as possible and further development
would be limited to functionalities not available in those pro-
grams. The main requirement of the new software was the ability
to quickly generate building structural models using parametric
templates and fully interactive graphics manipulation; analyze the
model quickly for gravity and lateral loads; provide a visual in-
terpretation of the analysis results, and design concrete beams,
columns, and footings based on the results of analysis.
A review of the programs available within our organization
indicated two candidates, described below, that could be used as
components and packages in the overall framework:
1. XETAB, for the analysis of building models using the rigid
diaphragm concept. This program was written in FORTRAN
and was running under DOS. The source code of the program
was not to be modified or included in the new software so
this program had to be wrapped and used as a complete
2. GEAR, for the design of concrete members such as beams,
columns, slabs, and footings (Asian Center for Engineering
Components and Software 2001). This program had no struc-
tural modeling or analysis capability, but fairly comprehen-
sive design, and some detailing functionality. Each members
design was carried out by a separate component.
The final BATS application consists of two packages. The first
package is for the modeling and analysis and the second for de-
sign and detailing (Fig. 14). The modeling and analysis package
was developed completely new; but, the XSolve was used as a
component wrapper for XETABS which had all the analysis capa-
bility required of the new program. The design and detailing
package was developed using object- and component-based con-
cepts and written for the windows environment with good inter-
active and graphics capabilities. The data storage for this program
was based on the “tag-value” concept—similar to HTML and
XML. No modification or redevelopment was required in this
package and was integrated into the new software in its entirety.
This example shows that the component-based software devel-
opment framework was used efficiently to develop a new appli-
cation quickly, partly by using new core functionality and partly
by using existing components and packages.
The Structural Template Component
SAP2000 (CSI 1998) is one of the major software for finite ele-
ment modeling and analysis of structures. The development of
this application needed additional functionality to generate sev-
eral types of structural models automatically using a library of
parametric templates. This functionality was developed by the
author into a general structural template library component, and
incorporated into the main software using an ActiveX/COM inter-
face. The communication between the SAP2000 and the new tem-
plate component was established using XML document represent-
ing the geometric information.
The overall framework for this development is shown in Fig.
15, whereas Fig. 16 shows the main interface of the templates
library component.
An architectural framework has been presented for the develop-
ment of integrated structural engineering applications using
component-based software development with special emphasis to
the information-processing context.
The proposed framework views the integrated design process
in terms of various standard information processing packages.
The packages themselves are assembled from information pro-
cessing components. The components are developed using design
patterns, encapsulating and exhibiting the generalized functional-
ity. The concept of information bus is used to establish commu-
nication between packages and components. The use of XML is
proposed as the generic information representation standard.
Sample schemas have been developed to represent structural de-
sign information in various information models. Three sample
applications are presented that have been developed using the
proposed framework, to demonstrate some of the implementation
It is envisaged that use of component-based software develop-
ment for structural engineering applications will pave the way for
collaborative software development with greater specialization
and reuse of standard problem solutions. Frameworks for address-
ing specific analysis and design aspects are already being devel-
oped and reported in the literature. The overall framework pro-
posed here will provide the ability to integrate such local
frameworks into a larger integrated application. The development
of XML based structural model information will provide a plat-
form and application independent information communication
standard. This aspect, which is part of the present research, is
presented in a separate paper.
Adeli, H. and Yu, G. (1995). “An integrated computing environment for
solution of complex engineering problems using the object-oriented
programming paradigm and a blackboard architecture.” Comput.
Struct.,54(2), 255–265.
Anwar, N. (1994). “Integrated analysis, design, detailing and costing of
concrete buildings.” Proc., 3rd Regional Conf. on Computer Applica-
tions in Civil Engineering, Kuala Lumpur, Malaysia.
Anwar, N., and Kanok-Nukulchai, W. (1996). “Application of object ori-
ented techniques in structural engineering software.” Int. Proc., Conf.
on Urban Engineering in Asian Cities in 21st Century, Volume 1,
School of Civil Engineering, Asian Institute of Technology, Bangkok,
Asian Center for Engineering Computations and Software. (2001). ACE-
COMS GEAR users manual and technical reference, Asian Institute
of Technology, Bangkok, Thailand.
Asian Center for Engineering Computations and Software. (2002). BATS
2001 three-dimensional analysis and design of buildings users
manual, Asian Institute of Technology, Bangkok, Thailand.
Aster, M., Bergmeister, K., Rio, O., Schonach, A., and Sparowitz, L.
(1998). Iterative object-oriented modeling for structural engineering,
Computational Mechanics, New Trends and Applications CIMNE,
Barcelona, Spain.
Brill, G. (2001a). CodeNotes for J2EE, Random House, New York.
Brill, G. (2001b). CodeNotes for VB.NET, Random House, New York.
Capretz et al. (2001). “Component-based software development.” Proc.,
27th Annual Conf. of the IEEE Industrial Electronics Society,
IECON’2001, Denver.
Cheesman, J., and Daniels, J. (2001), UML components: A simple process
for specifying component-based software, Addison-Wesley, Reading,
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
CIMsteel integration standards release 2, (2000). Ascot, Berkshire, U.K.
Computers and Structures, Inc. (CSI). (1998). SAP2000 three dimen-
sional static and dynamic finite element analysis and design of struc-
tures users manual, CSI, Berkeley, Calif.
Crnkovic, I. (2002), “Component-based software engineering: building
systems for software components.” Proc., IEEE Computer Society’s
Int. Computer Software and Applications Conf.
Crnkovic, I., and Larsson, M. (2002). “Challenges of component-based
development.” J. Syst. Softw.,16(3), 201–212.
Griver, Y. A., Arnheiter, M., and Michael Gellis, M. (2000). Visual basic
developers guide to UML and design patterns, SYBEX Inc.
Grubbs, J. H., Leach, L. M., and Law, K. H. (1988), “Data exchange for
collaborating structural design programs.” J. Comput. Civ. Eng. 2(2),
Hajjar, D., and AbouRizk, S. M. (2000). “Application framework for
development of simulation tools.” J. Comput. Civ. Eng.,14(3), 160–
Kanok-Nukulchai, W. (1986). “On a microcomputer integrated system for
structural engineering practices.” Comput. Struct.,23(1), 33–37.
Krishnamoorthy, C. S., Venkatesh, P. P, and Sudarshan, R. (2002).
“Object-oriented framework for genetic algorithms with application to
space truss optimization.” J. Comput. Civ. Eng.,16(1), 66–75.
Mathee, O., and Batanov, D. N. (2000). “A component coordination
model for customization and composition of component-based system
design.” Proc., 7th IEEE Int. Conf. and Workshop on Engineering of
component-based Systems, Edinburgh, Scotland.
Nguyen, T. H., and Oloufa, A. A. (2001). “Computer-generated building
data: Topological information.” J. Comput. Civ. Eng.,15(4), 268
Pena-Mora, F., and Choudary, K. K. (2001). “Web-centric framework for
secure and legally binding electronic transactions in large-scale A/E/C
projects.” J. Comput. Civ. Eng.,15(4) 248–258.
Pena-Mora, F., Vadhavakar, S., and Dirisala, S. K. (2001). “Component-
based software development for integrated construction management
software applications.” Artif. Intell. Eng. Design,15(2).
Pena-Mora, F., Vadhavkar, S., Perkins, E., and Weber, T. (1991). “Infor-
mation technology planning framework for large scale projects.” J.
Comput. Civ. Eng.,13(4), 226–237.
Pressman, R. S. (1992). Software engineering: A practitioners approach,
3rd Ed., McGraw-Hill, New York.
Pritchard, J. (1999). COM and CORBA side by side architectures, strat-
egies, and implementations, Addison Wesley Longman, Reading,
Przybylo, W., and Mokrzycki, T. (1989). “Microcomputer integration of
AUTOCAD FEM system and 3D graphics using FEMA database.”
Proc., 2nd East Asia-Pacific Conf. on Structural Engineering & Con-
struction, Division of Structural Engineering, Asian Institute of Tech-
nology, Bangkok, Thailand, 291–296.
Rivard, H., and Fenves, S. J. (2000). “A representation for conceptual
design of buildings.” J. Comput. Civ. Eng.,14(3), 151–159.
Stamatakis, W. (2000). Microsoft visual basic design patterns, Microsoft
Press, Washington, D.C.
Stevens, P., and Pooley, R. (2000). Using UML software engineering with
objects and components, Pearson Education Ltd.
Sun Microsystems, Inc. (1999). Santa Clara, Calif.
Tailibayew, S. I. (1999), “Development strategies leading to a general—
purpose finite element analysis program using object-oriented para-
digm.” MEng. thesis, Asian Institute of Technology, Bangkok, Thai-
Yu, L., and Kumar, A. V. (2000). “An object-oriented modular framework
for implementing the finite element method.” Comput. Struct., 79,
J. Comput. Civ. Eng. 2005.19:45-57.
Downloaded from by ASIAN INSTITUTE OF TECHNOLOGY on 03/10/15. Copyright ASCE. For personal use only; all rights reserved.
... Currently expert and knowledge based system are being used for bridge rating, bridge system selection, damage assessment, bridge planning, bridge evaluation, bridge management etc. Some of the conceptual and preliminary design tools used a database of previously completed bridge projects and suggested the solution to a new problem by simple information search and matching or by using more elaborate Article methods such as Linear Programming (LP), Fuzzy Logic (FL), Artificial Neural Networks (ANN), Genetic Algorithms (GA), or Analytical Hierarchy Approach etc [5]. The current research and application of expert systems has declined. ...
Full-text available
Computer application and software have significantly altered the way bridges are designed, constructed and managed. It has made the design process simple for common bridge types and has provided opportunities to explore new concepts and ideas for larger projects. Computer application and software are now an integral part of the bridge life cycle, right from the conceptual stage to bridge management. This paper particularly focuses on the development and impact of computer applications in bridge modeling analysis and design. It presents an overview of the past developments, the issues involved in the modeling, the current trends, available tools and the future challenges and directions. A hierarchical, multi-scale modeling and design approach is presented to handle various aspects and levels of bridge design process.
... In its most basic form, knowledge can be thought as information that is "contextual, relevant and actionable"; however Knowledge is very distinct from data and information in the information technology context (see Figure 1).Whereas data are a collection of facts, measurements, and statistics, information is organized or processed data that are timely (i.e., inferences from the data are drawn within the time frame of applicability) and accurate. [27] Information viewed as something that is self-contained, can be stored in a digital format and is based on information technology for searching, changing, and retrieving information. ...
... DSS has found wide applications in different disciplines like construction management (Chung et al., 2004;Palaneeswaran and Kumaraswami, 2005), in structural engineering (Anwar et al., 2005), in transportation engineering (De Ia Garza et al., 1998), in architectural engineering (Hammad et al., 2008) and above all in water resources engineering. The water and environmental scientists who are involved in creating societal and physical system models with more uncertainties, has opened up the possibilities of DSS applications in different civil engineering disciplines (Hipel et al., 2008). ...
Full-text available
There are several spatial problems in the water resources sector such as flood control and management, which can be managed efficiently if there is a case-based decision-making process. These types of problems need human intervention and amicable management is possible by decision making based on various possible alternatives. The recent advances in computational facilities, quick and real time access to various types of data and development in graphical user interface (GUI), have led to the frequent application of decision support system (DSS) in complex water resources management problems like flood management. This review paper summarises past efforts employing DSS, risk-based DSS and future research for DSS used in flood management. The main purpose of this review is to assess the progress made in the development of DSS and to understand how efficient it is in solving flood management problems.
... The situation has changed since a series of markup languages were introduced over the years. Firstly, SVG [49], Scalable Vector Graphics, a novel XML-based language for describing two-dimensional graphics at the level of graphical objects rather than individual points, is now a W3C (World Wide Web Consortium) [50] standard. SVG is becoming increasingly popular due to its inherent advantages over raster image formats. ...
... The situation has changed since a series of markup languages were introduced over the years. Firstly, SVG [49], Scalable Vector Graphics, a novel XML-based language for describing two-dimensional graphics at the level of graphical objects rather than individual points, is now a W3C (World Wide Web Consortium) [50] standard. SVG is becoming increasingly popular due to its inherent advantages over raster image formats. ...
Information retrieval (IR) is a well-established research and development area. Document formats such as SGML (Standard Generalised Mark-up Language) and XML (eXtensible Mark-up Language) have become widely used in recent years. Traditional IR systems demonstrate limitations when dealing with such documents, which motivated the emergence of structured document retrieval (SDR) technology intending to overcome these limitations. This paper reviews the work carried out from the inception to the development and application of SDR in engineering document management. The key issues of SDR are discussed and the state of the art of SDR to improve information access performance has been surveyed. A comparison of selected papers is provided and possible future research directions identified. The paper concludes with the expectation that SDR will make a positive impact on the process of engineering document management from document construction to its delivery in the future, and undoubtedly provide better information retrieval performance in terms of both precision and functionality.
Knowledge management represents a strategic vision for developing an organization’s performance and its likelihood of success in dealing with future challenges in its industry. The case starts by discussing the importance of knowledge management in improving the competitive edge of firms in general and of consulting firms in particular. Then, the case discusses the process of building a knowledge management system in the structural engineering department at a leading engineering design consulting firm, based in the Republic of Lebanon. The knowledge, both tacit and explicit, needed during the design phase is identified and mapped according to the adopted design process, and an expert system was built to capture some of the tacit knowledge needed in the conceptual design stage of the process. In addition, an intranet Web-based knowledge management system was developed with the aim of helping diffuse both explicit and tacit knowledge.
The objective of knowledge management is to provide a mechanism able to improve the organizational work process and make it more efficient. This is accomplished by capturing the intellectual assets and empowering the engineers' knowledge level for the welfare of the organization. The paper starts by discussing the importance of knowledge management in improving the competitive edge of firms in general and of consulting firms in particular. Then, the paper discusses the process of building a knowledge management system in the Structuring Engineering Department at Khatib and Alami Consulting Company in Lebanon. The knowledge needed, tacit and explicit, during the design phase is identified and mapped according to the design process. In addition, an intranet web-based knowledge management system was development to diffuse both explicit and tacit knowledge. The paper concludes with the lessons learned from the experience of building the knowledge management system and the steps needed to improve it.
In recent years, apartment finishing work items have increasingly become more upscale and diverse, and the kinds have increased in exponential numbers. A huge amount of information about finishing work items is produced and changed in the stages of planning finishing work item design and selecting alternatives in the early days of an apartment project. However, there are many problems raised by the poor information management of finishing work items. Thus this study suggested a cost-based information management system to manage information about finishing work items generated in the initial stage of an apartment project. In order to build the suggested system, the investigator designed an information management system based on the concepts and organization of system. And after setting a scenario of selecting finishing work items by conditions including the initial information values of finishing work items, information management for each alternative, and cost fix or free condition, I implemented and applied a prototype of an information management system for finishing work items among the participants including the project manager, interior designer, and builder.
Korea's construction industry experienced no difficulty managing the costs of finishing work items in the apartment housing field thanks to the uniform specification and the standardized costs of finishing work items. Finishing work items have continuously become more high class and differentiated, which has caused the costs of finishing work items to rise. This study identified problems with the cost management when planning finishing work items and choosing their alternatives based on the current process applied to the planning stage of finishing work items. It also found problems with the information management of finishing work items including design, cost, and work information that took place in bulk. Based on the identified problems, the design, cost and work information of finishing work items was integrated so that they could management the costs and information when planning finishing work items and selecting their alternatives. Then a cost-based information management process was suggested for finishing work items by improving each of the project cost management elements. Finally, an information model for finishing work items was built by studying the ways to integrate the information hierarchy and library of finishing work items.
Genetic algorithms have been shown to be very effective optimization tools for a number of engineering problems. Since the genetic processes typically operate independent of the actual problem, a core genetic algorithm library consisting of all the genetic operators having an interface to a generic objective function can serve as a very useful tool for learning as well as for solving a number of practical optimization problems. This paper discusses the object-oriented design and implementation of such a core library. Object-oriented design, apart from giving a more natural representation of information, also facilitates better memory management and code reusability. Next, it is shown how classes derived from the implemented libraries can be used for the practical size optimization of large space trusses, where several constructibility aspects have been incorporated to simulate real-world design constraints. Strategies are discussed to model the chromosome and to code genetic operators to handle such constraints. Strategies are also suggested for member grouping for reducing the problem size and implementing move-limit concepts for reducing the search space adaptively in a phased manner. The implemented libraries are tested on a number of large previously fabricated space trusses, and the results are compared with previously reported values. It is concluded that genetic algorithms implemented using efficient and flexible data structures can serve as a very useful tool in engineering design and optimization.
Typical architecture/engineering/construction (A/E/C) projects are technically, socially, and economically complex in terms of planning, management, and execution. In order to conduct day-to-day operations within the project (allocating funds and resources), the organizations involved in large-scale A/E/C projects participate in contractual transactions. Currently, these transactions are primarily conducted in the form of paper-based contracts, but there is a need to automate them, leveraging the advancements in information technology. Due to the legal weight of these contracts, electronic transactions need to be as secure and binding as paper-based transactions; the absence of a framework to achieve this has prevented large-scale automation, in spite of the presence of a host of web-based project management services. In this paper, we address the security concerns in conducting legally binding electronic transactions in large-scale A/E/C projects by developing a framework for conducting secure and legally binding electronic transactions. We also discuss the issues related to the implementation of such a framework at the decade-long $13.6 billion Central Artery/Third Harbor Tunnel Project in Boston, Massachusetts.
Development of specialized construction simulation tools is a time-consuming and complex operation. This has hindered the effective and wide use of simulation in the construction industry. An object-oriented application framework is a promising software engineering principle, which can help in overcoming this obstacle. Application frameworks encapsulate reusable code as well as common design patterns for a specific class of applications so that development of new tools is greatly simplified. This paper describes this new principle and applies it to the development of a construction simulation object library. A case study performed to compare the efforts between framework- and nonframework-based simulation tool development revealed that productivity can be dramatically improved.
A methodology for performing data exchange among heterogeneous application programs in support of interactive structural design is presented. The method makes use of a Common Database Interface Language (CDIL) and operates on appropriate input and output data files of heterogeneous application programs to render them compatible with each other. The prototype data exchange model is demonstrated by performing data exchange between an output file of an analysis program and the required input file to a previously noncompatible design program.
The building representation for storing design solutions adopted in SEED-Config consists of two levels of abstraction models defined on top of the object-oriented data model. The first level is an information model, called the building entity and technology model, which stores design data as they are generated during conceptual design, supports case-based reasoning, and shares data among all design participants. This model represents each building entity as a generic container that encompasses its properties, taxonomy, geometry, composition, relationships, and design knowledge applied in generating it. The second level is a conceptual model that defines the types of objects, relationships, and data needed to fully represent the information in a given design domain. The conceptual model specifies the semantics of the design information for the domain using the syntax defined in the information model. The proposed representation also includes a faceted classification scheme to define the controlled vocabulary from which indexes are obtained. The representation has the following advantages: It integrates multiple views, supports design evolution, supports design exploration, and is extensible.
Traditionally, complex data models are developed to completely describe constructed facilities. These data models could be significantly simplified if the amount of information to be represented is reduced to basic or primitive data, from which more complex data can be deduced and extracted as required. This paper describes a building design framework developed in a solid modeling platform that is capable of automatically generating complex building information to support various aspects of building design. The topological relationships between building components are used as illustrative examples to demonstrate the practicality of the proposed system. A number of algorithms to deduce the topological information are also described.