18
Организация тестирования встроенных систем в компании «с нуля» Владимир Скляр Радий (Кировоград, Украина) QA Fest, October 31, 2015, Kyiv, Ukraine 1

Организация тестирования встроенных систем в компании «с нуля»

Embed Size (px)

Citation preview

Page 1: Организация тестирования встроенных систем в компании «с нуля»

Организация тестирования встроенных систем в компании «с нуля»

Владимир Скляр

Радий (Кировоград, Украина)

QA Fest, October 31, 2015, Kyiv, Ukraine

1

Page 2: Организация тестирования встроенных систем в компании «с нуля»

ПАРАЛЛЕЛЬНЫЕ МИРЫ

IT Industry

Embedded Safety Systems

Page 3: Организация тестирования встроенных систем в компании «с нуля»

• Владимир Скляр Skype: vladimir_v_sklyar

• Технический директор с 2011 http://www.radiy.com/

• Области экспертизы: QA, PM, R&D, BA, Business Development, преподавание

• EU Tempus (Horizon2020) – 7 проектов с 2006

3

О себе

• Контроллер RadICS на базе ПЛИС (FPGA) – PM в проекте по разработке и сертификации

Page 4: Организация тестирования встроенных систем в компании «с нуля»

• Компания Радий: вклад в безопасность атомных электростанций

• Отличие индустрии встроенных систем безопасности от ИТ

• Команда тестирования «с нуля»: история успеха

• Методы тестирования встроенных систем на базе программируемых логических интегральных схем (ПЛИС, FPGA – Field Programmable Gates Array)

• Выводы4

Содержание

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 5: Организация тестирования встроенных систем в компании «с нуля»

Company Radiy Profile

5

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 6: Организация тестирования встроенных систем в компании «с нуля»

Чем мы отличаемся от ИТ Производим оборудование -> работает на АЭСв Украине, в Европе, в Америке

Уровень зарплат -> нет привязки к $

Наличие производства –> специфика менеджмента

Подбор и мотивация персонала -> кооперация с университетами

Соответствие требованиям стандартовпо безопасности -> независимая оценка (лицензирование, сертификация)

V-shape Life Cycle

QA = Verification and Validation: Docs Review, Reliability Analysis (FMEDA), Static Code Analysis, Unit and Integration testing (code), Fault Insertion Testing, Validation, Requirements Tracing, Environmental Equipment Qualification

6

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 7: Организация тестирования встроенных систем в компании «с нуля»

IT stack used at RadiyVHLD for CPLD/FPGA

(Altera Quartus II)

Assembler and Cfor CPU

C++/C# (MS Visual Studio) for HMI

Testing (Mentor Graphic ModelSim,NI LabView)

PCB (Altium Designer, P-CAD)

Electrical, cables, mechanical design (COMPASS)7

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 8: Организация тестирования встроенных систем в компании «с нуля»

Life cycle and test coverage

8

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Technical Specification

Architecture Design(HW)

HW Design FMEDA Report

Validation TP&S

Validation TR

Integration TP&S

Integration TR

Fault Insertion TP&S

Fault Insertion TR

Detailed Design

Units

Modules

VHDL code

Functional TP&S

Functional TR

Logic Level Simulation &

Timing Simulation TR

Static Timing Analysis TR

Static Code Analysis Report

Page 9: Организация тестирования встроенных систем в компании «с нуля»

Команда тестирования«с нуля»: история успеха

На начальном этапе – отсутствие QA для кода, тестирование выполнялось лишь для интегрированной системы

Основная мотивация внедрения QA – соответствие требованиям стандартов для получения сертификатов и лицензий

Нужна была мультидисциплинарная команда по направлениям: тестирование кода VHDL, тестирование схемотехники, тестированиеинтегрированных систем на базе ПЛК

Существенным моментом было обязательное оформление объемной англоязычной тестовой документации

Один из критериев успешности тестирования: документированное 100% тестовое покрытие по «правильным» критериям

Команда тестирования была создана с привлечением преподавателей и студентов Полтавского НТУ (каф. компьютерной инженерии) – spin off

После внедрения QA признано подтверждение качества продуктов9

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 10: Организация тестирования встроенных систем в компании «с нуля»

Static Code Analysis andCode Review

ToolsAldec ALINTMentor Graphics HDL Designer

TrigProc:

process (R, S) is-- Violation, asynchronous combination logic

begin

if R = ‘1’ then

Q <= ‘0’;

elsif S = ‘1’ then

Q <= ‘1’;

end if;

end process TrigProc;

Q$latch

QR

S

10

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

10

Page 11: Организация тестирования встроенных систем в компании «с нуля»

Functional Testing of VHDL

Tools

Vendor Name

Aldec Active-HDL,Riviera-PRO

Mentor Graphics

ModelSim, Questa

Сadence Incisive Enterprise Simulator/Verifier

Synopsys VCS и Verdi3

11

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 12: Организация тестирования встроенных систем в компании «с нуля»

Logic Level Simulation, Timing Simulation

ToolsThe same as for FT

12

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

12

Page 13: Организация тестирования встроенных систем в компании «с нуля»

Static Timing Analysis

Независимые разработчики

Vendor Name

Microsemi SmartTime

Xilinx Vivado Static Timing Analysis

Altera TimeQuest Timing Analyzer

Cadence TempusTimingSignoff Solution

Synopsys PrimeTime Suite

Tools

13

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

13

Page 14: Организация тестирования встроенных систем в компании «с нуля»

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

14

Fault Insertion Testing

Page 15: Организация тестирования встроенных систем в компании «с нуля»

15

Validation testing:NI PXI controller with LabView

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 16: Организация тестирования встроенных систем в компании «с нуля»

Table 2/A.15 Systematic Failures in HW Design

IEC 61508 Ref.

Requirement Compliance Argument: Reference/Comment

FS Assessor's Evaluation

Action Alert to Client

2/A.15-1

7/A.9

Program sequence

monitoring (HR/medium)

▼Temporal or logical

monitoring of the program

sequence

▲Temporal and logical

monitoring of the program

sequence at very many

checking points in the

program

▲See PAD (D5.1) Figure 2-4.

This shows the separate

clock used for the logic in

the FGPA doing sequence

monitoring. Each time a

function block receives data,

it decodes the CRC+data

which includes a

"numerator". This

numerator acts like a pass

counter, and so allows every

FB execution to detect stale

data. A stale data signal can

come from a FB that did not

get executed the last time, a

failure to update data, or a

failure within the logic

updating the numerator or

in the logic checking for it. []

The FPGA runs a

sequence periodically

which consists of reading

inputs, performing logic,

writing to outputs, and

updating

communications. Each

time one of these items in

the sequence is executed,

a unique code is sent to

the watchdog. The watch

dog looks for this code in

the correct sequence and

resets if the code is not

received in the correct

sequence or is delayed

significantly. []

CLOSED

ACTION(01-

01) Radiy to

check this

claim in col.D-

--2/A.15-1.

Standards compliance testing:Safety Case approach

Page 17: Организация тестирования встроенных систем в компании «с нуля»

Выводы

Наличие в компании ИТ сегмента и производственного сегмента требуют двух принципиально разных стилей менеджмента – это остается одним из наших барьеровCaptain Obvious: самое главное – это человеческий

факторОтрасль Embedded Safety Systems заимствует у IT

Industry многие подходы к РМ; что может позаимствовать IT Industry?Компоненты методологии: системный анализ, управление требованиями и трассировка требований, поэтапное тестирование, тестовая документация

17

QA Fest 2015 | October 31, 2015 | Kyiv, Ukraine

Page 18: Организация тестирования встроенных систем в компании «с нуля»

Thank you for your attention!

Research & Production Corporation Radiy

29, Geroyiv Stalingrada Street, Kirovograd 25009, Ukraine

e-mail: [email protected]; [email protected]; [email protected]

http://www.radiy.com

18