You are on page 1of 6

Functional Specifications

If you don't know what you require and don't document it, you're going to
get whatever someone thinks you require. Process engineers sometimes
mistakenly believe control engineers should be able to develop
automation/control logic based on the content of piping and
instrumentation diagrams (P&IDs).
Mark T. Hoske
06/01/2006
Share

AT A GLANCE

 Batch and
process control
 Software
development
 Architectures
and objects
 System analysis
or design

 System
integration
Sidebars:
Building a functional
specification
If you don't know what you require and don't document it, you're
going to get whatever someone thinks you require. Process
engineers sometimes mistakenly believe control engineers should be
able to develop automation/control logic based on the content of
piping and instrumentation diagrams (P&IDs). Fortunately, tools can
help develop functional specifications—detailed blueprints for
creating automation and related programming.

With sufficient detail, functional specifications can help move and


guide a project from initial specifications through testing, simulation,
construction, training, commissioning, operation, maintenance,
upgrades, and/or decommissioning. In modular form, they can save
time, serving as a base for the next project, even if only partially
similar.

Prevent feature creep

Functional specifications can help internal projects run more


smoothly. When external help is needed, some contractors may offer
tighter estimates based on level of detail. More time and detail
upfront also can help prevent changes—sometimes known as
'feature creep'—later in a project that could push it beyond original
requirements.

Too much detail is not good either. Just like a project that can grow
beyond bounds, a functional specification can also get out of hand.
The Electric Power Research Institute recommends the following
elements in defining the scope. EPRI says the functional specification
should include specific information about each functional requirement
of the software, and describe for each functional requirement:
Purpose —What the function is intended to accomplish;

Input —What inputs will be accepted, in what format they will arrive,
their sources, and other input characteristics;

Process —Steps to be performed and algorithms, formulas, or


techniques to be used (software implementation details are not
included); and

Output —Desired outcomes, such as the output form (report layout),


the destination of the output, output volume and timing, error
handling procedures, and units of measure.

Software usability remains a consideration and should be included in


functional specifications, EPRI says; examples include clear error
messages, input range checking as entries are made, and order of
choices and screens corresponding to user preferences.

Standard modularization

In creating a functional specification, use of standards such as ISA-


88 (Batch control, useful beyond batch) and ISA-95 (Enterprise-
Control System Integration) can:

 Make defining and quoting easier;


 Help establish automation objectives;
 Modularize physical and procedural entities of a process;
 Deliver more flexible automation;
 Apply in any automation environment (not just batch or
continuous process); and
 Unify and clarify terms to improve communication.
Functional specifications can serve as detailed
blueprints to create automation and related
programming. In best form, they’re modular, with re-
usable elements.

In reviewing a specification, check for the following points, according


to David Longstreet of Longstreet Consulting, in his white paper,
'How to Read a Functional Specification.' He suggests asking: What
is the application state when the functional specification begins and
how is the information processed? Does the workflow include logical
groupings of information (single or multiple events)? Will information
be imported, stored, processed, and exported—and how? Are
algorithms and calculations described? Are all functions described
and requirements verified? Are scenarios and examples consistent
with workflow, start to finish?

Tools to help

Creating a functional specification doesn't have to be a from-scratch


event. Various software tools are available to help generate,
maintain, and modify functional specifications.

Microsoft Visio, for instance, can be used to create high-level process


flows, map physical processes, and help create functional
specifications, carrying over information from Visio electrical or piping
diagrams.

Spec-Soft SpecPFS-Definition, a functional specification and


documentation tool, includes extended simulation capabilities. It has
a set of engineering tools used to specify and simulate procedures
for batch automation and is ISA-88 compliant. It generates
enterprise-wide standards for equipment and procedures, manages
changes in designs and specifications, and produces a variety of
specification documents.

The software allows building:


1. Equipment and procedure classes, including standards,
templates, building blocks, defining control module, equipment
module, and unit class, with internal logic, along with high-level
procedures and recipe classes.
2. An ISA-88 physical model by importing design data from P&ID
files, spreadsheets, and databases for a modularized physical
plant in an object-oriented model;
3. Detailed phase logic to define equipment phase sequencing via
elaborate SFCs (step charts); define activation, alarms and
requests; visualize flow paths on P&ID; and define and edit
conditions, equations, and control loops.
4. Recipes, formulas, sequencing (S88.02 PFCs), defined
procedural interactions, such as synchronize, allocate, couple,
etc.; Gantt chart production for recipes and evaluation of
different execution strategies.
5. It also helps:
6. Manage changes by maintaining a 'live' specification over the
plant's lifecycle.
7. Enhance plant utilization; look at conflicts and interactions,
better scheduling, and rule-based specification review.
8. Generate and maintain specification document in Microsoft
Word, driven by a database, with a smart wizard.
9. Create and track interfaces to related documents and software.

Beyond the help a detailed, living functional specification can provide,


related software tools can help reduce automation system
engineering and programming time to lower cost and improve time-
to-market, help with compliance, improve accuracy, and cut
programming and maintenance time.

Additional resources
Links to other resources on functional specifications include the
following.
A related category in the Control Engineering buyer’s online guide,
at www.controleng.com , is “Computer Software, Product Selection
and Specification,” which returns 35 companies
at www.cesuppliersearch.com .

 Guidelines for Functional Specifications


 ISA-88 Batch Control
 ISA-95 Enterprise-Control System Integration
 How to read a functional specification
 Estimating Process Control Implementation Made Easier
 Free software helps with functional specifications

Building a functional specification

Clarity is required in construction of a functional specification,


according to Spec-Soft; definitions should include:

Any new types of items;

Connections between items;

Equipment modules;

Units and related state transitions;

Processes (state transitions, phase, and related objects);

Equipment module and unit management; and

Procedures, conditions, and interlocks.

You might also like