Platform Independent Functional Specifications

19
Platform Independent Functional Specifications Francis Lovering, ControlDraw Ltd This presentation was first written in 1998 Little has changed since then! • Topics: Real Batch Projects, real problems A Brief History of Specifications and System Life Cycles Contents of a Functional Requirements Spec ControlDraw Software

Transcript of Platform Independent Functional Specifications

Platform Independent Functional Specifications

• Francis Lovering, ControlDraw Ltd• This presentation was first written in 1998

– Little has changed since then!

• Topics:– Real Batch Projects, real problems– A Brief History of Specifications and System Life Cycles– Contents of a Functional Requirements Spec– ControlDraw Software

Real Automation Software Projects

• The Plant is nearing completion, the IO Cabinets are being cabled in and back at the software supplier's works someone suddenly realises that the project is late. (Worse still it happens on site)

• As testing begins, or a short time before, it becomes clear that there is no way they are going to finish on time. There are thousands of errors and things missing.

• The project goes into panic mode. • At the suppliers People are working endless hours. They are

battling against time, trying to obtain detailed information, testing software and finding faults, working their way through a huge list of comments and deviations. Eventually the software gets delivered, typically with some functionality removed, in to order accelerate completion.

What is the problem?

• It is not the Control Systems– Modern Control Systems are wonderful , DCS or

PLC/SCADA, they can all do everything that a Control engineer could hope,

– If they are programmed right!

• It need not take long to program them– If you know what needs programming

Ask the Programmers

• Why are there so many errors?– they only programmed what the spec said

– the spec was wrong.

– most ‘faults’ were ‘improvements’ or ‘changes’

• Why it is taking so long?– they spend most of their time looking for missing

information

– Things got added

– Time is spent changing what they had already programmed

A Brief Instrument Engineers History

• We did not used to have ‘Life Cycles’ - We Wrote Specifications and drew schematics– Panel Instruments– Back of Panel Instruments– Panels– Logic Diagrams– Loop diagrams

• Our Objects were Physical

We wrote Product Independent Specs

• Vendors sold 6*3 panel mounted instruments - all made similar functions– PID, Indicate, Ratio etc

• We specified them , Got Quotes, Chose a Vendor• We drew Loop diagrams• Finally we put the model numbers on the Specs• Along came DCS’s and PLCs.• Technology ran ahead of our ability to specify, most

especially in Batch.

Life Cycle Concepts

• Introduced to cater for complexity• Borrowed from the IT industry• In General,

– URS became high level without detail, produced by the ‘User’

– FDS became the container for the Detail– FDS became a supplier document and Product Specific -

why?

GAMP Life Cycle

User Requirements Specification Testing of the URS

Functional Specification Testing of the

Functional Spec

Hardware Design

Specification Testing of the Hardware Spec

Software Design

Specification

Software Module

Specifications

Review and Test Modules

Code Modules

Software Module Testing

Software Integration

Testing

Hardware Testing

System Acceptance

Testing

Does this includes Phase Logic, Loops, Basic Control?

Rarely includes the

detail

Not a strong dependency

Not a strong dependency

Requirement or Functional ?

• Examples– “The Reactor uses Cascaded temperature control”

• Is a Requirement - and does not depend on system!

– “On Step 3 open valve XV1245”• As above

Functional Requirements Specification

• Term used by the FDA, Microsoft et al• Includes full detail of all required functions• Can still be system independent

– but might presume certain capabilities

• Need to be highly detailed• Develop over the life of a project

Functional Requirements Content

• Words• Modules• Graphics• Phase Logic• Recipe Procedures• Database

• Underpinned by Standards

Control Modules

Phase Logic

Procedures

Graphics

System Database

Words

Where does FRS fit in the Life Cycle

User Requirements Specification Testing of the URS

Functional Specification Testing of the

Functional Spec

Software Design

Specification

Software Module

Specifications

Review and Test Modules

Code Modules

Software Module Testing

Software Integration

Testing

System Acceptance

Testing

Outline Function

Requirements

Detailed Functional

Requirements

Control Modules

Phase LogicProcedures

Graphics

System Database

Requirements Analysis

Identify Main Procedures

Define Procedures

Identify Operations

Define Operations

Identify Phases

Define Phases

Identify essential H&S

Requirements

Design appropriate

Safety Systems

Design Equipment Interlocks

Implement

Independent Safety Systems

Piping & Instrument Diagrams

Control & Operability Philosophy

Process Description + Recipe Data

Health & Safety Requirements

Equipment Protection

Requirements

Identify Process Cells

Define Process Cells

Identify Units

Define UnitsIdentify

Equipment Modules

Define Equipt. Modules

Identify Control Modules

Identify Resources

Define Resources

Identify Control

Modules

Define Control Modules

Order Here? Or Here?

Vendor Independent Graphics

• Look at a Graphic– DeltaV, Wonderware, Fix - Can you tell?

• Some details may be different but the Functionality should be the same

De-Aerator

BoilerFanVariable Speed

Oil Pump

FCV2

XV1 Feed Pump

Drum

Oil Heater

Oil Tank

XV2

Steam

FT1 FCV1

Air

FT3PT

QTOxygen QTSmokeFlue Stack

LT

FC1 FIA3 PIA

LIA

QIAOxygen QIASmoke

Water

FPS

Boiler Control Module

FT2

FC2

Oil

Graphics

Vendor Independent Control Loops

• Look at Control Loops– Same functionality in any system– Have hardly changed in decades– Used to be SAMA, now IEC1131 Function charts

RSPSP

PID Algorithm

Difference

LSPSP

Loc/Rem

L/RLocal / Remote

A/MAuto/Manual

Auto/Man

ManManual Output

IOutIndicate

AO

K

TI

Back TrackingThe Remote SP is back calculated when in Manual in so that Local Remote switching is also bumpless

TD

AI

I

AH

AHH

AL

ALL

CompareHi

CompareHiHi

CompareLo

CompareLoLo

SPHi

SPHiHi

SPLo

SPLoLo

Control Modules

System Database

Vendor Independent Interlock Logic

• ISA Logic , IEC1131 Ladder Diagram etc• Same functionality

RouteClosedPositiv e Logic Transmission of this Fault f or Fail Saf e

XV98191 Closed

XV98192 Closed

XV98193 Closed

Control Modules

Vendor Independent Batch Procedures

• Different styles, same meaning

• S88 PFC represenation

Fill with 1000 kg Water

Manually add 50 kg Salt

Heat with steam to 50 C

Manually add 30 kg sugar

Phase Logic Procedures

Advantages of Product Independence

• Competitiveness– Can keep vendors competing longer– Can get a more fixed price

• Avoids a scope battle with vendor• Can get the Functional Details approved much earlier• Can order the actual system later• The Programmers like it too

Tools for Specifiers

• Standards - S88, S5.1, IEC61131• MS Office for Words, Spreadsheets, Databases• Visio or alike for Diagrams• Maybe CASE Tools - Doors, UML etc?• Demo versions of HMI’s for Graphics

• ControlDraw – The only one designed for the purpose