|
Functional Analysis
What is a Functional Analysis?
A functional analysis is a
document that specifies, in some detail,
WHAT
an automation system is required to do (and not, in
general, how it is to do it). A perfect functional
analysis would contain all the information necessary
for a team of Engineering (or PLC logic) designers
and programmers to produce an automation system
which functioned as required. Although that is
rarely practical, a typical functional analysis
should go a long way toward that goal.
There are many synonyms for
"functional analysis" such as: specification,
functional specification, structured analysis, and
functional description.
What are the benefits of doing a Functional
Analysis?
The information specifying what
the automation system is required to do must get to
the Engineering (or PLC logic) designers and
programmers somehow. If a Functional Analysis is
not produced, then they must get the information in
a less structured, more informal fashion. This
carries with it the risk of problems such as:
- Slower than expected progress
as designers/programmers wait for additional
information or change already completed designs
and programs when the informal specification
changes.
- The re-opening of a "firm"
bid when the customer makes changes or additions
to what the vendor thought was required.
- Difficult system startups
involving many last-minute changes when the
system does not function as desired. The expense
of such a startup can be enormous, as the
process being controlled can be crippled or down
for extended periods of time.
- Long term problems for the
customer with the system as new "bugs" are
uncovered, and old ones are tolerated rather
than suffering the the required downtime and
expense to fix them.
- Poorly designed and
documented systems that are difficult to
troubleshoot and modify, because requirements
(often verbal) from the customer got translated
directly into code (or logic) with no
intervening analysis or design steps.
IPACT firmly believes that the
extra time, effort, and expense of producing a good
Functional Analysis "up front" more than pays for
itself by avoiding the problems listed above. Good
communication between customer and vendor, and
between specifier and designer is critical to
project success. A good Functional Analysis
provides the most solid, most explicit, and most
detailed basis for that communication.
Where does a Functional Analysis fit into a typical
IPACT project bid cycle?
If the customer's Request for
Quote (RFQ) contains sufficient information to
support a fixed-price bid, IPACT will submit a bid,
and production of the Functional Analysis will
typically be included in IPACT's scope of supply.
Where less information is
available up front, IPACT has for some customers
done the project in two phases - a Functional
Analysis first, to be followed by a fixed-price
phase for the design and implementation of the
project. The price of the second phase is determined
by requirements documented in the Analysis.
IPACT has also produced Functional
Analysis to support a customer's RFQ process, i.e.
the completed Functional Analysis was used as part
of the customer's subsequent RFQ.
What methods does IPACT use to produce a Functional
Analysis?
Typically, IPACT uses what are
termed structured methodologies for producing
Functional Analyses. These methodologies are used
because they are more rigorous, less ambiguous, and
easier to grasp than an English narrative
description of system requirements. Among the
structured methodologies used by IPACT are:
- Yourdon Methodology.
This methodology is based on data flow diagrams
(which depict data moving between processes and
data stores in a hierarchical fashion), mini
specs (which describe what each process does,)
and a data dictionary (which describes the
content of all the data flows and data stores.)
It is best applied to data intensive systems.
- Sequential Function
Charts (SFCs - sometimes referred to as "Grafcet.")
This methodology is based on steps (which depict
control actions) and transitions (which depict
sequencing between steps.) It is best applied
to control or sequencing systems.
Systems which have both data
intensive and control/sequencing intensive functions
will use both of these methodologies in the
Functional Analysis, or a hybrid method which is a
combination of the two.
A Functional Analysis specifies "what" the system is
to do, not "how" it is to do it. Isn't the "how"
important too?
Yes. "How" the automation system
accomplishes a given function is part of the System
Design. IPACT is also very competent at System
Design, and uses another set of structured
methodologies to produce them. However, specifying
"what" naturally needs to precede the specification
of "how," so analysis comes before design.
This does not mean that our
customers cannot specify some aspects of the System
Design. IPACT works with customers to produce
systems that exceed their requirements not only in
functionality, but also in design and
implementation.
|