suppressPackageStartupMessages({
  library(knitr)
  library(ggplot2)
  library(tidyverse)
  library(magrittr)
  library(leistungstests)
})

knitr::opts_chunk$set(echo=FALSE, 
               message=FALSE,
               warning=FALSE,
               error = FALSE,
               fig.path='figures/',
               cache=TRUE,
               dev='tikz')

Einleitung

Unter Design-Verifikation wird im Folgenden die experimentelle Überprügung des in den Meilensteinen 1 bis 3 festgelegten und entsprechend entworfenem Produktionsprozesses auf Einhaltung der in der Risiko-Analyse definierten Anforderungen verstanden. Die Sicherheit und Effektivität des hergestellten Produkts im klinischen Einsatz ist ein Aspekt der Design-Verifikation der hier nur indirekt, d.h. über die Risiko-Analyse, eingeht.

Die Anforderungen aus der Risko-Analyse sind für jedes Leistungsmerkmal separat festzulegen und lauten für ein gegbenes Leistungsmerkmal:

  1. Der Produktionsprozess muß so gestaltet sein, das produzierte Teile mit einer Wahrscheinlichkeit von mindestens $p_{min}$ 'gut' bzgl. des Leistungsmerkmales sind. 'Gut' heißt dabei: Das gemessene Leistungsmerkmal ist innerhalb der definierten Spezifikation bzw. das Merkmal wird als gut (i.o.) bewertet.
  2. Weiterhin ist die 'Qualität' des empirischen Tests festzulegen, mit der obige Anforderung an den Produktionsprozess überprüft wird.

Ein Endprodukt wird als gut bewertet, falls es bzgl. jedem definierten Leistungsmerkmal als gut bewertet wird.

Die untersuchten Leistungsmerkmale lassen sich qualitativ in zwei Klassen einordnen:

Begrifflichkeiten und Bezeichnungen

Unter Produktionsprozess wird im Folgenden die Reduktion des Prozesses auf ein Leistungsmerkmal verstanden. Für den vorliegenden Zweck ist ein gegebener Produktionsprozess zunächst durch eine Zahl charakterisiert: Nämlich die Wahrscheinlichkeit mit der er das Leistungsmerkmal innerhalb der Spezifikation 'produziert'. Diese Wahrscheinlichkeit bezeichne ich mit $p$ und nenne sie auch i.o.-Rate des Prozesses. Ein Prozess ist i.o. ist falls $p \ge p_{min}$, sonst n.i.o.

Im Gegensatz zu attributiven Merkmalen kann man bei variablen Merkmalen den Produktionsprozess noch informativer charakterisieren. Nämlich durch die Angabe von Prozess-Mittelwert $\mu$ und Prozess-Standardabweichung $\sigma$ bzw. Variabilität. Genau diese zusätzliche Information nutzt man zur Konstruktion besserer Tests.

Aus Sicht der verwendeten Modelle in diesem Manual ist der Prozess bei attributiven Merkmalen allein durch die i.o.-Rate $p$ charakterisiert.

Bei variablen Merkmalen wird der Produktionsprozess entweder durch die i.o.-Rate $p$ oder durch $\mu$ und $\sigma$ charakterisiert, wobei $p$ natürlich durch $\mu$ und $\sigma$ bestimmt wird.
Es wird unterstellt, dass das Leistungsmerkmal normalverteilt mit den Parametern $\mu$ und $\sigma$ ist.

Disclaimer

Die hier vorgestellten Tests überprüfen den Status des Prozesses zum Prüfzeitpunkt. Kontinuierliche Prozesskontrolle, d.h. Überprüfung der Unveränderlichkeit des Produktionsprozesses, wird mit den vorgestellten Tests nicht überprüft.

Begriffe aus der Testtheorie

Zur Einordung von Begriffen aus der Testtheorie sind diese noch einmal in der üblichen Fall-Matrix ^[siehe auch: Wikipedia: Fehler 1. und 2. Art und Wikipedia: Statistischer Test] dargestellt. \begin{center} \begin{tabular}{ l | l | l} & \parbox[t]{5cm}{Testergebnis:\Produktionsprozess wird i.o. bewertet} & \parbox[t]{5cm}{Testergebnis:\Produktionsprozess wird n.i.o bewertet} \ \hline \parbox[t]{3.5cm}{'Wahrheit':\Produktionsprozess ist i.o., d.h. $p \ge p_{min}$} & \parbox[t]{5cm}{Die Wahrscheinlichkeit für diesen Fall bezeichnet man als \textbf{Konfidenzlevel des Tests}}& \parbox[t]{5cm}{Fehler 1. Art oder $\alpha$-Fehler Die Wahrscheinlichkeit für diesen Fall bezeichnet man als \textbf{Signifikanzlevel oder Niveau des Tests} \} \ \hline \parbox[t]{3.5cm}{'Wahrheit':\Produktionsprozess ist n.i.o., d.h. $p < p_{min}$} & \parbox[t]{5cm}{Fehler 2. Art oder $\beta$-Fehler} & \parbox[t]{5cm}{Die Wahrscheinlichkeit für diesen Fall bezeichnet man als \textbf{Power des Tests}} \end{tabular} \end{center}

Die Nullhypothese $H_0$ und Alternativhypothese $H_A$ sind bei allen Tests in diesem Manual:
$H_0$: Produktionsprozess erfüllt die Anforderung, d.h. $p\ge p_{min}$
$H_A$: Produktionsprozess erfüllt Anforderung nicht, d.h. $p < p_{min}$

Bemerkung: Der Begriff Konfidenz-Level wird üblicherweise nur im Zusammenhang mit Intervall-Schätzern verwendet. Da die ISO 16269-6 ihrem Wesen nach eine Intervall-Schätzung ist, wird dort auch das Konfidenzlevel als Maß für die 'Qualität' der Schätzung verwendet. Das Konfidenzlevel in der angegebenen Matrix ist im Regelfall nicht gleich der Power des Tests! ^[Vergleiche Kapitel Herleitung der Test-Power] Dies liegt daran, das der Begriff 'Konfidenzlevel' in der ISO 16269-6 in einem anderen Kontext verwendet wird.

Gerade bei Tests in der medizinischen Diagnositik werden auch die Begriffe Sensitivität und Spezifizität verwendet um die Qualität eines Tests zu beurteilen.

Gute Tests zeichenen sich dadurch aus, das sie eine hohe Sensitivität und eine hohe Spezifizität haben.

Zum Verständnis folgende Analogie: Betrachtet man einen Prozess der die Anforderungen nicht erfüllt (d.h. $p < p_{min}$) als 'krank' und einen Prozess der die Anforderung erfüllt (d.h. $p \ge p_{min}$) als 'gesund' so bedeutet die Festlegung der Test-Power eine Anforderung an die 'Sensitivität' des Tests. D.h. man will Krankheitsfälle auch mit hoher Wahrscheinlichkeit als krank diagnostizieren. Dies geht gerade bei attributiven Merkmalen zu lasten der Spezifizität des Tests. D.h. bei diesen Tests werden 'gesunde' Prozesse oft auch fälschlicherweise als 'krank' diagnostiziert, mit allen Konsequenzen der unnötigen Behandlung bis zum 'tot-kurieren' des eigentlich gesunden Patienten.

Aufgrund der Beschränkung in der Stichprobengröße, kan man gerade bei den Tests attributiver Merkmale nicht gleichzeitig Anforderungen an die Spezifizität und Sensitivität (=Power) stellen. Bei variablen Merkmalen ist das vorgestellte Verfahren zur Ermittlung der Stichprobengröße ein Ansatz neben der Sensitivität des Tests auch die Spezifizität zu verbessern.

Test-Qualität

Die Qualität eines empirisch-statistischen Tests lässt sich auf verschiedene Arten quantifizieren. Die 'Qualität' der hier verwendeten Tests wird einheitlich über die 'Test-Power' definiert. Die Test-Power gibt an, mit welcher Wahrscheinlichkeit der Test einen Produktionsprozess detektiert, der den gestellten Anforderungen nicht entspricht.

Beispiel: Die in der Risikoanalyse definierten Anforderungen an den Produktionsprozess lauten: Produzierte Teile sollen mit mindestens 99% 'gut' bzgl. des Leistungsmerkmales sein. Diese Anforderung soll mit einem Test geprüft werden der eine 'Power' von 75% hat. Dies bedeutet: Der empirisch-statistische Design-Verifikationstest muß so gestaltet sein, daß Produktionsprozesse, deren i.o.-Rate bzgl. des Leistungsmerkmals kleiner als 99% ist mit einer Wahrscheinlichkeit von mindestens 75% durch den Test als unzureichend (n.i.o.) beurteilt werden.

Eine noch aussagekräftigere Quantifizierung von statistischen Tests bedient sich sogenannter Operating-Characteristic-(OC)-Kurven. Siehe hierzu das Kapitel über Design-Verifikations-Tests attributiver Merkmale, wo diese zur Bestimmung der Stichprobengröße verwendet werden.

Die Test-Qualität, d.h. die Test-Power muß neben der minimalen i.o.-Rate $p_{min}$ des Produktionsprozesses in der Risikoanlayse des Leistungsmerkmales festgelegt werden.

Design-Verifikations-Tests attributiver Merkmale

Test-Durchführung

Anforderungen bzgl. attributiver Leistungsmerkmale werden mit folgendem Test empirisch-statistisch überprüft:

  1. Aus dem Produktionsprozess wird eine Stichprobe^[siehe Kapitel Stichprobenentnahme] der Größe $n$ entnommen.

  2. Das Leistungsmerkmal wird an allen Elementen der Stichprobe bewertet.

  3. Sind alle Stichprobenelemente als 'gut' bewertet, so wird der Produktionsprozess bzgl. dieses Leistungsmerkmales als den Anforderungen entsprechend beurteilt. Wird mindestens ein Element der Stichprobe als 'schlecht' bewertet, so wird der Produktionsprozess als nicht den Anforderungen entsprechend beurteilt.

Einordung des Tests in den Rahmen der ISO 2859

Der vorgeschlagene Test für attributive Merkmale ist inhaltlich an die ISO 2859-1 angelehnt, wie im Folgenden kurz erläutert wird. Auf der Internetseite des National Institute of Standards and Technology ^[http://www.itl.nist.gov/div898/handbook/pmc/section2/pmc231.htm] ist das Vorgehen bei der Anwendung dieser Norm wie folgt beschrieben:

  1. Decide on the AQL.
  2. Decide on the inspection level. ^[Die Wahl sogenannter Sonder-Inspection-Levels ist nichts anderes als die Wahl 'schlechter' Tests d.h. in unserem Falle Tests mit kleiner Power. Aufgrund der Beschränkung in der Stichprobengröße ist dieser Kompromiß unvermeidlich.]
  3. Determine the lot size.
  4. Enter the table to find sample size code letter.
  5. Decide on type of sampling to be used.
  6. Enter proper table to find the plan to be used.
  7. Begin with normal inspection, follow the switching rules and the rule for stopping the inspection (if needed).

In dem vorgestellten Verfahren finden diese Punkte folgende Entsprechungen:

  1. Festlegung des Acceptance-Quality-Limits entspricht der Festlegung der Minimalanforderung $p_{min}$ an den Prozess.
  2. Festlegung des 'inspection-levels' entspricht der Festlegung der Test-Qualität, d.h. in unserem Falle der Test-Power.
  3. Hier nicht anwendbar. Der Produktionsprozess ist ein im Prinzip unendliches Reservoir an Produkten.
  4. -6. Die Punkte 4.-6. sind im Programm automatisiert. Wie in der ISO ist die Binomialverteilung^[Der definierte Test entspricht einem Zufallsexperiment mit Binomialverteilung (siehe z.B. Wikipedia/Binomialverteilung): Man 'zieht' $n$ Elemente aus dem Prozess, wobei jedes Element mit der Wahrscheinlichkeit $p$ (der i.o.-Rate des Prozesses) 'gut' ist. Zu gegebenem $p$ lässt sich dann die Wahrscheinlichkeit berechnen nur 'gute' Elemente in der Stichprobe zu finden.] die Berechnungsgrundlage.

Bis auf Punkt 7. wird in dem vorgestellten Verfahren im Prinzip genauso verfahren. Punkt 7. betrifft die kontinuierliche Überprüfung des Prozesses. Eine kontinuierliche Prüfung wird hier nicht umgesetzt und ist bis auf Begrifflichkeiten der eigentliche Grund warum das vorgestellte Verfahren nicht der Umsetzung der ISO 2859 entspricht.

Stichprobengröße

Die Göße der Stichprobe ergibt sich aus den Anforderungen die bzgl. dieses Leistungsmerkmales definiert wurden. D.h. bei festgelegter minimimaler i.o.-Rate $p_{min}$ und Test-Power ergibt sich die minimale Stichprobengröße um diese Anforderungen zu erfüllen. Zur praktischen Bestimmung der Stichprobengröße kann man das von mir entwickelte Programm verwenden. Das Prinzip nach dem die Stichprobengröße bestimmt wird wird im Nachfolgendem beispielhaft erläutert.

Programmverwendung

Unter dem Reiter 'Attributives Leistungsmerkmal' kann man die Anforderungen, d.h. $p_{min}$ und Test-Power, eingeben. Die für diese Anforderungen benötigte minimale Stichprobengröße wird dann angegeben. Zur genaueren Analyse des Testplanes wird dann noch die dazugehörige OC-Kurve angegeben.

OC-Kurven und Programm-Erläuterung

Die Bestimmung der Stichprobengröße wird mit Hilfe von sogenannten OC (operating-characteristic) -Kurven der Testpläne durchgeführt.

Ein Testplan für attributive Merkmale wird durch die Zahlen (n,c) definiert. Wobei n = Stichprobengröße und c die maximale Anzahl n.i.o.-Elemente in der Stichprobe ist, bis zu der der Test als bestanden bewertet wird.

In den verwendeten OC-Kurven eines Tests ist die Wahrscheinlichkeit für das Testurteil 'Design erfüllt die Anforderung' gegen die i.o.-Rate $p$ des Produktionsprozesses aufgetragen.

Zur Illustration folgendes Beispiel: Das Leistungsmerkmal soll mit einer Wahrscheinlichkeit von mindestens 95% i.o. produziert werden. Diese Forderung soll mit einem Test der Power von 25% geprüft werden.

Wie man von diesen Anforderungen auf die Stichprobengröße kommt, ist im Begleittext der Graphiken (Figure 1) und (Figure 2) erklärt, in denen die OC-Kurven für Stichprobengrößen von drei bis neun dargestellt sind. Zusätzlich eingezeichnet sind die geforderte minimale i.o.-Rate und die Test-Power.

Die unterschiedliche Qualität der Testpläne spiegelt sich im unterschiedlichen Verlauf der OC-Kurven wider. Ist man in der Größe der Stichprobe nicht beschränkt, so kann man Testpläne (n,c) konstruieren die in gewisser Weise optimal sind. Ein 'optimaler' Testplan würde Produktionsprozesse mit $p<p_{min}$ mit annähernd 100%-iger Wahrscheinlichkeit als n.i.o. und Prozesse mit $p\ge p_{min}$ mit 100%-iger Wahrscheinlichkeit als i.o. klassifizieren. Da man in der Größe der Stichproben aber beschränkt ist muß man sich mit diesen nicht-optimalen Testplänen begnügen und unter diesen denjenigen auswählen der die Minimal-Anforderung bzgl. der Test-Power erfüllt.

Das in den Begleittexten der Graphiken beschriebene Vorgehen zur Bestimmung der Stichprobengröße ist im Programm automatisiert.

```r$ die geforderte Power hat und bis auf ein schmales Band um $p_{min}$ i.o.- und n.i.o.-Prozesse mit fast 100\%-iger Wahrscheinlichkeit auch korrekt bewertet. Die Testpläne (n=3, c=0) bis (n=9, c=0) weichen von diesen 'optimalen' Test-Eigenschaften deutlich ab. Dieser Kompromiß ist der kleinen Stichprobengröße geschuldet. Weitere Diskussion: siehe nachfolgende Detailgraphik.", out.width='\linewidth'}

oc_data <- expand.grid( p = seq(0, 1, by = 0.001), sample_size = 3:9 ) %>% mutate( test_plan = paste("(", sample_size, ",0)", sep = ""), prob_reject = pbinom(q = sample_size - 1, size = sample_size, prob = p) )

ideal_test <- expand.grid( p = seq(0, 1, by = 0.001), sample_size = c(1000) ) %>% mutate( test_plan = paste("(", sample_size, ",0)", sep = ""), prob_reject = pbinom(q = 945, size = sample_size, prob = p) )

ggplot(data = oc_data, aes(x = p100, y = prob_reject100)) + geom_line(aes(color=test_plan)) + scale_x_continuous("p [\%] ('wahre' i.o.-rate des Produktionsprozesses)", breaks = seq(0,100,by=10)) + scale_y_continuous("Wahrscheinlichkeit des Testergebnisses: 'Design ist n.i.o'., d.h.\nWahrscheinlichkeit für mind. 1 nio Produkt in der Stichprobe", breaks=seq(0,100,by=5)) + geom_hline(yintercept = 25, alpha = 0.5, linetype = "dashed") + geom_vline(xintercept = 95, alpha = 0.5, linetype = "dashed") + geom_text(x = 10, y = 25, label = "geforderte Power des Tests", hjust = 0, vjust = 0) + geom_text(x = 95, y = 95, label = "geforderte min. i.o.-Rate ($p_{min}$)", hjust = 0, vjust = 0, angle = -90) + geom_line(data = ideal_test, aes(x = p100, y= prob_reject100), color = "grey") + guides(color = guide_legend(title = "Test-Plan"))

, title.position = "left", label.position = "right", direction = "horizontal", order = 1)) +

#theme(legend.position = 'top') #c(0,0), legend.justification = c(0,0))

```r$)! Betrachtet man z.B. Produktionsprozesse mit einer i.o.-Rate von 98\\%, d.h. einen Produktionsprozess der den Anforderungen entspricht, wird dieser durch den Tesplan (6,0) mit einer Wahrscheinlichkeit von ca. 12\\% fälschlicherweise als n.i.o beurteilt. Der Testplan (3,0) beurteilt diesen Prozess nur zu 5\\% fälschlicherweise als n.i.o.. Das hat System: Für alle i.o.-Prozesse (d.h. $p\\ge p_{min}$) ist die Wahrscheinlichkeit für einen Fehler 1. Art mit dem Testplan (6,0) größer als mit dem Testplan (3,0). Entsprechendes gilt für die anderen Testpläne. Anders formuliert: Aufgrund er kleinen Stichprobengröße bedingt die Anforderung an die Sensitivität des Tests eine schlechte Spezifizität des Tests. Um Gleichzeitig die Spezifizität zu erhöhen muß man deutlich größer Stichproben wählen. Um die Wahrscheinlichkeit für einen Fehler 1. Art trotzdem so weit wie möglich zu beschränken, wählt man den Testplan mit dem minimalen $n$ welcher die Anforderung bzgl. der Test-Power erfüllt. In diesem Fall ist das der Testplan (6,0).", out.width='\\linewidth'}

oc_data %>% filter(p >= 0.85) %>%  
ggplot(aes(x = p*100, y = prob_reject*100)) + 
  geom_line(aes(color=test_plan)) + 
  scale_x_continuous("p [\\%] ('wahre' i.o.-rate des Produktionsprozesses)",
                     breaks = seq(0,100,by=2)) +
  scale_y_continuous("Wahrscheinlichkeit des Testergebnisses: 'Design ist n.i.o'., d.h.\nWahrscheinlichkeit für mind. 1 nio Produkt in der Stichprobe",
                     breaks=seq(0,100,by=5)) +
  scale_color_discrete("Test-Plan") + 
  geom_hline(yintercept = 25, alpha = 0.5, linetype = "dashed") + 
  geom_vline(xintercept = 95, alpha = 0.5, linetype = "dashed") +
  geom_text(x = 86, y = 25, label = "geforderte Power des Tests", hjust = 0, vjust = 0) +
  geom_text(x = 95, y = 77, label = "geforderte minimale i.o.-Rate",  hjust = 0, vjust = 0, angle = -90) 

\newpage

Design-Verifikations-Tests variabler Merkmale

Test-Durchführung {#test-durchführung-variabel}

Design-Verifikationstests für variable Merkmale werden nach folgendem Schema durchgeführt:

  1. Aus dem Produktionsprozess wird eine Stichprobe der Größe $n$ entnommen.^[siehe Kapitel Stichprobenentnahme]

  2. Das Leistungsmerkmal wird an jedem Element der Stichprobe gemessen.

  3. Aus den Messgrößen wird entsprechend der ISO 16269-6:2014 ein oberes bzw. unteres Toleranz-Intervall-Limit berechnet.

  4. Das Test-Urteil hängt von der Art der Spezifikations-Grenze ab:

    • Für Merkmale mit unterer Spezifikations-Grenze gilt der Design-Verifikations-Test als bestanden, falls das untere Toleranz-Intervall-Limit größer als die untere Spezifikations-Grenze ist.
    • Für Merkmale mit oberer Spezifikations-Grenze gilt der Design-Verifikations-Test als bestanden, falls das obere Toleranz-Intervall-Limit kleiner als die obere Spezifikations-Grenze ist.

Einordung des Test in den Rahmen der ISO 16269-6

Der Zusammenhang zwischen den hier verwendeten Test-Design-Parametern $p_{min}$ und Power zu den in der ISO 16269-6 verwendeten Parametern Konfidenzlevel und 'Coverage-Probability' wird in den Kapiteln Herleitung Stichprobengröße und Herleitung Test-Power erläutert.

Stichprobengröße

Bei der Berechnung der Toleranz-Intervall-Limits nach ISO 16269-6 werden die Anforderungen bzgl. des Produktionsprozesses $p_{min}$ und der Test-Power bereits berücksichtigt. Dadurch sind die Anforderungen bzgl. $p_{min}$ und Test-Power unabhängig von der Stichprobengröße $n$ erfüllt!

Qualitativ kann man sich das so erklären: Ist die Stichprobengröße klein und damit die Unsicherheit in der Schätzung von Prozess-Mittelwert und -Variabilität groß, so wird dies dadurch kompensiert, daß das Toleranz-Intervall entsprechend größer konstruiert wird.

Naiv könnte man dann die Stichprobengröße auf 2 festlegen. Den Anforderungen bzgl. Power bzw. Sensitivität ist damit genüge getan, aber durch kleine Stichproben steigt die Wahrscheinlichkeit für eine Fehler 1. Art. D.h. den Prozess als n.i.o. zu bewerten obwohl er den Anforderungen entspricht (d.h. $p\ge p_{min}$)!

Die Erfüllung der Anforderung bzgl. Test-Power bei variablen Merkmalen, unabhängig von der Stichprobengröße, gibt einem die Freiheit, die Stichproben-Größe nach anderen Kriterien zu bestimmen. Eine einfache Möglichkeit ist: Die Stichprobengröße zur Prüfung variabler Merkmale wird willkürlich auf bspw. 5 festgelegt. Damit sind die Anforderungen aus der Risikoanalyse an den Test bzgl. der Power erfüllt wenn das Toleranz-Intervall entsprechend ISO 16269-6 konstruiert wird.

Eine andere Möglichkeit ist: Hat man aus Versuchen in der Vorentwicklung eine Schätzung des Prozess-Mittelwerts und der Prozess-Variabilität (Standardabweichung), so kann man diese Information nutzen, um die Stichprobengröße $n$ so zu wählen, das der Test mit einer vorgegebenen minimalen Wahrscheinlichkeit bestanden wird.

Qualitativ geht man folgendermaßen vor. Man unterstellt, daß der 'wahre' Produktions-Mittelwert $\mu$ und die 'wahre' -Variabilität (Standardabweichung $\sigma$) des vorliegenden Prozesses gleich den in den Vorentwicklungsversuchen empirisch bestimmten Werten $\bar x_v$ und $s_v$ sind. D.h. man setzt: $\mu = \bar x_v$ und $\sigma = s_v$. Damit kann man für diesen Prozess $(\mu = \bar x_v, \sigma = s_v)$ für jede Stichprobengröße $n$ die Wahrscheinlichkeit berechnen mit der er den in Kapitel Testdurchführung definierten Test besteht. ^[Herleitung der Formel siehe Anhang Berechnung der Test-Power]

Gibt man nun eine Wahrscheinlichkeit vor, mit der der vorliegende Prozess den Design-Verifikations-Test mindestens bestehen soll, so kann ich die dafür notwendige Stichprobengröße $n$ bestimmen.

Dieses Vorgehen habe ich im Programm umgesetzt und gebe die so bestimmte Stichprobengröße für den Test als Empfehlung(!) an.

Programmverwendung

Test-Auswertung: Messwerte und Test-Spezifikationen müssen eingetragen werden. Das Test-Ergebnis wird dann berechnet. Es besteht die Möglichkeit das Test-Resultat als Report-Template im word-Format abzuspeichern.

Eingegebene Daten können zur Wieder- oder Weiterverwendung in ein R-Format (suffix .rds) gespeichert und wieder geladen werden.

Stichprobengrößen-Empfehlung aus Vorversuchen: Als Entscheidungshilfe zur Stichprobenbestimmung können Versuchsergebnisse aus Vorversuchen über die gleiche Maske eingegeben werden. Um mit vorgegebener, angestrebter Wahrscheinlichkeit den Test zu bestehen, wird eine Empfehlung zur Stichprobengröße berechnet. Umgekehrt wird zu einer beliebigen Stichprobengröße die Wahrscheinlichkeit angegeben mit der ein Prozess mit den Parametern $(\bar x_v, s)$ den Test besteht.

Hierbei ist zu beachten: Sind diese Parameter nur mit wenigen Versuchen ermittelt worden, so sind sie mit einer entsprechend hohen Unsicherheit behaftet! Entsprechend unsicher ist damit die gegebene Empfehlung! Weiterhin ist diese Empfehlung nur sinnvoll wenn der zu testende Prozess nach den Vorversuchen nicht mehr modifiziert wurde.

Graphische Darstellung zur Stichprobengrößen-Bestimmung: Verschiedene graphische Darstellungen sollen die Annahmen und Unsicherheiten verdeutlichen, die in die Stichprobengrößen-Bestimmung eingehen.

Details siehe online-Hilfe.

OC-Kurven von Tests für variable Merkmale

Der Vollständigkeit wegen sind hier auch noch einmal OC-Kurven für Tests von variablen Merkmalen mit unterschiedlichen Stichprobengrößen dargestellt. Im Gegensatz zu attributiven Merkmalen werden diese nicht zur Stichprobengrößenbestimmung verwendet, obwohl dies die 'reine Lehre' wäre. Strenggenommen muß man eine Test definieren ohne Vorwissen über das Testergebnis zu verwenden. Genau das wird aber getan wenn die Stichprobengröße anhand von Ergebnissen aus der Vorentwicklung festgelegt wird. Trotzdem ist dieses Vorgehen legitim da eine Unterlaufung der Testanforderungen bzgl. Power nicht geschieht. Ein sehr viel formaler Ansatz zum Einbringen von Vorwissen in das Test-Design wäre ein sogenannter 'Bayescher Ansatz'. Ohne ins Detail zu gehen, kan man das vorgeschlagene Verfahren zur Stichprobengrößenbestimmung als 'abgekürzten' Bayeschen Ansatz interpretieren.

```r$) mit zunehmend höherer Wahrscheinlichkeit als n.i.o. bewertet und i.o.-Prozesse ($p \ge p_{min}$) mit zunehmend höherer Wahrscheinlichkeit als i.o. bewertet. D.h. mit zunehmendem $n$ steigt sowohl die Sensitivität als auch die Spezifizität, im Gegensatz zu den Tests attributiver Merkmale bei denen sich (aufgrund der kleinen Stichprobengröße) mit zunehmender Sensitivität die Spezifizität verschlechtert.", out.width='\linewidth'}

expand.grid( p = seq(80, 100, by = 0.1), sample_size = c(5, 10, 15, 1000), power = c(75), p_min = c(95) ) %>% mutate(process_sd = 10, lsl = 0) %>% mutate( prob_reject = p_reject_ostit( process_mean = lsl + qnorm(p/100) * process_sd, process_sd = process_sd, sample_size = sample_size, spec_limit = lsl, spec_type = "lsl", p_min = p_min/100, power = power/100 ) * 100 ) %>%

ggplot() + geom_line(aes(x = p, y = prob_reject, color=factor(sample_size))) + scale_x_continuous("p [\%] ('wahre' i.o.-rate des Produktionsprozesses)", breaks = seq(80,100,by=2)) + scale_y_continuous("Wahrscheinlichkeit des Testergebnisses: 'Design ist n.i.o'., d.h.\nWahrscheinlichkeit für mind. 1 nio Produkt in der Stichprobe", breaks=seq(0,100,by=5)) + geom_hline(aes(yintercept = power), alpha = 0.5, linetype = "dashed") + geom_vline(aes(xintercept = p_min), alpha = 0.5, linetype = "dashed") + scale_color_discrete("Sample-Size")

facet_grid(power ~ p_min, labeller = label_both)

```

\newpage

Stichprobenentnahme

Entnahme einer Stichprobe der Größe n bedeutet nicht, dass für jedes Leistungsmerkmal unterschiedliche Stichproben entnommen werden. Insgesamt wird für den Design-Verifikations-Test eine Stichprobe von N Fertigprodukten aus dem Produktionsprozess entnommen. Dieses N muß so gewählt werden, dass jedes Leistungsmerkmal mindestens an der hierfür bestimmten Stichprobengröße geprüft werden kann.

Ob ein Leistungsmerkmal am Endprodukt (d.h. verpackt, sterilisiert ...) geprüft werden muß ist im Einzelfall zu prüfen. Evtl. kann begründet werden das eine 'in-Prozess'-Prüfung genügt.

Die insgesamt benötigte Anzahl N an Produkten hängt davon ab in welcher Reihenfolge man die Tests durchführen kann. Bei gegebener Stichprobengröße $n$ für jedes Leistungsmerkmal und der Kenntnis, welcher Test nach welchem durchgeführt werden kann, ist die Bestimmung des benötigten minimalen N ein kombinatorisches Problem. Ein möglicher Ansatz zur Bestimmung dieses minimalen N durch das bekannte 'Travelling-Salesman-Problem' wurde in einem Workshop vorgestellt.

\appendix

Anhang: Herleitung verwendeter Formeln

Berechnung der Test-Power für Tests von variablen Merkmalen {#herleitung-test-power}

Die Test-Power wie sie hier verwendet wird taucht in der ISO 16269-6 nicht auf. Ihrem Wesen nach ist die ISO 16269-6 eine Intervall-Schätzung. Das Toleranz-Intervall ist so konstruiert das mindestens $p_{min}$ Prozent der Messwerte innerhalb des Intervalls liegen. Die 'Sicherheit' der Schätzung wird in der Norm über das Konfidenz-Level quantifiziert. Wie im Folgenden (am Bsp. für untere Spezifikationsgrenzen) gezeigt wird, ist das in der ISO 16269-6 verwendete Konfidenz-Level exakt die Test-Power wie sie in diesem Manual verwendet wird.

Folgende Bezeichnungen werden vewendet:
$ltl$: Lower Tolerance Limit
$lsl$: Lower Specification Limit
$u_p$: p-te Quantil der Standard-Normalverteilung
$\bar x$: Stichproben-Mittelwert
$s$: Stichproben-Standardabweichung
$kc$: one-sided statistical tolerance limit factors (definiert in (A.13), ISO 16269-6))

Per Definition lautet das Testresultat 'nicht bestanden', falls

$$ltl < lsl.$$ da unterstellt wird, daß das Leistungsmerkmal normalverteilt ist, erfüllen Produktions-Prozesse mit Mittelwert $\mu$ und Standardabweichung $\sigma$ die Anforderungen bzgl. der minimalen i.o.-Rate $p_{min}$, falls gilt:

$$ \mu \ge lsl + u_{p_{min}}\cdot \sigma $$ Damit ergibt sich die Power (minimale Wahrscheinlichkeit den Prozess als n.i.o. zu beurteilen, falls er die Anforderung nicht erfüllt):

$$ P\big(\text{Test-Result: n.i.o.} | \text{Prozess erfüllt Anforderung nicht}\big) = $$ $$P(ltl < lsl | \mu < lsl + u_{p_{min}}\cdot \sigma) \ge $$ $$P(ltl < lsl | \mu = lsl + u_{p_{min}}\cdot \sigma) = $$ $$P\big (\bar{x} -kc \cdot s \le lsl \big | \mu = lsl + u_{p_{min}}\cdot \sigma) = $$

$$P(\bar x - kc\cdot s \le \mu - u_{p_{min}} \cdot \sigma) \stackrel{def. ISO}{=} 1 - \alpha $$ Die Ungleichung gilt, da man zum worst-case-Fall übergeht, d.h. nur Prozesse betrachtet, die grenzwertig i.o./n.i.o sind. Die letzte Gleichung ist die Definitions-Gleichung (A.13) in der ISO 16269-6:2014. Wobei $1 - \alpha$ das zum Toleranz-Intervall gehörende Konfidenz-Level ist.

Das Konfidenzlevel des Toleranzeintervalls ist also eine untere Grenze für die Wahrscheinlichkeit den Test nicht zu bestehen, falls der Prozess die Anforderungen tatsächlich nicht erfüllt. Per Definition ist das Konfidenzlevel $1-\alpha$ aus der ISO 1626-9 damit die Power des in Kapitel Test-Durchführung definierten Tests.

Bestimmung der Stichprobengröße bei variablen Merkmalen {#bestimmung-sample-size}

Grundlage der Empfehlung zur Stichprobengröße ist die Tatsache, dass man zu gegebenen Prozess-Parametern $\mu$ und $\sigma$ und festgelegtem Test (d.h. Stichprobengröße $n$, Test-Power und $p_{min}$) die Wahrscheinlichkeit für das Test-Urteil 'Prozess ist n.i.o.' exakt berechnen kann. Mit den Bezeichnungen aus vorangehendem Kapitel gilt:

Folgende Bezeichnungen werden verwendet:
$b := \frac{\mu - lsl}{\sigma}$
$\alpha = 1 - \text{Test-Power}$
$n =$ Stichprobengröße
$\bar x_{v}$: Stichproben-Mittelwert der Vorversuchsreihe
$s_{v}$: Stichproben-Standardabweichung der Vorversuchsreihe

$$P\big (\text{Test-Urteil: 'Prozess ist n.i.o.' | Prozess ist Normalverteilt mit }(\mu,\sigma)\big) =$$ $$P\big( \bar x - kc \cdot s < lsl | \mu = lsl + b\cdot \sigma\big) = $$ $$P\big(\bar x - kc \cdot s < \mu - b \cdot \sigma\big) =$$ $$P\Bigg (\frac{\frac{\bar x - \mu}{\sigma / \sqrt n} + \sqrt n \cdot b }{\frac{s}{\sigma}} < \sqrt n \cdot kc \Bigg) = $$ $$pt(q = \sqrt n \cdot kc(\alpha, n, p_{min}), df = n-1, ncp = \sqrt n \cdot b)$$ Letzte Gleichung gilt, da $$\frac{\frac{\bar x - \mu}{\sigma / \sqrt n} + \sqrt n \cdot b }{\frac{s}{\sigma}}$$ eine nicht zentrale t-verteilte Zufallsvariable mit Freiheitsgrad $df = n-1$ und $ncp = \sqrt n\cdot b$ ist. $pt$ ist die zugehörige Verteilungsfunktion.

Die unbekannten Prozess-Parameter $\mu$ und $\sigma$ werden nun durch die empirischen Größen $\bar x_{v}$und $s_{v}$ aus Versuchsreihen der Vorentwicklung geschätzt, d.h. man setzt $b = \frac{\bar x_{v} - lsl}{s_{v}}$. Eine Empfehlung der Stichprobengröße mit der der Test mit einer vorgegebenen Wahrscheinlichkeit $p_{\text{Erfolg}}$ bestanden wird, ermittle ich dann wie folgt: Ich wähle das (minimale) $n$ für welches:

$$ P\big (\text{Test-Urteil: 'Prozess ist i.o.' | Prozess ist Normalverteilt mit }(\mu,\sigma)\big) = $$ $$ 1 - P\big (\text{Test-Urteil: 'Prozess ist n.i.o.' | Prozess ist Normalverteilt mit }(\mu,\sigma)\big) = $$ $$ 1 - pt\Bigg(q = \sqrt n \cdot kc(\alpha, n, p_{min}), df = n-1, ncp = \sqrt n \cdot \frac{\bar x_{v} - lsl}{s_{v}}\Bigg) \ge p_{\text{Erfolg}}$$

Umgekehrt kann man zu einer vorgegebenen, geplanten Stichprobengröße $n$ die Wahrscheinlichkeit $p_{\text{Erfolg}}$ berechenen mit der der Test wahrscheinlich bestanden wird.



stephanGit/leistungstests documentation built on May 30, 2019, 3:14 p.m.