<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Lessons Learned while Formalizing ISO 26262 for Compliance Checking</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Julieth Patricia Castellanos Ardila</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Barbara Gallina</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Guido Governatori</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Data61</institution>
          ,
          <addr-line>CSIRO</addr-line>
          ,
          <country country="AU">Australia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Ma ̈lardalen University</institution>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <fpage>5</fpage>
      <lpage>16</lpage>
      <abstract>
        <p>A confirmation review of the safety plan is required during compliance assessment with ISO 26262. Its production could be facilitated by creating a specification of the standard's requirements in FCL (Formal Contract Logic), which is a language that can be used to automatically checking compliance. However, we have learned, via previous experiences, that interpreting ISO 26262 requirements and specifying them in FCL is complex. Thus, we perform a formalization-oriented pre-processing of ISO 26262 to find effective ways to proceed with this task. In this paper, we present the lessons learned from this pre-processing which includes the identification of the essential normative parts to be formalized, the identification of SCP (Safety Compliance Patterns) and its subsequent documentation as templates, and the definition of a methodological guideline to facilitate the formalization of normative clauses. Finally, we illustrate the defined methodology by formalizing ISO 26262 part 3 and discuss our findings.</p>
      </abstract>
      <kwd-group>
        <kwd>Compliance checking</kwd>
        <kwd>standards formalization</kwd>
        <kwd>Formal Contract Logic</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        A confirmation review of the safety plan is a piece of evidence required for compliance
assessment with ISO 26262 [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] in the automotive industry. Producing this evidence is
time-consuming since ISO 26262 contains hundreds of requirements that have to be
checked based on the information provided by the specification of the development
processes used to engineer the safety-critical systems included in cars. To automate
this task, requirements should be encoded in formal notations, which can express not
only their contradictory, incomplete and inconsistent nature, but also their normative
provisions, which are the notions anchored to the structure of regulations [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. From
the compliance perspective, the normative provisions of importance are those related
to the obligations, permissions, and prohibitions [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Therefore, a promising approach
for formalizing requirements could be based on defeasible logic, in which contrary
evidence defeats earlier reasoning, supporting the management of inconsistencies [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
Also, normative provisions should be encoded as implications in which the antecedent
is read as a property of a state of affairs, and the conclusion has a deontic nature [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
Thus, we argue that deontic defeasible reasoning formalisms, such as Formal Contract
Logic (FCL) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], can be used to generate automatic support to reason from standard’s
requirements and the description of the process they regulate [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ].
      </p>
      <p>
        In our previous work [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], we explored mechanisms to support the formalization
work of the process engineers. From this initial attempt, a definition of SCP (Safety
Compliance Patterns), as well as a set of ISO 26262-specific FCL-SCP were formulated.
We also performed the formalization of standard’s requirements into FCL in [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ]. Via
these experiences, we learnt that interpreting ISO 26262 requirements and specifying
them in FCL is a complex task. Therefore, we perform a formalization-oriented
preprocessing of ISO 26262 to gain fundamental knowledge about efficient ways to
proceed. In this paper, we present the lessons learned resulting form this pre-processing
which includes the identification of the essential normative parts to be formalized, the
identification of Safety Compliance Patterns (SCP), and its subsequent documentation
as templates, and the definition of a methodological guideline, which can be used to
facilitate the formalization of normative clauses. We also illustrate the defined
methodology by formalizing ISO 26262 part 3 and discuss our findings.
      </p>
      <p>The rest of the paper is structured as follows. In Section 2, we present essential
background. In Section 3, we describe the formalization-oriented pre-processing of
ISO 26262. In Section 4, we illustrate the methodological guideline derived from the
pre-processing of ISO 26262. In Section 5, we discuss our findings. In Section 6, we
present related work. Finally, in Section 7, we present conclusions and future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>
        This section presents the background required in this paper. Section 2.1 recalls
essential information related to ISO 26262. Section 2.2 recalls the basis of Formal Contract
Logic. Finally, Section 2.3, recalls Safety Compliance Patterns.
2.1 ISO 26262
ISO 26262 [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] is a functional safety standard that regulates all phases of the production
process of road vehicles with a gross mass up to 3500 kg. ISO 26262 uses ASIL
(Automotive Safety Integrity Levels) to specify the safety requirements needed to be fulfilled
during the development process of safety-critical systems included in cars, e.g.,
automobile brake system. ISO 26262 is composed of ten parts. Part 1 specifies the terms,
definitions and abbreviated terms for application in all parts of ISO 26262. The
remaining nine parts, which are normative, are structured in a similar way, containing, a
foreword, introduction, bibliography, annexes, and clauses. Clause 1 recalls the
general scope of the standard and situates the particular part in this scope. Clause 2 and
Clause 3, recalls the normative references indispensable for the adoption of the specific
part. Clause 4, which is repeated in all parts, contains two general compliance
conditions. Item 4.1 relates to the tailoring of the safety activities, which is valid if “an
assessed rationale is available that the non-compliance is acceptable”. Item 4.2 relates
to the interpretation of tables, as follows:
– Tables with consecutive entries: All methods shall be applied as recommended in accordance with the ASIL. If methods
other than those listed are to be applied, a rationale shall be given.
– Tables with alternative entries: An appropriate combination of methods shall be applied in accordance with the ASIL
indicated. Methods with the higher recommendation for the ASIL should be preferred. A rationale shall be given that the
selected combination of methods complies with the corresponding requirement.
      </p>
      <p>
        The description of the phases of the safety process is distributed in clauses included
in the nine normative parts starting from Clause 5. Each of these clauses states its
Objectives, which describe the generic goals of the clause, General information, which
gives an overall explanation of the clause, Inputs of the clause, i.e., prerequisites,
Requirements and Recommendations (R&amp;R), which describe the specific conditions that
the process should fulfill, and the Work products, which are the mandatory deliverables.
Notes and Examples are expected to help the applicant in interpreting the requirements.
We focus on a subset of requirements from ISO 26262 part 3 presented in Table 1,
which specifies the requirements for the concept phase for automotive applications.
7.4.4 Determination of ASIL and safety goals - The safety requirements shall be specified by an appropriate combination
of the methods as presented in the table (H means Highly and R means Recommended).
Formal Contract Logic (FCL) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] is a defeasible deontic logic created for checking the
compliance of business contracts, and modelling normative requirements. An FCL rule
has the form:
r : a1; :::; an ) c; where:
a1; :::; an = Conditions of the applicability of the norm.
      </p>
      <p>c = Normative effect.</p>
      <p>
        Normative effects trigger deontic notions, namely, Obligations, Prohibitions, and
Permissions. An Obligation is a statement describing a mandatory situation. In FCL, an
obligation is represented by the operator [O] plus a proposition, which corresponds to
the content of the obligation. FCL is equipped with different kind of obligations, which
depend on the timing of the application of the normative provision and their persistence
after a violation (see [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]). A Prohibition is a forbidden situation. In FCL a prohibition is
represented as the negation of the content of an obligation. A Permission is an allowed
situation. Exceptions for the rules can be formalized by using permissions, taking into
account the premise “if something is permitted the obligation to the contrary does not
hold” [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Permissions in FLC are represented with the operator [P]. The formalization
of normative systems sometimes may contain conflicting normative effects, such as the
obligation of performing an action but also its prohibition. In FCL, these conflicts can
be solved by defining a superiority relation between rules (&gt;).
2.3
      </p>
      <sec id="sec-2-1">
        <title>Safety Compliance Patterns</title>
        <p>
          Safety compliance patterns (SCP) [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] describe commonly occurring normative safety
requirements on the permissible state sequence of a finite state model of a process. An
SCP has a general formalization structure (which in our case is defined in FCL), which
is derived from the interpretation of a recurring structure described in the text of the
standard. Currently, a list of SCP is defined in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Formalization-oriented Pre-processing of ISO 26262</title>
      <p>
        Our initial efforts to formalize ISO 26262 into FCL (see our previous work [
        <xref ref-type="bibr" rid="ref8 ref9">9, 8</xref>
        ]), gave
us some insights about the complexity that this task entails. As recalled in Section 2.1,
ISO 26262 is structured in a specific way, i.e., it is composed of parts, which are
subdivided into very structured clauses. We encounter that not all the structures are required
to be formalized. We also find that some structures are repetitive, and can be
represented as SCP. Therefore, to be able to formalize effectively, we consider that doing a
pre-processing of ISO 26262 was necessary. The pre-processing, which is depicted in
Figure 1, includes three tasks. Initially, we identify the essential normative structures
(see Section 3.1), namely those structures that define the safety process to be adopted
for developing the car’s safety-critical systems. Then, we identified the repetitive
structures of the standard that can be considered SCP (see Section 3.2). With the identified
SCP, we create templates to consolidate a reusable knowledge base for future
formalization jobs (see Section 3.3). Finally, the knowledge gathered in the pre-processing is
used to define a methodological guideline for facilitating the formalization of
normative clauses in ISO 26262 (see Section 3.4). The pre-processing tasks were performed
in the form of intensive group brainstorming sessions (in total ten 5-hour sessions).
The group included three participants. The first participant has expertise in formal
approaches (particularly FCL) applied to legal informatics. The second participant has
expertise in certification (particularly in the safety-critical context). The third
participant is a Ph.D. student whose research work is focused on the compliance checking of
safety processes against safety standards (particularly ISO 26262).
      </p>
      <sec id="sec-3-1">
        <title>3.1 Identify essential normative parts in ISO 26262</title>
        <p>As presented in Section 2.1, ISO 26262 has nine normative parts. In each of the
normative parts, Clauses 1, 2 and 3 are not required to be formalized since the text does
not represent a constraint to the development process. Clause 4 is subdivided into two
items. Item 4.1, which title is General requirements, describes the tailoring of safety
activities, namely its application in a way different to the indicated by the standard.
Item 4.2, which title is Interpretation of tables, illustrate the way in which normative
methods listed in tables (with consecutive and alternative entries) should be applied. By
themselves, these two requirements are not directly constraining the process. However,
they shape the way in which other requirements should be applied. Therefore, Clause 4
is an essential structure that gives important elements for the formalization process.
The specific normative clauses that describe the phases of the safety process are
documented from Clause 5 in each of the nine normative parts. In those clauses, the title
represents the initiation of the phase. Therefore, the title is part of the formalization
process. However, the formalization of the title must be preceded by the formalization
of the Prerequisites, since they represent the preconditions constraining the initiation of
the particular phase. Prerequisites as well as Work products are essential since they are
part of the description of the safety process which is expected to be represented via a
model embracing input/output elements. The presence of the verbs shall and must in the
section R&amp;R is an explicit indication of a normative provision that constrains the
breakdown of the work as well as for guidance on how it should be planned and executed.
Information under the titles Objectives, General, Notes and Examples are not
formalized since they do not prescribe the process to be adopted. However, these elements can
be used to provide context for the application of the requirements.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2 Identify SCP</title>
        <p>Within the essential normative parts of ISO 26262, seven SCP are identified. In Clause 4,
the provision of a rationale is done in the same way whenever a safety activity is
tailored. Similarly, the applicable methods that are described in tables with alternative
entries and tables with consecutive entries. Therefore, Clause 4 describes three
repetitive structures. Within the description of the phases of the safety process, represented
from clause 5 in each of the normative parts, other three repetitive structures are easily
recognizable. The first one is the Initiation of a phase, which is recognized in the title
of every clause. The second repetitive structure corresponds to the Prerequisites, which
describe the preconditions of the phase. Similarly, the Work products, which are
defined as the result of safety activities, represent a third repetitive structure. Since R&amp;R
contains many requirements, and each one describes a different structure, we cannot
consider this structure as repetitive itself (even though we can find the title R&amp;R in all
the normative parts). However, inside the R&amp;R one repetitive structure, called
Guidance, is recognized. A requirement, which we call the main normative effect, contains
guidance when it is accompanied by a list of descriptive items ( a, b,..., n). Together,
those items provide additional normative descriptions about the main normative effect,
and therefore, they also become mandatory requirements.
3.3</p>
      </sec>
      <sec id="sec-3-3">
        <title>Create SPC templates</title>
        <p>For each SCP, we provide a general formalization structure in FCL which is derived
from the interpretation of the repetitive structure it represents (as described in
Section 2.3). The rules in the template contains the symbol # between brackets (f g),
which should be replaced with the identification of the requirement that the rule is
representing. The space between the brackets in the rule statement (f g) is a placeholder
for the particular instantiation of the template.</p>
        <p>Provision of a rationale: A rationale implies compliance with conditions. For being
valid, it should be always verified by an expert. Therefore, when a rationale is
attached to a safety process, its verification is obligated (see Template 1).
rf#:gattachfRationaleg ) [O]veri f yByExpertfRationaleg
(1)
Alternative entries: The normative provision for tables with alternative entries obliges
the verification of the ASIL, the provision of a combination of the listed methods
and a the provision of a weak rationale. The combination of these methods also
obliges the inclusion of those marked with the highest recommendation level. The
provision of other methods is also possible if a strong rationale is provided. There
is an inconsistency between rules rf#.a:gand rf#.g:g. Thus, a superiority relation
that gives priority to rf#.g:g (which describes an exception for the requirement) is
provided (see template 2).</p>
        <p>rf#.a:gveri f yfASILg ) [O]provideCombinationO f ListedMethods
rf#.b:gprovideCombinationO f ListedMethods ) [O]includefHigherRecommendedNotationsForASILg
rf#.c:gincludefHigherRecommendedNotationsForASILg ) [O]attachWeakRationaleSupportingListedMethods
rf#.d:gattachWeakRationaleSupportingMethods ) [O]Veri f yWeakRationaleByDomainExpert
rf#.e:gincludeNotListedMethodsfOtherMethodsg ) [O]atachStrongRationaleSupportingfOtherMethodsg
rf#.f:gatachStrongRationaleSupportingfOtherMethodsg ) [O]veri f yStrongRationaleByDomainExpertfOtherMethodsg
rf#.g:gincludeNotListedMethodsfOtherMethodsg; [O]atachStrongRationaleSupportingfOtherMethodsg;
veri f yStrongRationaleByDomainExpertfOtherMethodsg ) [P] provideCombinationO f T heListedMethods
rf#:gg&gt;rf#:ag
(2)
Consecutive entries: The normative provision for tables with consecutive entries obliges
the verification of the ASIL and the utilization of all listed methods. The
combination of methods beyond the ones listed in the table is also possible if a strong
rationale is provided (see Template 3). There is an inconsistency between rules
rf#.a:gand rf#.d:g. Thus, a superiority relation that gives priority to rf#.d:g (which
describes an exception for the requirement) is provided (see template 2).
rf#.a:gveri f yfASILg ) [O]provideAll f ListedMethods
rf#.b:gincludeNotListedMethodsfotherMethodsg ) [O]atachStrongRationaleSupportingfotherMethodsg
rf#.c:gattachStrongRationaleSupportingfotherMethodsg ) [O]veri f yStrongRationaleByDomainExpertfotherMethodsg
rf#.d:gincludeNotListedMethodsfotherMethodsg; [O]atachStrongRationaleSupportingfotherMethodsg;
veri f yStrongRationaleByDomainExpertfOtherMethodsg ) [P] provideCombinationO f T heListedMethods
rf#:dg&gt;rf#:ag</p>
        <p>(3)
Prerequisites: The antecedents of the initiation of a phase are the prerequisites.
Therefore, they are obliged before the phase is initiated (see Template 4).
Initiation of a phase: The template considers the prerequisites (formalization presented
in Template 4) as the conditions of the applicability of the rule which normative
conclusion is the initiation of the phase (see Template 5).</p>
        <p>rf#:gprovidefprerequisiteAg:::; providefprerequisiteNg
) [O]initiatefTitleClauseg
Guidance: Guidance components are the conditions that obliges the provision of the
element guided (see formula 6).
Work Product: Work products are the result of certain requirements. Therefore, these
requirements are presented as antecedents that obliged the provision of the related
work product (see Template 7).</p>
        <p>r#:providefPreviousObligationsg ) [O]producefWorkProductg
(7)
3.4</p>
      </sec>
      <sec id="sec-3-4">
        <title>Methodological guideline for formalizing ISO 26262</title>
        <p>From the pre-processing tasks described above, we got an understanding of what to
formalize and how we could proceed in the formalization process. The parts to
formalized are those that determine the safety lifecycle, meaning those clauses that start from
Clause 5. To formalize these clauses, we have described a methodological guideline,
which we depict in Figure 2.
(4)
(5)</p>
        <p>Initially, the context of the phase should be understood. For this, the reading and
analysis of the objectives and the main general information of the clause to be
formalized is required. Then, the formalization process initiates with the prerequisites and
followed by the title. These two formalizations can be done by following the SCPs called
Prerequisites and Initiation of a phase. After, one requirement is selected from the list of
R&amp;R. We suggest that the requirements are selected in the order they are presented and
that the rules are named following the requirement numeration to ensure consistency
and traceability. For instance, if a textual requirement is marked with the label 5.1, the
corresponding rule should be called r.5.1. During the formalization of the requirements,
SCP templates could be used to facilitate this task. However, if there are no templates,
brainstorming sessions are required. The brainstorming session can be carried out in
different ways, but the most relevant is that the group takes one requirement at the time,
discuss its importance in the compliance process (e.g., related requirements or permits
for tailoring), divide the requirement into smaller sentences that have only one idea, and
discuss every sentence. If the requirement has to be divided into several rules, the name
of the rule has to be named with the number that accompanies the requirement plus a
letter, i.e., r.5.1.a, r.5.1.b. Finally, when all requirements available in R&amp;R are covered,
the work products can be formalized by using the SCP template called Work Product.
The generated rule set should be verified to avoid inconsistencies and typos in the rules
since Regorous do not recognize incorrectly formed rule sets.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Formalizing ISO 26262 part 3</title>
      <p>In this section, we illustrate the methodological guideline depicted in Figure 2 by
formalizing the requirements provided in Table 1. The formalization starts from clause
5 (see Table 1) providing requirements for the definition and description of the item.
There are no prerequisites in this clause. Thus, we continue with the formalization of
the title of the phase, which provides the obligation to initiate item definition (see rule
r5). Then, we continue with the formalization of requirement 5.4.1, that defines
guidance to provide the functional and non-functional requirements for the item definition.
This requirements is formalized by using the SCP Guidance in which initially, the
components of the guidance should be provided (see rules r5:4:1:a and r5:4:1:b), and then,
they integrate the main normative provision (see r5:4:1). When all the requirements are
formalized, we proceed with the work products, which are defined in clause 5.5. To
formalize a work product, the requirements (in this case specified by clause 5.4) are
presented as antecedents, and the work product itself is the normative provision (see
r:5:5).</p>
      <p>r5: ) [O]initiateItemDe f inition
r5.4.1.a:per f ormItemDe f inition ) [O]provideFunctionalConcept
r5.4.1.b:per f ormItemDe f inition ) [O]provideOperationalConstraints
r5.4.1:provideFunctionalConcept; provideOperationalConstraints</p>
      <p>) [O]provideFunctionalAndNonFunctionalRequirements
r.5.5:provideFunctionalAndNonFunctionalRequirements ) [O]produceItemDe f inition
Clause 6 in Table 1 presents the title of the clause and its inputs. Thus, we only applied
the steps related to the formalization of the prerequisites and the title of the clause. The
prerequisites were already formalized in clause 5, (see Table 1, Inputs of this clause:
item definition in accordance with 5.5.). Therefore, it is only needed the formalization
of the title which defines the obligation of performing the phase Initiation of the safety
lifecycle after the normative provision produceItemDefinition (see rule r6).</p>
      <p>r6:produceItemDe f inition ) [O]initiateInitiationSa f etyLi f eCycle
Clause 7, which is related to Hazard analysis and risk assessment, does not mention
any inputs for the clause and it is formalized as rule r5 (see rule r7). Two requirements
are described in tables. The first requirement refers to a table which has constitutive
information. The formalization of this table is done by taking the description of the
entries as the antecedent of the rule and its category as the normative provision (see
rules r7:4:3:a to 7:4:3:d).</p>
      <p>r7: ) [O]per f ormHazardAnalysisAndRiskAssessment
r7.4.3.a:descriptionSeverityS0 ) [O]CatergoryNoIn juries
r7.4.3.b:descriptionSeverityS1 ) [O]CatergoryLightAndModerateIn juries
r7.4.3.c:descriptionSeverityS2 ) [O]CatergorySevereAndli f eT hreateningIn juries</p>
      <p>r7.4.3.d:descriptionSeverityS2 ) [O]CatergoryFatalIn juries
Clause 7.4.4 is presented in a table with alternative entries. We take into account the
selection of methods for ASIL A. As recalled in Section 2.1 for alternative entries the
normative provision suggest the obligation to provide a combination of the methods
listed in the table (see rule r7:4:4:a), which at the same time obliges the selection of
those with higher recommendation level for the ASIL, in this case, Informal Notations
(see ruler7:4:4:b). Also, a rationale shall be given that the selected methods comply
with the corresponding requirements (see rule r7:4:4:c). If the highest recommended is
selected, only a weak rationale (i.e., a less stringent explanation of the selection) must
be provided. However, if the highest recommended is not selected, a more elaborated
rationale (called strong) should be provided (see rule r7:4:4:e). A domain expert should
verify the rationales (strong and weak) (see rule r7:4:4:d and r7:4:4: f ). Providing the
strong rationale, its verification and the methods selected, grant the permit of not
providing the combinations of the recommended methods (see rule r7:4:4:g).</p>
      <p>r7.4.4.a:veri f yASILA ) [O]provideCombinationO f ListedMethods
r7.4.4.b:provideCombinationO f ListedMethods ) [O]includeIn f ormalNotations
r7.4.4.c:includeIn f ormalNotations ) [O]attachWeakRationaleSupportingListedMethods
r7.4.4.d:attachWeakRationaleSupportingMethods ) [O]Veri f yWeakRationaleByDomainExpert</p>
      <p>r7.4.4.e:includeNotListedMethods ) [O]atachStrongRationaleSupportingNotListedMethods
r7.4.4.f:attachStrongRationaleSupportingNotListedMethods ) [O]veri f yStrongRationaleByDomainExpert
r7.4.4.g:includeNotListedMethods; atachStrongRationaleSupportingNotListedMethods;
veri f yStrongRationaleByDomainExpert ) [P] provideCombinationO f T heListedMethods
r7:4:4:g&gt;r7:4:4:a
5</p>
    </sec>
    <sec id="sec-5">
      <title>Discussion</title>
      <p>Interpreting and specifying ISO 26262 requirements in FCL can be time-consuming
and error-prone. One reason is that ISO 26262 is a large document with hundreds of
requirements, which like many other standards and regulations, are difficult to
interpret. The other reason is that FCL is not yet enough known and existing examples
(mostly from the business and legal domains) are insufficient to guide the formalization
of the normative notions that constrain the processes used in safety-critical
development projects. However, the effort invested in the production of formal specifications
of safety standards is compensated by several advantages, i.e., deep understanding of
its requirements, practical application in development projects, and the provision of an
essential input for facilitating automated compliance checking. Therefore, we consider
that discovering efficient ways to proceed with the formalization work can boost the
usage of this formal language in the compliance tasks in the safety-critical context. In
the remainder, we discuss some aspects that were observed during the performing of the
formalization-oriented pre-processing of ISO 26262 and the formalization of its part 3.
Useful formalization path: As recalled in Section 2.1, ISO 26262 is structured in a
specific way. However, not all the structures should be used to obtain the formal
specification in FCL. Therefore, performing a pre-processing of ISO 26262 provides us an
useful formalization path to follow, i.e., a methodological guideline and SCP templates.
Process engineers in the automotive context, who are interested in starting their
formalization work with FCL, may find useful this formalization path since it permits to focus
on specific tasks and skip some others that may be not relevant in the formalization
process. Performing a similar pre-processing of safety standards beyond ISO 26262 may
also be useful for increasing and spreading the use of FCL and its potential benefits.
Related skills, competencies and responsibilities: In our experience, group
brainstorming sessions have facilitated the production of the FCL specifications. In particular, the
participation of different kind of experts has provided different views that were
important in the discussions performed during the formalization process. We highlight the
fact that brainstorming sessions were mainly guided by the certification expert, whose
knowledge provided specific details that are of importance for the safety auditor during
the safety assessment. The opportunity to have an FCL expert speeded up the
formalization and the creation of templates for reuse. However, FCL is not a very known
language. Thus, there are not many FCL experts available. Therefore, it is necessary
to provide training courses for teaching FCL. The target group for the training may
be mainly conformed by process engineers who already have expertise in compliance
management.</p>
      <p>
        Tooling: In our current work, the rules were written manually, introducing the
possibility of typos in the syntax of the rules and inconsistencies in the rules statements.
Therefore, the production of our initial FCL specifications resulted in incoherent files
that were not understood by the compliance checker. To solved this issue, edition and
syntactic correctness of the FCL specifications were ensured manually. However,
manual corrections are long and tedious activities. For this reason, we consider that the
provision of tools for supporting the process of writing and verifying rules, as well as
the creation and instantiation of SCP templates should be developed. Part of our work
should also be the provision of these tools.
The collection of experiences distilled from formalization projects is an advisable way
to save time and avoid mistakes in future projects. We can find lessons learned in the
formalization of software engineering standards in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. In a similar way, we have
collected the specific lessons learned in a methodological guideline, aiming at facilitating
the formalization of the ISO 26262 clauses. Guidelines are also widely used to spread
the used of novel methods in engineering tasks. One example is the Oracle Policy
Modeling best practices guidelines [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] whose aim is helping analysts to describe the way
in which different types of business rules can be modeled. Similarly, a methodology to
guide companies to establish Cyber-Physical Social System data subjects consent and
data usage policies (described in OWL) is presented in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Guidelines for supporting
the formal representation of safety regulatory requirements (using Z) are introduced
in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. The use of tabular expressions in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] can also be seen as a guideline to
generate formal models of system requirements. The authors of FCL have also published
explicative examples of the modeling of FCL rules within the business context, e.g., [
        <xref ref-type="bibr" rid="ref15 ref16">15,
16</xref>
        ], which can be used as a guideline for learning the language.
      </p>
      <p>The use of FCL for supporting compliance management tasks in automotive is a
novelty. We did not find yet specific examples or guidelines that apply to the domain.
Therefore, the results of the formalization-oriented pre-processing of ISO 26262
documented in this paper may be of interest for process engineers involved in the cars
manufacturing. Additionally, we consider that this work can be used as a starting point
to derive domain-specific guidance applicable to process-based safety standards beyond
ISO 26262.
7</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions and Future Work</title>
      <p>In this paper, we presented the lessons learned from performing a formalization-oriented
pre-processing of ISO 26262. Initially, we identify the essential normative structures,
namely those structures that define the safety process to be adopted for developing the
car’s safety-critical systems. Then, we identified the repetitive structures of the standard
that can be considered SCP. With the identified SCP, we create templates to consolidate
a reusable knowledge base for future formalization jobs. The knowledge gathered in the
pre-processing is used to define a methodological guideline for facilitating the
formalization of normative clauses in ISO 26262. We also illustrate the defined methodology
by formalizing ISO 26262 part 3 and discussed our findings.</p>
      <p>
        From the discussion presented in Section 5, we consider that one important part of
the future work is the training of process engineers in FCL. Therefore, a course called
Quality assurance - Certification of safety-critical (software) systems3, which is under
construction, will consider an overview of compliance checking and the formalization
of compliance rules with FCL. We also need to optimize the creation and verification of
rule sets. Thus, we are considering the design and development of a pattern-based rule
editor to facilitate rules creation, and rule sets verification. We consider that
methodological guidelines are also needed in other safety-critical domains. Thus, we aim at
studying other safety standards and adapt any required step resulting from their
specificities. This work is also expected to be combined with previously achieved results [
        <xref ref-type="bibr" rid="ref7 ref8">7,
8</xref>
        ] regarding the provision of automated compliance checking vision for the
safetycritical context.
      </p>
      <p>
        Acknowledgments. This work is supported by the EU and VINNOVA via the ECSEL
JU project AMASS (No. 692474) [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. ISO 26262:
          <string-name>
            <surname>Road</surname>
            <given-names>Vehicles-Functional</given-names>
          </string-name>
          <string-name>
            <surname>Safety</surname>
          </string-name>
          . International
          <string-name>
            <surname>Standard</surname>
          </string-name>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Francesconi</surname>
          </string-name>
          , E.:
          <article-title>Semantic model for legal resources: Annotation and reasoning over normative provisions</article-title>
          .
          <source>Semantic Web</source>
          <volume>7</volume>
          (
          <issue>3</issue>
          ) (
          <year>2016</year>
          )
          <fpage>255</fpage>
          -
          <lpage>265</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Hashmi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Governatori</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wynn</surname>
          </string-name>
          , M.T.:
          <article-title>Normative requirements for regulatory compliance: An abstract formal framework</article-title>
          .
          <source>Information Systems Frontiers</source>
          <volume>18</volume>
          (
          <issue>3</issue>
          ) (
          <year>2016</year>
          )
          <fpage>429</fpage>
          -
          <lpage>455</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Nute</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Defeasible Logic</article-title>
          . In: International Conference on Applications of Prolog, Springer (
          <year>2001</year>
          )
          <fpage>151</fpage>
          -
          <lpage>169</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Alberti</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gavanelli</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lamma</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zese</surname>
          </string-name>
          , R.:
          <article-title>Dischargeable Obligations in Abductive Logic Programming</article-title>
          . In Springer, ed.:
          <source>International Joint Conference on Rules and Reasoning</source>
          . (
          <year>2017</year>
          )
          <fpage>7</fpage>
          -
          <lpage>21</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Governatori</surname>
          </string-name>
          , G.:
          <article-title>Representing business contracts in RuleML</article-title>
          .
          <source>International Journal of Cooperative Information Systems</source>
          . (
          <year>2005</year>
          )
          <fpage>181</fpage>
          -
          <lpage>216</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Castellanos</given-names>
            <surname>Ardila</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.P.</given-names>
            ,
            <surname>Gallina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Ul Muram</surname>
          </string-name>
          ,
          <string-name>
            <surname>F.</surname>
          </string-name>
          :
          <article-title>Enabling Compliance Checking against Safety Standards from SPEM 2.0 Process Models</article-title>
          .
          <source>In: Euromicro Conference on Software Engineering and Advanced Applications (SEAA)</source>
          .
          <article-title>(</article-title>
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Castellanos</given-names>
            <surname>Ardila</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.P.</given-names>
            ,
            <surname>Gallina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>UL Muram</surname>
          </string-name>
          ,
          <string-name>
            <surname>F.</surname>
          </string-name>
          :
          <source>Transforming SPEM 2</source>
          .
          <article-title>0-compatible Process Models into Models Checkable for Compliance</article-title>
          .
          <source>In: 18th International SPICE Conference</source>
          .
          <article-title>(</article-title>
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Castellanos</given-names>
            <surname>Ardila</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.P.</given-names>
            ,
            <surname>Gallina</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          :
          <article-title>Formal Contract Logic Based Patterns for Facilitating Compliance Checking against ISO 26262</article-title>
          .
          <source>In: 1st Workshop on Technologies for Regulatory Compliance (TeReCom)</source>
          . (
          <year>2017</year>
          )
          <fpage>65</fpage>
          -
          <lpage>72</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Verlage</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Munch</surname>
          </string-name>
          , J.:
          <article-title>Formalizing software engineering standards</article-title>
          .
          <source>In: Third IEEE International Software Engineering Standards Symposium and Forum</source>
          . (
          <year>1997</year>
          )
          <fpage>196</fpage>
          -
          <lpage>206</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>J.: Oracle</given-names>
          </string-name>
          <string-name>
            <surname>Policy</surname>
          </string-name>
          <article-title>Automation (OPA). Best Practice Guide for policy Modelers</article-title>
          .
          <article-title>(</article-title>
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Fernandez</surname>
          </string-name>
          , J.:
          <article-title>Deliverable 6.1: Privacy policy formalization (v. 1) (</article-title>
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Vilkomir</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bowen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ghose</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Formalization and assessment of regulatory requirements for safety-critical software</article-title>
          .
          <source>Innovations in Systems and Software Engineering</source>
          <volume>2</volume>
          (
          <issue>3</issue>
          -4) (
          <year>2006</year>
          )
          <fpage>165</fpage>
          -
          <lpage>178</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Singh</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lawford</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maibaum</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wassyng</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Use of Tabular Expressions for Refinement Automation</article-title>
          .
          <source>In: International Conference on Model and Data Engineering</source>
          . (
          <year>2017</year>
          )
          <fpage>167</fpage>
          -
          <lpage>182</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Governatori</surname>
          </string-name>
          , G.:
          <article-title>Practical normative reasoning with defeasible deontic logic</article-title>
          .
          <source>In: Reasoning Web International Summer School</source>
          . (
          <year>2018</year>
          )
          <fpage>1</fpage>
          -
          <lpage>25</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Governatori</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>The regorous approach to process compliance</article-title>
          .
          <source>In: IEEE 19th International Enterprise Distributed Object Computing Conference Workshops and Demonstrations</source>
          . (
          <year>2015</year>
          )
          <fpage>33</fpage>
          -
          <lpage>40</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17. AMASS.:
          <article-title>Architecture-driven, Multi-concern and Seamless Assurance and Certification of Cyber-Physical Systems</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>