Konzep ion und p o o ypische
Implemen ie ung eines F amewo ks zu
au oma isie en So wa emessung
Von de Uni e si ä Bay eu h
zu E langung des G ades eines
Dok o s de Na u wissenscha en (D . e . na .)
genehmig e Abhandlung
on
Be nha d Daubne
gebo en in München
1. Gu ach e : P o . D . And eas Hen ich
2. Gu ach e : P o . D . Be nha d Wes ech el
Tag de Ein eichung: 05.03.2008
Tag des Kolloquiums: 09.07.2008
Meinem Va e
He mann Daubne (b1940 d1980)
gewidme
ii
Concep ual Design and p o o ypical
Implemen a ion o a F amewo k o
au oma ed So wa e Measu emen
Abs ac
Wi hin co po a e managemen so called Managemen Cockpi s o Managemen
Suppo Sys ems a e well known. These IT sys ems a e designed o he isualisa ion
o decision- ele an in o ma ion. They a e able o p o ide company managemen
wi h key pe o mance indica o s abou he company’s ope a ions a a click.
Analogously, p ojec cockpi s a e mean o p o ide p ojec manage s wi h pe o -
mance indica o s abou ongoing IT p ojec s. Examples a e es co e age, comple ion
a e, code quali y o spen e o . The measu emen ools should be able o eco d
hese so wa e measu es au oma ically.
A ailable so wa e measu emen applica ions howe e ei he s ongly depend on
ce ain p ocess models o de elopmen en i onmen s, can no pe o m measu es
au oma ically bu only isualize manually en e ed in o ma ion o can only be con-
igu ed o ex ended by he use in a limi ed way.
Wi hin his wo k a amewo k o au oma ed so wa e measu emen is p esen ed.
I s main ea u es a e he la ge deg ee o measu emen au oma ion and he possibi-
li y, o de ine he so wa e measu es o collec independen ly o a conc e e p ojec .
Fo his pu pose con ex in o ma ion is used o c ea e ancho poin s o so wa e
measu es. A con ex can be a ce ain ac i i y o he unde lying p ocess model, a
p ojec phase o a unc ionali y ha has o be implemen ed. Thus i is possible, o
ins ance, o es ic size measu emen s on ce ain p ojec phases o on componen s
ha p o ide a ce ain unc ionali y.
Many measu emen ools only allow o measu e al eady comple ed a e ac s o
only can collec so wa e measu es ha conce n he whole p ojec . In con as o
hese ools he app oach p esen ed he e makes i possible o de ine so wa e measu es
wi h espec o a ce ain con ex . The en i ies ha ac ually ha e o be measu ed
need no o be known a he ime he so wa e measu e is de ined. Thus so wa e
measu es can be collec ed in a s anda dized way ac oss p ojec bo de s.
As p o o ypical implemen a ion o he so wa e measu emen app oach a ame-
wo k is p esen ed ha is based on an Open-Sou ce p ojec managemen ool. The
amewo k, which p o ides API unc ions o ga he simple so wa e measu es, allows
he lexible de ini ion o complex so wa e measu es ha a e compu ed au oma ical-
ly a p ojec ’s un ime and a e isualized whe e app op ia e. The de ini ion o he
so wa e measu es o collec is done by means o he unde lying p ojec managemen
ool. Thus al eady main ained p ojec in o ma ion can be eused.
In o de o p oo he po en ial o his app oach he measu emen ool is e alua ed
wi hin he scope o wo s uden so wa e de elopmen p ojec s.
iii
i
Ku z assung
Im Rahmen de be iebswi scha lichen Un e nehmenss eue ung sind sogenann-
e Managemen -Cockpi s ode Managemen un e s ü zungssys eme schon länge be-
kann . Dabei handel es sich um EDV-Sys eme zu Visualisie ung en scheidungs e-
le an e Da en, welche insbesonde e de Un e nehmenslei ung au Knop d uck we-
sen liche Kenng ößen (Key Pe o mance Indica o s) des Un e nehmens da s ellen.
Analog dazu sollen P ojek lei s ände den P ojek lei e n en sp echende Kenng ö-
ßen de lau enden IT-P ojek e da s ellen. De a ige Kennzahlen sind beispielsweise
die Tes abdeckung, de Fe igs ellungsg ad, die Code-Quali ä ode de be ei s e -
b ach e A bei sau wand. Diese So wa emaße soll en dazu on den Messwe kzeugen
au oma isie e ass we den können.
Ak uell e ügba e Anwendungen zu So wa emessung sind jedoch en wede s a k
an bes imm e P ozessmodelle ode En wicklungsumgebungen gebunden, können eil-
weise selbs keine Messwe e e mi eln und dienen somi als eine Visualisie ungs-
we kzeuge ode können nu eingesch änk on den Anwende n kon igu ie ode
e wei e we den.
Im Rahmen diese A bei wi d dahe ein F amewo k zu au oma isie en So wa-
emessung o ges ell . Zu dessen wesen lichen An o de ungen gehö en die wei ge-
hende Au oma isie ung des Messp ozesses und die Möglichkei , die zu e hebenden
So wa emaße unabhängig on einem konk e en P ojek de inie en zu können. Da-
zu we den Kon ex in o ma ionen bes imm , welche als Anknüp ungspunk e ü die
zu e hebenden So wa emaße dienen. Ein Kon ex kann dabei eine bes imm e Ak-
i i ä des zug unde liegenden Vo gehensmodells, eine P ojek phase ode eine zu
implemen ie ende Funk ionali ä sein. Dadu ch is es beispielsweise möglich, Um-
angsmessungen au bes imm e P ojek phasen ode au Komponen en, du ch die
bes imm e Funk ionali ä en implemen ie we den, einzusch änken.
Im Gegensa z zu ielen ande en Messwe kzeugen, die en wede nu die Ve mes-
sung on be ei s e s ell en A e ak en e lauben ode So wa emaße nu au de Ebe-
ne des Gesam p ojek s e mi eln können, e möglich es de hie da ges ell e Ansa z,
So wa emaße in Bezug au einen bes imm en Kon ex zu de inie en. Die konk e-
e Ausp ägung de le z endlich zu messenden En i ä en muss zum Zei punk de
De ini ion des So wa emaßes noch nich bekann sein. Dadu ch kann e eich we -
den, dass So wa emaße s anda disie und übe P ojek g enzen hinweg konsis en
e mi el we den können.
Als p o o ypische Implemen ie ung dieses So wa emessungsansa zes wi d ein F a-
mewo k da ges ell , welches au eine Open-Sou ce-P ojek e wal ungsso wa e ba-
sie . Dieses F amewo k, welches en sp echende API-Funk ionen zu E mi lung ein-
ache So wa emaße zu Ve ügung s ell , e laub die lexible De ini ion komplexe
So wa emaße, welche dann zu P ojek lau zei au oma isie e mi el und gege-
benen alls isualisie we den können. Zu De ini ion de zu e hebenden So wa e-
maße wi d au die Kon igu a ionsmöglichkei en de zug unde liegenden P ojek e -
wal ungsso wa e zu ückgeg i en. Dadu ch können bei de So wa emessung be ei s
o handene P ojek in o ma ionen wiede e wende we den.
Um die T ag ähigkei des in diese A bei da ges ell en Ansa zes un e Beweis
zu s ellen, wi d die E aluie ung dieses Messwe kzeuges anhand zweie s uden ische
So wa een wicklungsp ojek e da ges ell .
i
Vo wo
Im P inzip e wies sich die wi scha liche Schie lage, in welche die Schmid Bank
KGaA in Ho als mein ehemalige A bei gebe im Jah 2001 ge a en wa , als Aus-
löse ü mich, ein P omo ions o haben zu beginnen. Ich s and damals nach meh-
e en Jah en Be u s ä igkei im Banken-IT-Um eld o de Wahl, einen unsiche
gewo denen A bei spla z gegen ein P ojek mi unbekann em Ziel und noch wenige
bekann en Weg do hin einzu auschen.
He P o . D . And eas Hen ich, de damals den neu geg ünde en Leh s uhl ü
So wa e echnik an de Uni e si ä Bay eu h inneha e, ha mich in pe sönlichen
Gesp ächen und pe eMail e mu ig , diesen Weg zu gehen. An diese S elle möch e
ich ihm nich nu ü die Mo i a ion und die Be euung diese A bei als Dok o a e
meinen Dank aussp echen, sonde n auch da ü , dass e es mi du ch die Ans ellung
als wissenscha lichen Mi a bei e an seinem Leh s uhl übe haup e s e möglich
ha , ein P omo ions o haben anzugehen. Auch wenn das Thema eigen lich on An-
ang an im Be eich de We kzeugun e s ü zung ü die So wa emessung angesiedel
wa , lies mi mein Dok o a e die F eihei , mich zunächs ausgiebig mi benachba -
en Themen, wie dem Requi emen s-Enginee ing ode de Fo sch i smessung on
SAP-R/3-P ojek en zu beschä igen, um dann nach ca. zwei Jah en doch noch zum
le z endlichen Thema diese A bei o zud ingen.
Genauso möch e ich mich bei He n P o . D . Be nha d Wes ech el nich nu
ü die Übe nahme des Zwei gu ach ens au das he zlichs e bedanken, sonde n auch
da ü , dass e sich als Be eue o O geduldig Zei genommen ha , um mi mi
Hinde nisse und neue Aspek e zu disku ie en, abe auch, um k i ische Anme kungen
und we olle An egungen zu machen. Auch am Leh s uhl on P o . Wes ech el and
ich ein an egendes und ha monisches A bei sklima o , welches es mi e möglich e,
meine Dok o a bei e olg eich abzuschließen.
Einen wesen lichen An eil an dem uch ba en A bei sum eld ha en auch mei-
ne zahl eichen Leh s uhlkollegen, welche au die S ando e Bay eu h und Bambe g
e eil wa en. Namen lich möch e ich hie insbesonde e Sab ina Uh ig, Thomas
Buchmann, Alexande Do o , Ma in Eisenha d , Volke Lüdecke, D . Ka lheinz
Mo gen o h, D . Wol ang Mülle und D . Gün e Robbe e wähnen. Da übe hin-
aus danke ich auch den wei e en Leh s uhlmi gliede n Monika Glase und Be nd
Schlesie , die als gu e Seelen im Hin e g und ü einen eibungslosen Be ieb des
Leh s uhls und seine In as uk u so g en.
Zum Schluss möch e ich mich noch seh bei meine Ehe au Heike bedanken,
welche die nich beneidenswe e Au gabe übe nommen ha , diese A bei au ypo-
g aphische Fehle und unkla e Fo mulie ungen du chzusehen.
Ho , im Juli 2008 Be nha d Daubne
ii
1 Einlei ung
zu können. Fü die Au wandsschä zungen wiede um sind, neben den An o de ungen
an die zu en wickelnde So wa e, genaue Kenn nisse übe die eingese z en So wa-
een wicklungsp ozesse no wendig. Dabei is sowohl in de Li e a u als auch bei
den ope a i ä igen P ak ike n akzep ie , dass So wa emessung sowohl ak isch
im Rahmen de Planung, de Bewe ung und des Con ollings einzelne So wa e-
p ojek e als auch s a egisch zu Gewinnung on E ah ungen mi den eingese z en
En wicklungsp ozessen und zu P ozess e besse ung e olg eich eingese z we den
kann.
Die in den Nach ich en iel ach gemelde en P obleme bei de Umse zung on
IT-P ojek en (z. B. LKW-Mau , Job-Po al de Bundesagen u ü A bei , Bundes-
weh -IT-P ojek He kules) e deu lichen jedoch, wie schwe es den Be eilig en äll ,
die e aglich e einba en An o de ungen an Um ang, Quali ä und Kos en de
IT-P ojek e auch zu e üllen. Dabei d ingen übliche weise nu die P obleme de
populä s en IT-P ojek e, welche auch ü das Allgemeinin e esse on Bedeu ung
sind, ans Lich de Ö en lichkei .
Die U sachen ü den häu ig unbe iedigenden Ve lau ode ga das Schei e n on
So wa een wicklungsp ojek en sind iel äl ig. Ein G und is siche lich auch in de
ungenügenden Anwendung on So wa e-Mess e ah en zu E kennung on Planab-
weichungen bei So wa ep ojek en und zum Au bau eine Wissens- und E ah ungs-
basis ü die e wende en So wa ep ozesse zu suchen.
De Nu zen de So wa emessung wi d zwa auch on den meis en P ak ike n
g undsä zlich nich in F age ges ell , jedoch agen sämliche Ak i i ä en im Rahmen
So wa emessung
als Kos en ak o de So wa emessung, wie auch alle üb igen Tä igkei en im Rahmen des un e neh-
menswei en Con ollings, e s einmal nich s zu P oduk i i ä bei. Dahe gehö en
Ak i i ä en zu So wa emessung zu den e s en Tä igkei en, au die e zich e wi d,
alls sich inne halb eines P ojek s e minliche ode pe sonelle Engpässe abzeichnen.
Ode es we den zwa im Rahmen des So wa een wicklungsp ojek es Techniken zu
So wa emessung angewende , dabei abe nich die geeigne en So wa emaße e ho-
ben, die Mess e ah en ehle ha du chge üh ode die alschen Schlüsse aus den
Messe gebnissen gezogen.
1.2 Zielse zung und Au bau de A bei
Das Ziel de o liegenden A bei is dahe , ein F amewo k zu So wa emessung zu
en wickeln, welches ge ade den P ak ike n die Anwendung on So wa e-Mess e -
ah en e leich e n soll.
Dies beinhal e zunächs , die So wa emessung so wei wie möglich zu au oma isie-
en und dami gleichsam zu s anda disie en. Das bedeu e , dass de ope a i ä ige
Au oma isie ung
de
So wa emessung P ojek mi a bei e so wenig wie möglich mi Rou ine ä igkei en wie dem manuellen
Füh en on P ü - und Messlis en belas e we den soll, um sich seinen eigen lichen
Au gaben widmen zu können. S a dessen sollen du ch dieses F amewo k o de i-
nie e So wa emaße (z. B. P oduk i i ä smaße) zusammen mi ih em Kon ex (z. B.
Kon ex de
So wa emessung die zugehö ige Ak i i ä im Rahmen des So wa een wicklungsp ozesses) egelmäßig
2
1.2 Zielse zung und Au bau de A bei
und au oma isie e hoben und die E gebnisse geeigne au be ei e we den. Zu die-
sem Zweck müssen o he en sp echende In o ma ionsbedü nisse iden i izie und
da aus die ele an en So wa emaße abgelei e we den.
Dabei sollen in diese A bei wede neue So wa emaße en wickel noch gänzlich
neue Ve ah en zu E hebung diese So wa emaße da ges ell we den. Das hie e a - Kombina ion
bewäh e Ansä ze
bei e e F amewo k soll s a dessen bewäh e Ansä ze de So wa emessung mi ein-
ande e knüp en und mi els Au oma isie ung eine Möglichkei zu s anda disie en
und konsis en en Du ch üh ung be ei s bekann e So wa e-Mess e ah en bie en.
1.2.1 An o de ungen an das So wa emessungs-F amewo k
Konk e soll das zu en wickelnde F amewo k zu So wa emessung die olgenden
An o de ungen e üllen:
•Au oma isie ung de Messdu ch üh ung
Die eigen liche So wa emessung soll möglichs au oma isie e olgen, so dass
die Anwende (P ojek manage , P ojek mi a bei e ) on en sp echenden Rou-
ine-Tä igkei en en las e we den. Fü P ojek in o ma ionen, welche nich ma-
schinell e ass we den können (z. B. A bei szei en ü bes imm e Tä igkei en),
sollen en sp echende E assungmasken zu Ve ügung ges ell we den.
•Dynamische De ini ion on So wa emaßen
So wa emaße sollen on den e an wo lichen P ojek mi a bei e n dynamisch
zu P ojek lau zei de inie we den können. Dabei soll auch die De ini ion
komplexe (d. h. mi els ma hema ische Fo meln e knüp e ) So wa emaße
möglich sein.
•Wiede e wendung on So wa emaßen
Einmal de inie e So wa emaße sollen auch in nach olgenden P ojek en wie-
de e wende we den können. Dahe muss die E hebung de So wa emaße in
gleiche Weise e olgen, um die Messe gebnisse e gleichba zu machen. Diese
An o de ung implizie auch, dass es möglich sein muss, die zu e hebenden
So wa emaße unabhängig on einem konk e en P ojek zu de inie en.
•Au oma ische Iden i ika ion de zu messenden En i ä en
Aus den Fo de ungen nach de au oma isie en Messdu ch üh ung und de
Wiede e wendba kei on So wa emaßen olg unmi elba , dass das F a-
mewo k in de Lage sein muss, die le z endlich zu e messenden En i ä en
maschinell zu iden i izie en. Bei So wa emaßen, die sinn oll au e schiedene
P ojek e angewende we den können, muss diese Iden i ika ionsmechanismus
auch en sp echend übe P ojek g enzen hinweg unk ionie en.
•Visuelle Au be ei ung de Messe gebnisse
Die Messe gebnisse sollen isuell au be ei e und in übe sich liche Fo m da -
ges ell we den können.
3
1 Einlei ung
•Pe sis ie ung de Messe gebnisse
Die Messe gebnisse sollen daue ha gespeiche we den können, um bei de
Du ch üh ung on Messungen Ve gleichsmöglichkei en mi ühe en Messun-
gen zu haben.
•Ein ache Handhabung
De Eina bei ungsau wand in die Benu zung des So wa emessungs-F ame-
wo ks soll e nied ig genug sein, um po en ielle Anwende nich abzusch ecken.
Insbesonde e sollen du ch eine ein ache Handhabba kei des Sys ems So wa e-
en wickle , die bis je z keine So wa emess e ah en eingese z haben, e mu-
ig we den, E ah ungen mi de Anwendung on So wa emessungs echniken
zu sammeln.
•In eg ie ba kei in bes ehende Umgebungen
Das So wa emessungs-F amewo k soll e sich ein ach in bes ehende En wick-
lungsumgebungen in eg ie en lassen, da es insbesonde e bei g oßen Un e neh-
men wah scheinlich is , dass do be ei s um ang eiche Sys eme zu P ojek -
e wal ung und zu So wa een wicklung im Einsa z sind.
•Nied ige Anscha ungs- und Be iebskos en
Da, wie wei e oben ge o de , die Hemmschwelle zu Anwendung on Ve ah-
en de So wa emessung mi els des in diese A bei en wickel en So wa e-
messungs-F amewo ks möglichs klein sein soll, soll en auch keine ode nu
ge inge Anscha ungs- und Be iebskos en an allen. Diese Fo de ung läss sich
im Allgemeinen du ch die Ve wendung on Open-Sou ce-Komponen en e ül-
len.
•Pla o munabhängigkei
Schließlich soll e das So wa emessungs-F amewo k au möglichs ielen e -
schiedenen Be iebssys empla o men einse zba sein. Dies is insbesonde e
in den Fällen ele an , in denen das F amewo k in eine bes ehende he e ogene
Sys emlandscha in eg ie we den soll.
Die le z en ie Punk e können auch un e dem Schlagwo „Leich gewich igkei “
subsumie we den, weil die Anwende des So wa emessungs-F amewo ks nich ge-
Leich gewich iges
F amewo k zu
So wa emessung zwungen we den sollen, ih e P ozesse zu ände n ode au ande e En wicklungswe k-
zeuge zu wechseln.
Insgesam is somi das Ziel diese A bei , ein leich gewich iges F amewo k ü
die So wa emessung zu en wickeln, welches es e laub , die ü die jeweilige O ga-
nisa ion als wich ig e kann en So wa emaße s anda disie und au oma isie zu
e heben. Dieses F amewo k bes eh aus einem me hodischen Konzep zu De ini ion
de zu e hebenden So wa emaße und eine p o o ypischen Implemen ie ung eine
en sp echenden We kzeugun e s ü zung.
De wei e e Au bau diese A bei o ien ie sich dahe an de Mo i a ion, He lei-
ung und Implemen ie ung dieses leich gewich igen Ansa zes.
4
1.2 Zielse zung und Au bau de A bei
1.2.2 Au bau de A bei
Im Kapi el 2 wi d zue s de Themenbe eich de So wa emessung, welche auch
mi dem imme häu ige e wende en Beg i So wa eme ie bezeichne wi d, un e -
such und nähe bes imm . Dabei sollen insbesonde e die Beg i e So wa emaß und
So wa eme ik gegeneinande abgeg enz we den. Daneben wi d ein g undlegen- De ini ion und Ziele
de
So wa emessung
de Übe blick übe die Ziele und Einsa zmöglichkei en de So wa emessung gege-
ben. Wei e we den K i e ien au gezeig , anhand de e die unübe schauba e Menge
de in de Li e a u besch iebenen So wa emaße nähe klassi izie und geo dne
we den kann. So en häl beispielsweise allein die So wa emaß-Sammlung ZD-MIS
(Zuse/D abe – Measu e-In o ma ion-Sys em) [Zus98] übe 1500 So wa emaße zu-
sammen mi eine einhei lichen Besch eibung.
Auch wenn somi an e ügba en So wa emaßen kein Mangel he sch , mach es
e s ändliche weise wenig Sinn, im Rahmen eines So wa emessungs o habens will-
kü lich einige So wa emaße auszuwählen und diese wäh end des P ojek es zu e as-
sen. S a dessen e olg de Einsa z on So wa emess e ah en übliche weise au - Auswahl geeigne e
So wa emaße
g und un e nehme ische Ziele (z.B. Ve besse ung de Kundenzu iedenhei ) ode
zumindes au Basis on Zielse zungen inne halb des So wa e Enginee ings (z. B.
Reduzie ung des Wa ungsau wandes ü die So wa e), so dass die hie ü ele an en
und sinn oll anwendba en So wa emaße en sp echend ausgewähl we den müssen.
Dahe sollen e schiedene S a egien ü eine zielo ien ie e Auswahl on So wa-
emaßen bzw. ü einen sinn ollen Einsa z on So wa emess e ah en da ges ell
we den. Zusä zlich wi d un e such , ob es S anda d-So wa emaße gib , welche ü
die meis en So wa ep ojek e ele an sind und dahe g undsä zlich e hoben we den
soll en.
Anschließend wi d in Kapi el 3 de ak uelle Fo schungss and bzw. de ak uelle
S and de Technik au dem Gebie de Messwe kzeuge und - e ah en da ges ell . S and de Technik
Die Messwe kzeuge lassen sich dabei olgende maßen gliede n:
•Messwe kzeuge, welche in S anda d-En wicklungsumgebungen in eg ie sind,
dienen haup sächlich zu Anwendung ein ache So wa emaße au den P o-
g ammcode bzw. au UML-Diag amme.
•Sogenann e Dashboa ds können die E gebnisse bes imm e , o de inie e So -
wa emaße isualisie en. Dabei handel es sich meis ens um So wa emaße, wel-
che au Managemen ebene ele an sind und de en Ausp ägungen häu ig pla-
ka i in Fo m eine Ampel da ges ell we den.
•Sogenann e P ojek lei s ände e suchen, So wa emaße und sons ige P ojek -
in o ma ionen zielge ich e zu sammeln und en sp echend au be ei e zu isua-
lisie en. Jedoch sind hie die So wa emaße im Gegensa z zu den Dashboa ds
nich es o gegeben, sonde n ei kon igu ie ba .
Nachdem in Kapi el 4 zunächs ku z da ges ell wi d, welche So wa emaße ins-
besonde e au Managemen -Ebene on In e esse sind, wi d anschließend die Ke nidee So wa emaße au
Managemen ebene
diese A bei e läu e .
5
1 Einlei ung
Zu den Haup an o de ungen an das inne halb diese A bei en wickel e F amewo k
zu So wa emessung gehö , dass die zu e hebenden So wa emaße ei de inie und
zu P ojek lau zei au oma isie e ass we den können. Dami e gib sich die An-
o de ung, dass die Iden i ika ion de zu messenden En i ä en zu P ojek lau zei
maschinell e olgen muss. Dahe wi d un e such , welche Elemen e des So wa e-
en wicklungsp ozesses es gib , die als Anknüp ungspunk e ü So wa emaße dienen
Anknüp ungspunk e
ü So wa emaße können. Die Ve wendung diese Anknüp ungspunk e e möglich es, zu Lau zei die
zu messenden En i ä en au oma isie zu iden i izie en.
In diese Be ach ungen we den e schiedene Vo gehensmodelle mi einbezogen
und au die Anwendba kei dieses Ansa zes hin un e such . Dabei we den konk e-
e Handlungsanweisungen ü die De ini ion on So wa emaßen e a bei e , welche
dann le z endlich zu dem So wa emessungs-F amewo k üh en.
Eine wich ige Messg öße, welche insbesonde e im Rahmen des P ojek manage-
men s on Bedeu ung is , is de P ojek o sch i . Dahe soll am Beispiel des
Fo sch i s-
messung Fea u e D i en De elopmen s eine Möglichkei de Fo sch i smessung da ges ell
we den, welche sich auch (zumindes eilweise) au oma isie en läss .
Die E mi lung des P ojek o sch i s se z g undsä zlich die Kenn nis des ge-
plan en Au wandes o aus. Da diese insbesonde e zu Beginn des P ojek s und dami
Ve agsmodelle
zum Zei punk des Ve agsabschlusses nu schwe und mi en sp echenden Fehle -
wah scheinlichkei en zu bes immen is , sollen auch al e na i e Bep eisungsmodelle
ü So wa ep ojek e da ges ell we den.
Zum Abschluss dieses Kapi els wi d de Li e-Ansa z o ges ell . Diese wu de en -
wo en, um die Eignung eine So wa een wicklungsumgebung ü die Anwendung
agile Me hoden zu beu eilen. Es wi d jedoch gezeig , dass mi els de im Li e-
Rei eg admodell
zu E ek i i ä on
So wa emessung Ansa z da ges ell en Konzep e auch die E ek i i ä on So wa emessungsmaßnah-
men beu eil we den kann.
Da an anschließend wi d in Kapi el 5 das Konzep ü das So wa emessungs-
F amewo k e läu e und eine konk e e Implemen ie ungsmöglichkei mi els de
Open Sou ce So wa e Ma en besch ieben, welches ein F amewo k zu Au oma i-
Implemen ie ung
des Ansa zes sie ung on Au gaben im Rahmen de So wa een wicklung is . Zu diesem Zweck
wi d zunächs die g undlegende A chi ek u on Ma en und dessen E wei e ungs-
möglichkei en mi els Plugins un e such . Anschließend wi d die A chi ek u des
So wa emessungs-F amewo ks besch ieben.
Es olg in Kapi el 6 eine E aluie ung des inne halb diese A bei en wickel en
So wa emessungs-F amewo ks anhand zweie s uden ische So wa een wicklungs-
E aluie ung
p ojek e. An diese S elle we den auch die G enzen des besch iebenen Ansa zes
e läu e .
Abschließend we den in Kapi el 7 die E gebnisse diese A bei zusammenge ass
und es wi d ein Ausblick au wei e e Fo schungsaspek e bzw. noch o ene P oblem-
elde gegeben.
6
2 So wa emessung
You canno ha e a science
wi hou measu emen .
(Richa d W. Hamming)
2.1 De ini ion und Ziele de So wa emessung
2.1.1 G undbeg i e
Die So wa emessung beschä ig sich als Teilgebie de So wa e echnik mi de
Messung on Eigenscha en on So wa e und den bei de E s ellung de So wa e
e wende en P ozessen. Al e na i wi d imme häu ige auch de Beg i So wa e-
me ie ( gl. [Wik]) e wende , welche lau Zuse e s mals im Jah e 1987 einge üh So wa eme ie
wu de ( gl. [Zus98], S. 15).
De Beg i Messung bezeichne dabei nach [FP98] einen P ozess, bei dem A i-
bu en on En i ä en aus de ealen Wel (den Messobjek en) Messwe e nach kla
de inie en Regeln zugeo dne we den.
Die So wa emaße beziehen sich dabei au A ibu e eines ode meh e e Objek e
de So wa eanwendung, des So wa een wicklungsp ozesses ode de So wa ewa -
ung. Dahe e wenden wi in Anlehnung an [Dum01] die olgende De ini ion:
De ini ion 2.1 Die So wa emessung is de P ozess de Quan i izie ung on
A ibu en de Objek e bzw. Komponen en des So wa e Enginee ings mi de Aus-
ich ung au spezielle Messziele und gg . de Einbeziehung on Messwe kzeugen.
Bei de So wa emessung we den also Objek e aus de Wel des So wa e Enginee-
ings au Elemen e de Ma hema ik und dabei insbesonde e au Zahlen und Symbole So wa emessung
als Abbildung
abgebilde , mi dem Ziel, eine Eigenscha ode ein A ibu eine En i ä aus dem
So wa e Enginee ing quan i a i zu bes immen. Beispielsweise wi d du ch das So - En i ä
wa emaß Lines o Code (LOC) de Eigenscha Länge eines So wa e-Sou cecodes
ein We , nämlich die Anzahl de Code-Zeilen, zugeo dne .
Dahe de inie en sowohl [FP98] als auch [Zus98] eine Messung als Abbildung on
den Eigenscha en on Objek en de empi ischen Wel au o male Objek e (Zahlen
ode Symbole). Insbesonde e e schein an diese S elle de Beg i de Abbildung on
Bedeu ung, da sich diese auch bei de De ini ion des Maßes in de Ma hema ik inden
läss . Ma hema isch is ein Maß eine Abbildung on einem Teilmengensys em übe
eine G undmenge au die Menge de eellen und komplexen Zahlen. Dahe de inie en So wa emaß
wi das So wa emaß inne halb diese A bei olgende maßen:
7
2 So wa emessung
De ini ion 2.2 Ein So wa emaß is eine Abbildungs o sch i , welche A ibu en
on Elemen en des So wa e Enginee ings einen Zahlenwe zuweis , um dieses A -
ibu nähe zu cha ak e isie en. Diese Zahlenwe wi d als Messwe bezeichne .
Dahe muss beispielsweise bei dem So wa emaß LOC (siehe oben) auch angege-
ben we den, welche Sou cecode-Zeilen a sächlich zu zählen sind. In de Li e a u
und in de p ak ischen Anwendung di e ie en hie die Meinungen e heblich. Insbe-
sonde e geh es dabei da um, ob auch Kommen a - bzw. Lee zeilen zu zählen sind
ode nich (siehe dazu auch Abschni 2.3).
Sowohl [FP98] als auch [Zus98] weisen an diese S elle da au hin, dass diese
Messwe e sich au e schiedene Mess-Skalen (z.B. nominale, o dinale ode abso-
Mess-Skala
lu e) beziehen können. Diese De aillie ung is jedoch ü das wei e e Ve s ändnis
diese A bei nich no wendig. Fü eine ie e gehende Be ach ung wi d dahe au
die genann en Monog aphien e wiesen.
Viel wich ige e schein es s a dessen, an diese S elle den Beg i des Maßes on
dem de Me ik abzug enzen, auch ode ge ade weil die Beg i e So wa emaß und
Me ik
So wa eme ik sowohl in de deu schsp achigen als auch in de englischsp achigen
Li e a u o synonym e wende we den. Eine Me ik im ma hema ischen Sinn is
olgende maßen de inie :
De ini ion 2.3 Sei Xeine beliebige Menge. Eine Abbildung d:X×X−→ Rheiß
Me ik, wenn ü beliebige x, y, z ∈Xdie olgenden Bedingungen e üll sind:
d(x, y) = 0 ⇔x=y(De ini hei )
d(x, y) = d(y, x)(Symme ie)
d(x, y)≤d(x, z) + d(z, y)(D eiecksungleichung)
De We de Abbildung d(x, y)kann als de Abs and de Elemen e xund y
oneinande au ge ass we den. Somi handel es sich also bei eine So wa eme ik
eigen lich um ein Abs andsmaß:
So wa eme ik
De ini ion 2.4 Eine So wa eme ik is eine Abs ands unk ion, die Paa en on
A ibu en on So wa ekomponen en Zahlen zuo dne . ( gl. [Dum01])
In [FP98] (S. 103) inden sich auch en sp echende Beispiele ü So wa eme iken,
welche auch de ma hema ischen De ini ion eine Me ik Genüge un. Beispielsweise
we den bei de N-Ve sionen-P og ammie ung ( gl. [A i95], [AC77]) n e schiedene
Ve sionen eine k i ischen So wa ekomponen e unabhängig oneinande implemen-
ie . Die Annahme dabei is , dass die Wah scheinlichkei , dass die n e schiedenen
Beipiele ü
So wa eme iken En wickle eams dabei jeweils den gleichen Fehle bei de Implemen ie ung begehen,
ge ing is . Die nP og amm e sionen we den dann gleichzei ig ausge üh und alls
sich das Ve hal en de e schiedenen Ve sionen un e scheiden soll e, wi d maschinell
das E gebnis ausgewähl , welches die Meh hei de P og amme lie e . Dadu ch soll
insgesam die Ve lässlichkei de Anwendung e höh we den. Wenn man sich nun
8
2.1 De ini ion und Ziele de So wa emessung
da ü in e essie , wie un e schiedlich die einzelnen Implemen ie ungen a sächlich
ausge allen sind, kann man eine Ve schiedenhei sme ik de inie en, welche den Un-
e schied zwischen zwei Implemen ie ungen bes imm . Unabhängig da on, dass da-
zu zue s es geleg we den müss e, wie de Un e schied zwischen zwei P og ammen
de inie sein soll, handel es sich bei diese So wa eme ik um ein ech es Abs ands-
maß.
Als zwei es Beispiel wi d in [FP98] eine So wa eme ik genann , welche den Un-
e schied zwischen de Spezi ika ion eines P og ammes und dem implemen ie en
P og amm selbs bes imm . Dazu muss man diese Me ik als Abs andsmaß zwi-
schen zwei P oduk en de inie en und sowohl das P og amm als auch die Spezi ika-
ion jeweils als P oduk be ach en. De Abs and zwischen dem P og amm und de
Spezi ika ion nimm z. B. zu, wenn das P og amm eine spezi izie e Funk ionali ä
nich au weis .
Ein in e essan e Aspek an dem le z genann en Beispiel is , dass hie zwa wie-
de um eine So wa eme ik de inie wu de, welche die Dis anz zwischen eine P o-
g ammspezi ika ion und dem eigen lichen P og amm be echne , jedoch bei eine De ini ion eines
Maßes au Basis
eine Me ik
gegebenen Spezi ika ion de We de So wa eme ik als Maß ü die „Rich igkei “
eines P og ammes be ach e we den kann. Bzgl. dieses So wa emaßes is ein P o-
g amm also umso „ ich ige “, je kleine seine Dis anz zu Spezi ika ion is .
2.1.2 Objek e und Ziele de So wa emessung
So wa emaße können zunächs nach de A de zu e messenden Objek e un e -
schieden we den. Da sowohl ma e ielle Objek e (z. B. Pe sonen), ideelle Objek e
(z. B. P og amme) als auch konzep ionelle Objek e (z. B. P ozesse) e messen we -
den können, we den diese e schiedenen A en häu ig un e dem Beg i En i ä
subsumie ( gl. [FP98], S. 5, [Sim01], S. 21).
En sp echend de wäh end de So wa ebea bei ung iden i izie ba en, messba en Klassi izie ung on
So wa emaßen
En i ä en ha sich die olgende in [FP98] da ges ell e Klassi izie ung allgemein e a-
blie ( gl. [ABCR94], [PGF96], [Zus98]):
•P ozessmaße beziehen sich au Ak i i ä en inne halb des So wa een wick-
lungsp ozesses.
•P oduk maße beziehen sich au jede A on A bei se gebnissen (z. B. P o-
g amme, Dokumen e, Tes e gebnisse), welche aus den P ozessak i i ä en e-
sul ie en.
•Ressou cenmaße beziehen sich au Mi el, die ü die einzelnen P ozesse
benö ig we den.
G ünde, diese So wa emaße inne halb des So wa e Enginee ings zu e heben, sind Ziele de
So wa emessung
lau [PGF96] die Bedü nisse, die P ozesse, P oduk e und Ressou cen zu cha ak e-
isie en, zu beu eilen, zu p ognos izie en und zu e besse n:
9
2 So wa emessung
Die genann en En i ä s ypen we den cha ak e isie , um ein Ve s ändnis on
P ozessen, P oduk en und Ressou cen zu e langen und eine Ve gleichsg undlage ü
Cha ak e isie ung
zukün ige Bewe ungen zu scha en.
Wäh end des P ojek e lau s kann mi els So wa emessung egelmäßig beu eil
we den, ob de ak uelle S a us mi den Plan o gaben übe eins imm . So wa emaße
Beu eilung
ungie en diesbezüglich als en sp echende Senso en. Auch dienen So wa emaße da-
zu, die E eichung on Quali ä szielen und die Wi kungen on Technologie- und
P ozess e besse ungen in Bezug au die P oduk e und P ozesse zu beu eilen.
So wa emessung dien de P ognose, da sie eingese z wi d, um ein Ve s ändnis
de Beziehungen zwischen den P ozessen und den dabei e zeug en P oduk en zu
P ognose
scha en, und um Modelle zu Besch eibung diese Beziehungen e s ellen zu können.
Dadu ch können bes imm e A ibu e p ognos izie we den, indem die gemessenen
We e bes imm e ande e A ibu e e wende we den. Dies is no wendig, um ea-
lis ische Kos enschä zungen, Zei pläne und Quali ä sziele au zus ellen, und um en -
sp echende Ressou cen einzuplanen. P ognosemaße sind auch die Basis, um T ends
du ch Ex apola ion on Messwe en zu e kennen, wodu ch wiede um die o han-
den Kos en-, Au wands- und Quali ä sabschä zungen au g und de ak uellen Da en
übe a bei e we den können. Hoch echnungen und Abschä zungen au Basis his o-
ische Da en hel en bei de Risikoanalyse und bei de Lösung on Zielkon lik en in
Bezug au Design- und Kos enan o de ungen.
So wa emessung dien Ve besse ungszielen, da sie eingese z wi d, um quan i-
a i e In o ma ionen zu sammeln, mi els de e Hinde nisse, g undlegende P obleme
Ve besse ungsziele
ode Ine izienzen e kann und ande e Möglichkei en iden i izie we den können, um
die P oduk quali ä ode die Pe o mance on P ozessen zu e besse n. So wa e-
messung hil auch bei de Planung und dem Con olling on Ve besse ungsbes e-
bungen. Die Messung de ak uellen Pe o mance lie e die Messla e, anhand de e
beu eil we den kann, ob Ve besse ungsbemühungen die geplan e Wi kung zeigen
und ob dabei Nebene ek e au e en. Geeigne e So wa emaße hel en auch bei de
Ve mi lung on Zielen und G ünden ü Ve besse ungsbemühungen, um dadu ch
eine b ei e Un e s ü zung du ch die P ojek be eilig en zu e eichen ( gl. [PGF96]).
2.1.3 Klassi izie ung on So wa emaßen
Wie im Abschni 2.1.2 be ei s e wähn , können So wa emaße zunächs au g und
de zu messenden Objek e in P ozess-, P oduk - und Ressou cenmaße ka ego isie
we den. Da übe hinaus können So wa emaße auch dahingehend di e enzie we -
den, ob die zu messenden A ibu e einzelne En i ä en unmi elba mess echnisch
e ass we den können, ode ob eine we mäßige Bes immung einzelne Me kma-
le nu im Kon ex mi ande en Me kmalen ode En i ä en sinn oll is . In [FP98]
we den ü diese Un e scheidung die Beg i e in e ne A ibu eund ex e ne A ibu e
e wende .
Da jedoch die So wa emaße selbs klassi izie we den sollen und dabei de Un-
Di ek e und
indi ek e
So wa emaße e schied he ausges ell we den soll, ob eine Messung unmi elba möglich is ode
nich , we den im Wei e en in Anlehnung an [Sim01] die Beg i e di ek e und indi ek e
10
2.1 De ini ion und Ziele de So wa emessung
So wa emaße e wende .
•Di ek e So wa emaße beziehen sich au P ozess-, P oduk - ode Ressou -
cen-A ibu e, welche unmi elba du ch alleinige Un e suchung de en sp e-
chenden En i ä messba sind.
•Indi ek e So wa emaße beziehen sich au A ibu e on P ozess-, P oduk -
ode Ressou cen-En i ä en, welche on ande en En i ä en abhängig sind. Hie
muss die zu un e suchende En i ä in ih em Kon ex be ach e we den; und
das Messe gebnis häng meh om Ve hal en de En i ä als on diese selbs
ab.
Beispielsweise können iele A ibu e des Sou cecodes unmi elba du ch ein a-
ches Messen e mi el we den. Hie zug gehö en die Länge (z. B. in LOC gemessen)
ode die Komplexi ä (z. B. Anzahl de En scheidungspunk e), die somi zu den di-
ek en P oduk maßen zählen. Ande s e häl es sich z. B. mi de Anzahl de in Beispiele indi ek e
So wa emaße
einem Sou cecode-Objek en hal enen Fehle n. Abgesehen on den ehe ein ach zu
e mi elnden Syn ax ehle n, welche übliche weise om Compile en deck we den,
muss zum E kennen on Fehl unk ionen de Code ausge üh we den und z. B. mi -
els eines Uni -Tes -Mechanismus übe p ü we den. Hie bei häng die Anzahl de
ge unden Fehle auch s a k on de Gü e, d. h. dem Abdeckungsg ad de Uni -Tes s
ab. Noch wenige unmi elba zugänglich is die Anzahl de au P og ammie eh-
le zu ückzu üh enden Fehl unk ionen, die e s beim Kunden bzw. beim Anwende
en deck we den, und somi die Zu e lässigkei de So wa e. Dieses So wa emaß
häng on de Umgebung, in de die e ige So wa e eingese z wi d, ab und da on,
welche Funk ionen de So wa e im P oduk i be ieb a ächlich au ge u en we den.
Au Managemen ebene sind diese indi ek en So wa emaße o mals on g oßem In- Managemen -
ele an e
In o ma ionen
mi els indi ek e
So wa emaße
e esse. So soll beispielsweise die Kos en-E izienz on Ak i i ä en (z. B. on Code-
Inspek ionen) ode die P oduk i i ä on En wickle eams e mi el we den, um
Rückschlüsse au Kos ensenkungsmöglichkei en zu e hal en. Auch de Kunde bzw.
de Anwende is haup sächlich an indi ek en So wa emaßen wie de Zu e lässig-
kei , de Benu ze eundlichkei ode de Wa ba kei in e essie , da e on diesen
Aspek en unmi elba be o en is . Diese Fak o en haben unmi elba en Ein luss
au die To al Cos o Owne ship (TCO), d.h. die Gesam hei de Kos en eine In- To al Cos o
Owne ship
es i ion, die übe ih en komple en Lebenszyklus hinweg an allen, und sind somi
ü die Kau en scheidung ele an .
Alle dings sind diese indi ek en So wa emaße in de Regel schwie ige zu messen
als die di ek en. Zusä zlich können sie o e s ela i spä im Rahmen des En -
wicklungsp ozesses e ass we den. So kann z. B. die Zu e lässigkei e s ge es e
we den, nachdem die En wicklung abgeschlossen und das Sys em be iebsbe ei is
( gl. [FP98], S. 74 .).
2.1.3.1 P ozessmaße
Wie im Abschni 2.1.2 ange üh , dienen P ozessmaße dazu, ein besse es Ve s änd-
nis ü die e wende en P ozesse und de en Pe o mance zu e hal en. Alle dings
11
2 So wa emessung
•dem Ve gleich de a sächlichen P ozessumse zung mi den es geleg en Plänen
und Zielen,
•de Iden i ika ion und Behebung p ozessbezogene P obleme und
•de Be ei s ellung eine Da enbasis, um So wa emessung auch in zukün igen
P ozessen implemen ie en zu können ( gl. [CMM06], S. 178).
De G ad de möglichen Anwendba kei on So wa emaßen häng aus Sich des
CMMI on den Einblickmöglichkei en in den En wicklungsp ozess (Visibili y In o he
Einblickmöglichkei
in den En wick-
lungsp ozess So wa e P ocess, gl. [PCCW93], S. 19 .) ab. So s ell im Rei eg ad 1 de So wa e-
en wicklungsp ozess eine A Black Box da , in welche man Ressou cen hineins eck
und am Ende (ho en lich) en sp echende P ojek e gebnisse bekomm . Diese Ein-
blickmöglichkei en nehmen mi o sch ei endem Rei eg ad zu. So is beispielsweise
beim Rei eg ad 3 die inne e S uk u de P ozesse bekann und schließlich kann beim
Rei eg ad 5 nich nu in exis ie ende P ojek e Einblick genommen we den, sonde n
es soll en sich auch die Auswi kungen po en ielle P ozess e ände ungen beu eilen
lassen.
Im Einzelnen e geben sich dami die olgenden Möglichkei en de So wa eme-
ie in Abhängigkei om e eich en P ozess ei eg ad ( gl. [FP98], S. 89 ., [Kne06],
Anwendung de
So wa eme ie im
CMMI S. 44 .).
•Da beim Rei eg ad 1 de En wicklungsp ozess nu als ad hoc de inie is ,
können mangels Ve gleichsmöglichkei en die hie e hobenen So wa emaße nu
als Basis dienen, um zukün ige P ozess e besse ungen beu eilen zu können.
Beispielsweise können zu diesem Zweck Maße wie P ojek daue , Au wand und
P oduk i i ä e hoben we den.
•De Rei eg ad 2 zeichne sich du ch das Vo handensein on P ojek manage-
men aus. Dahe sind die Inpu - und Ou pu -G ößen de So wa ep ojek e be-
kann und können somi gemessen we den. Sinn oll e schein beispielsweise die
Messung on Um ang und Vola ili ä de An o de ungen. Auch kann mi els
en sp echende Messungen die Einhal ung on P oduk g ößen-, Au wands-,
Kos en- und Te minschä zungen übe wach we den.
•Beim Rei eg ad 3 sind de inie e P ozesse o handen. Somi sind auch die
einzelnen Ak i i ä en des En wicklungsp ozesses bekann und können e mes-
sen we den. Beispielsweise kann je z die Ve eilung on Au wänden au die
einzelnen P ozessak i i ä en gemessen und mi ande en P ojek en e glichen
we den. Du ch die de inie en P ozesse e gib sich auch eine T aceabili y zwi-
schen den End- und Zwischenp oduk en bzw. zu den An o de ungen. Diese
kann benu z we den, um die En s ehung, die Ve weildaue und die Behebung
on Fehle n zu un e suchen.
•Au Rei eg ad 4 wi d das Quan i a i e P ojek managemen un e Anwendung
on Ve ah en zu So wa emessung explizi om CMMI-Modell ge o de . De
Fokus de So wa emessung lieg da au , die Va ianz in den wesen lichen Kenn-
zahlen zu eduzie en, indem P ozess ehle e kann und behoben we den.
18
2.1 De ini ion und Ziele de So wa emessung
•Beim op imie enden Rei eg ad 5 sollen Kennzahlen und Me iken zu Ve bes-
se ung de P ozesse eingese z we den. Dabei is es beispielsweise denkba ,
e schiedene Va ian en eine P ozessde ini ion du chzu echnen, um au die-
se Weise die e izien es e P ozess a ian e zu inden. Ein wei e e Aspek is
auch die E hebung on Benchma ks, um die eigenen P ozesse mi denen de
We bewe be zu e gleichen ( gl. [CMM06], [Jon00]).
2.1.5 S a is ische P ozess egelung
Wie be ei s im Rahmen de Besch eibung des CMMI-Modells (Abschni 2.1.4.2)
e wähn , is eine Anwendung de So wa eme ie das Quan i a i e P ozessmana-
gemen . Dieses e wende Me hoden de S a is ischen P ozess egelung (S a is ical
P ocess Con ol (SPC), gl. [Oak96], [FC04], [CMM06], S. 375 .), welche aus dem
To al Quali y Managemen s ammen und au das Managemen on So wa ep ozes-
sen übe agen wu den ( gl. [Sei03]).
Dabei handel es sich um ein Ve ah en, mi els s a is ische Me hoden e schie-
dene Abweichungen bei de Umse zung on P ozessen zu e kennen. G undsä zlich Na ü liche und
auße gewöhnliche
Abweichungen bei
de P ozess-
Pe o mance
kann es bei de Aba bei ung on P ozessen imme zu Abweichungen om e wa -
e en Sollwe in Folge de na ü lichen S euung kommen. Diese en s eh aus ei-
ne Vielzahl kleine und e wa e e Einzelein lüsse bei de In e ak ion zwischen den
Komponen en eines P ozesses und is ela i gu o he sehba . Zusä zlich können
auße o den liche Ein lüsse den P ozess e lau beein lussen. Diese e en nu un e-
gelmäßig au , haben g öße e Auswi kungen und machen einen P ozess ins abil. Bei
ih em Au e en beda es des Eing ei ens des Managemen s. Bei de na ü lichen
S euung sind demgegenübe s ö ende Übe eak ionen zu e meiden ( gl. [Sei03]).
Eine Möglichkei , na ü liche und auße o den liche Fak o en oneinande zu un-
e scheiden, s ell die Ve wendung sogenann e Kon olldiag amme (Con ol Cha s,
gl. Abbildung 2.1) da . In diesen we den beispielsweise die Messwe e, de Mi el-
we alle Messwe e und die ein- bis d ei ache S anda dabweichung einge agen.
Anschließend läss sich mi els e schiedene Regeln übe p ü en, ob au g und diese
Messwe e de P ozess noch un e s a is ische Kon olle is , da die Abweichungen
noch im Rahmen de na ü lichen S euung sind.
Beispiel 1 (S a is ische P ozess egelung) In eine Fi ma soll de Au wand un-
e such we den, den die Mi a bei e jeweils ü den Suppo eines bes imm en P o-
duk s e b ingen müssen. In Tabelle 2.2 sind die ingesam p o Tag ange allenen Au -
wände xiin S unden ü den abgelau enen Mona mi n= 20 We k agen angegeben.
Zusä zlich wu de de absolu e Be ag δjde jeweiligen Ve ände ung angegeben.
Aus den Einzelau wänden xiwi d zunächs de Du chschni sau wand ¯xbe echne :
¯x=1
n
n
X
i=1
xi≈19,2 (n= 20)
19
2 So wa emessung
Abbildung 2.1: X/MR-Con ol-Cha zu S a is ischen P ozess egelung
Tag 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Au wand 16 20 21 8 28 24 19 16 17 24 19 22 26 19 15 21 17 22 16 14
δ4 1 13 20 4 5 3 1 7 5 3 4 7 4 6 4 5 6 2
Tabelle 2.2: Tabelle mi Au wänden ü den Suppo eines bes . P oduk s
Anschließend wi d aus den äglichen Ve ände ungen δi(mo ing ange) die du ch-
schni liche Ve ände ung ¯
δbe echne :
¯
δ=1
n−1
n
X
j=2
δj≈5,5
Die Messwe e xi, die Ve ände ungen δjund die Du chschni smaße ¯xund ¯
δwe den
in das Kon olldiag amm eingezeichne ( gl. Abbildung 2.1).
Wenn man nun da on ausgeh , dass die Messwe e no mal e eil sind, dann gil
ü die S anda dabweichung σde Messwe e eilung, dass
• ca. 68,0 % de Messwe e im Be eich ¯x±σ,
• ca. 95.0 % de Messwe e im Be eich ¯x±2σund
• ca. 99,7 % de Messwe e im Be eich ¯x±3σ
liegen ( gl. [S a05], S. 255 .).
Im Rahmen des SPC is es üblich, mi eine Nähe ung s ü die S anda dabwei-
chung σzu a bei en, die sich aus de du chschni lichen Ve ände ung ¯
δde Messwe -
e e gib :
s=¯
δ
d2
=5,5
1,128 = 4,88
Hie bei is d2ein sogenann e bias co ec ion ac o nach Ha e [Ha 60], de im
obigen Fall den We d2= 1,128 ha .
20
2.1 De ini ion und Ziele de So wa emessung
Dami lassen sich nun die obe e und die un e e Kon ollsch anke UCL (Uppe
Con ol Limi ) bzw. LCL (Lowe Con ol Limi ) zu
UCL = ¯x+ 3sund LCL = ¯x−3s
be echnen und in das Kon olldiag amm einzeichnen. De Be eich zwischen LCL
und UCL wi d in sechs Zonen de B ei e sgegliede ( gl. Abbildung 2.1).
Die Messwe e soll en dabei zu ällig, d. h. ohne bes imm e Mus e zu bilden, um
den Du chni swe e eil sein und sich um den Du chschni swe he um häu en.
Ande en alls wi d de P ozess als nich un e s a is ische Kon olle be ach e . Um
nun Messwe e und Mus e on Messwe en zu e kennen, die au einen unkon ol- Iden i ika ion
unkon ollie e
P ozesse
lie en P ozess hindeu en, gib es e schiedene Emp ehlungen. In [S a05] we den
beispielsweise die olgenden K i e ien o geschlagen:
•Ein Messwe be inde sich auße halb de beiden Kon ollsch anken. Bei einem
kon ollie en P ozess be äg die Wah scheinlichkei hie ü nu 0,3 %.
•Sieben ode meh au einande olgende Messwe e be inden sich au de selben
Sei e obe halb ode un e halb des Du chschni swe es. Die Wah scheinlichkei
pda ü e gib sich z. B. ü k= 7 Messwe e aus eine Be noulli-Ke e de
Länge kals p=1
2k= 0,78 %.
•Mindes ens sieben au einande olgende Messwe e bilden ein al e nie endes
Au -Ab-Mus e . Die Wah scheinlichkei da ü be echne sich in analoge Weise
als Be noulli-Ke e.
•Zwei au einande olgende Messwe e be inden sich auße halb de Wa nsch an-
ken. Diese we den meis ens im Abs and des zwei achen S anda dabweichung
um den Du chschni swe es geleg .
Die Anwendung de S a is ischen P ozess egelung is somi eine Möglichkei , Un-
egelmäßigkei en bei de Du ch üh ung on En wicklungsp ozessen zu e kennen. Sie
kann e wende we den, um e schiedene P o essionali ä sg ade bei de P ozessum-
se zung zu beu eilen, und gib somi Hinweise da au , ob Maßnahmen zu P o-
zess e besse ung angezeig sind.
Eine Wei e en wicklung de P ozessbeu eilung mi els S a is ische P ozess ege-
lung is die Six-Sigma-Me hode ( gl. [Töp04]). Dabei we den bes imm e P ozesse Six Sigma
ausgewähl und u. a. mi els Kon olldiag ammen analysie . Das Ziel dabei is , die
P ozesse sowei zu kon ollie en, dass die S anda dabweichung de P ozesse gebnisse
lang is ig au jede Sei e des Du chschni swe es sechs Mal (6σ) in die Tole anz-
g enzwe e passen ( gl. [S a05], S. 423 .).
21
2 So wa emessung
2.2 Ansä ze zu De ini ion on S a egien zu
So wa emessung
Nachdem im o he gehenden Abschni die Ziele de So wa emessung e läu e wu -
den, sollen im Folgenden e schiedene Ansä ze zu konsis en en Implemen ie ung
on S a egien zu zielo ien ie en Auswahl on So wa emessungsmaßnahmen da -
ges ell we den. Hie bei kann im Wesen lichen zwischen sogenann en Top-Down-
und Bo om-Up-Ansä zen un e schieden we den. Bei den E s e en wi d ein o ge-
gebenes Ziel ode ein P oblem du ch sch i weise Ze legung sowei e eine , bis
mögliche Lösungsansä ze sich ba we den. Bei de Bo om-Up-Me hode wi d dage-
gen zunächs de ze zei ige Is -Zus and analysie , um e l. o handene P obleme
zu en decken ode wünschenswe e Ve ände ungen zu de inie en.
2.2.1 Top-Down-Ansä ze zu De ini ion on S a egien zu
So wa emessung
2.2.1.1 Die Goal-Ques ion-Me ic-Me hode
Eine ypische Umse zung des Top-Down-Ansa zes is die seh e b ei e e Goal-
Ques ion-Me ic-Me hode (GQM) [BR88], [Bas92], [BCRS94], [SB99]. Wie in [SB99]
ausge üh wi d, wu de diese Me hode gegen Ende de 1970e Jah e on V. Basi-
li und D. Weiss im Rahmen e schiedene Indus iep ojek e en wickel und spä e
um wei e e, au D. Rombach zu ückgehende, Konzep e e wei e . Die G undidee
diese Me hode bes eh da in, dass So wa emessung imme in Hinblick au ein ode
Zielges eue e
Auswahl on
So wa emaßen meh e e konk e e Ziele du chge üh we den soll e. Diese Ziele we den du ch Ve -
eine ung au quan i izie ba e F agen übe üh , welche wiede um mi els geeigne e
So wa emaße bean wo e we den können ( gl. [BR88]).
Bei de Be ach ung de Ziele muss zwischen Zielen de So wa emessung und
(Quali ä s-)Ve besse ungszielen un e schieden we den. Die GQM-Me hode spezi ie
Ziele de
So wa emessung
s. s a egische
Ziele
und un e s ü z Messziele, d.h. Zielse zungen des So wa emessungs o habens ( gl.
[BCRS94]). Diese Ziele können jedoch au Ve besse ungszielen basie en bzw. on die-
sen abgelei e sein. Ve besse ungsziele ich en sich dagegen au konk e e Zielse zun-
gen inne halb eines Un e nehmens ode im Rahmen eines P ojek es. Dazu gehö en
beispielsweise die S eige ung de P oduk - ode Se icequali ä , Kos en eduzie ung,
Ve inge ung de Time- o-Ma ke -Zei spanne ode Ve inge ung des P ojek isikos.
Eine Anlei ung zu Bes immung on Managemen zielen und de en Ve eine ung zu
Ve besse ungs- und Messzielen inde sich un e ande em in [PGF96].
Die Messziele selbs üh en nich unmi elba zu eine e waigen Quali ä s e bes-
se ung ode Ve inge ung on En wicklungsau wand. S a dessen sollen dadu ch In-
o ma ionen zu E eichung de Ve besse ungsziele gewonnen we den. Insbesonde e
soll die GQM-Me hode einen Le np ozess de Be eilig en übe die Zusammenhänge
im Rahmen de So wa een wicklung bewi ken ([BCRS94]).
Konk e besch eib die GQM-Me hode d ei Ebenen de Messaus üh ung:
22
2.2 S a egien zu So wa emessung
•Goal – Konzep uelle Ebene
Diese Ebene behandel die F age, welche Ziele mi de So wa emessung e -
eich we den sollen. Diese Ziele we den in Bezug au einen Zweck (welches
Objek und wa um), eine Pe spek i e (welche Aspek und we ) und einem
Kon ex de inie .
•Ques ion – Ope a ionale Ebene
Au diese Ebene wi d e such , die Ziele mi els e schiedene quan i izie ba-
e F agen nähe zu gliede n und genaue zu bes immen ( gl. [BR88]). Dabei
müssen die F agen so gewähl we den, dass du ch de en Bean wo ung de
G ad de Ziele eichung beu eil we den kann ( gl. [BCRS94]). Die F agen
dienen somi de Ope a ionalisie ung de Ziele, d. h. den Zielen we den dadu ch
Indika o en zugeo dne , um sie dami de Analyse zugänglich zu machen. Je-
de F age wi d auch gleich eine e wa e e An wo in Fo m eine Hypo hese
zugeo dne . Dadu ch soll das P ojek eam dazu ange eg we den, übe die
ak uelle Si ua ion nachzudenken, wodu ch wiede um ein besse es Ve s ändnis
ü die P ozesse bzw. das P oduk s imulie we den soll. („Compa ison o eal
answe s wi h hese hypo heses will c ea e deep unde s anding o implici know-
ledge and he e o e la gely con ibu e o he lea ning e ec s o measu emen .“,
[BCRS94], S. 579)
•Me ic – Quan i a i e Ebene
Nachdem die Ziele mi els F agen ope a ionalisie wu den, we den au diese
Ebene diejenigen So wa emaße bes imm , die zu Bean wo ung de F agen
bei agen sollen.
Beispiel 2 (Anwendung de GQM-Me hode) In Abbildung 2.2 is als Beispiel
ü die Anwendung de GQM-Me hode die Ablei ung on F agen und So wa emaßen
ausgehend on einem konk e en Ziel da ges ell ( gl. [FP98], S. 85). Das Messziel
bes eh da in, die Wi ksamkei on Code-S anda ds zu übe p ü en, d. h. ob Sou ce-
code, de un e Be ücksich igung diese S anda ds e s ell wu de, in i gendeine A
und Weise demjenigen übe legen is , de ohne die Anwendung on Code-S anda ds
e s ell wu de.
Dabei e gib sich zunächs die F age, welche P og ammie e sich übe haup an den
Code-S anda d hal en. Anschließend is zu un e suchen, wie sich die P oduk i i ä
on P og ammie e n, die sich an den S anda d hal en, zu de jenigen de üb igen
e häl . Ein ähnliche Ve gleich muss auch bzgl. de Quali ä des dabei e zeug en
Sou cecodes du chge üh we den.
Nachdem die F agen de inie wo den sind, müssen diese dahingehend un e such
we den, welche En i ä en gemessen we den müssen, um die F agen zu bean wo en.
Beispielsweise muss, o zugsweise du ch eine maschinelle Analyse des Sou cecode-
Reposi o ys, es ges ell we den, welche P og ammie e die o gegebenen Code-S an-
da ds anwenden. Um jedoch die Wi ksamkei on Code-S anda ds a sächlich beu -
eilen zu können, benö ig man zusä zlich In o ma ionen da übe , welche E ah un-
gen die P og ammie e mi dem S anda d, de P og ammie sp ache selbs und de
23
2 So wa emessung
Goal: Un e suche die Wi ksamkei on Code-S anda ds
Ques ions: We e wende den
S anda d? Welche P oduk-
i i ä ha de
P og ammie e ?
Wie is die Code-Quali ä ?
Me ics: An eil de
P og ammie e ,
welche die
Code-S anda ds
• anwenden
• nich
anwenden
E ah ung de
P og ammie e
• mi dem
S anda d
• mi de
Sp ache
• mi de
Umgebung
Code-
Um ang Au wand Fehle
Abbildung 2.2: Beispielha e Anwendung des GQM-Ve ah ens
En wicklungsumgebung haben. Die F age nach de P oduk i i ä wiede um beda ei-
ne en sp echenden De ini ion on En wickle p oduk i i ä , welche in de Regel zu
dem Quo ien en aus en sp echenden Maßen ü den P oduk um ang und den En -
wicklungsau wand üh .
Das Beispiel illus ie , dass im Allgemeinen meh e e So wa emaße e o de lich sind,
Kombina ion
e schiedene
So wa emaße um eine bes imm e F age zu bean wo en. Umgekeh kann ein bes imm es So wa e-
maß auch als Indika o ü e schiedene F agen dienen. Viel bedeu same is jedoch,
dass zusä zlich zu den F agen und den So wa emaßen ein Ve ah en ode eine de i-
nie e Vo gehensweise benö ig wi d, wie die So wa emaße sinn oll zu kombinie en
sind, um dadu ch a sächlich An wo en au die F agen zu lie e n ( gl. [FP98]).
De GQM-Plan
Diese Vo gehensweise wi d in einem sogenann en GQM-Plan de inie ( gl. [SB99]).
De GQM-Plan is ein Dokumen , welches Besch eibungen alle Ziele, F agen, Hy-
po hesen und So wa emaße ü ein So wa emessungs o haben beinhal e . E be-
sch eib die Ze legung on Messzielen in F agen und de en Zuo dnung zu geeigne en
So wa emaßen und s ell somi die o male Dokumen a ion des So wa emessungs-
o habens da . Dieses Dokumen dien als Basis ü die Messanlei ung, welche Vo -
GQM-Plan als
Lei aden zu
Messdu ch üh ung sch i en ü das E assen de benö ig en So wa emaße en häl . De GQM-Plan
dien als Lei aden ü die In e p e a ion de zu e hebenden Da en. Die Messe geb-
nisse sollen dabei Anwo en au die im GQM-Plan de inie en F agen geben, so dass
Rückschlüsse au die GQM-Ziele möglich sind.
24
2.2 S a egien zu So wa emessung
Abbildung 2.3: Phasen de GQM-Me hode
Phasen eines GQM-P ojek s
Die Du ch üh ung eines GQM-P ojek s e olg in ie Phasen, welche nach olgend
besch ieben und in Abbildung 2.3 illus ie we den ( gl. [SB99]):
1. In de Planungsphase we den die nö igen In o ma ionen ü die Vo be ei ung
und Du ch üh ung eines So wa emessungs o habens gesammel . Hie zu ge-
hö insbesonde e die Auswahl des (Quali ä s-)Ve besse ungszieles, d. h. des
Be eiches, de aus Managemen sich Op imie ungspo enziale au weis . Zusä z-
lich wi d in diese Phase ein dedizie es GQM-Team au ges ell und ein Bei-
spielp ojek zu Anwendung de GQM-Me hode ausgewähl .
2. In de De ini ionsphase wi d das So wa emessungs o haben de inie und do-
kumen ie , d. h. es we den die Ziele, F agen, Hypo hesen und die zu e wen-
denden So wa emaße es geleg . Hie bei wi d auch de GQM-Plan e s ell .
3. Wäh end de Da ensammlungsphase inde die eigen liche E hebung de ein-
zelnen So wa emaße s a . Die e ass en Maße we den in eine Da enbank ge-
speiche . In [SB99] inden sich Anlei ungen, wie die Da ensammlung geplan
we den kann, d. h. wie o ganisa o isch es geleg we den kann, du ch wen, wie
und wann bes imm e So wa emaße e hoben we den sollen.
4. Schließlich we den in de In e p e a ionsphase die Messe gebnisse e wende ,
um die ges ell en F agen zu bean wo en. Anschließend wi d mi els diese An -
wo en übe p ü , inwiewei die u sp ünglich ges ell en Ziele e eich wu den.
Die Diskussion de E gebnisse inde gemäß [SB99] in sogenann en Feedback
Sessions s a .
2.2.1.2 K i ik am Top-Down-Ansa z de GQM-Me hode
Die on Basili, Rombach und Kollegen en wickel e GQM-Me hode wu de on de
So wa eindus ie be ei willig au genommen und iel ach angewand ( gl. [HF94]),
25
2 So wa emessung
so dass die meis en publizie en So wa emessungs o haben zumindes ein Lippen-
bekenn nis bzgl. de Anwendung de GQM-Me hode ablegen ( gl. [FN99]). Den-
noch gib es an de besch iebenen Top-Down-Vo gehensweise auch einige K i ik
( gl. [He 93], [BN95]).
Als g undsä zliches P oblem ü jeden Top-Down-Ansa z wi d gesehen, dass das
zu lösende P oblem hin eichend genau de inie sein muss, um es du ch Ve eine ung
P obleme bei de
Zielde ini ion in kleine e, leich e lösba e Teilau gaben ze legen zu können ( gl. [BN95]). Es wi d
a gumen ie , dass insbesonde e im Be eich des So wa e-Enginee ings kein hin ei-
chend genaues Wissen übe die P ozesse und die zu e s ellenden P oduk e o han-
den sei, um die GQM-Ziele ko ek de inie en zu können. Aus diesem G und wü den
So wa emanage un e Ums änden unsinnige ode nich e eichba e Ziele de inie en.
Insbesonde e wi d als P oblem ange üh , dass nich ü alle Ziele bzw. F agen e -
izien e Techniken de So wa emessung zu Ve ügung s ünden. Dies könne zu dem
P obleme bei de
E assung de
So wa emaße Ve such üh en, So wa emaße au Be eiche anzuwenden, ü die sie nu wenig ge-
eigne sind, da sie zu subjek i , schlech de inie ode zu schwie ig zu e heben sind
( gl. [BN95]). Es gebe Ziele und F agen, die ela i ein ach zu de inie en abe ex em
schwie ig nachzup ü en und zu messen seien. P ak ike wü den in diesen Fällen bald
e kennen, dass die Messe gebnisse nu Teilaspek e de Ziele add essie en, und so-
mi be ü ch en, dass die Messe gebnisse nich ko ek in e p e ie we den wü den
( gl. [He 93]). So wi d auch in [Sim01] die explizi e Benennung on In e p e a ions-
hil en und die Da s ellung on Abhängigkei en zwischen Quali ä sme kmalen und
So wa emaßen e miss .
Auch mach es de Top-Down-Ansa z schwie ig, So wa emaße ode F ages ellun-
gen, die sich in ande en O ganisa ionen ode P ojek en bewäh haben, zu in eg ie-
S ik e
hie a chische
Dekomposi ion en. Die Bo om-Up-In o ma ionen s ehen in Kon lik mi de s ik hie a chischen
Dekomposi ion on Zielen zu So wa emaßen. Dami is es schwie ig, die mi els de
GQM-Me hode abgelei e en F agen und So wa emaße gegen ande e, e l. bewäh -
e e auszu auschen ( gl. [BN95]).
Wei e wi d ange üh , dass die Kons uk ion on GQM-Hie a chien zu schlech-
en De ini ionen on zu messenden A ibu en und So wa emaßen üh en könne.
Hie bei könn en bei e schiedenen P ojek en im Rahmen des GQM-P ozesses un-
Uneinhei liche
Bes immung on
Messg ößen e schiedliche De ini ionen und So wa emaße ü die gleichen A ibu e au ges ell
we den. Dadu ch we den Ve gleiche on P ojek en – ein wich ige Aspek de So -
wa emessung – e hinde ( gl. [BN95]).
Bzgl. de GQM-Hie a chien wi d on Simon ange üh , dass die ixe Anzahl on
d ei Ve eine ungsschich en ü iele Anwendungen zu es ik i sei, und plädie ü
Fixe Anzahl on
Ve eine ungs-
ebenen die Ve wendung de aillie e e Ve eine ungske en. Hie bei habe sich in de P axis
das Vo gehen bewäh , die Ziele de GQM-Me hode in hie a chisch angeo dne e
Subgoals zu e eine n, die ih e sei s wiede um du ch Ques ions und Sub-Ques ions
hin zu Maßen e eine we den ( gl. [Sim01]). Alle dings wi d du ch eine hie a chi-
sche Anwendung de GQM-Me hode das oben ange üh e P oblem de schlech en
P ojek e gleichba kei au G und un e schiedliche So wa emaßde ini ionen nich
kleine .
De Ums and, dass die GQM-Me hode, welche eigen lich ü die Umse zung on
26
2.2 S a egien zu So wa emessung
Messzielen en wickel wo den is (siehe Abschni 2.2.1.1), in de P axis le z endlich
Managemen ziele als Ausgangspunk ü die So wa emessung e wende , e lei e Tak ische s.
s a egische Ziele
zu de Ansich , dass So wa emaße nich unbeding eine s ik en, ma hema ischen
De ini ion bedü en. Deshalb seien o mlose und ungenaue De ini ionen an de Ta-
geso dnung, da on Sei en des Managemen s die Zei ü eine genaue e Spezi ika-
ion ehle. Da übe hinaus seien die om Managemen gese z en Ziele häu ig on
ku z is igen Zwängen beein luss , wäh end du ch So wa emessung ehe lang is ig
o ien ie e Ve besse ungsziele un e s ü z we den können ( gl. [BN95]).
Du ch die Anknüp ung de So wa emessung an Managemen ziele bes ehe da -
übe hinaus die Ge ah , dass die Messe gebnisse de a manipulie we den wü den,
dass sie en sp echende „Fo sch i e“ dokumen ie en bzw. De izi e e schleie en
( gl. [He 93]).
Das Haup p oblem de GQM-Me hode is jedoch siche lich, e s einmal die „ ich-
igen“ Ziele zu inden und zu dokumen ie en. Viele Fi men müss en zunächs einmal
So wa emessungs o haben du ch üh en, um den ak uellen Zus and he auszu inden
( gl. [He 93]), da dies eine no wendige Vo ausse zung da ü is , um übe haup sinn-
olle Ziele de inie en zu können ( gl. [BN95]).
2.2.2 Bo om-Up-S a egien zu So wa emessung
2.2.2.1 Das MQG-Ve ah en
In de P axis haben die geschilde en P obleme zu En wicklung eines umgekeh -
en GQM-P ozesses ge üh , bei dem mi els eines Bo om-Up-Vo gehens zunächs
de Fokus da au geleg wi d, die ak uellen En wicklungsp ozesse und die dabei en -
wickel en P oduk e zu e s ehen ( gl. [BN95]).
Sowohl on He zel [He 93] als auch on Bache und Neil [BN95] wi d dazu das
MQG-Ve ah en (Me ic/Ques ion/Goal) o geschlagen, welches gemäß olgende
Sch i e abläu :
1. Me ics:
Zunächs we den So wa emaße e hoben und die E gebnisse analysie . De
Zweck de So wa emessung lieg dabei in de S imulie ung on F agen und
de Be ei s ellung on Einblicken in die En wicklungsak i i ä en ( gl. [He 93]).
2. Ques ions:
Anschließend wi d un e such , wie die e hal enen E gebnisse zu e klä en sind
und ob es Ve besse ungsbeda gib . Auße dem wi d gep ü , ob die Messwe e
on den E wa ungen bzw. Vo s ellungen abweichen.
3. Goals:
Da nun mögliche P obleme ode Mängel bekann sind, können en sp echende
(Ve besse ungs-)Ziele au ges ell we den.
Dem e s en Sch i geh dabei das implizi o mulie e Ziel o aus, den ak uellen
Zus and he auszu inden. Dieses Ziel un e scheide sich on denen des d i en Sch i s
27
2 So wa emessung
eine in NCSS angegebenen G öße ha . Dazu is jedoch e o de lich, die G ößen-
messungen egelmäßig und au oma isie du chzu üh en, um au diese Weise eine
E ah ungsda enbank au zubauen.
Wegen de Ungenauigkei en und de Abhängigkei on de e wende en P og am-
mie sp ache des LOC-So wa emaßes wu den ab Mi e de 1970e Jah e wei e e
Hals eads und
McCabes
So wa emaße So wa emaße en wickel , welche die Bewe ung des Um anges und de Komplexi ä
on So wa e e möglichen soll en ( gl. [FN99]). Als Beispiele seien hie die so wa e
science measu es on Hals ead ([Hal77]) und die Komplexi ä smaße on McCabe
([McC76]) genann . Nach Hals ead können de P og ammie au wand und die Imple-
men ie ungszei aus den Maßen P og amm-Länge und P og amm-Volumen abgelei-
e we den, welche aus de Anzahl und de Ve wendungshäu igkei de Ope anden
und Ope a ionen de P og ammie sp ache be echne we den ( gl. [Zus98], S. 59 .).
McCabe be echne e un e Anwendung on Me hoden de G aphen heo ie im Kon-
oll lussg aphen eines P og ammes eine minimale Anzahl on P aden, welche e als
Cycloma ische Komplexi ä de So wa e in e p e ie e ( gl. [Zus98], S. 60).
Die So wa emaße LOC, NCSS, Hals ead-Länge bzw. -Volumen und eilweise auch
McCabes So wa e-Komplexi ä können e s e mi el we den, wenn de Quellcode
de So wa e be ei s o lieg . Dami is ih e Ve wendba kei zu o ausschauen-
den Abschä zung des P og ammie au wandes eingesch änk . T o zdem we den sie
im O iginal-COCOMO-Modell genau zu diesem Zweck e wende ( gl. [Boe81]).3
In de Wei e en wicklung zu COCOMO II ( gl. [B+00]) is es jedoch möglich, die
Au wandsschä zung au Basis sogenann e Objec -Poin s4du chzu üh en.
Im Jah 1979 e ö en lich e Alb ech die Func ion-Poin -Me hode, welche es e -
möglich e, die An o de ungen an die zu en wickelnde So wa e mi sogenann en
Func ion-Poin -
Me hode Func ion Poin s zu bewe en und da aus den P ojek au wand abzulei en ([Alb79],
[AG83]). Dabei wi d de Um ang de Anwendung gemäß de om Kunden ge o -
de en Funk ionali ä gemessen. Diese Funk ionali ä wi d om Kunden (z. B. bei
den Fachab eilungen) e ag und anhand eines logischen Sys emen wu s quan i i-
zie . Das E gebnis is unabhängig on de ü die Implemen ie ung e wende en
Technologie, da die echnische Realsie ung de Anwendung nich be ach e wi d
( gl. [BF00], S. 179).
Die Func ion-Poin -Me hode wu de im Lau e de Zei bes ändig wei e en wickel ,
so dass es heu e meh e e Func ion-Poin -Zählme hoden gib . Die bekann es e da on
IFPUG
is wohl die on de In e na ional Func ion Poin Use s G oup de zei in de Ve sion
IFPUG 4.2 [IFP04] e ö en lich e.
Bei de Func ion-Poin -Analyse (FPA) we den im P inzip ü die zu en wickeln-
de Anwendung die Zug i e au logische Da enbes ände und die Du ch üh ung on
Funk ions ypen
T ansak ionen he ausgea bei e . Diesen als Funk ions ypen bezeichne en Funk ionen
de Anwendung ( gl. Tabelle 2.3) we den Da en-Func ion-Poin s bzw. T ansak ions-
Func ion-Poin s zugeo dne .
3Die Beispiele in de Besch eibung zum O iginal-COCOMO-Modell beziehen sich au die P og am-
mie ung on G oß echne -So wa e, wo eine Abschä zung de (COBOL-)P og ammzeilen ehe
möglich is , als bei mode nen objek -o ien ie en P og ammie sp achen.
4Diese sind nich iden isch mi denen de Objec -Poin -Me hode nach H. Sneed ( gl. S. 36).
34
2.3 So wa emaße au Managemen ebene
Da en-
Func ion-Poin s In e nal Logical Files (ILF)
In e ne Da enbes ände, die inne halb de Sys emg enzen de Anwen-
dung gep leg we den
Ex e nal In e ace Files (EIF)
Ex e ne Schni s ellen-Da enbes ände, die auße halb de Sys em-
g enzen ( on ande en Anwendungen) gep leg we den
T ansak ions-
Func ion-Poin s Ex e nal Inpu s (EI)
Ex e ne Eingabeda en mi ih en logischen Da eng uppen und Da en-
elemen en
Ex e nal Ou pu (EO)
Ex e ne Ausgabeda en mi ih en logischen Da eng uppen und Da en-
elemen en
Ex e nal Inqui ies (EQ)
Ex e ne Ab agen mi ih en logischen Da eng uppen und Da enele-
men en
Tabelle 2.3: Bei de FPA bewe e e Funk ions ypen ( gl. [BF00], S. 190 .)
FTRs/DETs 1–4 DETs 5–15 DETs >
>
>15 DETs
0–1 FTR ge ing ge ing mi el
2 FTR ge ing mi el hoch
>
>
>2 FTR mi el hoch hoch
Tabelle 2.4: Komplexi ä sg ade ü ex e ne Eingaben nach IFPUG 4.2 ([IFP04])
Die Komplexi ä de Funk ions ypen wi d dabei anhand eine Komplexi ä sma ix
in „ge ing“, „mi el“ ode „hoch“ einges u und en sp echend mi eine un e schied-
lichen Anzahl Funk ion-Poin s bewe e .
Beispiel 3 (Func ion-Poin s) Ein Kunden e wal ungssys em soll eine Eingabe-
maske zum Hinzu ügen wei e e Da ensä ze e hal en. Diese T ansak ion s ell aus
de Sich de FPA einen EI-Funk ions yp da , da es sich um ex e ne Eingabeda en
handel .
Nun we den die Da enelemen e (Name, Vo name, Tele onnumme , usw.) gezähl
und diese Anzahl mi DET (da a elemen ype) bezeichne . In diesem Fall gel-
e beispielsweise DET = 8. Anschließend wi d die Anzahl F T R de e e enzie en
logischen Da enbes ände ( ile ype eco ds) e mi el . Diese gehen in diesem Fall
mi F T R = 1 in die Be echnung ein, da logisch nu au den Da enbes and „Kun-
denda en“, in denen de neue Da ensa z abgeleg wi d, zugeg i en wi d. Dass die
Kundens ammda en und die Kundenad essda en e l. in un e schiedlichen Tabellen
abgeleg sind, wi d an diese S elle nich be ücksich ig .
Mi DET = 8 und F T R = 1 wi d gemäß Tabelle 2.4 die Komplexi ä diese
EI-T ansak ion als „ge ing“ einges u und in diesem Fall mi 3 Func ion-Poin s
bewe e .
Die so e mi el en Func ion-Poin s we den als ungewich e e Func ion-Poin s be- Ungewich e e und
gewich e e
Func ion-Poin s
zeichne . Anhand on 14 Ein luss ak o en (z. B. Da enkommunika ion,T ansak i-
35
2 So wa emessung
ons a e,Benu ze eundlichkei , e c.) wi d ein sogenann e Value Adjus men Fac o
(VAF) be echne , de dann schließlich zu den gewich e en Func ion-Poin s üh . De
Value Adjus men
Fac o Sch i on den ungewich e en Func ion-Poin s zu den gewich e en en sp ich de
Un e scheidung zwischen dem Um ang de zu en wickelnden Anwendung und dem
dami e bundenen Au wand, da bei diesem auch noch wei e e Ein lüsse au die Sy-
s emen wicklung (z. B. E ah ung de Mi a bei e , Kla hei de An o de ungen, P o-
zess ei e, e c.) be ücksich ig we den müssen ( gl. [BF00], S. 192, [BF00], S. 22 .).
Alle dings wi d auch ange üh , dass diese VAF s a k abhängig on de Beu eilung
on Expe en seien und deshalb wenig ü konk e e und eindeu ige Aussagen zu
den Kos en eine So wa e geeigne wä en. Dahe könne man al e na i auch mi els
de FPA nu den Um ang de So wa e in Fo m on ungewich e en Func ion-Poin s
bes immen und mi els pa ame isie ba e Modelle, die ü e schiedene Indus ien
en sp echend angepass sind, ähnlich wie beim COCOMO-II-Ve ah en ([B+00]) au
den Au wand und die Kos en schließen ( gl. [Feh05], S. 170).
Die Func ion-Poin -Me hode wi d zwa nu on einem Teil de indus iellen P ak-
ike e wende ( gl. [Feh05], S. 166 .), jedoch is die Aussagek a ih e E gebnisse
g undsä zlich ane kann ( gl. [HF94]). Leide e olg das Zählen de Func ion-Poin s
g undsä zlich manuell und da nach Meinung iele Func ion-Poin -Anwende auch
Manuelle Zählung
de Func ion-Poin s nich au oma isie we den, da die Zählung au den Benu ze an o de ungen an die
So wa e basie und jede Zählsch i dokumen ie und beg ünde we den muss
( gl. [BF00], S. 132).
In de Li e a u wi d be ich e , dass diese Einsch änkung ü die COSMIC Full
Func ion Poin s (CFFP, [ADO+03]) nich meh gel e ( gl. [Feh05], S. 171). Bei die-
COSMIC Full
Func ion Poin s se Va ian e de Func ion-Poin -Me hode, welche in Konku enz zu IFPUG-Ve sion
s eh , we den Da enbewegungen gezähl , was auch du ch die Analyse on UML-
Diag ammen möglich sein soll. Auch seien CFFP besse ü die Analyse ak uelle
Mul i-Tie -Sys eme und Komponen en-basie ende Anwendungen geeigne . In die-
sen seien die ü die FPA e wende en Zählg ößen nu schwe zu inden, da diese
noch aus de Main ame-P og ammie ung s amm en ( gl. [Dek04]).
Eben alls den Bedü nissen de objek -o ien ie en P og ammie ung Rechnung
agend wu de on Sneed die Objec -Poin -Me hode [Sne96] e ö en lich . Dabei
Objec -Poin -
Me hode wi d das objek -o ien ie e Design de zu implemen ie enden Anwendung mi so-
genann en Class-,Message- und P ocess-Poin s bewe e , welche mi dem Klassen-
En wicklungsau wand, dem In eg a ionsau wand bzw. mi dem Sys em es au wand
ko esponie en. Das gesam e Au wandsmaß Objec -Poin s e gib sich als Summe de
d ei Bes and eile, wobei anschließend noch eine Jus ie ung au de Basis on Qua-
li ä san o de ungen und P ojek -Ein luss ak o en du chge üh wi d. G undsä zlich
läss sich die Zählung de Objec -Poin s somi auch au oma isie en. Jedoch gib es
kaum indus ielle E ah ungen mi de Anwendba kei diese Me hode ( gl. [BF00],
S. 211). Auch muss ü die Anwendung diese Me hode be ei s ein objek -o ien ie es
Design-Modell de Anwendung o liegen, so dass sie in de Angebo sphase eines
So wa ep ojek es übliche weise noch nich eingese z we den kann.
Fü den le z genann en Fall de ühzei igen Au wandsschä zung inne halb in-
dus ielle So wa een wicklungsp ojek e e schein die Au wandsschä zung mi els
36
2.3 So wa emaße au Managemen ebene
Use-Case-Poin s (UCP, gl. [SW01]) als iel e sp echende Al e na i e. Dabei we - Use-Case-Poin s
den die in den Use-Cases au e enden Ak eu e und T ansak ionen, d.h. E eignis-
se zwischen dem Ak eu und dem Sys em, bewe e . Es wi d be ich e , dass die
Me hode eine ech genaue Au wandsschä zung e laub , wenn sie in Bezug au die
jeweilige O ganisa ion en sp echend kalib ie wu de ( gl. [ADSJ01], [Ca 05]). Die
Fi ma sd&m be ich e in diesem Zusammenhang on eine eigenen E wei e ung de
UCP-Me hode, du ch die sich die Schä zgenauigkei ü bes imm e P ojek a en si-
gni ikan e besse n ließ ( gl. [FJE06]).
Schließlich wi d in Abschni 4.2.4 (S. 98 .) mi de Da s ellung des Fea u e-
D i en De elopmen s eine wei e e Möglichkei gezeig , den P ojek um ang zu spezi- Fea u es
izie en. Dabei wi d die Anwendung in einzelne Fea u es ( gl. [PF02]) ze leg , welche
dann gewich e und gezähl we den können.
2.3.2 Bes immung on Au wand und Kos en
Be iebswi scha lich wi d un e dem Au wand de bewe e e Ve b auch alle Gü e Au wand und
Kos en
und Diens leis ungen in eine bes imm en Pe iode e s anden ( gl. [RRK06]). Da-
bei wi d zwischen Au wendungen, die unmi elba mi de Leis ungse s ellung im
Rahmen des Be iebszwecks zusammenhängen, den sog. Be iebsau wendungen, und
den neu alen Au wendungen (z. B. auße o den liche Au wendungen) un e schieden.
Zu den Be iebsau wendungen zählen dagegen beispielsweise Gehäl e , Ene gie, Li-
zenzkos en und Absch eibungen. Die Be iebsau wendungen sind im Wesen lichen
deckungsgleich mi den Kos en in de Kos en- und Leis ungs echnung.5
Un e dem Au wand ü ein So wa een wicklungsp ojek wi d dagegen meis ens
nu de Zei au wand in Pe sonen agen (ode Pe sonenmona en) e s anden, de zu P ojek au wand
Du ch üh ung des P ojek es e o de lich is . De P ojek au wand is somi zunächs
einmal die a sächliche Zei , die alle Mi a bei e eines P ojek es ü dieses au wen-
den. Diese Au wand en häl keinen U laub und keinen K ankens and, seh wohl
abe Schulungen und Reise- bzw. Fah zei en ( gl. [BF00]).
Fü die Be echnung de p ojek bezogenen Kos en des eigenen Pe sonals wi d de
e b ach e P ojek au wand mi en sp echenden S unden e echnungssä zen mul i-
plizie , welche im Rahmen des be ieblichen Rechnungswesens e mi el we den S unden-
e echnungssä ze
( gl. [Bu 02], S. 345 .). Dabei wi d übliche weise zwischen in e nen und ex e nen
S unden e echnungssä zen un e schieden. Die in e nen S unden e echnungssä ze
sind ein Maß da ü , welche be iebswi scha liche Au wand mi dem Einsa z eines
Mi a bei e s in einem P ojek e bunden is . Mi els de ex e nen S undensä ze wi d
en wede die Tä igkei de Mi a bei e dem Kunden in Rechnung ges ell , ode die
ex e nen S undensä ze ließen in die Be echnung eines Fes p eises bei de indus i-
ellen Au ags e gabe ein.
5Bei den Absch eibungen kann es beispielsweise zu Di e enzen zwischen den bilanziellen Absch ei-
bungen in de Be iebsbuchhal ung und den kalkula o ischen Absch eibungen in de Kos en ech-
nung kommen.
37
2 So wa emessung
Au wandse assung
Vo ausse zung ü jede Au wands- und Kos enkon olle is das „en wicklungsadäqua-
e“ E assen des Pe sonalau wands, d.h. eine egelmäßige und olls ändige S unden-
au sch eibung en sp echend de P ojek s uk u und – wenn möglich – auch en -
En wicklungs-
adäqua e
S undenkon ie ung sp echend de P ozesss uk u . Um ein wi kungs olles P ojek con olling zu e mög-
lichen, soll e eine De aillie ung des Pe sonalau wandes nach
•A bei spak en,
•Meilens einen,
•En wicklungsphasen und
•Tä igkei sa en
e olgen ( gl. [Bu 02], S. 341).
Wegen des g oßen Da enum angs, de somi bei de S undenkon ie ung an äll , is
eine p ak ikable Au wandse assung i. Allg. nu mi Hil e eines EDV-ges ü z en Ve -
ah ens möglich. Als Beispiel sei hie das SAP-A bei szei bla SAP CATS (c oss-
SAP-
A bei szei bla applica ion ime shee , [SAP03]) ange üh . Dabei handel es sich um eine Anwen-
dung zu manuellen E assung on A bei sleis ungen au Basis eines SAP ERP-
Sys ems. Dabei können die benö ig en Kon ie ungsobjek e und die ande en A bei s-
zei a ibu e om Adminis a o en sp echend de O ganisa ionsbedü nisse kon igu-
ie we den. Die einzelnen P ojek mi a bei e bekommen dann bei de Tä igkei s-
e assung nu diese Kon ie ungsobjek e (P ojek e, A bei spake e) zu Kon ie ung
angebo en, welche ü sie ele an sind.
Die Quali ä de S undenau sch eibung wi d nach [Bu 02] on d ei K i e ien be-
s imm :
Quali ä de
Zei e assung •Genauigkei
•Volls ändigkei
•Eh lichkei
Die Genauigkei und die Volls ändigkei könne dabei posi i du ch Einbinden de
Kon ens uk u in einen Ne zplan beein luss we den, da dadu ch eine Plausibili-
sie ung de kon ie en A bei spake e mi den Ne zplanda en möglich is . Auße dem
wü den dadu ch Kon ie ungen au alsche A bei spake e und dami au alsche Kon-
en e heblich e inge we den.
Die Eh lichkei wü de dagegen ganz en scheidend om Ve hal en de Lei ung be-
ein luss we den. Denn g undsä zlich sei es auch möglich, dass die kon ie en S unden
nich nu zu P ojek beu eilung, sonde n auch zu Mi a bei e beu eilung e wen-
de we den. Dahe bes ünde zwangsläu ig die Ge ah de Manipula ion, alls bei
Planabweichungen Sank ionen d oh en ( gl. [Bu 02], S. 345). Eine Möglichkei , die-
ses P oblem zu minde n, bes eh da in, die kon ie en S unden nu au Team-Ebene
auszuwe en.
Häu ig sei nach [Bu 02] auch ein bewuss es „zu iel Kon ie en“ au einzelne, noch
nich ausgeschöp e P ojek kon en zu beobach en. Dieses Kon ie en nach dem „T ag-
ähigkei sp inzip“ beein äch ig na ü lich eben alls jede zielo ien ie e P ojek kon-
olle ( gl. [Bu 02], S. 345).
38
2.3 So wa emaße au Managemen ebene
2.3.3 Die P oduk i i ä
Ökonomen e s ehen un e de P oduk i i ä übliche weise das Ve häl nis zwischen
de p oduzie en Ausb ingungsmenge und den da ü beim P oduk ionsp ozess ein-
gese z en Mi eln. Bezogen au die So wa een wicklung e gib sich somi die P o-
duk i i ä als Ve häl nis zwischen dem e zeug en P oduk um ang und den da ü
e b ach en Au wand:
P oduk i i ä =P oduk um ang
Au wand
Um die P oduk i i ä a sächlich bes immen zu können, müssen in diese Glei-
chung noch die Va iablen du ch en sp echende So wa emaße e se z we den. O
wi d beispielsweise eine de olgenden De ini ionen e wende ( gl. [FP98], S. 408 .,
[Kan03], S. 343 ., [GC87], S. 19 .)
P oduk i i ä =LOC
Pe sonenmona e ode P oduk i i ä =NCSS
Pe sonenmona e LOC-
P oduk i i ä
Als Nach eil dieses So wa emaßes wi d gewöhnlich ange üh , dass sowohl ü den
Zähle als auch ü den Nenne die Bes immung de genann en So wa emaße p o-
blema isch sei ( gl. [FP98], ebd.). Die Messung des Au wandes in Pe sonenmona en
mache insbesonde e die o ganisa ionsübe g ei ende Ve gleichba kei p oblema isch,
da ein Pe sonenmona je nach Un e nehmen eine un e schiedliche Anzahl on S un-
den bedeu en könne. Inne halb eine O ganisa ion soll e jedoch die Messung des
Au wandes, wie in Abschni 2.3.2 besch ieben, in konsis en e Weise möglich sein.
P oblema ische is dagegen, wie im Abschni 2.3.1 da ges ell , die Messung des
So wa eum angs, da wede LOC noch NCSS wi klich ein Maß ü den Um ang
de mi dem So wa ep oduk ausgelie e en Funk ionali ä da s ellen ( gl. [FP98],
[Kan03]). Zudem gib es auch hie wiede P obleme mi de Ve gleichba kei übe
e schiedene P ojek e und O ganisa ionen hinweg. So o mulie Jones, dass „using
lines o code o p oduc i i y s udies in ol ing mul iple languages and ull li e cycle
ac i i ies should be iewed as p o essional malp ac ice“ (siehe [Jon00], S. 72).
Auch kann es o kommen, dass die nach ägliche Ve ein achung on Sou cecode-
Abschni en dahingehend, dass de esul ie ende Code zwa die gleiche Funk ionali-
ä au weis , abe kompak e , e izien e und e l. soga e s ändliche is , zu einem
Rückgang de P oduk i i ä üh .
In [FP98] wi d dahe zumindes emp ohlen, den So wa eum ang in Func ion-
Poin s zu messen, was dann zu de olgenden Fo mel ü die P oduk i i ä üh :
P oduk i i ä =implemen ie e Func ion-Poin s
Pe sonenmona e Func ion-Poin -
P oduk i i ä
Alle dings wü den sich nach [FP98] iele Manage weige n, Func ion-Poin s zu
e wenden, da ihnen dieses Maß nich „g i ig“ genug sei. Diese könn en sich zwa
un e de Anzahl de P og ammzeilen e was o s ellen, hä en abe nu eine age
Vo s ellung on de Bedeu ung on Func ion-Poin s.
39
2 So wa emessung
In äl e en Publika ionen wi d als Nach eil de Func ion-Poin -P oduk i i ä ange-
üh , dass das Func ion-Poin -Ve ah en ehle ha e E gebnisse lie e e, wenn da-
K i ik an Func ion-
Poin -P oduk i i ä mi So wa e mi eine hohen algo i hmischen Komplexi ä bewe e we den soll
( gl. [MWD96]). Dies liege da an, dass diese Me hode ü komme zielle So wa e
en wickel wu de, bei de de Schwe punk in de Manipula ion g oße Da enbe-
s ände, in de Da eneingabe und de Da enausgabe liege ( gl. [BF00], S. 182). So
wi d auch on Balze in [Bal98] die LOC-P oduk i i ä als die am bes en bewäh e
da ges ell , wobei sich diese Emp ehlung au den genann en A ikel on Maxwell e
al. [MWD96] bezieh . Die genann en Schwächen de Func ion-Poin -Me hode wa en
auch Auslöse ü die En wicklung de e schiedenen Func ion-Poin -Va ian en, wie
beispielsweise den COSMIC Full Func ion Poin s. In neue en Publika ionen wi d
auch on Maxwell die Func ion-Poin -P oduk i i ä angewende , wobei eine Zähl-
weise e wende wi d, die in e wa den ungewich e en IFPUG 4.0 Func ion-Poin s
en sp ich ( gl. [MF00]). Alle dings wi d auch die LOC-P oduk i i ä nich explizi
als ungeeigne da ges ell .
Ein in e essan es E gebnis diese S udie is , dass die P oduk i ä je nach be ach-
e e B anche on un e schiedlichen Fak o en posi i ode nega i beein luss wi d.
So konn en im Bankenbe eich Skalene ek e bei de P oduk i i ä mi zunehmendem
Ein luss ak o en de
P oduk i i ä So wa eum ang es ges ell we den. Dies wide sp ich de sons gängigen Meinung,
dass mi s eigendem P og ammum ang die P oduk i i ä sinke ( gl. [Bal98], S. 13).
Demgegenübe nahm im Be eich de ö en lichen Ve wal ungen die P oduk i i ä
mi zunehmende Anzahl an Ab age-Funk ionen zu. Gleichzei ig nahm sie ab, je
meh die Anwende an de En wicklung mi wi k en.
Unabhängig on den genauen Auswi kungen de e schiedenen Ein lussg ößen au
die P oduk i i ä zeig dieses Beispiel, dass P oduk i i ä smessungen sich nu mi
g oße Vo sich e gleichen lassen.
Einen gänzlich ande en Aspek de P oduk i i ä sbewe ung be ach en dagegen
Kan [Kan03], Pu nam und Mye s [PM03]. Sie gehen nich on eine zweidimensiona-
len P oduk i i ä sde ini ion wie bei den obigen Gleichungen aus, sonde n üh en aus,
dass ü So wa ep ojek e ein d eidimensionales P oduk i i ä skonzep angemessen
D eidimensionales
P oduk i i ä s-
konzep sei, welches neben Um ang und Au wand auch die kalende mäßige En wicklungs-
zei mi einschließ . Dies sei deshalb ge ech e ig , da bei eine Ve knappung de
zu Ve ügung s ehenden Zei sich de Au wand übe linea e g öße e ( gl. [Kan03],
S. 346).
Genaue wi d diese Zusammenhang in [PM03] besch ieben. Im Gegensa z zu
obigen P oduk i i ä skonzep en, welche sowohl au einen einzelnen Mi a bei e als
auch au ein ganzes P ojek angewende we den können, de inie en Pu nam und
Mye s die P ozessp oduk i i ä wie olg , wobei sie die Exponen en du ch Analyse
P ozess-
p oduk i i ä eine seh g oßen Menge empi ische Da en e mi el hä en ( gl. [PM03], S. 92):
P ozessp oduk i i ä =P oduk um ang (mi bes . Quali ä )
Au wand
β1
3·Zei 4
3
(∗)
Dabei is de Fak o βein om P oduk um ang abhängige Pa ame e , welche
40
2.3 So wa emaße au Managemen ebene
dem Au wand bei kleine en P ojek en ein g öße es Gewich gib .
In [PM02] we den de P ozessp oduk i i ä olgende Eigenscha en zugesch ieben:
•Bei de P ozessp oduk i i ä handel es sich um die P oduk i i ä eine P o-
jek o ganisa ion, welche gemäß eines bes imm en Vo gehensmodells a bei e ,
en sp echende We kzeuge e wende und dabei du ch geeigne e Managemen -
p ak iken ge üh wi d. Die P ozessp oduk i i ä be ücksich ig dahe explizi
alle Ak i i ä en de So wa een wicklung inklusi e Design und Tes und be-
sch änk sich dahe nich au eine Implemen ie ungsak i i ä en.
•Sie un e scheide sich on de kon en ionellen P oduk i i ä haup sächlich da-
du ch, dass auch die kalende mäßige En wicklungszei einen Fak o bei de
P oduk i i ä se mi lung da s ell .
•Sie de inie eine nich -linea e Beziehung zwischen den Maßen P oduk um ang,
Au wand und Zei .
Au gelös nach dem P oduk um ang e gib sich die olgende Da s ellung:
P oduk um ang =Au wand
β1
3·Zei 4
3·P ozessp oduk i i ä
Aus diese Da s ellung wi d e sich lich, dass die benö ig e Zei sublinea , de Au -
wand hingegen sup alinea mi dem P oduk um ang zunimm . In [PM03] wi d je-
doch da au hingewiesen, dass obige Gleichungen kein Na u gese z da s ell en und
die beiden Exponen en Nähe ungen seien, mi denen in de P axis seh gu e E ah-
ungen gemach wo den wä en.
Obige Gleichung (∗) läss sich au beiden Sei en mi 3po enzie en. Anschließend
e häl man du ch en sp echendes Um o men die olgende Ges al :
P ozessp oduk i i ä 3·Zei 4
P oduk um ang2·β=P oduk um ang
Au wand =kon en ionelle P oduk i i ä
Dami a iie in diesem Modell die kon en ionelle P oduk i i ä mi de d i en P ozess-
p oduk i i ä s.
kon en ionelle
P oduk i i ä
Po enz de P ozessp oduk i i ä und mi de ie en Po enz de En wicklungszei .
Dahe wü de eine Ve schlech e ung de P ozessp oduk i i ä ode eine zu knapp
bemessene En wicklungszei zu eine übe p opo ionalen Ve inge ung de kon en-
ionellen P oduk i i ä üh en.
Eine wei e e Um o mung on Gleichung (∗) üh zu olgende Da s ellung:
Au wand
β1
3·Zei 4
3=P oduk um ang
P ozessp oduk i i ä
Wenn man die P ozessp oduk i i ä eine O ganisa ion als kons an be ach e ,
so is die gesam e ech e Sei e obige Gleichung ü eine bes imm e P oduk g öße Au wand abhängig
on de
En wicklungszei
kons an . Dahe sind lau [PM03] de Au wand und die En wicklungszei di ek
oneinande abhängig, da de Fak o β ü einen gegebenen P oduk um ang eine
41
2 So wa emessung
es e G öße ha .6Insbesonde e wü de bei eine Ve inge ung de kalende mäßigen
En wicklungszei de Au wand übe p opo ional s eigen.
2.3.4 Die En wicklungszei
Mi de En wicklungszei is die kalende mäßig e s ichene Zei gemein . Diese Zei
is zum einen ü den Kunden bedeu sam, da du ch die En wicklungszei bes imm
wi d, wie lange e au das bes ell e P oduk wa en muss. Meis ens wi d die En -
wicklungszei mi els sogenann e Meilens eine gegliede . Meilens eine kennzeich-
Meilens eine
nen den Beginn und das Ende eines P ojek s, den Abschluss eine P ojek phase und
manchmal auch den Abschluss eine G uppe on Vo gängen inne halb eine Phase
( gl. [Bal98], S. 31). O we den du ch Meilens eine Zei punk e de inie , an denen
au g und des E eich en eine En scheidung übe den P ojek o gang ge o en we -
den muss ( gl. [Hen02], S. 64).
2.3.4.1 Te min eue
Fü einen übe sich lichen Ve gleich de a sächlichen En wicklungszei en mi den
u sp ünglich geplan en und e l. mi dem Kunden e einba en En wicklungszei-
en kann sowohl ü das Gesam p ojek als auch ü Teilp ojek e, P ojek phasen
ode Meilens eine die Te min eue bes imm we den. Da ü muss zunächs ü die
einzelnen Teilp ojek e de Te min e zug T∆be echne we den.
T∆=TV′Is −TPlan
Te min e zug
Dabei bezeichne TV′Is die o aussich liche Is -Daue und TPlan die geplan e Daue
des Vo gangs. Dami kann ü jedes Teilp ojek die Te min eue T TTP be echne
we den.
T TTP =TPlan −T∆
TPlan
×100
Te min eue
Fü die Te min eue des Gesam p ojek s mi nTP Teilp ojek en gil dann:
T Tges =PT TTP
nTP
( gl. [Bu 02], S. 336)
Falls die ( o aussich liche) Is -Daue g öße als die geplan e Daue is , so e gib
sich eine Te min eue on un e 100 %, ansons en ein We on übe 100 %. Ziel de
P ojek üh ung muss dahe sein, insbesonde e ü die Te min eue des Gesam p o-
jek es den We 100 % zu e eichen und wenn möglich zu übe sch ei en ( gl. [Bu 02],
S. 337).
Neben de Te min eue, welche s a isch das Ve häl nis zwischen de ( o aussich -
lichen) Is -Daue und de geplan en Daue on Vo gängen angib , kann auch de
6Dies wi d on Boehm in [Boe81] in ähnliche Weise da ges ell . So wi d beim COCOMO-Ve ah en
aus dem P oduk um ang de En wicklungsau wand und da aus die (op imale) P ojek daue
be echne .
42
2.3 So wa emaße au Managemen ebene
Abbildung 2.5: Au bau des FCM-Quali ä smodells (in Anlehnung an [Bal98])
dynamische Ve lau on Te minschä zungen un e such we den. Geeigne e Me ho-
den hie ü sind die Meilens ein-T endanalyse und die Meilens ein-Signallis e (siehe
dazu [Bu 02], S. 337 .).
2.3.5 Messung de Quali ä
So wa equali ä wi d in de ISO-No m 9126 besch ieben als die Gesam hei de
Me kmale und Me kmalswe e eines So wa ep oduk s, die sich au dessen Eignung
beziehen, es geleg e ode o ausgese z e E o de nisse zu e üllen ( gl. [In 01]). Fü
die p ak ische Anwendba kei des Quali ä sbeg i s – und um die Quali ä eines
P oduk es übe p ü en zu können – wu den Quali ä smodelle en wickel , mi denen Quali ä smodelle
de allgemeine Quali ä sbeg i du ch Ablei en on Un e beg i en ope a ionalisie
we den kann ( gl. [Bal98], S. 257, bzw. auch Abschni 2.2.3, S. 29 .).
Bei diesen Quali ä smodellen wi d die Quali ä mi els eines hie a chischen Sy-
s ems on Quali ä sme kmalen (engl. quali y ac o s), Quali ä s eilme kmalen (engl.
quali y c i e ia) und Quali ä sindika o en (engl. quali y me ics) besch ieben. Dahe
wi d ein so au gebau es Modell auch als FCM-Quali ä smodell (Final Classi ica ion
Ma ix) bezeichne ( gl. Abbildung 2.5).
Dabei spiegeln die Quali ä sme kmale haup sächlich benu ze o ien ie e Cha ak-
e is ika wide , wäh end die K i e ien ehe de so wa eo ien ie en Sich weise en -
sp echen. Die Indika o en sind ausgewiesene Eigenscha en eines So wa ep oduk s,
die zu den Quali ä sme kmalen in Beziehung gese z we den können. Quan i izie ba-
e Indika o en können mi Hil e on So wa emaßen bes imm we den ( gl. [Bal98],
S. 258).
43
2 So wa emessung
dass die Fehle dich e bei de ausgelie e en So wa e mi s eigendem Rei eg ad deu -
lich sink . Insbesonde e sink sie mi zunehmendem Rei eg ad meh als die po en iel-
le Fehle dich e. Die Quali ä se gebnisse de P ojek e übe lappen sich auch übe die
Rei eg ade de Un e nehmen hinweg. So sind die bes en E gebnisse on P ojek en
au CMM-Rei eg ad 1 besse als die du chschni lichen E gebnisse au Rei eg ad 4.
Auch bei diesem Maß bes eh de Haup nu zen da in, die Quali ä de eigenen
P ozesse gebnisse einzuschä zen und die Wi ksamkei on P ozess e besse ungs-
maßnahmen beu eilen zu können.
2.4 Zusammen assung
In diesem Kapi el wu den einige g undlegende Beg i e, Konzep e und Ve ah en
de So wa emessung einge üh . Insbesonde e wu de da ges ell , wa um inne halb
diese A bei de Beg i des So wa emaßes im Gegensa z zu dem seh häu ig in
de So wa e echnik-Li e a u anzu e enden Beg i de So wa e-Me ik e wende
wi d.
So wa emaße wu den als g undlegende In o ma ionsquelle da s ell , mi de en
Hil e P ozesse, P oduk e und Ressou cen im Rahmen des So wa een wicklungsp o-
zesses cha ak e isie und beu eil we den können. Wei e dienen die mi els de
So wa eme ie gewonnenen Da en sowohl de P ognose kün ige So wa ep ojek e
als auch de Planung und Kon olle on Ve besse ungsmaßnahmen.
Insbesonde e das Ziel de Ve besse ung on So wa ep ozessen und den dabei he -
ges ell en P oduk en wu de in Ve ah en wie dem CMMI ode de S a is ischen
P ozess egelung ins i u ionalisie . Bei diesen Ve ah en nimm die So wa eme ie
eine agende Rolle ein.
G undsä zlich e scheinen So wa emessungs o haben, welche ohne kla e und p ä-
zise Anwendungs- und Ziel o s ellungen angegangen we den, mi hohe Wah schein-
lichkei zum Schei e n e u eil ( gl. [HF97]). Dahe wu den meh e e Ve ah en
en wickel , um eine zielge ich e e Auswahl geeigne e So wa emaße zu e en.
Mi de Goal-Ques ion-Me ik-Me hode haben Basili und seine Kollegen ein Ve -
ah en o geschlagen, mi dem die Zielo ien ie hei de So wa emessung siche ge-
s ell we den kann. Dabei we den die Managemen -Ziele du ch sch i weise Ve eine-
ung sowei ze leg , dass So wa emaße angegeben we den können, de en E hebung
In o ma ionen übe den G ad de Ziele eichung lie e n kann.
Abe auch bei de MQG-Me hode we den nich ein ach So wa emaße ohne eine
Ziel o s ellung e hoben, auch wenn dies zunächs so e scheinen könn e. Die MQG-
Me hode geh on dem implizi en Ziel aus, zunächs den ak uellen Zus and de
So wa een wicklungsp ozesse zu e mi eln, um on diese Basis ausgehend sinn olle
Ziele de inie en zu können.
Beim bidi ek ionalen Ansa z schließlich we den die beiden S oß ich ungen de
So wa emessung kombinie . Einse sei s we den Managemen -Ziele du ch Ve eine-
ung in Eigenscha en ze leg und ande e sei s we den Me kmale des So wa een -
wicklungsp ozesses mi els So wa emaße messba gemach . Beide S oß ich ungen
50
2.4 Zusammen assung
we den dann mi els de Quali ä sindika o en zusammenge üh , wodu ch sich eine
T aceabili y zwischen den IT-S a egien und den e hobenen So wa emaßen e gib .
Daneben ha sich in de indus iellen P axis de So wa emessung gezeig , dass die
G ößen Um ang, Au wand, Zei daue , Quali ä und P oduk i i ä zu den S anda d-
kennzahlen gehö en, die egelmäßig bei So wa emessungs o haben e ass we den.
Insbesonde e haben diese Maße im Rahmen de Ve agsges al ung und des P ojek -
managemen s eine zen ale Bedeu ung.
Die Haup in en ion de So wa eme ie bes eh le z endlich da in, So wa emaße
zu e heben, um dami die E eichung bes imm e Ziele zu beu eilen. Dabei is es
wünschenswe , dass diese So wa emaße möglichs au oma isie e hoben we den
können. Zusä zlich is es insbesonde e beim MQG-Ve ah en und bei de bidi ek io-
nalen Vo gehensweise hil eich, ein en sp echendes A senal mi So wa emaßen o -
ä ig zu haben, welche ein ach kon igu ie und au oma isie e hoben we den kön-
nen. Inne halb de o liegenden A bei wu de dahe ein en sp echendes F amewo k
zu So wa emessung en wickel , welches dem Anwende e laub , sich sogenann e
Messwe gebe ü So wa emaße zu de inie en, welche dann ü die au oma isie e
E hebung de gewünsch en So wa emaße kon igu ie we den können.
51
2 So wa emessung
52
3 Messwe kzeuge
Man mus shape his ools les
hey shape him.
(A hu R. Mille )
Dieses Kapi el gib einen Übe blick übe e schiedene Ansä ze zu we kzeugun e -
s ü z en So wa emessung. Nach de De ini ion einige g undlegende Beg i e wi d
ein Cha ak e isie ungsschema da ges ell , anhand dessen e schiedene Messwe kzeu-
ge hinsich lich ih e Kon igu ie ba kei beu eil we den können.
De Schwe punk dieses Kapi els bilde eine Übe sich übe den S and de Tech-
nik. Dabei we den e schiedene Messwe kzeuge beispielha o ges ell , um de en
Funk ionsum ang, abe auch e l. Einsch änkungen au zuzeigen.
Die Reihen olge o ien ie sich dabei am G ad de Kon igu ie ba kei de We k-
zeuge und insbesonde e an den jeweiligen Möglichkei en, die zu messenden So wa-
emaße be ei s o ab es zulegen, so dass die So wa emessung zu P ojek lau zei
wei es gehend au oma isie e olgen kann.
Nich nähe be ach e we den dabei Ansä ze zu So wa emessung, welche zwin-
gend in P ozessmanagemen - bzw. Wo k low-Sys eme eingebunden sind. De a ige P ozess-
managemen - und
Wo k low-Sys eme
Ansä ze we den beispielsweise in [Lo 96] ode [DEA98] besch ieben. Dabei geben
die Wo k low-Sys eme den Anwende n die Ak i i ä en o , welche diese als nächs es
auszu üh en haben, und s oßen die E hebung de mi de Aus üh ung de Tä ig-
kei en e bundenen So wa emaße an. Alle dings müssen bei den beiden e wähn en
Ansä zen die meis en Da en manuell e ass we den. Du ch diese Vo gehensweise
is siche ges ell , dass die So wa eme ie-Anwendung e kennen kann, welche P o-
jek phasen ge ade du chlau en und welche Ak i i ä en dabei du chge üh we den.
Dadu ch können die e hobenen So wa emaße en sp echend zugeo dne we den. Je-
doch schein diese Ansa z die So wa een wickle bei ih e En scheidungs eihei
seh s a k einzuengen, so dass die En wickle eams nu noch eingesch änk au Än-
de ungen des geplan en P ojek e lau s eagie en können. Insbesonde e wide sp ich
ein de a ige Ansa z de in diese A bei anges eb en „Leich gewich igkei “ ( gl.
S. 4) des So wa emess e ah ens.
3.1 Beg i e
In de Li e a u inden sich, neben de Bezeichnung Messwe kzeuge häu ig die Ang-
lizismen So wa emess ools und CAME-Tools. Dabei wi d nach Dumke ein So wa- CAME-Tools
emess ool als So wa ewe kzeug de inie , „welches Komponen en eines So wa e-
P oduk es ode de So wa een wicklung in ih e Quell o m ode ans o mie en
53
3 Messwe kzeuge
Fo m (z. B. als spezielles Modell) einlies und nach o gegebenen Ve a bei ungs-
o sch i en nume isch ode symbolisch auswe e “ (siehe [Dum96], S. 39). Dagegen
seien Tools ü die So wa emessung sowohl Mess ools als auch So wa ewe kzeu-
ge, die de Ausp ägung de jeweiligen Mess-S a egie, de Au be ei ung de Mess-
objek e ode de (s a is ischen) Auswe ung bzw. Da s ellung de Messe gebnis-
se dien en ( gl. [Dum96], ebd.). De a ige We kzeuge we den in de Li e a u o
auch als CAME-Tools (Compu e Assis ed So wa e Measu emen and E alua ion,
gl. [EDBS 05], S. 49 .) bezeichne .
Inne halb diese A bei wi d mi dem Beg i Messwe kzeug eine Zusammens el-
Messwe kzeug
lung so wa ebasie ende We kzeugkomponen en bezeichne , welche im Rahmen de
So wa een wicklung
•zu So wa emessung eingese z we den können
und dabei e l. noch zusä zliche Funk ionali ä en
•zu Bewe ung de Messe gebnisse,
•zu s a is ischen Analyse ode
•zu Da s ellung de E gebnisse
au weisen.
Diejenigen Teilkomponen en eines Messwe kzeuges, welche ü die eigen liche E -
assung, Zählung ode Messung de zu e hebenden Messg öße e an wo lich sind,
sollen als Messwe gebe bezeichne we den. Dies kann im ein achs en Fall z. B. ein
Messwe gebe
Be iebssys emkommando sein, welches die Anzahl de Zeilen eine Tex da ei be-
s imm (z. B. das Unix-Kommando wc -l < ilename>). Übliche weise wi d man je-
doch einen Messwe gebe als API-Funk ion im Rahmen eines g öße en So wa e-
messungs-F amewo ks implemen ie en.
Es gib inzwischen zahl eiche Publika ionen, in denen Messwe kzeuge klassi izie
und hinsich lich ih e Eignung ü bes imm e Sp achen und So wa emaße und ih-
e In eg ie ba kei un e such we den ( gl. [DW97], [Dum99], [RW05]). Auch gib
es Lei äden, wie einzelne Ak i i ä en de So wa emessung du ch eine Kombina-
ion on speziellen Messwe kzeugen und in de Regel be ei s o handenen O ice-
Anwendungen we kzeugmäßig un e s ü z we den können ( gl. [KRSZ00]).
3.2 Ein Cha ak e isie ungsschema ü Messwe kzeuge
An diese S elle soll ein Cha ak e isie ungsschema da ges ell we den, welches es
e laub , Messwe kzeuge in Bezug au ih e Kon igu ie ba kei und indi iduelle Nu z-
ba kei einzuo dnen. Die Da s ellung e olg dabei in Anlehnung an [MH04].
Ein Messwe kzeug s ell gemäß de De ini ion im o he gehenden Abschni Funk-
ionen zu
•Da ensammlung,
•Ve a bei ung und
•P äsen a ion (Visualisie ung)
on So wa eme ie-Da en zu Ve ügung. Die Va iabili ä und dami die Kon igu-
ie ba kei und kon ex abhängige Benu zba kei eines Messwe kzeuges kann nun in
54
3.2 Ein Cha ak e isie ungsschema ü Messwe kzeuge
Bezug au diese d ei Dimensionen cha ak e isie we den.
Die e s e Dimension cha ak e isie die A und Weise de Da ensammlung selbs ,
d. h. die E assung, Zählung ode Messung de zu e assenden G öße. Dies e olg
du ch die Messwe gebe , welche olgende maßen ka ego isie we den können: Va iabili ä des
Messwe gebe s
•Vo de inie e Messwe gebe : Hie bei beinhal e das Messwe kzeug eine o de-
inie e Menge on Messwe gebe n, mi denen jeweils eine bes imm e Mess-
g öße e ass we den kann. Diese e ich en den Mess o gang in eine o -
gegebenen A und Weise und es is nich ode nu schwe möglich, wei e e
Messwe gebe in das Messwe kzeug zu in eg ie en. Ein Beispiel hie ü is
das im Abschni 3.3.1 e wähn e Kommandozeilen-Tool CMTJa a, welches
bei jedem Au u g undsä zlich ie o gegebene So wa emaße e ass und
das E gebnis als Messp o okoll ausgib .
•Kon igu ie ba e Messwe gebe : Hie bei en häl das Messwe kzeug eben alls ei-
ne o gegebene Menge on Messwe gebe n, de en Ve hal en jedoch du ch den
Benu ze angepass we den kann. Beispielsweise könn e ein LOC-Messwe -
gebe Kon igu a ionsmöglichkei en bzgl. de Zähl o sch i en ü Lee - ode
Kommen a zeilen au weisen.
•Va iable Messwe gebe : Bei diesen Messwe kzeugen können die o handenen
Messwe gebe kon igu ie und zusä zliche Messwe gebe hinzuge üg we -
den. Übliche weise we den dazu om He s elle des Messwe kzeugs die Schni -
s ellen, welche ein Messwe gebe implemen ie en muss, o en geleg .
Die zwei e Dimension cha ak e isie die Me hoden und Funk ionen zu Ve a bei- Va iabili ä de
Da en e a bei ung
ung de gemessenen Da en. Diese können olgende maßen ka ego isie we den:
•Vo de inie e Funk ionen: Das Messwe kzeug en häl eine o de inie e Men-
ge on Funk ionen zu Ve a bei ung, Bewe ung und Ve knüp ung de Mess-
we e. Dadu ch wi d eine bes imm e A und Weise de Ve a bei ung es ge-
leg . Beispielsweise könn e au diese Weise eine Bewe ungs unk ionali ä ü
die Wa ungsan älligkei on Sou cecode-A e ak en implemen ie sein. Diese
be echne mi els eines bes imm en Algo i hmus anhand d eie So wa emaße
(z. B. LOC, zykloma ische Komplexi ä , Anzahl de Pa ame e ), ob ü den
un e such en Sou cecode mi einem e höh en Wa ungsau wand zu echnen
is .
•Kon igu ie ba e Funk ionen: Hie bei sind die Funk ionen zwa eben alls o ge-
geben, jedoch können die Ve a bei ungssch i e kon igu ie und pa ame isie
we den. In obigem Fall wä e beispielsweise denkba , dass sich die Gewich ung
de d ei Fak o en pa ame isie en läss .
•Va iable Funk ionen: Bei Messwe kzeugen mi a iablen Funk ionen können
die o handenen Funk ionen nich nu kon igu ie und pa ame iesie we -
den, sonde n es können auch neue Funk ionen hinzuge üg bzw. die o han-
denen e se z we den. So könn e in obigem Beispiel bei de Be echnung de
55
3 Messwe kzeuge
Wa ungsan älligkei e l. noch die Anzahl de Re isionen des Sou cecode-
A e ak s im Rahmen de Ve sions e wal ung mi ein ließen.
•Dynamische Funk ionen: Als Messwe kzeuge mi dynamische Funk ionali ä
sollen solche Implemen ie ungen bezeichne we den, bei denen neue Funk io-
nen du ch den Endanwende dynamisch zu Lau zei des Messwe kzeuges kon-
igu ie we den können. Denkba wä e hie , dass die Ve a bei ungs unk io-
nen mi els g aphische Symbole in eine Benu ze obe läche da ges ell we -
den. Diese könn en dann zu Lau zei de Anwendung mi els en sp echen-
de g aphische Modellie ungs unk ionali ä en zueinande in Beziehung gese z
we den, so dass dadu ch neue Ve a bei ungs unk ionali ä en en s ünden. Bei-
spielsweise könn e au diese Weise die G ößenmessung und die Re isionszäh-
lung ü So wa e-A e ak e zueinande in Beziehung gese z we den, so dass
sich als kombinie es Maß die G ößenände ung p o Commi -Vo gang im Ve -
sions e wal ungssys em e gib .
Die d i e Dimension be i die P äsen a ion de Messe gebnisse. In [MH04] wi d
dabei zwischen P äsen a ion und Visualisie ung un e schieden. Mi P äsen a ion sei
Va iabili ä de
P äsen a ion die Zusammens ellung de e a bei e en Da en und mi Visualisie ung die eigen li-
che isuelle Da s ellung gemein .1Da bei diese Di e enzie ung die Abg enzung zu
o he gehenden Da en e a bei ung schwie ig e schein , soll hie nu de Beg i de
P äsen a ion e wende we den. Die P äsen a ion on E gebnissen kann dabei so-
wohl ex uell als auch g aphisch ode mi els en sp echende Misch o men e olgen.
Auch bezüglich de P äsen a ion lassen sich wiede d ei Ka ego ien un e scheiden.
•S a ische E gebnisp äsen a ion: Die A und Weise de E gebnisda s ellung is
es o gegeben und kann om Anwende nich e ände we den.
•Kon igu ie ba e E gebnisp äsen a ion: Hie kann die E gebnisda s ellung o
de Anwendung des Messwe kzeuges kon igu ie we den. Beispielsweise kann
de Anwende bes immen, ob das E gebnis in Tabellen o m ode als G aphik
da ges ell we den soll.
•Dynamische E gebnisp äsen a ion: Bei diese Fo m kann de Anwende zu
Lau zei de Anwendung en scheiden, au welche Weise die E gebnisse da ge-
s ell we den sollen.
Das hie da ges ell e Klassi izie ungsschema besch eib in e s e Linie den G ad de
Kon igu ie ba kei und de Va iabili ä de So wa emesswe kzeuge. Dieses Klassi i-
zie ungsschema wu de gewähl , um im nächs en Kapi el e schiedene G und ypen
on Messwe kzeugen oneinande abg enzen zu können.
Daneben zeichnen sich die e schiedenen Messwe kzeuge na ü lich auch du ch
un e schiedlich ausgep äg e unk ionale Aspek e aus. Dazu gehö beispielsweise die
Funk ionale
Aspek e
1Beispielsweise könn en im Rahmen de P äsen a ion die da zus ellenden Da en in eine XML-
Da ei abgeleg we den. Bei de Visualisie ung wi d dann die XML-Da ei wahlweise im HTML-
ode PDF-Fo ma ausgegeben.
56
3.3 Messwe kzeuge: S and de Technik
Möglichkei , bei de Da ene assung au e schiedene Quellen zug ei en zu können,
ode die Fähigkei zu Ech zei e a bei ung. Bzgl. des da ges ell en Klassi izie ungs-
schemas we den diese beiden Aspek e on den Dimensionen Da ensammlung und
Ve a bei ung abgedeck .
Da übe hinaus we den de a ige unk ionale Aspek e im olgenden Abschni bei
de exempla ischen Besch eibung e schiedene Messwe kzeuge mi da ges ell . Die
Gliede ung o ien ie sich dabei am G ad de Kon igu ie ba kei de Messwe kzeuge.
3.3 Messwe kzeuge: S and de Technik
3.3.1 In So wa een wicklungsumgebungen in eg ie e Messwe kzeuge
Neben kommandozeilen-o ien ie en Messwe kzeugen, wie CMTja a2, welche ein-
ache Komplexi ä s- und G ößenmaße ü einzelne Sou cecode-Da eien be echnen
können, gib es schon sei einigen Jah en Messwe kzeuge, die in So wa een wick-
lungsumgebungen in eg ie sind.
Beispielha hie ü is die En wicklungsumgebung Bo land Toge he 20063zu
nennen. Diese En wicklungsumgebung is eine Wei e en wicklung de u sp ünglich
on de Fi ma Toge he So en wickel en IDE Toge he Con olCen e und basie
inzwischen au de Eclipse-Pla o m4. Eine seh ähnliche Funk ionali ä wie Bo land
Toge he 2006 bie e auch das Eclipse Me ics Plugin5, welches als Open-Sou ce-
So wa e e ügba is .
Die Toge he -IDE en häl sowohl ü den Sou cecode als auch ü die mi Toge he
modellie en UML-Diag amme eine g oße Menge o de inie e So wa emaße. Im Toge he
Me ics & Audi s
Toge he -Sp achgeb auch wi d dabei zwischen Me ics und Audi s un e schieden.
Eine Me ic is dabei ein wie in diese A bei de inie es So wa emaß. Beispiels-
weise gib es eine Code-Me ic, welche die Anzahl de im ak uellen So wa ep ojek
o kommenden Ja a-Klassen e mi el . Ein Audi is dagegen ein So wa emaß, ü
das ein Schwellwe de inie wu de. Beispielsweise kann ü die maximale Zyklo-
ma ische Komplexi ä eine Me hode eine Obe g enze de inie we den. Du ch das
en sp echende Audi wü den dann die Komplexi ä swe e alle Me hoden be echne
und ü diejenigen Me hoden, bei denen de Schwellwe übe sch i en wu de, eine
Re ak o isie ung o geschlagen we den.
Die Audi s gehen eilweise übe den Anwendungsbe eich on So wa emaßen hin-
aus und dienen auch dazu, Codie ungs- ode Modellie ungs ehle au zudecken, indem
sie die Seman ik des Sou cecodes ode des UML-Modells un e suchen. Beispielsweise
gib es ein Audi , welches inne halb on UML-Zus andsdiag ammen Zus ände e -
kenn , die zwa e eich , abe nich meh e lassen we den können und auch keinen
Endzus and da s ellen.
2CMTJa a is ein P oduk de Fi ma Tes well mi Si z in Tampe e (Finnland)
(h p://www. es well. i/cm jdesc.h ml)
3h p://www.bo land.com/de/p oduc s/ oge he
4h p://www.eclipse.o g
5h p://me ics.sou ce o ge.ne
57
3 Messwe kzeuge
Abbildung 3.1: Kon igu a ion on So wa emaßen in Bo land Toge he
Um die in Toge he en hal enen So wa emaße e wenden zu können, müssen de
Sou cecode bzw. die UML-Diag amme be ei s exis ie en. Anschließend können die
Ve wendung de
Toge he
So wa emaße zu e mi elnden So wa emaße ausgewähl und in engen G enzen kon igu ie we den
( gl. Abbildung 3.1). Beispielsweise kann angegeben we den, ob das So wa emaß ü
das gesam e P ojek ode nu au ein Teilpake angewende we den soll und wie die
Agg ega ion eines einzelnen Maßes (z. B. LOC) übe das gesam e Pake hinweg e ol-
gen soll. Angebo en we den hie übliche weise die Summa ion, die Mi elwe bildung
ode die E mi lung on Maximalwe en.
Eine beispielha e Da s ellung de Messe gebnisse is in Abbildung 3.2 zu sehen.
Hie wu den ü ein Ja a-P ojek die So wa emaße
•Hals ead-Länge,
•Hals ead-Volumen,
•Lines o Code und
•Numbe o Classes
au Me hoden-, Klassen-, Pake - und P ojek -Ebene be echne . Da die Hals ead-
Maße au Me hodenebene nich de inie sind, is bei diesen au Klassen-Ebene die
kleins e G anula i ä angegeben. Die So wa emaße wu den nu ü den p oduk i en
Sou cecode und nich ü den ähnlich um ang eichen Tes -Code e mi el .
58
3.3 Messwe kzeuge: S and de Technik
Abbildung 3.2: E gebnisda s ellung ü ausgewähl e So wa emaße in Bo land To-
ge he 2006
Die Fähigkei en on in En wicklungsumgebungen in eg ie en Messwe kzeugen
sind somi au die Bedü nisse des einzelnen P og ammie e s zugeschni en. Diese P og ammie e als
Zielg uppe
kann dami Code-Bes and eile e kennen, die e l. zu komplizie au gebau , zu lang
ode nich hin eichend dokumen ie sind. Auch können mi diesen We kzeugen eil-
weise po en ielle seman ische Fehle im Sou cecode ode im Design-Modell en deck
we den.
Eine Ve knüp ung de Messe gebnisse mi So wa emaßen, welche auße halb de
IDE e mi el we den, is e s einmal nich möglich, wodu ch iele So wa emaße
außen o bleiben. Es is mi diesen Tools beispielsweise nich möglich, den Au wand
zu bes immen, de ü die Implemen ie ung eines Ja a-Pake es nö ig wa , und diesen
zum Hals ead-Volumen dieses Pake s in Beziehung zu se zen.
Auch is es nich möglich, inhal liche Selek ionsk i e ien ü die Be echnung de
So wa emaße anzugeben. Beispielsweise können die Messwe kzeuge nich e kennen,
ob in bes imm en Pake en des P ojek es die Anwendungslogik, die Pe sis enz- ode
die Visualisie ungs-Komponen en de Anwendung implemen ie we den. Somi is
auch ein au oma isie e G ößen e gleich diese Komponen en nich möglich.
Alle dings lassen sich die So wa eme ie-Fähigkei en on Toge he mi els seines
Modul-Konzep s e wei e n. Die Audi - und Me ic-Funk ionali ä en on Toge he E wei e ba kei des
Toge he
Quali y Assu ance
Moduls
sind im sogenann en Quali y Assu ance (QA) Modul en hal en. Mi els de a ige
Module is es g undsä zlich möglich, die Funk ionali ä on Toge he zu e wei e n,
da die API on Toge he o en und dokumen ie is . Im P inzip muss ü ein eigenes
Me ic-Plugin eine Ja a-Klasse e s ell we den, welche die en sp echenden In e aces
aus dem QA-Modul implemen ie , und in einem Un e e zeichnis de Toge he -
Modul-Ve zeichniss uk u abgeleg we den ( gl. [CH02], S. 140 .).
Eine Anwendung diese E wei e ungsmöglichkei en wu de in [Dau05] in Fo m des
Me ics Builde Plugins o ges ell . Diese als P o o yp e ügba e Anwendung e -
laub die Kombina ion de in Toge he se ienmäßig implemen ie en Mess-Plugins
mi selbs en wickel en Plugins und dami die De ini ion neue So wa emaße. De
Messbe eich (einzelne Klasse, Pake , ganzes P ojek ) diese So wa emaße und auch
die Kombina ion diese So wa emaße in Fo m ein ache ma hema ische Te me kann
59
3 Messwe kzeuge
Abbildung 3.6: IBM Ra ional P ojec Console – Beispielso wa emaß:
Code-Zeilen-Ve gleich zu e schiedenen Meilens einen (aus [GWI04])
Beim S udium de en sp echenden He s elle in o ma ionen zu P ojec Console
( gl. [IJ03], [GWI04], [Ish04]) äll jedoch au , dass sich die do besch iebenen So -
Se ienmäßig nu
ein ache
So wa emaße
implemen ie
wa emaße au das eine Abzählen on A e ak en besch änken. So wi d die Anzahl
de An o de ungen, die Ve ände ung de Anzahl on An o de ungen, die Anzahl
de Anwendungs älle (Use Cases) mi einem bes imm en S a us und Ähnliches be-
sch ieben. Auch können die Gesam zahl de P og ammcodezeilen (LOC) und de en
Ve ände ung (siehe Abbildung 3.6) ode die Anzahl de au e enden Fehle gemes-
sen we den. Von den inne halb de IBM Ra ional Sui e speiche ba en T aceabili y-
In o ma ionen schein man he s elle sei ig bei de Ve wendung de P ojec Console
keinen Geb auch zu machen.
So wa emessungen in Bezug au Ressou cenmaße wie Mi a bei e einsa z, En -
wicklungszei en und Pe sonalau wände sind nu in Ve bindung mi MS P ojec mög-
lich ( gl. [Ish04]). Alle dings handel es sich hie , wie au Sei e 62 da ges ell , nich
um So wa emessung im eigen lichen Sinn, da dabei nu P ojek in o ma ionen, wel-
che manuell inne halb on MS P ojec gep leg we den müssen, isualisie we den.
Dazu muss zunächs inne halb on MS P ojec ein P ojek s uk u plan e s ell und
gep leg we den. Fü jedes A bei spake müssen In o ma ionen wie Daue , Ressou -
Kombina ion on
P ojec Console und
MS P ojec cen, Vo gänge , Zei au wand und Fe igs ellungsg ad in dem MS P ojec P ojek plan
manuell o gesch ieben we den, d. h. auch hie inde keine au oma isie e Messung
66
3.3 Messwe kzeuge: S and de Technik
Abbildung 3.7: IBM Ra ional P ojec Console – Beispielso wa emaß:
Zei au wände und Fe igs ellungsg ade on P ojek -Meilens einen
(aus [GWI04])
s a . Zusä zlich muss ein sogenann es Mic oso P ojec Sou ce Templa e mi Hil e
de P ojec Console gene ie we den, in dem die zu analysie enden P ojek -Felde
de inie we den. Schließlich muss noch ein Mapping on den MS-P ojec -Felde n zu
den P ojec Console Da en-Tabellen in Bezug au die Typisie ung de Da en ange-
geben we den.
Anschließend können die in MS P ojec gep leg en Da en mi els de P ojec Con-
sole in Fo m eine Dashboa d-Da s ellung isualisie we den. Beispielsweise we -
den in Abbildung 3.7 die Zei au wände und die Fe igs ellungsg ade on P ojek -
Meilens einen da ges ell .
Auch gib es eine Da s ellung übe die Einhal ung on Kos en- und Zei -Budge s
mi els eine plaka i en Tachome e -Da s ellung (siehe Abbildung 3.8). De Cos
Pe o mance Index (CPI) gib an, ob du ch die P ojek ak i i ä en ak uell meh ode
wenige als die budge ie en Kos en au gewende we den. Analog gib de Schedule
Pe o mance Index (SPI) an, ob die P ojek ak i i ä en dem Zei plan o auseilen
ode diesem hin e he hinken. Beide Indika o en soll en unge äh den We Eins an-
nehmen.
Da die on de P ojec Console e wende en So wa emaße in Fo m on Pe l-
Sk ip en implemen ie sind, könn en diese g undsä zlich beliebig um neue Ma- E wei e ba kei de
IBM Ra ional Sui e
ße bzw. Kombina ionen on So wa emaßen e wei e we den. Auch die We kzeu-
ge Clea Case und Clea Ques können mi els Pe l-Sk ip e e wei e we den. Somi
könn e auch au In o ma ionen, die de P ojec Console s anda dmäßig nich zu Ve -
ügung s ehen, zugeg i en we den, so dass diese bei de De ini ion en sp echende
So wa emaße e wende we den können.
Auch wä e es g undsä zlich denkba , die Fähigkei en de P ojec Console mi -
els geeigne e Pe l-Sk ip e dahingehend zu e wei e n, dass auch P ozessda en wie
Au wände und Ressou cen mi einbezogen we den können. Dies wi d insbesonde e
du ch die einhei liche Pe l-P og ammie schni s elle de Bes and eile de IBM Ra-
ional Sui e begüns ig . S anda dmäßig sind de a ige Möglichkei en de zei jedoch
nich implemen ie .
67
3 Messwe kzeuge
Abbildung 3.8: IBM Ra ional P ojec Console – Beispielso wa emaß:
Einhal ung on Kos en- und Zei -Budge s (aus [Ish04])
3.3.3 P ojek lei s ände
Das Haup un e scheidungsme kmal on P ojek lei s änden im Ve gleich zu klassi-
schen Dashboa ds is nach [MHS+06], dass sich P ojek lei s ände indi iduelle kon i-
gu ie en und bedienen lassen, so dass die au diese Weise gewonnenen So wa emaße
leich e nu ze spezi isch in e p e ie we den können. Au de ande en Sei e we -
den die Beg i e P ojek lei s and, So wa elei s and, So wa e P ojec Con ol Cen e
(SPCC) und Dashboa d auch inne halb de selben Publika ion synonym e wende
So wa e P ojec
Con ol Cen e ( gl. [MHS+06]).
De Un e schied on P ojek lei s änden zu Dashboa ds e gib sich im Wesen li-
chen du ch den G ad de Implemen ie ung
• a iable und dynamische Mess e a bei ungs unk ionen und
•kon igu ie ba e und dynamische E gebnisp äsen a ionsmöglichkei en.
Da einige Ziele de So wa emessung (P ognose, Ve besse ung, Schwachs ellen-
analyse) e s mi einem en sp echenden E ah ungsda enbank angegangen we den
können, haben P ojek lei s ände o mals die Möglichkei , Messe gebnisse in einem
Da enbanksys em abzulegen und wiede zu e wenden.
Insgesam is die G enze zwischen Dashboa ds und P ojek lei s änden ehe lie-
ßend. Beispielsweise wi d die IBM Ra ional P ojec Console inne halb diese A bei
als Dashboa d einges u , da sie wede übe eine dynamische Funk ionsimplemen-
ie ung noch übe dynamische E gebnisp äsen a ionsmöglichkei en e üg .
68
3.3 Messwe kzeuge: S and de Technik
3.3.3.1 Ideal ypisches A chi ek u modell ü P ojek lei s ände
Münch und Heid ich haben in [MH04] ein Modell ü die A chi ek u on P ojek lei -
s änden besch ieben, welches man wohl au G und de An o de ungen an Flexibili ä
und Kon igu ie ba kei als ideal ypisch bezeichnen könn e. Um die A chi ek u p in-
zipien a sächlich implemen ie e P ojek lei s ände beu eilen zu können, soll dieses
ideal ypische A chi ek u modell on Münch und Heid ich in diesem Abschni da -
ges ell we den.
Das A chi ek u modell basie au d ei Schich en (siehe Abbildung 3.9):
•In de In o ma ions-Schich sind alle zum Be ieb des P ojek lei s ands benö-
ig en In o ma ionen gespeiche . Neben den Messda en des ak uellen P ojek s
und E ah ungsda en aus ühe en P ojek en sind auch unk ionale Komponen-
en zu Da en e a bei ung und zu Da s ellung de E gebnisse in en sp echen-
den Pools inne halb diese Schich abgeleg .
•Die eigen liche Da en e a bei ung inde in de Funk ions-Schich s a . Hie
e olg die Kon igu a ion de Ve a bei ungs unk ionen, die eigen liche Ve a -
bei ung de Messda en und die Au be ei ung de E gebnisse zu g aphischen
Da s ellung.
•Die Anwende -Schich schließlich is ü die In e ak ion des Benu ze s mi dem
P ojek lei s and zus ändig.
Die eigen liche So wa emessung nimm dabei nu einen kleinen An eil inne halb de E ah ungs-
da enbanken
skizzie en A chi ek u ein. Inne halb de In o ma ions-Schich gib es dazu je eine
p ojek spezi ische und eine o ganisa ionswei e E ah ungsda enbank. Diese müssen
die do be ei ges ell en Da en nich no wendige weise selbs en hal en, sonde n s el-
len ielmeh Mechanismen zum Zug i au e eil e Da enbes ände be ei .
Die p ojek spezi ische E ah ungsda enbank bie e somi Zug i smöglichkei en
au P ojek pläne, P ojek ziele und -eigenscha en sowie au p ojek spezi ische So -
wa emaße, wäh end die o ganisa ionswei e E ah ungsda enbank In o ma ionen wie
Quali ä smodelle ode quali a i e E ah ungswe e be ei s ell .
Die oben angesp ochene Flexibili ä und Kon igu ie ba kei dieses A chi ek u - Baus einkonzep
konzep s üh haup sächlich dahe , dass die Funk ionali ä des Sys ems in Fo m
on Baus einen in d ei Pools inne halb de In o ma ions-Schich hin e leg is , je-
doch e s zu Lau zei gemäß de ak uellen An o de ungen kon igu ie wi d. Diese
Baus eine implemen ie en die Ve a bei ungs unk ionen des P ojek lei s andes, die
Sich en au die Da enbes ände und die Schni s ellen zu Ausgabe de E gebnisse:
•Funk ionsbaus eine: Im sogenann en Pool o Func ions sind Funk ionen wie
Moni o ing, Vo he sage ode Anlei ung hin e leg .
•Sich en: Um die E gebnisse de Ve a bei ungs unk ionen aus e schiedenen
Pe spek i en da s ellen zu können, s ell das Sys em un e schiedliche Sich en
beispielsweise ü den P ojek lei e ode den Quali ä s-Manage zu Ve ügung.
•Ausgabeschni s ellen: Da die Sich en schließlich mi einem geeigne en Ausga-
besys em (z. B. Web-B owse , Gnuplo , MS Excel) isualisie we den müssen,
is auch ein Pool mi en sp echenden Schni s ellen unk ionen o gesehen.
69
3 Messwe kzeuge
Abbildung 3.9: Ideal ypisches A chi ek u modell ü P ojek lei s ände
(aus [MH04])
70
3.3 Messwe kzeuge: S and de Technik
Da die in de In o ma ionsschich hin e leg e Funk ionali ä de So wa elei s ands- Kon igu a ion
A chi ek u nach Münch und Heid ich so a iabel konzipie is , esul ie en da aus
auch en sp echend komplexe Kon igu a ionsmöglichkei en. Dies soll in de Cus omi-
zing-Einhei inne halb de Funk ionsschich e olgen.
Zunächs müssen die E ah ungsda enbanken ini ialisie we den, indem alle Da-
enquellen de inie we den. Dann muss die eigen liche Funk ionali ä mi els de
Funk ionsbaus eine zusammenges ell we den. Dabei müssen auch Sich en de inie
und Ausgabenschni s ellen zugeo dne we den.
Die Da a-P ocessing-Einhei soll nun übe die ausgewähl en und kon igu ie en Da en e a bei ung
Funk ionsbaus eine on de Cus omizing-Einhei in o mie we den und diese hin-
sich lich benö ig e Ein- und Ausgabein o ma ionen und Abhängigkei en zu ande en
Funk ionsbaus einen analysie en. Wäh end de Aus üh ung de Funk ionsbaus eine
u die Da a-P ocessing-Einhei die en sp echenden Eingabe-In o ma ionen aus den
E ah ungsda enbanken ab und s öß dabei gegebenen alls en sp echende So wa e-
me ie-P ozesse an. Die E gebnisse we den an die P äsen a ions-Einhei übe mi el
we den.
Da do je nach ausgewähl e Sich en sp echende Da s ellungen gene ie we den P äsen a ion
sollen, müssen die Sich en zunächs analysie we den, um zu e mi eln, welche
E gebnisse de Funk ionsbaus eine in die E gebnisda s ellungen in eg ie we den
müssen. Die E gebnisda s ellungen we den dann zu Visualisie ung an die Benu -
ze schich wei e gelei e .
Pa allel dazu können in de Packaging-Einhei E ah ungen, welche bei de Be- E ah ungs-
sammlung
nu zung des P ojek lei s andes du ch den Anwende gewonnen wu den, subsumie
und gene alisie we den, um sie ü zukün ige P ojek e in den E ah ungsda en-
banken abzuspeiche n. Dabei sollen in de Regel nich nu ein ach die Messwe e
pe sis en abgeleg we den, sonde n die E ah ungen sollen einzeln alidie und
zu E ah ungspake en gebündel in eine Expe ience Base gespeiche we den ( gl.
S. 165).
Münch und Heid ich haben meh e e So wa e-Messwe kzeuge hinsich lich ih e
Kon o mi ä mi obigen Emp ehlungen ü P ojek lei s ände un e such und ü sie-
ben We kzeuge die gewonnenen E gebnisse in [MH04] besch ieben. Von den un e -
such en We kzeugen weisen dabei nu ie en sp echende Möglichkei en au , sowohl
die Funk ionen als auch die E gebnisp äsen a ionen selbs zu kon igu ie en:
•ARIS P ocess Pe o mance Manage 11 (IDS Schee AG)
•Amadeus (A cadia P ojec )
•SEL-NASA So wa e Managemen En i onmen (SME)
•WebME
Nachdem das Sys em Amadeus be ei s im Abschni 3.3.2.1 besp ochen und als
klassisches Dashboa d einges u wu de, sollen die ande en d ei genann en Sys eme
und wei e e Ansä ze ü P ojek lei s ände im Folgenden nähe un e such we den.
11 h p://www.ids-schee .com/ge many/p oduc s/a is_con olling_pla o m/49532
71
3 Messwe kzeuge
3.3.3.2 ARIS P ocess Pe o mance Manage
Es übe asch ein wenig, dass de ARIS P ocess Pe o mance Manage (ARIS PPM),
welche on de IDS Schee AG in Saa b ücken en wickel und e ieben wi d,
in [MH04] als So wa e P ojec Con ol Cen e einges u wu de. Lau He s elle -
in o ma ionen ( gl. [PPM07]) handel es sich dabei um ein We kzeug zu Analyse,
We kzeug zu
Un e suchung on
Un e nehmensp o-
zessen
zu Bewe ung und zum Moni o ing on Un e nehmensp ozessen, wie beispielsweise
•Au agsbea bei ung,
•Bescha ung,
•K edi bea bei ung und We papie geschä im Finanzbe eich sowie
•zu gene ellen Übe wachung on Se ice Le el Ag eemen s.
ARIS PPM wi d übliche weise an ERP-Sys eme wie SAP ERP12 angeschlossen, um
die Leis ung on Geschä sp ozessen anhand on Lau zei da en zu messen. Dabei
we den P ozesskennzahlen wie
•Du chlau zei en,
•Te min eue ode
•P ozesskos en
be echne . Diese Kennzahlen können dann mi els eines sogenann en Pe o mance-
Cockpi isualisie we den ( gl. Abbildung 3.10).
Dami is ARIS PPM ein We kzeug, um die Pe o mance on be iebswi scha -
lichen Geschä sp ozessen zu messen und zu analysie en. G undsä zlich is dieses
Sys em dahingehend e wei e ba , dass Da en aus ande en IT-Sys emen ex ahie
und e dich e we den können. Alle dings schein das Sys em au die Analyse s an-
da disie e P ozesse, wie beispielsweise die Abwicklung eine Bes ellung, speziali-
sie zu sein ( gl. [PPM07]). Im So wa e-Enginee ing ha man es dagegen in de
Regel mi a iablen P ozessen zu un. Insbesonde e we den die du chzu üh enden
P ojek ak i i ä en ü jedes So wa e o haben p ojek spezi isch angepass (Tailo-
ing), so dass das ARIS-PPM-Sys em keine de inie en Anknüp ungspunk e inden
dü e. Auch wi d on Sei en des He s elle s ein de a iges Anwendungs-Szena io
nich besch ieben.
Jedoch weis die Dashboa d-Da s ellung iele de in Abschni 3.3.2 besch iebenen
Eigenscha en, wie T end-Da s ellung, D ill-Down-Funk ionen und Ampel-Da s el-
lungen au . Somi könn e ARIS PPM du chaus als Dashboa d-F on end ü en sp e-
ARIS PPM als
Dashboa d-
F on end chende So wa eme ie-We kzeuge in Be ach kommen. Im Auslie e ungszus and is
die So wa e jedoch nich als Lei s and ü So wa ep ozesse e wendba .
3.3.3.3 Die SEL-NASA So wa e Managemen En i onmen
Auch bei de So wa e Managemen En i onmen (SME, gl. [HKVD92], [HKV94]),
welche am So wa e Enginee ing Labo a o y des NASA Godda d Space Fligh Cen e s
en wickel wu de, äll es schwe , diese als So wa e-Lei s and zu bezeichnen.
Vielmeh handel es sich um ein F on end zu Auswe ung on E ah ungsda en
übe So wa ep ojek e, welche in eine Da enbank abgeleg sind. Ein he aus agendes
12h p://www.sap.com/solu ions/business-sui e/e p
72
3.3 Messwe kzeuge: S and de Technik
Abbildung 3.10: Pe o mance Dashboa d des ARIS P ocess Pe o mance Manage s
Me kmal dieses Sys ems is jedoch, dass es eine A Expe ensys em in eg ie ha ,
welches dem Anwende au Basis on sowohl ak uellen P ojek we en als auch on Expe ensys em
E ah ungswe en konk e e Emp ehlungen ü die wei e e Vo gehensweise geben soll.
Die Da en e gangene und ak uelle P ojek e sind in de sogenann en SEL-
Da enbank abgeleg , welche sich am genann en So wa e-Enginee ing-Labo im Lau e
meh e e Jah e en wickel ha . Zu den gespeiche en In o ma ionen gehö en
•Au wände,
•Rechenzei nu zung,
•So wa eände ungen,
•So wa e ehle sowie
•Code-Um angsda en in LOC bzw. Modulanzahlen.
Le z endlich kenn das SME-Sys em genau ach So wa emaße diese A , wobei es
selbs keine So wa emessungen du ch üh en kann. S a dessen müssen die Da en Manuelle
Da ene assung
sowohl e gangene als auch ak uelle So wa ep ojek e manuell in die Da enbank
eingep leg we den.
Auch In o ma ionen übe das Anwendungsgebie de So wa ep ojek e, e wende-
e P og ammie sp achen, We kzeuge und Planungsda en (Zei - und Au wandsschä -
zungen) we den in de Da enbank hin e leg .
73
3 Messwe kzeuge
Daneben wu den au Basis in ühe en P ojek en gemach e E ah ungen Modelle
en wickel , welche Beziehungen zwischen bes imm en En i ä en des So wa een wick-
lungsp ozesses besch eiben. Diese Modelle sind eben alls inne halb des SME-Sys ems
ab u ba . Dami soll es möglich sein, ein ak uelles P ojek im Ve gleich zu einem
ypischen P ojek zu beu eilen und die kün ige En wicklung dieses P ojek es o -
he zusagen bzw. abzuschä zen.
Als Beispiele solche E ah ungsmodelle we den in [HKVD92] Funk ionen ge-
nann , welche den Pe sonalbeda inne halb eines P ojek es als eine Funk ion übe
E ah ungsmodelle
die En wicklungszei da s ellen ode eine Gleichung, welche eine Beziehung zwischen
dem En wicklungsau wand und de Anzahl de Code-Zeilen he s ell .
Schließlich en häl das SME-Sys em noch eine Reihe on En wicklungs egeln und
P oblemlösungs o schlägen in Fo m eines Expe ensys ems (siehe olgendes Bei-
spiel).
Beispiel 5 (Expe ensys em egel) Eine Fehle a e, die nied ige als gewöhnlich
Beispiel egel eines
Expe ensys ems aus äll , kann olgende U sachen haben:
• Ungenügende Tes ak i i ä en
• E ah enes En wicklungs eam
• Das P oblem is wenige komplizie als e wa e
Das SME-Sys em bie e nun Möglichkei en, die ak uellen P ojek maße wie Fehle -
a e, Pe sonals unden ode Code-Um ang (in LOC) zu beobach en13 und sowohl
mi ausgewähl en e gangen P ojek en als auch mi gene ie en E wa ungswe en
zu e gleichen, welche au obigen Modellen basie en. Eben alls is es möglich, au
Basis de aus e gangenen P ojek en gewonnenen E ah ungsmodelle, die ak uellen
Messwe e zu ex apolie en, um so den wei e en P ojek e lau abzuschä zen.
Dabei geh das SME-Sys em on einem s eng wasse alla igen Vo gehensmodell
aus, welches aus den Phasen
•Design
•Codie ung und Uni -Tes s
•In eg a ions es s
•Akzep anz es s
bes eh .
Au g und diese Vo he sagemodelle kann das SME-Sys em auch Abweichungen
gegenübe dem geplan en Ve lau bes imm e P ojek kennzahlen e kennen. Mi els
des in eg ie en Expe ensys ems e such das Sys em in diesem Fall, dem Anwen-
de Vo schläge ü die wei e e Vo gehensweise zu un e b ei en. Die Abbildung 3.11
Vo schläge ü die
P ojek lei ung zeig beispielsweise eine Abweichung de kumulie en Fehle menge om e wa e en
Ve lau . Dabei wi d de e wa e e Ve lau inklusi e eine möglichen Bandb ei e da -
s ell . Zusä zlich we den mögliche Emp ehlungen gegeben.
Die Kon igu a ions- und Funk ionsmöglichkei en des SME-Sys ems sind somi seh
besch änk . Das Sys em kenn ach So wa emaße und besi z eine es e Anzahl
Funk ionen zu Beobach ung, Analyse und zum Ve gleich diese Maße. Das Sys em
13Dazu müssen diese P ojek maße o he manuell e ass wo den sein.
74
3.3 Messwe kzeuge: S and de Technik
Abbildung 3.11: Emp ehlungen des SME-Sys ems au g und on Abweichungen ge-
genübe dem geplan en P ojek e lau (aus [HKVD92])
kann die So wa emaße nich selbs ändig e mi eln, sonde n is au eine manuelle
P lege de Da en du ch den Anwende angewiesen.
He auszuheben is jedoch das in eg ie e Expe ensys em, welches e such , au -
g und hin e leg e E ah ungswe e und Regeln, Abweichungen in den P ojek kenn-
zahlen zu e kennen und zu beg ünden und en sp echende Vo schläge zu un e b ei en.
3.3.3.4 WebME
Einen ande en Schwe punk leg das on Teso ie o und Zelkowi z en wickel e So -
wa emesswe kzeug WebME (Web Measu emen En i onmen , gl. [TZ97]). Wäh end
bei SME de Expe ensys emansa z und die Möglichkei en de Da en isualisie ung
im Vo de g und s ehen, zeichne sich das WebME-Sys em du ch dynamische De i- Dynamische
De ini ion on
So wa emaßen
ni ionen on So wa emaßen in eine e eil en En wicklungsumgebung aus.
Zwa wi d in [MH04] e klä , dass das WebME-Sys em au dem SME-Ansa z
basie en wü de, und auch die Namensgebung deu e au einen de a igen Sach e hal
hin. Ta sächlich e wende WebME jedoch keine Komponen en des SME-Sys ems
und basie au eine öllig ande en A chi ek u ( gl. [TZ97]), welche de jenigen
des in Abbildung 3.9 (S. 70) da ges ell en ideal ypischen P ojek lei s andes ähnel .
Dabei kann die In o ma ionsschich meh e e e eil e Da enquellen en hal en, au
die mi els sogenann e Da a-W appe s zugeg i en wi d. Diese implemen ie en eine
einhei liche Schni s elle zwischen den Da enquellen und de Ve a bei ungslogik.
Beim WebME-Sys em we den mi els eine Sk ip sp ache die e a bei ba en So -
wa emaße de inie , welche als A ibu e bezeichne we den. Dabei wi d zwischen di-
ek en und indi ek en A ibu en un e schieden. Di ek e A ibu e we den du ch so-
genann e Ins umen s e hoben. Das sind mi els Da a-W appe gekapsel e Messwe -
gebe . Indi ek e So wa emaße we den als Equa ion bezeichne und e geben sich
du ch Kombina ion on di ek en A ibu en mi els de ie G und echena en.
75
3 Messwe kzeuge
Da en soll en Plugin-a ig dem We kzeug hinzuge üg we den können, um auch
alle En i ä en des So wa een wicklungsp ozesses e messen zu können.
•Die So wa emessung muss so wei wie möglich au oma isie we den. Nu
Au oma isie ung
du ch au oma isie e So wa emessung kann siche ges ell we den, dass die
Messungen übe haup du chge üh we den und dass die Messungen in kon-
sis en e Weise e olgen, um eine Ve gleichba kei de Messe gebnisse zu ge-
wäh leis en. Einige de da ges ell en We kzeuge sind dagegen nu als Visua-
lisie ungswe kzeuge ü be ei s in en sp echenden Da enbanken o handene
So wa emaße zu be ach en.
•Gesammel e Da en we den o mals zusammenhanglos angebo en, was die E -
mi lung und Ve olgung on Abweichungen on den E wa ungswe en und
de en U sachen unmöglich mach . In o ma ionen, welche sich nu aus dem
Be ücksich igung
des Kon ex s Zusammenspiel un e schiedliche Da enquellen e geben, bleiben meis öllig
une kann ( gl. [MHS+06]).
Viele So wa emaße e hal en ih e Bedeu ung nu in dem Kon ex , in dem sie
e ass we den. Sie können nu beu eil we den, wenn wei e e Rahmenbedin-
gungen ode das Um eld, inne halb de e die So wa emessung du chge üh
wu de, bekann sind.
Beispielsweise sag die Anzahl de ge undenen Fehle nich s übe die Quali-
ä des En wicklungsp ozesses aus, wenn nich auch de P ojek um ang bzw.
de Um ang des zu en wickelnden So wa esys ems mi angegeben wi d. Somi
muss bei de So wa emessung siche ges ell we den, dass In o ma ionen übe
den Kon ex des Messobjek s – im angegebenen Fall also In o ma ionen übe
die P ojek g öße – eben alls bei de Beu eilung des Messwe es zu Ve ügung
s ehen.
•Bei de P äsen a ion de Messe gebnisse we den die Da en o mals unge il e
und nich ollenbezogen angebo en. Dadu ch müssen die P ojek be eilig en
Fil e möglichkei en
eine unnö ig g oße Menge an Da en übe blicken, die eigen lich nu ü jeweils
eine Teilg uppe on Bedeu ung sind, wodu ch le z endlich die E izienz bei de
A bei mi diesen Da en sink ( gl. [MHS+06]).
•Ein wich ige Aspek de So wa emessung is das P ojek -Con olling, bei dem
Con olling-
ge ech e
So wa emessung insbesonde e die P ozesse und die Ressou cen des So wa ep ojek es beu eil
we den, mi dem Ziel, die E izienz de P ozesse zu s eige n. Dazu müssen auch
die im Rahmen de So wa een wicklung du chge üh en Ak i i ä en bei de
So wa emessung iden i izie und mi e ass we den können, um diese Ak-
i i ä en auch au E ek i i ä und E izienz hin beu eilen zu können. Viele
Messwe kzeuge sind au die P oduk e des So wa een wicklungsp ozesses o-
kussie und können dahe haup sächlich im Rahmen des P ozesses e zeug e
A e ak e e messen, jedoch keine P ozesseigenscha en e assen.
Es beda jedoch auch de Möglichkei es zus ellen, welche Pe sonalau wand
beispielsweise mi bes imm en Ak i i ä en e bunden is ode wie e izien
82
3.4 Zusammen assung und Bei ag diese A bei
bes imm e Ak i i ä en (z. B. Code-Re iews) sind. Dazu müssen diese Ak i-
i ä en im Rahmen de So wa emessung au oma isie iden i izie we den
können. Diese Aspek wi d in den oben au ge üh en Ansä zen jedoch ga
nich be ücksich ig , und is dahe ein Ke naspek des im Rahmen diese A -
bei en wickel en F amewo ks zu So wa emessung. Zwa wi d diese Aspek
eilweise be ei s on de Fo de ung nach de Kon ex -Be ücksich igung abge-
deck , jedoch soll e zu ein ache en Re e enzie ung im Rahmen diese A bei
als Con olling-ge ech e So wa emessung ( gl. Abschni 4.1, S. 85 .) bezeich-
ne we den.
Wenn man die E üllung de genann en K i e ien Ke nan o de ungen
an P ojek lei s ände
•E wei e ba kei ,
•Au oma isie ung,
•Be ücksich igung des Kon ex s,
•Fil e möglichkei en,
•Con olling-ge ech e So wa emessung
zusammen mi leis ungs ähigen
•Visualisie ungsmöglichkei en
als An o de ungen an P ojek lei s ände be ach e , so muss man es s ellen, dass es
de zei keine exis ie enden Sys eme gib , welche allen diesen Fo de ungen ge ech
we den. Dies wi d auch an den in [HL06] au ge üh en Publika ionen zum Thema
So wa elei s ände deu lich ( gl. [HL06], S. 83–126). Die do au ge üh en So wa-
elei s ände exis ie en en wede nu in Fo m eines Konzep es ode sind au einen
Teilaspek de So wa een wicklung, wie beispielsweise die So wa equali ä , einge-
sch änk .
Als Beleg da ü , dass im Be eich de P ojek lei s ände noch En wicklungsbe-
da bes eh , mag auch das So Pi -P ojek ( gl. Abschni 3.3.3.5, S. 77 .) gel-
en. Dieses P ojek , welches sich na u gemäß s a k an dem im Abschni 3.3.3.1
(S. 69 .) besch iebenen ideal ypischen A chi ek u modell ü P ojek lei s ände o i-
en ie , schein g undsä zlich die oben genann en An o de ungen angehen zu wollen.
Auch wenn de genaue Funk ionsum ang de inne halb dieses P ojek es implemen-
ie en Specula-Lei s andsimplemen ie ung nu seh ungenau besch ieben wi d ( gl.
[HM07a], [CHM+07]), e gib sich dennoch an diese S elle die Möglichkei , die Ziel-
se zungen de o liegenden A bei on denen des So -Pi -P ojek es abzug enzen.
3.4.2 Zielse zung: Ein leich gewich ige P ojek lei s and
Das So -Pi -P ojek geh om Um ang und de Zielse zung he wei übe die eigen -
liche So wa emessung hinaus. Die a sächliche Implemen ie ung eine P ojek lei -
s andsanwendung e schein nu als Teilp ojek inne halb des So -Pi -Themenkom-
plexes. Vielmeh s ehen dagegen die Auswahl on Key Pe o mance Indika o en, die
Ausa bei ung on U sache-Wi kungs-Rela ionen und die En wicklung on P ojek -
kon oll echniken im Vo de g und.
83
3 Messwe kzeuge
In diese A bei soll dagegen ein ehe leich gewich iges F amewo k zu So wa-
emessung da ges ell we den, welches zu Umse zung eine Con olling-ge ech en
So wa emessung eingese z we den kann. Un e „leich gewich ig“ is dabei zu e -
s ehen, dass nich ausge eil e Visualisie ungsmechanismen und eine kom o able Be-
nu ze obe läche im Vo de g und s ehen sollen. S a dessen soll das F amewo k in
o handene En wicklungsumgebungen in eg ie ba sein, und die Anwende sollen
du ch die Ve wendung des So wa emessungs-F amewo k nich gezwungen we den,
ih e P ozesse zu ände n. Wie im Kapi el 5 da ges ell wi d, is das F amewo k sk ip -
ges eue konzipie und die E wei e ba kei und Kon igu ie ba kei e gib sich aus
de jede zei igen Anpassba kei de en sp echenden P og amm-Sk ip e.
Das E gebnis diese A bei is dami wede ein Dashboa d, im Sinne eines Vi-
sualisie ungssys ems ü So wa emaße, noch ein elabo ie e P ojek lei s and, wie
e im So -Pi -P ojek anges eb wi d. Eine gu e Cha ak e isie ung wi d dagegen
du ch den Beg i Kommandozeilen-Lei s and gegeben, da die So wa emessungen
Kommandozeilen-
Lei s and selbs mi els in eine Sk ip sp ache implemen ie e Messwe gebe e olgen. Diese
Messwe gebe können zu P ojek lau zei le z endlich au de Kommandozeile den
ak uellen E o de nissen angepass we den.
Um dabei eine Con olling-ge ech e So wa emessung zu e eichen, bes ehen die
wissenscha liche He aus o de ungen da in, Möglichkei en au zuzeigen,
•die zu e hebenden So wa emaße unabhängig on einem konk e en P ojek zu
de inie en und
•die zu messenden En i ä en du ch die e wende en Messwe kzeuge au oma i-
sie iden i izie en zu können.
Nu dadu ch is es möglich, wie in Kapi el 1 ge o de ( gl. S. 3), die So wa emaße
wiede zu e wenden und p ojek übe g ei end einzuse zen. De en sp echende Ansa z
wi d im olgenden Kapi el da ges ell . Die Ke nidee dabei is , die So wa emaße
an Elemen e des Vo gehensmodells anzuknüp en ( gl. Abschni 4.2). Es wi d im
angegebenen Kapi el gezeig we den, dass dadu ch sowohl
•die au oma ische Iden i izie ung de zu messenden En i ä en als auch
•die Zuo dnung de So wa emaße zu einem Kon ex sowie
•die konsis en e und e gleichende So wa emessung übe P ojek g enzen hin-
weg
e möglich wi d.
84
4 P ozessin eg a ion
Change is he essen ial p ocess
o all exis ence.
(M . Spock, S a T ek)
4.1 Con olling-ge ech e So wa emessung
Wie im Abschni 2.3 da ges ell , sind au Managemen ebene und dami auch ü
das P ojek -Con olling insbesonde e die als Ke na ibu e bezeichne en Messg ößen
•Um ang,
•Au wand,
•Quali ä ,
•kalende mäßige Zei daue und
•P oduk i i ä
on g oße Bedeu ung. Diese Ke na ibu e können im Kon ex e schiedene En-
i ä en un e such we den. Beispielsweise kann de Au wand in Bezug au einzelne
A bei spake e, Meilens eine, En wicklungsphasen ode Tä igkei sa en un e such
we den. Diese kon ex abhängige Sich weise is ü das P ojek managemen und dabei
insbesonde e ü die Au wandsschä zung und das P ojek -Con olling on Belang.
Dies soll du ch die olgenden F ages ellungen e deu lich we den.
Komponen enbezogene Au wands e eilung: Welche Au wand wu de ü die En -
wicklung eine bes imm en So wa ekomponen e, z. B. des Web-F on ends ei-
ne Anwendung, e b ach ? De e mi el e Au wand kann beispielsweise bei Au wand ü
einzelne So wa e-
komponen en
einem nach olgenden So wa ep ojek in die Bep eisung ode in En scheidun-
gen bzgl. des Pe sonalbeda es eingehen.
Eine genaue Be echnung des He s ellungsau wandes ü einzelne Komponen en
is g undsä zlich nu möglich, wenn bei de Zei e assung au Komponen en-
ebene kon ie wi d. Da dies in de P axis nich imme de Fall is , sonde n
meis ens nu au Tä igkei en kon ie wi d, sind heu is ische Ve ah en (Faus -
egeln) denkba , den He s ellungsau wand ü einzelne Komponen en zumin-
des nähe ungsweise zu bes immen. Dies is beispielsweise möglich, wenn be-
kann is , dass bes imm e So wa een wickle in de Regel jeweils nu einzelne
Komponen en (z. B. Web-Obe lächen) implemen ie en.
Phasenbezogene Au wands e eilung: Wie e hal en sich die no mie en Au wän-
de ü einzelne En wicklungsphasen zwischen e schiedenen P ojek en? Da aus Au wand je Phase
können e l. Rückschlüsse au un e schä z e Schwie igkei en bei de P ojek -
planung gezogen we den ode es zeichnen sich T ends bzgl. de Au wands e ei-
lung in den abgeschlossenen P ojek en ab. Da die P ojek e in de Regel einen
85
4 P ozessin eg a ion
un e schiedlich g oßen Um ang haben, müssen die Au wandsangaben no mie
we den, indem sie du ch einen Fak o di idie we den, de die P ojek g öße
wide spiegel .
Ve eilung des A bei s o sch i es: So wa een wicklung e olg heu zu age häu ig
i e a i . Dabei wi d zue s ein P o o yp en wickel , de dann in wei e en I e-
a ionss u en ausgebau und e eine wi d. Schließlich we den im Rahmen
on Kundenakzep anz es s wei e e Modi ika ionen o genommen bzw. noch
zusä zliche Funk ionen implemen ie . Bei diese Kons ella ion kann on In e -
Au wand ü
P o o yp s.
Gesam au wand esse sein, welche An eil de e igen Anwendung be ei s in de P o o yp-Phase
en s anden is , und welche P og ammum ang spä e hinzuge üg wu de. Auch
is in e essan , welchen Um ang die P og ammände ungen wäh end de Tes -
phasen haben, da da aus Rückschlüsse au die Genauigkei bzw. die S abili ä
de u sp ünglichen An o de ungen gezogen we den können. Falls diese in den
einzelnen Phasen e eich e A bei s o sch i bzw. Fe igs ellungsg ad mone-
Ea ned Value
Analyse ä bewe e wi d, so e häl man den in diesen Phasen e zeug en Ea ned Value
( gl. [Fie05], S. 157 ., [Bu 02], S. 371 .).
Fehle e eilung: Wie im Abschni 2.3.5.3 da ges ell , kann un e bes imm en Be-
dingungen du ch Ein üh ung o male Design- und Code-Re iews die De ec -
E ek i i ä skon olle
Remo al-E ec i eness (DRE) deu lich e höh we den. Die DRE kann zwa e s
nach P ojek ende bes imm we den, jedoch soll e sich die E ek i i ä de Re-
iews auch be ei s zu P ojek lau zei du ch eine Ve schiebung de Fehle a e
hin zu den ühe en P ojek phasen zeigen.
De en scheidende Punk an obigen Beispielen, welche noch wei e o gese z we -
den könn en, is , dass es sich hie nich um ein ache P oduk maße, sonde n um
P ozessmaße handel , welche on den im Kapi el 3 da ges ell en Messwe kzeugen
nu unzu eichend e mi el we den können.
Es eich ü diese So wa emaße nich , den Au wand, den Code-Um ang ode
die Anzahl de Fehle au P ojek ebene bes immen zu können, sonde n diese Maße
müssen im Kon ex einzelne P ojek phasen und Ak i i ä en ode auch in Bezug au
einzelne Komponen en des zu e s ellenden P oduk s bes imm we den können.
Na ü lich könn en obige Maße aus den im Ve sions e wal ungssys em und im
Zei e assungssys em en hal enen In o ma ionen manuell und mi einigem Au wand
e echne we den. Abe ü die In eg a ion de a ige So wa emaße in einen P ojek -
Lei s and müssen Au wände zu einzelnen P ojek ak i i ä en ode P oduk kompo-
nen en au oma isie zuo denba sein. So soll e das Sys em e kennen können, wel-
che Code-Bes and eile z. B. zu Da enbankschich de zu en wickelnden Anwendung
gehö en, dami diese bzgl. ih es Um anges ode de Fehle dich e e messen we den
können. Genauso soll e das Sys em den Au wand, de ü eine bes imm e P ojek -
phase e b ach wu de, selbs ändig e mi eln können.
Da die Bezeichnungen ü die zu en wickelnden Komponen en in de Regel nich
und die de P ojek ak i i ä en nich no wendige weise on o nhe ein es s ehen,
müssen gene ische Bezeichnungen ü diese En i ä en de inie we den, welche dann
86
4.1 Con olling-ge ech e So wa emessung
zu De ini ion de en sp echenden So wa emaße e wende we den. Gesuch is da- Allgemeine
G unds uk u on
So wa ep ojek en
mi eine G unds uk u ü die zu e messenden So wa ep ojek e, welche mi diesen
gene ischen Bezeichnungen besch ieben wi d.
Im ein achs en Fall könn e man ein So wa een wicklungsp ojek mi els de S uk-
u
Analyse — Design — Implemen ie ung — Tes — Ve wal ung
besch eiben. Die Elemen e diese G unds uk u dienen dann als Anknüp ungs- Anknüp ungspunk e
ü So wa emaße
punk e ü die zu e mi elnden So wa emaße. Dabei wi d nich no wendige weise
o ausgese z , dass sich das so besch iebene P ojek eines s eng wasse alla igen
P ozessmodells bedingen wü de. Die angegebene S uk u besch eib in diesem Fall
nu die Tä igkei sa en, welche in dem P ojek o kommen, und es können dami
So wa emaße wie
•Design-Au wand,
•au ge e ene Fehle wäh end de Implemen ie ung ode
•wäh end de Design-Ak i i ä en p oduzie e Code-Um ang
(b=Um ang de P o o ypen)
de inie we den.
Um diese So wa emaße au oma isie bes immen zu können, müssen die zu messen-
den En i ä en (z. B. P oduk e, A bei szei en, Fehle ) en sp echend mi den (abge- Kennzeichnung on
En i ä en
kü z en) Bezeichne n diese G unds uk u , d. h. mi eindeu igen IDs, gekennzeich-
ne we den. Dies bedeu e im obigen Beispiel,
•dass im Rahmen de Zei e assung A bei szei en, welche mi Design-Ak i i ä-
en e bunden sind, als solche zu kennzeichnen sind,
•dass wäh end de Implemen ie ung au ge e ene Fehle im Bug-T acking-Sys-
em en sp echend gekennzeichne we den und
•dass beim Check-in im Ve sions e wal ungssys em die Commi -In o ma ionen
mi den IDs de e wende en P ojek s uk u e sehen we den.
Die Anknüp ung on So wa emaßen an eine de a igen G unds uk u mi gene-
ischen, d. h. p ojek unabhängigen Bezeichne n (IDs) ü die Elemen e diese G und- P ojek -
unabhängigkei und
Ve gleichba kei
s uk u , e möglich es, die zu e mi elnden So wa emaße ex an e und unabhängig
on einem konk e en P ojek zu de inie en. Auch kann somi es geleg we den,
welche So wa emaße g undsä zlich bei jedem du chzu üh enden So wa een wick-
lungsp ojek zu Anwendung kommen sollen, um Ve gleiche zwischen den einzelnen
P ojek en du chzu üh en.
In den nächs en Abschni en we den dahe mögliche Anknüp ungspunk e ü So -
wa emaße da ges ell und au ih e Eignung ü eine au oma isie e So wa emessung
un e such . Es we den somi Möglichkei en da ges ell , eine G unds uk u ü So -
wa een wicklungsp ojek e anzugeben, die unabhängig on einem konk e en P ojek
is , und de en Elemen e als Anknüp ungspunk e ü So wa emaße e wende we den
können.
87
4 P ozessin eg a ion
4.2 Anknüp ungspunk e ü So wa emaße
Ein So wa een wicklungsp ozess läss sich g undsä zlich als Ve bund on
•P ojek -Rollen (Funk ions äge , p ocess oles) besch eiben, die bes imm e
als
•Ak i i ä en bezeichne e Ope a ionen du ch üh en, welche au
•P ozess-P oduk e (A e ak e) angewende we den
( gl. [Obj05]). Neben den genann en d ei P ozesselemen en, we den bei de Besch ei-
bung konk e e Vo gehensmodelle ypische weise noch
•Phasen und I e a ionen, welche den P ozess gliede n,
• e wende e We kzeuge und
•Regeln (Me hoden, Anweisungen), gemäß de e die Ak i i ä en du chge üh
we den,
genann ( gl. Abbildung 4.1).
Abbildung 4.1: G undelemen e eines So wa een wicklungsp ozesses
Die P ozess egeln und die eingese z en We kzeuge sollen inne halb diese A bei
nich als Anknüp ungspunk e ü So wa emaße e wende we den, da sie selbs nich
Ausklamme ung
on P ozess egeln
und We kzeugen e messen we den können. Es lassen sich lediglich die Auswi kungen ih e Anwen-
dung und insbesonde e de en E ek i i ä und E izienz beu eilen. Dazu sind jedoch
die Auswi kungen diese beiden Elemen e au die Au wände ü bes imm e Ak i i-
ä en ode die Quali ä de e s ell en A e ak e zu un e suchen.
Dabei muss zwa a sächlich es gehal en we den, nach welchen Regeln die Ak i i-
ä en du chge üh wu den ode welche We kzeuge bei de E s ellung de A e ak e
eingese z wu den. T o zdem e schein es nich g undsä zlich sinn oll, die zu messen-
88
4.2 Anknüp ungspunk e ü So wa emaße
den En i ä en mi IDs ü die angewende en Regeln bzw. die e wende en We kzeuge
zu kennzeichnen. Falls de a ige Un e suchungen bzgl. de E ek i i ä und E izienz
on Me hoden und We kzeugen du chge üh we den sollen, so wü de man ehe de-
en Auswi kungen bei e schiedenen P ojek en ode Teilp ojek en be ach en. Da
in diesem Fall bekann is , welche Ak i i ä en ode A e ak e zu welchem P ojek
gehö en, is eine einzelne Kennzeichnung hie nich sinn oll.
G undsä zlich sind So wa emessungen bzgl. bes imm e P ojek -Rollen denkba ,
wenn un e such we den soll, welche Kos en ü bes imm e P ojek -Rollen an al-
len. Dazu können jedoch iel unmi elba e die Kos en bzw. die Au wände ü die
e b ach en Ak i i ä en e mi el we den.
Die so wa eme ische Un e suchung on P ojek -Rollen üh le z endlich auch
zu Be ach ung de P ojek mi a bei e , welche diese Rollen innehaben. Hie be- Keine
So wa emessung
an Mi a bei e n
s eh die g oße Ge ah , dass man on Sei en de O ganisa ionslei ung e such is ,
die Beu eilung on Mi a bei e n z. B. au Basis de e mi el en P oduk i i ä smaße
du chzu üh en. Da on eine solchen Vo gehensweise abzu a en is , da sie in de Re-
gel kein ganzhei liches Bild on de Leis ung de einzelnen Mi a bei e lie e n wi d,
soll im Folgenden die Anknüp ung on So wa emaßen an P ojek -Rollen bzw. an
P ojek -Mi a bei e n nich wei e be ach e we den.
Als Anknüp ungspunk e ü So wa emaße we den inne halb diese A bei somi
•Ak i i ä en,
•A e ak e und
•P ojek phasen (bzw. I e a ionen)
e wende . Diese d ei Möglichkei en de P ojek s uk u ie ung we den in den nach-
olgenden Un e abschni en 4.2.1–4.2.3 noch genaue da ges ell .
Zusä zlich wi d im Abschni 4.2.4 mi den sogenann en Fea u es eine wei e e
Möglichkei da ges ell , P ojek e zu s uk u ie en.
Die Elemen e diese de a de inie en P ojek s uk u lie e n eine Möglichkei ,
die im Rahmen des So wa een wicklungsp ozesses au e enden En i ä en zu kenn-
zeichnen, um sie dann im Rahmen de So wa emessung wiede e kennen zu können.
Da diese Angaben (Ak i i ä , A e ak , P ojek phase, Fea u e) Au schluss da -
übe geben, inne halb welchen P ojek kon ex s die dami gekennzeichne en En i ä- Kon ex -
in o ma ionen
en bea bei e wu den, sollen sie im Wei e en als Kon ex in o ma ionen bezeichne
we den.
Elemen e au P ozess- bzw. Ins anzebene
Dabei is zu un e scheiden, ob die jeweiligen En i ä en nu au Ins anzebene ode
auch au P ozessebene exis ie en. Eine P ojek en i ä au P ozessebene is beispiels-
weise die Ak i i ä „En wicklung des Da enbank-Designs“. Diese Ak i i ä wi d in
jedem So wa een wicklungsp ozess o kommen, bei dem eine neu zu implemen ie-
ende Da enbankschich benö ig wi d. Dagegen gehö die Ak i i ä „En wicklung
des Rela ionenschemas ü die Kundenda en de Fa. XYZ“ zu genau einem So wa-
ep ojek und dami zu eine bes imm en P ozessins anz.
So wa emaße au P ozessebene können zwischen e schiedenen P ojek en e gli-
chen we den. Beispielsweise kann au diese Weise es ges ell we den, ob in einem be- So wa emaße au
P ozessebene
89
4 P ozessin eg a ion
s imm en P ojek de Au wand ü das Da enbank-Design auße o den lich hoch is .
Und nu de a ige So wa emaße au P ozessebene können, wie es inne halb diese
A bei o gesehen is , ex an e de inie we den, um sie dann im lau enden P ojek
au oma isie e heben zu können. Da umgekeh o dem konk e en P ojek s a
noch ga nich bekann is , dass ü die Kundenda en de Fa. XYZ ein eigenes Re-
la ionenschema en wickel we den muss, können eine sei s de a ige So wa emaße
Be ach ung de
p ojek -
übe g ei enden
Ve gleichba kei
au Ins anzebene nich on o nhe ein es geleg we den und ande e sei s is auch
keine p ojek übe g ei ende Ve gleichba kei möglich. Es mag im Einzel all a säch-
lich sinn oll sein, de a ige Ins anz-So wa emaße zu bes immen. Jedoch muss dies
dann manuell und p ojek spezi isch e olgen.
G undsä zlich läss sich sagen, dass So wa emaße au P ozessebene ehe ü s a-
egische Ziele und So wa emaße au Ins anzebene ehe ü ak ische und ope a i e
S a egische und
ak ische Ziele de
So wa emessung Ziele e wende we den können. Wenn sich z. B. im ak uellen P ojek he auss ellen
soll e, dass de Design-Au wand ü das angegebene Rela ionenschema besonde s
hoch is , so is zu e wa en, dass auch die Implemen ie ungs- und Tes -Au wände
ü diesen Teil de Da enbank en sp echend um ang eich we den und dass dies bei
de Pe sonalplanung be ücksich ig we den muss. Dies sind ope a i e Übe legungen,
welche im Rahmen des ak uellen P ojek s du chge üh we den müssen.
Umgekeh können So wa emaße au P ozessebene s a egisch eingese z we den,
um Tendenzen im Ve lau meh e e So wa ep ojek e zu e kennen ode die eigene
P ozessquali ä bzw. -s abili ä zu beu eilen. Da zu diesem Zweck die Maße au oma-
isie e hoben we den soll en, müssen die zu messenden En i ä en auch bediene los
iden i izie we den können.
In den olgenden Abschni en soll dahe gezeig we den, wie au Basis on
•Ak i i ä en,
•A e ak -Funk ionali ä en und
•P ojek phasen
eine p ojek übe g ei ende G unds uk u ü So wa een wicklungsumgebungen de-
inie we den kann, de en Elemen e auch au de P ozessebene exis ie en.
Im Abschni 4.2.4 we den die sogenann en Fea u es als wei e e Kon ex in o ma i-
on da ges ell . Diese können ü die Fo sch i smessung im Rahmen eines konk e en
P ojek s eingese z we den, exis ie en jedoch nich au P ozessebene.
4.2.1 P ojek ak i i ä en als Anknüp ungspunk e
4.2.1.1 De P ojek s uk u plan
Die P ojek ak i i ä en we den übliche weise mi els eines P ojek s uk u plans (engl.
Wo k B eakdown S uc u e) hie a chisch gegliede ( gl. [P o04], S. 112 .). Nach
DIN 69901 (P ojek managemen , gl. [DIN87]) besch eib de P ojek s uk u plan
(PSP) die Gesam hei de wesen lichen Beziehungen zwischen den Elemen en eines
P ojek es. Du ch ihn wi d das P ojek hie a chisch in planba e und kon ollie ba-
Teilau gaben
e Teilau gaben und A bei spake e s uk u ie , wobei sich eine Baums uk u mi
P ojek s uk u ebenen wie in Abbildung 4.2 e gib .
90
4.2 Anknüp ungspunk e ü So wa emaße
Abbildung 4.2: P ojek s uk u plan zu hie a chischen Gliede ung eines P ojek s
Die A bei spake e s ellen dabei nich wei e un e gliede e Teilau gaben au eine
beliebigen Ebene des PSP da . Dabei soll e jedes A bei spake ein in sich geschlos- A bei spake e
senes E gebnis beinhal en. Wei e soll en de Zei - und Kos enau wand ü ein A -
bei spake im Ve gleich zum Gesam p ojek so ge ing sein, dass eine wi kungs olle
P ojek s eue ung o genommen we den kann ( gl. [SZ05], S. 433 .).
De P ojek s uk u plan en häl alle P ojek ak i i ä en, die in den einzelnen En -
wicklungsphasen du chzu üh en sind, und bilde nach Bu gha d [Bu 02] das Fun-
damen ü die gesam e P ojek - und P oduk planung, insbesonde e in Hinblick au
die Te min-, Kos en- und Einsa zmi elplanung.
Dabei we den d ei A en on P ojek s uk u plänen un e schieden. Beim p oduk - Typen on P ojek -
s uk u plänen
o ien ie en P ojek s uk u plan ich e sich die De ini ion de Au gabenpake e nach
de echnischen S uk u des zu en wickelnden Sys ems. In einem unk ionso ien-
ie en P ojek s uk u plan we den die du chzu üh enden A bei spake e nach den
Tä igkei s unk ionen wie Analyse, P og ammie ung ode Tes en gegliede . Beim
ablau o ien ie en P ojek s uk u plan schließlich we den die A bei spake e gemäß
de P ozessphasen bes imm und s uk u ie . Die obe s e P ojek s uk u ebene
(Ebene 1 in Abbildung 4.2) eines de a igen P ojek s uk u plans spiegel dami
die P ozessabschni e des Vo gehensmodells wide ( gl. [Bu 02], S. 143 .).
De PSP s ell jedoch nu eine inhal liche Gliede ung de P ojek ä igkei en da Abg enzung des
P ojek s uk u plans
om
P ojek ablau plan
und zeig nich die zei liche Ab olge de Ak i i ä en, wie dies beispielsweise in einem
Gan -Diag amm de Fall is ( gl. [SZ05], S. 433 .). E is da ü in de Regel aus-
üh liche hie a chisch gegliede , da e als Basis ü das Con olling eingese z wi d.
Diesbezüglich is de PSP auch iel s abile als ein P ojek ablau plan, da Ände un-
gen in Bezug au Te mine, Ablau eihen olgen und Ressou cen keine Auswi kungen
au den PSP haben.
Übliche weise we den die P ojek ablau pläne (Ne zpläne, Gan -Diag amme) au
de G undlage des P ojek s uk u planes un e Ve wendung de Ne zplan echnik
en wickel . Dabei wi d zunächs e mi el , welche Abhängigkei en zwischen den A -
bei spake en bes ehen und welche Vo gänge pa allel, nacheinande ode unabhän-
gig oneinande ablau en können. Zusammen mi In o ma ionen übe die ü die
A bei spake e benö ig en Ressou cen und e l. o gegebene F is en und Te mine
wi d aus diesen In o ma ionen echne isch ein en sp echende Ne zplan en wickel
91
4 P ozessin eg a ion
sungen des Zei plans en schieden.
Somi is es auch sinn oll, den in den einzelnen P ojek phasen e b ach en Au wand
auswe en zu können. Hie zu muss die Angabe de jeweiligen Phase als Kon ex in-
P ojek phasen als
Kon ex in o ma ion o ma ion bei de Zei e assung mi au genommen we den.
Als Kon ex in o ma ion nu beding geeigne is jedoch die I e a ion, inne halb de-
e Tä igkei en e b ach ode bes imm e A e ak e e zeug wu den. Die Anzahl und
I e a ionen als
Kon ex in o ma ion Inhal e de I e a ionen we den e s ku z is ig im Lau e de P ojek du ch üh ung
geplan . Dahe sind Ve gleiche bezüglich de A bei sau wände, welche in einzelnen
I e a ionen e b ach wu den, zwischen zwei P ojek en nich sinn oll. Dagegen kann
inne halb eines P ojek s die Un e suchung de Au wands e eilung au die einzelnen
I e a ionen du chaus Au schluss übe die Gü e de I e a ionsplan geben.
Inne halb des V-Modell XT we den dagegen au P ozessebene keine de inie en
P ojek phasen besch ieben.3Dies mag an de allgemeine en Aus ich ung dieses Vo -
Keine o de inie en
P ojek phasen beim
V-Modell XT gehensmodells liegen, welches nich nu ü die Du ch üh ung on So wa een wick-
lungsp ojek en, sonde n als allgemeines Vo gehensmodell ü eine Vielzahl e schie-
dena ige Sys emen wicklungsp ojek e (z. B. auch Ha dwa een wicklung) konzipie
is . Dahe gib es au de P ozessebene auch keine de inie en P ojek meilens eine,
sonde n die p ojek spezi ischen Meilens eine we den e s im Rahmen de P ojek -
du ch üh ungsplanung bes imm ( gl. [BMI06], S. 419).
Es gib zwa sogenann e P ojek du ch üh ungss a egien, welche eine Reihen olge
es legen, in de die ü das P ojek ele an en En scheidungspunk e du chlau en
P ojek -
du ch üh ungs-
s a egien beim
V-Modell XT
we den müssen ( gl. [BMI06], S. 603). Diese En scheidungspunk e egeln jedoch im
Wesen lichen nu ech liche Aspek e, wie die Genehmigung, Aussch eibung, Beau -
agung und die Abnahme eines P ojek es, und sind nich zu Kon olle des Ve lau s
de P ojek ak i i ä en gedach .
Ungeach e diese Aus üh ungen s eh es den einzelnen O ganisa ionen, welche
das V-Modell XT e wenden, na ü lich ei, selbs obliga o ische P ojek phasen mi
en sp echenden P ojek meilens einen zu de inie en. Dies e schein insbesonde e dann
sinn oll, wenn egelmäßig gleicha ige En wicklungsp ojek e du chge üh we den
sollen.
4.2.4 Fea u es als Anknüp ungspunk e
4.2.4.1 Fea u e-D i en De elopmen
Neben den A e ak -Funk ionali ä en können auch sogenann e Fea u es als Kon-
ex in o ma ionen ü die Anknüp ung on So wa emaßen e wende we den. Diese
Möglichkei und die Abg enzung de Fea u es on den A e ak -Funk ionali ä en soll
anhand des Fea u e-D i en De elopmen s (FDD) da ges ell we den. Dabei handel
es sich um ein i e a i es Vo gehensmodell ü So wa een wicklungsp ojek e, welches
zu den agilen En wicklungsme hoden gezähl wi d. Die Me hode wu de zum e s en
3Das V-Modell XT de inie ie Sys emlebenszyklusausschni e (En wicklung, Wa ung und P le-
ge, Wei e en wicklung und Mig a ion). Diese beziehen sich jedoch au den gesam en Lebenszy-
klus des zu en wickelnden Sys ems und nich au das En wicklungsp ojek ( gl. [BMI06], S. 80).
98
4.2 Anknüp ungspunk e ü So wa emaße
Mal on De Luca in [CLD99] e ö en lich . Eine aus üh liche e Besch eibung inde
sich in [PF02].4Oes e eich und Weiß e wenden in [OW08] zwa eben alls Fea u es
zu P ojek gliede ung, be onen jedoch, dass ih Ansa z sich deu lich on demjenigen
De Lucas un e scheide.
Das FDD basie au ach sogenann en Bes P ac ices, wobei eine diese P ak iken Fea u e als
kundenwe ige
Funk ionali ä
als De eloping by Fea u e bezeichne wi d. Ein Fea u e is dabei eine Funk ionali ä ,
welche ü den Kunden einen unmi elba en We ha und in maximal zwei Wochen
implemen ie we den kann.
Dabei wi d, wie bei ielen ande en Vo gehensmodellen auch, die Gesam unk io-
nali ä des zu en wickelnden Sys ems mi els unk ionale Ze legung in handliche e
Teilp obleme ze leg . In [PF02] wi d jedoch als P oblem iele du ch unk ionale An-
o de ungen ges eue e En wicklungsp ozesse da ges ell , dass bei den do e wen- P obleme au g und
unk ionale
Ze legung
de en unk ionalen Baus einen (z. B. Use Cases,Use S o ies, Da en luss-Diag amme
usw.) seh o die Geschä slogik mi Aspek en de Benu ze schni s elle, de Da en-
hal ung und de Ne zwe kkommunika ion e misch we den wü de. Wenn de a ige
Zusammens ellungen unk ionale An o de ungen zu A bei spake en geschnü und
an die En wickle übe geben we den, esul ie e dies o da in, dass die En wickle
einen g oßen Teil de Zei mi de Implemen ie ung on echnischen Funk ionali ä-
en, wie de Implemen ie ung on En e p ise Ja a Beans ode de De ini ion des
O/R-Mappings, e b äch en und somi die eigen lichen Geschä sanwendungs unk-
ionali ä en e nachlässig en.
Dahe wi d beim FDD die Lis e de unk ionalen An o de ungen au solche mi
einem We ü den Anwende ode den Kunden besch änk . Zusä zlich we den die
An o de ungen so o mulie , dass sie om Anwende bzw. om Kunden e s anden
we den können. De a ige unk ionale An o de ungen we den beim FDD als kun-
denwe ige Fea u es bezeichne und dienen zu S eue ung und Nach e olgung des
P ojek o sch i es. Dies bedeu e z. B. auch, dass die En wicklung on In as uk- Implemen ie ung
des echnischen
Un e baus zähl
nich zum
P ojek o sch i
u komponen en (z. B. eine O/R-Mapping-Komponen e) nich mi zum P ojek o -
sch i zähl , da sie keinen unmi elba en Bei ag zu den Geschä sanwendungs unk-
ionali ä en lie e n und somi ü den Kunden nich ele an sind. Gegenübe dem
Kunden wi d de P ojek o sch i somi nu in Fo m on implemen ie en Fea u es
dokumen ie , welche diese e s ehen und bewe en kann. Dabei kann de Kunde
einzelne Fea u es in Bezug au ih e Wich igkei ü die Geschä sanwendungs unk-
ionali ä auch p io isie en.
4.2.4.2 Eigenscha en on Fea u es
Fea u es we den beim FDD g undsä zlich in de Fo m
<Ak i i ä > <A bei se gebnis> <Objek >
o mulie , wobei in die jeweiligen Fo mulie ungen noch geeigne e A ikel und P ä-
posi ionen einge üg we den, um olls ändige Sä ze zu e hal en. Hie bei kann das
4Da das Fea u e-D i en De elopmen als Vo gehensmodell ela i unbekann is , wi d es – im
Gegensa z zum V-Modell XT und zum RUP – im Haup eil diese A bei o ges ell .
99
4 P ozessin eg a ion
Objek eine Pe son, ein O ode eine Sache sein.
Beispiel 7 (Fea u es)
• Be echne die Gesam summe des Ve kau s.
• E mi le das Gu haben des Bankkon os.
• Au o isie e eine K edi ka en ansak ion des Ka eninhabe s.
Fea u es sollen so klein sein, dass sie inne halb on zwei Wochen implemen ie we -
den können, wobei eine Implemen ie ungsdaue on zwei Wochen als obe e G enze
Fea u es sind
eing anula gesehen wi d. Funk ionali ä en, die nich inne halb dieses Zei aumes implemen-
ie we den können, müssen sowei ze leg we den, dass die so e hal enen Teil-
Funk ionali ä en jeweils klein genug sind, um die Fea u e-Eigenscha en zu e üllen.
Es gib auch Fea u es, welche inne halb wenige S unden ode Tage implemen ie
we den können. Alle dings muss du ch ein Fea u e meh implemen ie we den als
z. B. nu die Accesso -Me hoden eine Ja a-Bean.
Sowohl obige Beispiele als auch die genann e G anula i ä , welche ü Fea u es
gel en soll, machen deu lich, dass ein Fea u e eine Bedeu ung inne halb de Ge-
schä sp ozesse des Kunden und dami einen We ü den Kunden haben muss.
Ein Fea u e ko espondie übliche weise mi einem Ablau sch i inne halb eines
Geschä sp ozesses und ha somi eine unmi elba e Bedeu ung ü den Kunden.
Somi haben die Fea u es des FDD eine g oße Ähnlichkei zu den beim eX eme
P og amming (XP, [Bec04]) e wende en Use S o ies. In [BF01] wi d die Use S o y
Fea u es s.
XP Use S o ies als „a chunk o unc ionali y ha is o alue o he cus ome “ (siehe [BF01], S. 45)
besch ieben. Auch wi d hie die Use S o y als Einhei de Funk ionali ä bezeichne ,
mi de de Fo sch i demons ie wi d, indem ge es e e und in eg ie e Code
ausgelie e wi d, de eine Use S o y implemen ie . De Haup un e schied zwischen
einem FDD Fea u e und eine XP Use S o y bes eh jedoch da in, dass Fea u es
g undsä zlich in de oben angegebenen Fo m o mulie we den.
Zusä zlich we den Fea u es s enge e wal e als dies bei den Use S o ies des
XP üblich is , da sie hie a chisch o ganisie we den. Fea u es, welche zueinande in
Beziehung s ehen, we den zu Fea u e-Se s und diese wiede um zu Majo -Fea u e-Se s
zusammenge ass ( gl. [CLD99]).
Auch mi den Use Cases des Ra ional Uni ied P ocess haben die FDD Fea u es
eine gewisse Ähnlichkei . Use Cases wu den on Jacobson be ei s im Jah 1992 als
Fea u es s.
Use Cases „a desc ip ion o a se o sequence o ac ions, including a ian s, ha a sys em
pe o ms ha yields an obse able esul o a pa icula ac o “ (siehe [Jac92]) be-
sch ieben, wobei auch bei diese De ini ion be on wi d, dass de Use Case (ähnlich
dem Fea u e) ein signi ikan es E gebnis ü den Kunden lie e .
Lau [PF02] un e scheiden sich die Use Cases on Fea u es dadu ch, dass es ü
die Modellie ung on Use Cases keine Emp ehlungen gebe, mi welche G anula i ä
Use Cases modellie we den sollen und in welchem Fo ma und welche De ail-
lie hei sie no ie we den sollen. Im E gebnis wü den Use Case Sammlungen o
100
4.2 Anknüp ungspunk e ü So wa emaße
inkonsis en und un olls ändig sein und die einzelnen Use Cases hä en un e schied-
liche G anula i ä s- und De aillie ungsg ade. Zusä zlich wü den dabei o De ails
de Benu ze schni s elle und de Pe sis enz-Funk ionali ä mi de Geschä slogik
e misch we den. Abe auch im Ablau des So wa een wicklungsp ozesses gib es
Un e schiede. So is de RUP als „use case d i en“ besch ieben, d.h. die E mi lung
de unk ionalen An o de ungen in einem au dem RUP basie enden So wa een -
wicklungsp ozess e olg du ch die Modellie ung on Use Cases. Aus den Use Cases
we den dann Ak i i ä s- und Klassendiag amme abgelei e . Beim FDD dagegen be-
ginn die So wa een wicklung mi de Modellie ung eines Domain Objec Models
(siehe olgende Abschni ), mi dessen Hil e im nächs en Sch i die Fea u e-Lis e
e a bei e wi d.
4.2.4.3 Die FDD-Ak i i ä en
Beim FDD we den im Rahmen des So wa een wicklungsp ozesses die olgenden ün
Ak i i ä en (FDD P ocesses, gl. Abbildung 4.3) ausge üh ( gl. [CLD99]):
1. De elop an O e all Model
Inne halb diese Ak i i ä wi d ein sogenann es Domain Objec Model e s ell .
Dabei handel es sich im Wesen lichen um eine Sammlung on UML-Klassen- Domain Objec
Model
diag ammen, welche die Beziehungen de Business-Objek e de zu en wickeln-
den Anwendung besch eiben. Die Klassendiag amme können um be ei s iden-
i izie e A ibu e und Me hoden e gänz we den. Zusä zlich kann die Funk-
ionali ä de Me hoden mi els Sequenz-Diag ammen e deu lich we den.
2. Build a Fea u es Lis
Das im e s en Sch i e wo bene Wissen übe die Anwendung wi d nun e wen-
de , um die Fea u e-Lis e zu e s ellen. Dazu wi d die Anwendungsdomäne in
Sachgebie e (z. B. Kunden e wal ung, Ve sand, Fak u ie ung) ze leg , welche
e schiedene Geschä sak i i ä en um assen. Die einzelnen Sch i e de Ge-
schä sak i i ä en wiede um lie e n die en sp echend ka ego isie en Fea u e-
Lis en.
3. Plan by Fea u e
Wäh end diese Ak i i ä wi d die Reihen olge, in de die Fea u es implemen-
ie we den sollen, es geleg . K i e ien ü die Planung sind Abhängigkei en
zwischen den Fea u es, Auslas ung de einzelnen En wicklungs eams und die
Komplexi ä de einzelnen Fea u es. Die einzelnen Fea u es we den dabei zu Fea u e-Se s
Fea u e-Se s und diese wiede um zu Majo -Fea u e-Se s zusammenge ass . Da-
bei we den jeweils Fe igs ellungs e mine geschä z .
4. Design by Fea u e
Diese Ak i i ä beginn mi einem sogenann en Domain Walk h ough, bei dem
inne halb des Domain Objec Models diejenigen Klassen iden i izie we den,
welche mi den ak uell zu implemen ie enden Fea u es e knüp sind. Fü die
101
4 P ozessin eg a ion
einzelnen Fea u es ode auch ü meh e e zu einem Fea u e-Se zusammen-
Übe a bei en de
Klassendiag amme
und E zeugen on
Sequenz-
diag ammen
ge ass e Fea u es we den de aillie e Sequenz-Diag amme en wickel . Dabei
wi d auch das Domain Objec Model übe a bei e und die be o enen Klas-
sendiag amme de aillie ausgea bei e . Anschließend wi d eine Inspek ion des
e a bei e en Designs du chge üh . Das E gebnis diese Tä igkei en wi d als
Design-Pake bezeichne .
5. Build by Fea u e
Gemäß des in de o he gehenden Ak i i ä en wickel en Designs wi d ein
kundenwe iges Fea u e implemen ie . Die dabei e s ell e So wa e wi d eine
Eigen liche
Implemen ie ung Code-Inspek ion un e zogen und mi els Uni -Tes s übe p ü . Abschließend
wi d de Code im Ve sions e wal ungssys em als „ eigegeben“ gekennzeichne
(P omo e o Build).
Abbildung 4.3: Ak i i ä en beim Fea u e-D i en De elopmen
Die e s en d ei Ak i i ä en we den einmalig nacheinande abgea bei e und lie e n
ein Objek -Modell de Anwendungsdomäne, eine Lis e de zu implemen ie enden
Fea u es und einen Implemen ie ungszei plan mi Ve an wo lichkei en. Die le z en
beiden Ak i i ä en we den dann i e a i ü jedes einzelne Fea u e du chge üh
I e a i e
Aba bei ung de
Fea u e-Lis en ( gl. Abbildung 4.3).
4.2.4.4 Fo sch i smessung
Da de G oß eil des P ojek au wandes (lau [CLD99] meh als 75 %) au die Bea bei-
ung de Ak i i ä en Design by Fea u e und Build by Fea u e en äll , kann du ch
die E mi lung des Aba bei ungsg ades de Fea u elis e eine Fo sch i smessung
implemen ie we den. Dazu wi d in [CLD99] und [PF02] o geschlagen, ü jedes
Fea u e sechs Meilens eine zu de inie en, welche bei de se iellen Aba bei ung de
Meilens eine bei
de Fea u e-
Implemen ie ung Ak i i ä en Design by Fea u e und Build by Fea u e ü jedes Fea u e du chlau en
we den (siehe Tabelle 4.1). Die Meilens eine sind du ch sechs Au gaben de inie ,
welche wäh end de beiden Ak i i ä en ausge üh we den sollen.
Ein Meilens ein soll jeweils dann als abgeschlossen be ach e we den, wenn die
jeweilige Au gabe olls ändig e ledig is . Zusä zlich können die sechs Meilens ei-
ne auch bzgl. des Au wandes gewich e we den. In [CLD99] we den dazu als e s e
Nähe ung die in Tabelle 4.1 au ge üh en an eiligen Au wände o geschlagen. Dami
wä e z. B. ein Fea u e zu 1 % + 40 % + 3 % = 44 % e ig, wenn die d ei Au gaben
de Ak i i ä Design by Fea u e olls ändig abgeschlossen sind.
102
4.2 Anknüp ungspunk e ü So wa emaße
Design by Fea u e Build by Fea u e
Domain Walk h ough Design Design Inspec ion Code Code Inspec ion P omo e o Build
1% 40% 3% 45% 10% 1%
Tabelle 4.1: Die sechs Meilens eine beim FDD mi beispielha en an eiligen Au -
wänden
In [PF02] wi d be on , dass nu diejenigen Meilens eine bei de Messung be ück-
sich ig we den sollen, welche be ei s e eich sind, d. h. bei denen die zugehö ige
Au gabe olls ändig abgeschlossen is . In A bei be indliche Au gaben we den nich
mi gezähl , so dass z. B. ein Fea u e mi eine nu zu Häl e ollende en Design-
Au gabe nach wie o als nu zu 1 % e ig gil . Dadu ch sollen zu op imis isch
geschä z e Fe igs ellungsg ade e mieden we den. De Fehle , den man bei diese Vo sich ige
Schä zung des
Fe igs ellungs-
g ades
Vo gehensweise bei de Be echnung des Gesam p ojek o sch i s begeh , is nach
[PF02] ech klein, da die einzelnen Fea u es on kleine G anula i ä sind und maxi-
mal einen Zei aum on zwei Wochen um assen. Alle dings müssen im Lau e meh e-
e P ojek e e s E ah ungswe e bzgl. de an eiligen Gewich ung de Au wände ü
die einzelnen Meilens eine gewonnen we den, da die in Tabelle 4.1 genann en We -
e nu ein Vo schlag und diese Gewich ungs ak o en ü die einzelnen Meilens eine
nach einigen P ojek en anzupassen sind.
Mi de Ze legung in Meilens eine kann zunächs ü jedes Fea u e aus de Fea u e-
Lis e de Fe igs ellungsg ad e mi el we den. Anschließend kann du ch Agg ega-
ion de Fe igs ellungsg ad ü die einzelnen Fea u e-Se s und schließlich ü das
Gesam p ojek e mi el we den. Zusä zlich kann die Anzahl de noch nich begon-
nenen, de be ei s in A bei be indlichen und de e ig ges ell en Fea u es e mi -
el we den. Diese Fea u e-Zahlen können wiede um in Rela ion zu den einzelnen
Fea u e-Se s, und dami zu den zu implemen ie enden Geschä sak i i ä en, ode
Majo -Fea u e-Se s, welche den einzelnen Sachgebie en de Anwendungsdomäne en -
sp echen, ges ell we den. In [CLD99] und [PF02] wi d dazu eine abellena ige g a- G aphische
Da s ellung des
Fe igs ellungs-
g ades
phische Da s ellung des Fe igs ellungsg ades on Fea u e-Se s o geschlagen ( gl.
Abbildung 4.4).
4.2.4.5 Anknüp ungsmöglichkei en ü So wa emaße
Die e leich e e Fo sch i smessung wa eine Mo i a ion ü die En wicklung des
Fea u e-D i en De elopmen ( gl. [CLD99]). Basie end au den Fea u es, den Fea-
u e-Se s und e l. den Majo -Fea u e-Se s wu de eine Möglichkei da ges ell , den
ak uellen P ojek o sch i einzuschä zen und diesen P ojek s a us auch dem Kun-
den zu e mi eln und zu beg ünden. Dazu müssen die Fea u es und In o ma ionen
übe den Aba bei ungsg ad de einzelnen Fea u es on den P ojek be eilig en ge-
p leg we den.
Da übe hinaus sind Fea u es auch Kon ex in o ma ionen und kommen somi als
Anknüp ungspunk e ü So wa emaße in Be ach , da Ak i i ä en wie de Domain-
Walk h ough ode Design-Tä igkei en im Kon ex eines Fea u es du chge üh we -
103
4 P ozessin eg a ion
Abbildung 4.4: G aphische Da s ellung des Fe igs ellungsg ades eines Fea u e-Se s
( gl. [PF02], S. 85)
den. Alle dings eignen sich die Fea u es wenige gu ü die E hebung p ojek übe -
Fea u es sind
p ojek spezi isch g ei ende , e gleichende So wa emaße, da Fea u es p ojek spezi isch sind.
Fea u es können bezüglich ih e Eigenscha als P ojek -S uk u ie ungselemen e
mi den A bei spake en eines P ojek s uk u plans ( gl. Abschni 4.2.1.1) e gli-
chen we den. Ähnlich wie die A bei spake e sind die Fea u es on eine bes imm-
en P ojek ins anz abhängig. Abe im Gegensa z zu den Teilau gaben, welche als
Va e elemen e de A bei spake e bei einem unk ionso ien ie en PSP p ojek übe -
g ei end gül ig sein können (S anda d-PSP), sind beim FDD auch die Fea u e-Se s
und Majo -Fea u e-Se s om jeweiligen P ojek abhängig, da diese sich an den be-
ieblichen Funk ionali ä san o de ungen de zu e s ellenden So wa e o ien ie en.
Die dynamische ode zei liche P ojek s uk u beim FDD is , wie in Abbildung 4.3
Phasenbezogene
Au wandse mi lung da ges ell , du ch die Ab olge de Phasen
•De elop an O e all Model,
•Build a Fea u es Lis ,
•Plan by Fea u e und de
•Fea u e-Implemen ie ungsphase
gegeben. An diesen Phasen lassen sich zumindes A bei szei maße anknüp en, welche
e l. noch du ch Di ision mi de Gesam -Fea u e-Anzahl no mie we den können.
Dadu ch is es beispielsweise möglich, die Au wände ü die einzelnen Phasen p o-
jek übe g ei end zu e gleichen ode übe die Au wände ü die e s en Phasen mi els
Hoch echnung den Gesam p ojek au wand abzuschä zen.
Als s a ische S uk u elemen e können beim FDD die Ak i i ä en de e s en d ei
Ak i i ä sbezogene
Au wandse mi lung Phasen und zusä zlich die in Tabelle 4.1 da ges ell en und p o Fea u e du chzu-
üh enden Au gaben be ach e we den. Auch diese sind g undsä zlich als Anknüp-
ungspunk e ü So wa emaße geeigne . Hie dü e jedoch wenige im Vo de g und
s ehen, einzelne Ak i i ä en bzw. Au gaben wie beispielsweise die Designau wände
zwischen zwei P ojek en e gleichen zu wollen. S a dessen kann mi els eine an die-
104
4.3 P ak ische Anwendung de Anknüp ungspunk e
sen Implemen ie ungs-Au gaben angeknüp en Au wandse mi lung die a sächliche
Au wands e eilung ( gl. Tabelle 4.1) bei de Fea u e-Implemen ie ung ü die je-
weilige O ganisa ion e mi el we den, welche wiede um bei de Fo sch i smessung
inne halb zukün ige P ojek e on Bedeu ung is .
4.3 P ak ische Anwendung de Anknüp ungspunk e
Im le z en Abschni wu den ie Typen on Anknüp ungspunk en ü So wa emaße
o ges ell :
•Ak i i ä en
•A e ak -Funk ionali ä en
•P ojek phasen
•FDD-Fea u es
Die e s en d ei Typen on Anknüp ungspunk en un e scheiden sich on den FDD-
Fea u es dahingehend, dass sie be ei s au P ozessebene exis ie en. So wa emaße, Anknüp ungspunk e
au P ozess- bzw.
Ins anz-Ebene
welche sich au die genann en Kon ex in o ma ionen beziehen, können unabhängig
on einem konk e en P ojek de inie und dami p ojek übe g ei end e wende
we den.
Dies i ü die FDD-Fea u es nich zu, da Fea u es konzep ionsbeding e s zu
Lau zei eines P ojek es es geleg we den können. De g oße Vo eil des Fea u e-
Konzep s lieg jedoch da in, dass du ch die Übe wachung de be ei s implemen-
ie en Fea u es eine e ek i e Messung des P ojek o sch i es e olgen kann. Mi
den e s en d ei Typen on Anknüp ungspunk en is dagegen eine Fo sch i smes-
sung nich möglich, da diese konk e e und p ojek spezi ische Kon ex in o ma ionen
benö ig .
Die Ak i i ä sanknüp ungspunk e e möglichen insbesonde e eine Be echnung de
Au wände, welche ü einzelne Ak i i ä sa en eines So wa een wicklungsp ojek es Ak i i ä s-o ien ie e
Au wandse mi lung
e b ach we den. Dies e leich e die Beu eilung de Wi ksamkei on P ozess e -
besse ungsmaßnahmen dahingehend, dass gep ü we den kann, ob sich die (no -
mie en) Au wände ü bes imm e Tä igkei en a sächlich ände n, nachdem Modi i-
ka ionen im P ozess (z. B. die Ein üh ung on Pee -Re iews) du chge üh wu den.
Die Ve wendung on A e ak -Funk ionali ä en als Anknüp ungspunk e e mög-
lich zunächs eine Beu eilung de Um änge einzelne So wa e-Komponen en des Funk ionali ä s-
o ien ie e
Um angs- und
Au wandse mi lung
zu en wickelnden Sys ems und de da ü e b ach en Au wände. Dadu ch e häl eine
O ganisa ion die Möglichkei , lang is ig eine E ah ungsda enbank au zubauen ( gl.
[BCR94]), um dami die Au wände kün ige P ojek e besse abschä zen zu können
(siehe auch Abschni 6.2.2).
Die Be echnung on So wa emaßen in Bezug au einzelne Phasen des P ojek s e -
möglich eine Hoch echnung on den in den be ei s abgeschlossenen P ojek phasen
e b ach en Au wänden au die ü das Gesam p ojek noch zu e b ingenden Au wän-
de.
105
4 P ozessin eg a ion
In Abhängigkei on den Zielen de So wa emessung wi d man dahe eine Kom-
bina ion de e schiedenen Anknüp ungspunk e einse zen.
4.3.1 Agile So wa een wicklung
Im Be eich de Agilen So wa een wicklung gib es wede hie a chisch s uk u ie e
Ak i i ä sbesch eibungen noch sind bes imm e Wo k lows on o nhe ein es geleg
( gl. [Bec04], [Coc01]). Die e schiedenen Vo gehensweisen de Agilen So wa een -
wicklung we den s a dessen in Bezug au anzuwendende Techniken zu So wa e-
en wicklung und den zug unde liegenden P inzipien besch ieben ( gl. [BT05]).
Dennoch läss sich auch ü agile So wa een wicklungsp ojek e ein S anda d-
P ojek s uk u plan gemäß Abschni 4.2.1.1 angeben ( gl. [DHW06b]). Diese be-
s eh nu aus eine Ebene und en häl die Ak i i ä en
Agile Ak i i ä en
•Analyse,
•Modellie ung,
•Implemen ie ung,
•Tes ,
•Inbe iebnahme (Deploymen ),
•Kon igu a ions-Managemen und
•P ojek managemen ,
die no male weise inne halb jedes So wa een wicklungsp ojek es du chge üh we -
den müssen. De Ein achhei halbe we den die genann en Tä igkei en an diese
S elle als Ak i i ä en bezeichne , auch wenn diese im Rahmen einzelne Vo gehens-
modelle auch als Ak i i ä sg uppen ode Disziplinen bezeichne we den.
Als zwei e Anknüp ungs yp können die im Abschni 4.2.2 da ges ell en A e ak -
Funk ionali ä en e wende we den. Somi kann die zwei e Dimension de Kon ex -
A e ak -
Funk ionali ä en in o ma ionen du ch die Funk ionsbesch eibungen
•Anwendungslogik,
•P äsen a ionsschich ,
•Da enhal ung,
•T ansak ions e wal ung und
•Benu ze - und Be ech igungs e wal ung
de inie we den.
Dami können die zu messenden En i ä en des So wa een wicklungsp ozesses mi
zweidimensionalen Kon ex in o ma ionen gekennzeichne we den, wie sie in Tabel-
le 4.2 als 2-Tupel au gelis e sind. Um im Rahmen de agilen So wa een wicklung
keinen als unnö ig g oß emp undenen Meh au wand zu o de n, kann man sich da -
au besch änken, mi diesen Kon ex in o ma ionen nu
•die Commi -In o ma ionen im Ve sions e wal ungssys em und
•die Zei buchungen im Zei e assungssys em
zu kennzeichnen. Dami kann nach äglich e mi el we den, bei welche Ak i i ä
einzelne A e ak e en s anden sind ode e ände wu den ode ü welche Kompo-
nen en und wäh end welche Tä igkei en die einzelnen Zei au wände e b ach wu -
den ( gl. [DHW06b]).
106
4.3 P ak ische Anwendung de Anknüp ungspunk e
Analysis
Modeling
Implemen a ion
Tes
Deploymen
Con ig. Mgm .
P ojec Mgm .
Applica ion Logic (1,1) (2,1) (3,1) (4,1) (5,1) (6,∗) (7,∗)
P esen a ion (1,2) (2,2) (3,2) (4,2) (5,2) (6,∗) (7,∗)
Da a Managemen (1,3) (2,3) (3,3) (4,3) (5,3) (6,∗) (7,∗)
T ansac ion Mgm . (1,4) (2,4) (3,4) (4,4) (5,4) (6,∗) (7,∗)
Au hN/Au hZ (1,5) (2,5) (3,5) (4,5) (5,5) (6,∗) (7,∗)
Tabelle 4.2: 2-Tupel als Kon ex in o ma ionen eine gene ischen P ojek s uk u
Diese Vo gehensweise is jedoch nich au die „klassischen“ agilen So wa een -
wicklungsp ozesse wie das eX eme P og amming [Bec04] besch änk . Auch au den
RUP, de auch „agil“ du chge üh we den kann ( gl. [HRS04]), kann dieses Ve -
ah en angewende we den. Die genann en Ak i i ä en en sp echen inhal lich den
Disziplinen des RUP. Bei diesen können jedoch zusä zlich die Disziplinen (Co e-
Wo k lows) eine in Wo k low-De ails gegliede we den (siehe Abschni 4.2.1.3,
S. 95).
Je nach A bei sweise und A de Au gabenzuo dnung an die P ojek be eilig-
en inne halb de be ach e en O ganisa ion können somi So wa emaße an den
ehe g obg anula en Disziplinen ode an den eing anula e en Wo k low-De ails an-
geknüp we den. Im le z en Fall können die so gewonnenen So wa emaße imme
noch au die Ebene de Disziplinen agg egie we den, da jedes Wo k low-De ail
genau eine Disziplin zugeo dne is .
4.3.2 Mul i-Dimensionale Kon ex in o ma ionen
Le z endlich e möglich diese Ansa z, die zu messenden En i ä en mi meh dimen-
sionalen Kon ex in o ma ionen zu e sehen. Dabei muss inne halb de O ganisa ion
es geleg we den, welche Kon ex in o ma ionen on den P ojek be eilig en jeweils
zu p legen sind.
Die dabei zu Ve ügung s ehenden Möglichkei en sollen am Beispiel de Zei - Beispiel
Zei e assung
e assungsda ensä ze da ges ell we den.
Wie im o he gehenden Abschni gezeig wu de, bie e die E gänzung on Zei e -
assungsda en mi den Kon ex in o ma ionen Ak i i ä und A e ak -Funk ionali ä
eine b auchba e G undlage ü spä e e Auswe ungen.
Die jeweilige P ojek phase b auch bei den einzelnen Zei e assungs o gängen
nich mi angegeben we den, da diese aus dem Da um de Zei e assung e mi el
we den kann. Dami is zusä zlich eine Auswe ung de Au wände nach P ojek pha-
sen möglich.
107
4 P ozessin eg a ion
de Plan au oma isch e s ell und bei Ände ungen au Basis de in den Wo k-
I ems gespeiche en In o ma ionen (z. B. P io i ä , D inglichkei und Abhän-
gigkei en) einem Upda e un e zogen we den.
Li e Dashboa d: Im Go e nance-Le el soll schließlich ein Li e Dashboa d zu S eue-
ung alle P ojek ak i i ä en in Ech zei zu Ve ügung s ehen.
4.4.2 Beu eilung des Li e-Ansa zes
Eine Haup in en ion des Li e-Ansa zes is die Da s ellung eines Regelwe kes, mi
dem So wa een wicklungsumgebungen hinsich lich ih e Eignung ü die agile So -
wa een wicklung eingeschä z we den können. Diese Beu eilung s ü z sich jedoch
im Wesen lichen da au , wie In o ma ionen inne halb de So wa ep ojek e e wal e
und zugänglich gemach we den. Ande e K i e ien, wie beispielsweise die echnischen
Funk ionali ä en de En wicklungsumgebungen, we den bei diesem Ansa z ga nich
be ach e . S a dessen wi d da au hingewiesen, dass das We kzeug Pola ion De-
elopmen P oduc i i y Pla o m de Fi ma Pola ion So wa e5den Li e-Le el 5
e üllen wü de ( gl. [Riz06]).
Auch e scheinen die K i e ien ü die Einhal ung de Li e-Rich linien übe a bei-
ungsbedü ig. So wi d ü den Con ol-Le el e lang , dass die Wo k-I ems mi In-
o ma ionen zu Kos en, Zei und wei e en A ibu en e sehen we den. Dies wü de
Wide sp üche
inne halb de
Li e-Rich linien jedoch eilweise de Single-Sou ce-Rich linie wide sp echen, nach de alle In o ma-
ionen in de En wicklungsumgebung nu einmal o kommen dü en. Da Zei e as-
sungsbelege und Kos enschä zungen eben alls als P ojek in o ma ionen und somi
als Wo k-I ems be ach e we den müssen, dü en die A e ak -Wo k-I ems (z. B.
ein S ück Quell ex ) nu einen Ve weis au die zugehö igen Con olling-Wo k-I ems
haben. In de P axis ließe sich diese Ve bindung beispielsweise dadu ch he s ellen,
dass bei de Zei e assung in den jeweiligen Da ensä zen das bea bei e e Wo k-I em
bzw. die zugehö ige Wo k-I em-G uppe mi abgespeiche wi d, wie dies auch im
Abschni 4.1 ge o de wi d.
Wenn man jedoch den Li e-Ansa z nich als Beu eilungs egelwe k ü So wa een -
wicklungswe kzeuge, sonde n als Rei eg admodell ü die Auswe ba kei on P o-
Li e-Ansa z als
Rei eg admodell
ü die
So wa emessung
jek in o ma ionen be ach e , so kann dami die In eg a ionsmöglichkei de So wa-
emessung in eine bes imm e En wicklungsumgebung beu eil we den. Insbesonde e
kann mi dem Li e-Ansa z beu eil we den, wie gu eine En wicklungsumgebung die
E mi lung und Be ei s ellung on au Managemen ebene ele an en So wa emaßen
un e s ü z .
•Wenn au dem Li e Founda ion-Le el die Rich linien „Einzige Vo ah e“ und
„Single-Sou ce“ e üll sind, so is es zunächs einmal möglich, bei de Zei e as-
sung, inne halb de Ve sions e wal ung und beim Issue-T acking einhei liche
und eindeu ige Ve weise au die be o enen Wo k-I ems als Kon ex in o ma-
ionen anzugeben. Somi kann es ges ell we den, welche Zei au wand bei-
5h p://www.pola ion.com
114
4.5 Zusammen assung
spielsweise mi de Implemen ie ung eine bes imm en Komponen e e bunden
wa .
•Du ch Links mi einande e bundene Wo k-I ems, wie sie au dem Connec ion-
Le el ge o de we den, e möglichen T aceabili y- und Impac -Analysen. Zu-
sä zlich könn e dabei beispielsweise aus de Con olling-Pe spek i e e mi el
we den, welche Meh kos en du ch einen Ände ungswunsch en s anden sind.
•Und schließlich e möglich es das im Fusion-Le el ge o de e „Single Reposi-
o y“ zusammen mi de Ve sionie ung alle Wo k-I ems, nach äglich die En -
wicklung und insbesonde e die Ve schiebung on Au wandsschwe punk en zu
analysie en.
4.5 Zusammen assung
Zu Beginn dieses Kapi els wu de da geleg , was im Rahmen diese A bei un e
Con olling-ge ech e So wa emessung e s anden we den soll. Hie bei geh es zu- Ke na ibu e
nächs um die E hebung de im Abschni 2.3 als Ke na ibu e bezeichne en Mess-
g ößen wie Um ang ode Au wand. Zusä zlich is en scheidend, dass diese Maße zu-
sammen mi ih em Kon ex be ach e we den müssen. Es sind dahe Maße wie de
Au wand ü eine bes imm e So wa ekomponen e ode die Ände ung de Fehle a e
nach de Ein üh ung on Pee -Re iews on In e esse.
Ein wich iges Ziel diese A bei is , eine Möglichkei da zus ellen, die in de jewei-
ligen O ganisa ion als ele an e kann en So wa emaße konsis en und einhei lich
zu e heben. Dies beinhal e insbesonde e, dass die jeweiligen So wa emaße g und- Konsis en e
So wa emessung
sä zlich ü jedes du chzu üh ende P ojek e mi el we den sollen, um bes imm e
Aspek e de einzelnen P ojek e zu e gleichen. Da es möglich sein soll, diese Maße
unabhängig on einem konk e en P ojek zu de inie en, müssen sie sich au Mess-
g ößen beziehen, die be ei s au de Ebene des So wa ep ozesses exis ie en.
Im Abschni 4.2 wu den dahe Möglichkei en da ges ell , den So wa een wick-
lungsp ozess zu gliede n und zu s uk u ie en und ihn le z endlich au eine gene i- Anknüp ungspunk e
sche G unds uk u zu ückzu üh en. Die Elemen e diese G unds uk u können als
Anknüp ungspunk e ü die So wa emaße e wende we den, wodu ch diese p ojek -
unabhängig de inie we den können.
Im wei e en Ve lau des Kapi els wu de dann die Ve wendung on
•Ak i i ä en,
•A e ak -Funk ionali ä en und
•P ojek phasen
als Anknüp ungspunk e ü So wa emaße e läu e . Dabei wu de insbesonde e au
die Anwendba kei dieses Ansa zes im Rahmen e schiedene Vo gehensmodelle wie
dem V-Modell XT, dem Ra ional Uni ied P ocess ode dem eX eme P og amming
eingegangen.
Als Nach eil de ausschließlichen Be ach ung on be ei s au P ozessebene exi-
s ie enden Messg ößen wu de die Schwie igkei da ges ell , au diese Weise den P o-
115
4 P ozessin eg a ion
jek o sch i zu bes immen. Deshalb wu de mi dem Fea u e-D i en De elopmen
Fo sch i s-
messung ein iel e sp echende Ansa z o ges ell , de es eine sei s e laub , ein P ojek übe -
sich lich und in kunden e s ändliche Fo m zu gliede n, und ande e sei s mi els de
Fea u es und Fea u e-Se s dem P ojek eine S uku einbesch eib , welche ü die
Fo sch i smessung unmi elba zugänglich is .
Es wu de im wei e en Ve lau da ges ell , dass es aus de Sich des P ojek -
Con ollings op imal wä e, die Anknüp ung on So wa emaßen an Elemen e de
P ozesss uk u mi de Fo sch i smessung du ch Bes immung des Aba bei ungs-
g ades de einzelnen Fea u es bzw. Fea u e-Se s zu kombinie en. Dadu ch we den
ü die So wa emessung le z endlich mul idimensionale Kon ex in o ma ionen ein-
gese z .
Zum Abschluss des Kapi els wu de de sogenann e Li e-Ansa z be ach e . Diese
is zwa als Quali ä smodell ü En wicklungsumgebungen en wo en wo den, jedoch
wu de im o he gehenden Abschni gezeig , dass dami auch die Auswe ba kei on
P ojek in o ma ionen beu eil we den kann. Insbesonde e en häl de Li e-Ansa z
Rei eg admodell
ü die
So wa emessung ein Rei eg admodell, mi dem die In eg ie ba kei de So wa emessung in einzelne
En wicklungsumgebungen beu eil we den kann.
116
5 Implemen ie ung des Ma en
Measu emen F amewo ks
Ma en is a decla a i e p ojec
managemen ool ha
dec eases o e all ime o ma ke
by e ec i ely le e aging
c oss-p ojec in elligence.
(aus [CMP+07])
5.1 Die P ojek e wal ungsso wa e Ma en
In diesem Kapi el wi d eine Möglichkei da ges ell , die inne halb diese A bei
en wickel e Me hode zu So wa emessung mi els geeigne e So wa e-We kzeuge
zu ealisie en. Die p o o ypische Implemen ie ung dieses Ansa zes wu de au ein
Messwe kzeug ü Ja a-P ojek e besch änk .
Ein Ke ngedanke bei de Umse zung wa , die Implemen ie ung möglichs lexi-
bel zu hal en, dami das So wa e-Messwe kzeug ü die jeweiligen P ojek bedü -
nisse p oblemlos angepass we den kann. Dahe is auch keine monoli hische An-
wendung en s anden, sonde n eine We kzeug-F amewo k, aus dem de Anwende
einzelne Baus eine auswähl , um dami die jeweiligen Messungen du chzu üh en.
Dieses We kzeug-F amewo k, welches au Basis de P ojek e wal ungsso wa e
Ma en1en s anden is , soll im Wei e en als Ma en Measu emen F amewo k (MMF) Ma en
Measu emen
F amewo k
bezeichne we den.
Ma en selbs wi d on einigen seine En wickle als P ojec Managemen F ame-
wo k bezeichne ( gl. [CMP+07], S. 22), wobei nach [CMP+07] auch diese Beg i
diese So wa e nu seh unzu eichend besch eib .
G undsä zlich kann Ma en zunächs einmal als Wei e en wicklung des Build-
Managemen -We kzeuges An 2be ach e we den und dien somi zum au oma-
isie en Übe se zen on Ja a-Quell ex en. Wäh end An jedoch im Wesen lichen
aus eine Sammlung on Anweisungen bes eh , mi denen man den Ablau des
Build-Vo gangs de inie en kann, en häl Ma en en sp echende Ve ah ensmus e ,
welche den Build-Vo gang s anda disie en und die P ojek e wal ung mi els wiede -
e wendba e und gemeinsam nu zba e Build-S a egien e ein achen sollen ( gl.
[CMP+07], S. 23 .). Das Ziel de Ma en-En wickle wa somi , einige Bes P ac ices
bzgl. de Ve zeichnis e wal ung und des Build-P ozesses bei Ja a-P ojek en in das
Build-Managemen -We kzeug zu in eg ie en.
1h p://ma en.apache.o g
2h p://an .apache.o g
117
5 Implemen ie ung des Ma en Measu emen F amewo ks
5.1.1 An s. Ma en: Build-Managemen im Ve gleich
5.1.1.1 Build-Managemen mi An
Um die Eigenscha en on Ma en besse e deu lichen zu können, soll an diese
S elle zunächs die A bei sweise on An anhand eines ypischen An -Build-Sk ip s
be ach e we den (siehe Lis ing 5.1).
1<p o j e c name="dms" de aul ="compile " basedi =".">
2
3<p ope y name="buil d . p od . d i " l o c a i o n="build /p od"/>
4<p ope y name="buil d . e s . d i " l o c a i o n=" buil d / e s "/>
5<p ope y name=" s c . d i " l o c a i o n=" s c "/>
6<p ope y name=" e s . d i " l o c a i o n=" es "/>
7<p ope y name=" l i b . di " lo c a i o n=" l i b "/>
8
9<pa h id=" p oje c . c las spa h">
10 <pa helemen l o c a io n="${ build . p od . di }"/>
11 <pa helemen l o c a io n="${ build . e s . d i }"/>
12 < i l e s e di ="${ l i b . di }">
13 <include name="∗. j a "/>
14 </ i l e s e >
15 </pa h>
16
17 < a g e name="p epa e">
18 <mkdi di ="${ bui ld . p od . d i }"/>
19 <mkdi di ="${ bui ld . e s . d i }"/>
20 </ a ge >
21
22 < a g e name="compile " depends="p epa e">
23 <ja ac s c d i ="${ s c . di }" des di ="${ build . p od . di }">
24 <cl as spa h e i d =" p o je c . c la ss pa h"/>
25 </ja ac>
26 </ a ge >
27
28 < a g e name="compile− e s s " depends="compile">
29 <ja ac s c d i ="${ e s . di }" de s d i ="${ build . es . d i }">
30 <cl as spa h e i d =" p o je c . c la ss pa h"/>
31 </ja ac>
32 </ a ge >
33
34 </p ojec >
Lis ing 5.1: An -Build-Sk ip (aus [Cla05])
In einem An -Build-Sk ip we den die Tä igkei en des Build-Vo ganges mi els so-
genann e Ta ge s de inie . Beispielsweise we den du ch das Ta ge p epa e die Ve -
Ta ge s
zeichnisse ü den beim Kompilie en e zeug en By ecode e zeug . Du ch die Ta ge s
compile und compile- es s wi d anschließend de eigen liche Übe se zungs o -
gang anges oßen. Dabei wi d au g und de hin e leg en Abhängigkei en bei Beda
au oma isch das jeweils o he benö ig e Ta ge au ge u en.
118
5.1 Die P ojek e wal ungsso wa e Ma en
Die Ta ge s selbs bes ehen aus sogenann en Tasks. Dabei handel es sich um mi - Tasks
els en sp echende Ja a-Klassen implemen ie e Kommandos, welche die einzelnen
Au gaben des Build-P ozesses (z. B. E zeugen on Ve zeichnissen, Übe se zen on
Sou cecode) du ch üh en. Die Tasks we den mi els zugehö ige XML-Elemen e und
-A ibu e kon igu ie . Wei e gil es als gu e S il, säm liche P adangaben in Fo m
on Va iablen (sogenann e P ope ies) zu hin e legen.
Das in Lis ing 5.1 da ges ell e An -Build-Sk ip e wa e also die Sou ce-Da eien
ü die eigen liche Ja a-Applika ion und die dazugehö igen Uni -Tes s in den ange-
gebenen Ve zeichnissen, leg bei Beda die gewünsch en Ziel-Ve zeichnisse an und
übe se z die Ja a-Sou cen ge enn nach P oduk i - und Tes -Code. Bei de Übe -
se zung benö ig e Biblio heken müssen im Ve zeichnis lib zu Ve ügung s ehen.
Obiges An -Build-Sk ip kann dabei als „kanonisch“ bezeichne we den, da jedes
Ja a-P ojek im P inzip de a ig au gebau is , was insbesonde e ü die T ennung
de P oduk i - und Tes -Sou cen und de zugehö igen By ecode-Ve zeichnisse gil .
Als Konsequenz muss ü jedes Ja a-P ojek ein seh ähnliches An -Sk ip e s ell
we den.
5.1.1.2 Build-Managemen mi Ma en
An diese S elle se z en nun die En wickle on Ma en du ch P ak izie ung des
Ansa zes „Kon en ion s a Kon igu a ion“ an und leg en als Kon en ion es , dass Kon en ion s a
Kon igu a ion
die Ve zeichniss uk u eines mi Ma en e wal e en Ja a-P ojek s g undsä zlich
wie in Abbildung 5.1 auszusehen ha .
Abbildung 5.1: Ve zeichniss uk u eines Ma en-P ojek s
119
5 Implemen ie ung des Ma en Measu emen F amewo ks
Die on Ma en e wa e e Ve zeichniss uk u en häl zumindes die O dne s c
und a ge , in denen die Quellda eien e wal e bzw. die im Rahmen des Build-
Emp ohlene
Ve zeichniss uk u P ozesses gene ie en Da eien abgeleg we den. Die genann en O dne we den jeweils
in Bezug au P oduk i - und Tes -Code wei e un e gliede . Die Ja a-Sou cen ü
die eigen liche Anwendung we den somi g undsä zlich im O dne
s c/main/ja a
e wal e . Pa allel zum Ja a-O dne sind noch ande e Ve zeichnisse denkba , die
z. B. XML-Da eien en hal en, aus denen dann en sp echende Ja a-Sou cen gene ie
we den, wie es beispielsweise beim Einsa z objek - ela ionale Mapping-F amewo ks
üblich is ( gl. [Bos03]).
Mi diese nahezu e p lich end gel enden Ve zeichnis-Kon en ion e üb igen sich
alle in Lis ing 5.1 au ge üh en P adangaben, mi Ausnahme de Ablage on Code-
Biblio heken, de en Ve wal ung mi Ma en spä e da ges ell we den soll. Zusä zlich
e leich e diese Vo gabe den En wickle n die O ien ie ung in neuen P ojek en.
5.1.1.3 Ma ens Build-Li ecycle
Auch die im An -Build-Sk ip au ge üh en Ta ge s kommen g undsä zlich bei allen
Ja a-P ojek en in ähnliche Weise o , da de Build-P ozess in de Regel aus den
Ak ionen
•Vo be ei ung,
•Kompilie ung,
•Tes ,
•Kon ek ionie ung des Ins alla ionspake s und
•de abschließenden Ins alla ion
bes eh .
Dem äg Ma en in Fo m eines S anda d-Build-Li ecycles Rechnung, de aus
S anda d-
Build-Li ecycle 21 einzelnen Phasen3bes eh , welche ü jedes P ojek in de gleichen Reihen ol-
ge du chlau en we den. Abbildung 5.2 zeig eine Teilmenge diese Phasen aus dem
S anda d-Build-Li ecycle.
Diese Phasen können als E wei e ungspunk e ü den du ch Ma en ges eue en
Build-P ozess be ach e we den. Die eigen lichen Ope a ionen des Build-P ozesses
sind in sogenann en Plugins implemen ie . Dabei handel es sich um Ja a-Klassen
Ma en Plugins
mi de inie en Schni s ellen. Jedes Plugin implemen ie dabei ein ode meh e-
e sogenann e Goals. Beispielsweise en häl das Ma en-Compile -Plugin die Goals
Ma en Goals
compile und es -compile, mi denen die Anwendungs-Quell ex e bzw. die Uni -
Tes -Quell ex e kompilie we den. Diese Goals we den nun an bes imm e Pha-
sen des Build-Li ecycles gebunden ( gl. Abbildung 5.2). So sind s anda dmäßig das
Goal compile :compile4de Compile-Phase und das Goal compile : es -compile de
3S and om Augus 2007 ( gl. [CMP+07])
4Bei de Besch eibung on Ma en-Goals we den pe Kon en ion de Plugin-Name und die Be-
zeichnung des Goals du ch einen Doppelpunk ge enn no ie .
120
5.1 Die P ojek e wal ungsso wa e Ma en
ini ialize
⇓
gene a e-sou ces o que:om
⇓
p ocess- esou ces
⇓
compile compile :compile
⇓
es -compile compile : es -compile
⇓
es su e i e: es
⇓
p epa e-package
⇓
package ja :ja
⇓
Abbildung 5.2: Teilmenge on Ma ens De aul Build-Li ecycle
Tes -Compile-Phase zugeo dne . Beim Du chlau en de einzelnen Phasen des Build-
P ozesses we den nun die an die Phasen gebundenen Goals au ge u en. Beim Du ch-
lau en on Phasen, an denen kein Goal angebunden is , we den auch keine Ak ionen
du chge üh .
Im Ve gleich zu dem An -Build-Sk ip au Sei e 118 is dahe ü das Kompilie en
de P oduk i - und Tes -Quellcode-Da eien keine lei Kon igu a ionsau wand e o -
de lich. De Speiche o de Quellcode-Da eien is du ch Kon en ion o gegeben und
de Ablau des Build-P ocesses du ch den S anda d-Build-Li ecylce.
5.1.2 Ma ens P ojec -Objec -Model
5.1.2.1 G undlegende P ojek -Kon igu a ion
T o zdem komm auch Ma en nich ohne Kon igu a ion aus, jedoch wi d e such ,
gemäß dem P inzip „Kon en ion s a Kon igu a ion“, die Kon igu a ionsda eien
möglichs klein zu hal en. De zen ale Ablageo ü Kon igu a ionsda en is eine als
121
5 Implemen ie ung des Ma en Measu emen F amewo ks
P ojec Objec Model (POM) bezeichne e XML-Da ei. Ein Bespiel eine POM-Da ei
P ojec Objec
Model ü eine Depo e wal ungsanwendung is in den Lis ings 5.2 und 5.3 da ges ell .
Das POM eines Ma en-P ojek s en häl zunächs einmal In o ma ionen übe den
Namen des P ojek s (<name>), eine eindeu ige Bezeichnung ü die O ganisa ion
P ojek koo dina en
(<g oupId>) und eine eindeu ige Basisbezeichnung ü das im Rahmen des P ojek s
e zeug e A e ak (<a i ac Id>). Im angegebenen Beispiel wi d im Rahmen des
P ojek s le z endlich ein Ja -A chi mi de Depo e wal ungsanwendung e zeug ,
welches den Da einamen depo e w-0.1.ja e häl .
De Ablageo de Quell ex da eien muss, so e n e den Ma en-Kon en ionen en -
sp ich , nich angegeben we den. Jedoch müssen ex e ne Biblio heken, welche on
Dekla a ion on
Abhängigkei en dem P ojek e wende we den und on denen das P ojek somi abhängig is , im
POM dekla ie we den. Dies e olg im Abschni <dependencies> de Da ei. Bei
Ve wendung on Ma en muss de En wickle die benö ig en Biblio heken jedoch
nich selbs be ei s ellen, sonde n sie we den im Rahmen des Build-Vo ganges du ch
Ma en selbs ändig on einem ode meh e en zen alen Reposi o ies he un e geladen.
Im angegebenen Beispiel sind da on die JUni -Biblio hek, de Pos g eSQL-JDBC-
T eibe und das objek - ela ionale Mapping-Tool To que be o en, die jeweils mi
de exak en Ve sionsnumme au ge üh sind. Somi e klä sich auch die Bedeu-
ung de G oupID ü die ak uell zu e s ellende Applika ion. Die im Beispiel e s ell-
Bedeu ung de
G oupID e Depo e wal ungsso wa e kann beim Abschluss des P ojek es eben alls in einem
Biblio heks-Reposi o y e ö en lich we den. Dabei kann es sich um ein ö en lich
e ügba es, zen ales Reposi o y ode auch um ein o ganisa ionsin e nes Reposi o-
y handeln, in denen das Ja -A chi de Depo e wal ungsso wa e übe die oben
besch iebenen Bezeichne eindeu ig au ge unden we den kann.
Das Lis ing 5.3 zeig die Kon igu a ion de im Rahmen des P ojek es e wende en
Ma en-Plugins. Das in Abbildung 5.2 da ges ell e Compile -Plugin müss e no male -
Beispielha e
Plugin-
Kon igu a ion weise nich explizi kon igu ie we den, da es s anda dmäßig an die Compile-Phase
des Build-P ozesses gebunden is . Jedoch können auch, wie in diesem Beispiel, ü
die S anda d-Plugins zusä zliche In o ma ionen, wie beispielsweise die Ve sion des
zu e zeugenden Ja a-Objek -Codes angegeben we den.
Bedeu same is jedoch die Kon igu a ion de zusä zlich in den Build-P ozess ein-
gebundenen Ma en-Plugins. In diesem Beispiel handel es sich dabei um das To que-
Kon igu a ion eines
O/R-Mapping-Tools Ma en-Plugin5. To que is ein objek - ela ionales Mapping-Tool, welches zu Lau -
zei eine Applika ion Da ensä ze eine ela ionalen Da enbank au Ja a-Objek e ab-
bilde ( gl. [Bos03]). Dadu ch en äll in de Ja a-Applika ion die Ve wendung on
SQL-S a emen s, welche ansons en einen B uch inne halb des objek -o ien ie en
Anwendungsdesigns bedeu en wü den.
Bei de Ve wendung on To que wi d in meh e en XML-Da eien das Rela ionen-
schema de Da enbank de inie . Zu diesem Rela ionenschema we den dann du ch die
Gene ie ung on
Ja a-Code und
SQL-Code Goals o que:om und o que:sql sowohl die zugehö igen Ja a-Klassen als auch die
SQL-Anweisungen zum E zeugen de en sp echenden Da enbank abellen e zeug .
Le z e e we den dann du ch das Goal o que:sqlExec ausge üh .
5h p://db.apache.o g/ o que
122
5.1 Die P ojek e wal ungsso wa e Ma en
1<?xml e s ion ="1.0" encoding="UTF−8"?>
2<p o je c xmlns="h p : // ma en . apache . o g /POM/4.0.0" >
3
4<modelVe sion >4.0.0</modelVe sion>
5<g oupId>de . ub . in es men </g oupId>
6<a i a c I d >depo e w</a i a c I d >
7<packaging>ja </packaging>
8< e sion >0.1</ e sion >
9<name>Depo e wal ung </name>
10
11 <dependencies>
12 <dependency>
13 <g oupId>juni </g oupId>
14 <a i a c I d >ju ni </a i a c Id >
15 < e sion >3.8.1</ e sion >
16 <scope> es </scope>
17 </dependency>
18 <dependency>
19 <g oupId>pos g esql </g oupId>
20 <a i a c I d >po s g esql </a i a c I d >
21 < e sion >8.2−504.jdbc3</ e sion>
22 </dependency>
23 <dependency>
24 <g oupId> o que </g oupId>
25 <a i a c I d > o que </a i a c I d >
26 < e sion >3.3−RC2</ e sion >
27 </dependency>
28 </dependencies>
29
30 <build >
31 <plugins>
32 <!−− hie e o l g die Kon igu a ion de Plugins −−>
33 </plugins>
34 </build>
35
36 < epo ing>
37 <plugins>
38 <plugin>
39 <g oupId>me ics . plugin </g oupId>
40 <a i a c Id >hals ead−plugin </a i a c I d >
41 < e sion >2.0</ e sion>
42 </plugin>
43 </plugins>
44 </ epo ing>
45
46 </p ojec >
Lis ing 5.2: POM eines Ma en-P ojek s (Depo e wal ung)
123
5 Implemen ie ung des Ma en Measu emen F amewo ks
5.1.3 Gene ie ung on P ojek -Be ich en
Die im P ojec -Objec -Model abgeleg en In o ma ionen dienen neben de S eue ung
des Build-P ozesses auch zu Gene ie ung on P ojek be ich en. Dazu kann Ma en
so kon igu ie we den, dass im Rahmen des Build-P ozesses meh ode wenige aus-
üh liche P ojek be ich e in Fo m on HTML-Dokumen en e zeug we den, welche
dann au oma isie in die en sp echenden Ve zeichnisse eine Web-Se e s übe agen
we den können. S anda dmäßig en hal en die so gene ie en P ojek sei en diejeni-
S anda dbe ich e
gen In o ma ionen, welche in den POM-Blöcken Gene al P ojec In o ma ion und
Build En i onmen (siehe Abbildung 5.3) en hal en sind und im o he gehenden Ab-
schni besch ieben wu den. Ein Ausschni eines solchen S anda d-P ojec -Repo s
is in Abbildung 5.4 zu sehen, welche die Lis e de So wa een wickle im Apache
Commons Ma h P ojek 12 zeig .
Abbildung 5.4: En wickle lis e als Teil des Ma en S anda d-P ojec -Repo s
Zusä zlich zu den S anda d-Repo s können na ü lich auch on allen Ma en-
Plugins P ojek be ich e gene ie we den. So kann das PMD-Ma en-Plugin13 e -
Plugin-Repo sPlugin-Repo s
wende we den, um den Sou cecode nach bes imm en Regel e le zungen zu un e -
suchen. Dies können beispielsweise Namenskon en ionen (z. B. mind. d ei Zeichen
ü Va iablennamen) abe auch nahezu beliebige ande e (p ojek in e ne) P og am-
mie ich linien (z. B. max. 10 Me hodenpa ame e ) sein. In Abbildung 5.5 is ein
beispielha e Ausschni eines de a igen Be ich s da ges ell , de Regel e s öße wie
einen lee en Ca ch-Block im Rahmen des Ja a-Excep ion-Handlings au deck .
12h p://commons.apache.o g/ma h
13h p://pmd.sou ce o ge.ne
130
5.1 Die P ojek e wal ungsso wa e Ma en
Abbildung 5.5: PMD-Repo übe Regel e le zungen im Apache-Commons-Ma h-
P ojek (Ausschni )
131
5 Implemen ie ung des Ma en Measu emen F amewo ks
5.2 E wei e ba kei on Ma en
5.2.1 Ma en Plugins
Wie be ei s da ges ell , we den die eigen lichen Build-Funk ionali ä en on Ma en
mi els Plugins implemen ie . De Ma en-Ke n dien dagegen haup sächlich dazu,
Ma en-Ke n
die POM-Da ei einzulesen und zu analysie en, P ojek abhängigkei en zu e wal-
en und die einzelnen Plugins zu s a en ( gl. [CMP+07], S. 134 .). Welche Plugins
e wende we den, wi d ges eue , indem einzelne Plugin-Goals mi eine Phase des
Ma en-Build-Li ecycles e knüp we den. Sobald diese Phase beim Du chlau en des
Build-P ozesses e eich wi d, we den die e knüp en Goals und dami die en sp e-
chenden Plugins au ge u en ( gl. auch Abschni 5.1.1.3, S. 120 .).
Jedes Goal inne halb eines Ma en-Plugins wi d du ch ein sogenann es Mojo imple-
men ie . Die Bezeichnung Mojo is eine Anspielung au den Beg i POJO14, welche
Ma en-Mojos
ü plain old ja a objec s eh , also ein ein aches Ja a-Objek ohne um ang eiche ex-
e ne Abhängigkei en, wie sie beispielsweise bei EJBs En e p ise Ja a Beans gegeben
sind ( gl. [Ric06]).
Ein Ma en-Mojo, welches ein Goal implemen ie , is dahe eine Ja a-Klasse, wel-
che im Wesen lichen on de Klasse Abs ac Mojo aus dem Ma en-F amewo k ab-
Abs ac Mojo als
Basisklasse gelei e sein muss. Dami bes eh ein Ma en-Plugin aus einem ode meh e en Mojos
und e l. no wendigen Hil sklassen, welche zusammen mi de Da ei plugin.xml,
in de die Goals und Pa ame e des Plugins besch ieben sind, zu einem Ja -A chi
gebündel we den. Ein seh ein aches Mojo is in Lis ing 5.4 abgebilde .
Dieses Mojo e wa e als Pa ame e einen S ing, welche dann inne halb on Ma-
ens Logging-S om mi ausgegeben wi d. Dieses Mojo zeig auch die A und Weise,
mi de inne halb des Ma en-F amewo ks Pa ame e an Mojos und dami an Goals
übe geben we den. Dabei bedien sich Ma en des Dependency-Injec ion-P inzips
( gl. [Fow04]). Bei diesem P inzip wi d die Ve an wo ung ü die E zeugung und
Dependency
Injec ion Ini ialisie ung on Objek en, welche bei de objek o ien ie en P og ammie ung üb-
liche weise übe einen Kons uk o e olg , dem Objek en zogen und dem umgeben-
den F amewo k übe agen. Bei Ma en we den also Mojos nich du ch pa ame i-
sie ba e Kons uk o -Me hoden ini ialisie , sonde n das Ma en-F amewo k e zeug
ein Mojo-Objek und so g ü die Ini ialisie ung de Mojo-A ibu e. Die Mo i a i-
on ü dieses Vo gehen is , dass dadu ch de P og ammcode diese Objek e nich an
bes imm e In e ace-De ini ionen gebunden is , welche beispielsweise die Anzahl de
Pa ame e o geben wü den. Beim Dependency-Injec ion-P inzip we den dahe die
A ibu e eines zu e zeugenden Objek s ex e n kon igu ie , was ypische weise mi -
els XML-Da eien e olg . Somi kann ein Mojo g undsä zlich eine beliebige Anzahl
A ibu e un e schiedlichs e Typen haben. Diese we den in de Da ei plugin.xml
dekla ie und das Ma en-F amewo k so g zu Lau zei des Plugins da ü , dass die
Mojo-A ibu e en sp echend ini ialisie we den.
Im obigen Beispiel (Lis ing 5.4) wi d du ch die Ja aDoc-Anno a ion @pa ame e
dekla ie , dass das nach olgende S ing-A ibu message übe einen Pa ame e des
14h p://www.ma in owle .com/bliki/POJO.h ml
132
5.2 E wei e ba kei on Ma en
1package de . ub . ma enplugins ;
2
3impo o g . apache . ma en . plugin . Abs ac Mojo ;
4impo o g . apache . ma en . plugin . MojoExecu ionExcep ion ;
5
6/∗∗
7∗ Ausgabe eines S i ng s
8∗
9∗ @goal echo
10 ∗/
11 public class EchoMojo ex ends Abs ac Mojo {
12
13 /∗∗
14 ∗ Auszugebende Tex
15 ∗
16 ∗ @pa ame e ex p es si on ="${ echo . message }"
17 ∗ de a ul − alue="Hallo ! "
18 ∗/
19 p i a e S ing message ;
20
21 public oid execu e () h ows MojoExecu ionExcep ion {
22 ge Log ( ) . in o ( message ) ;
23 }
24 }
Lis ing 5.4: Ein aches Ma en-Mojo
Mojos ini ialisie wi d. Du ch die Dekla a ion exp ession="${echo.message}"
wi d es geleg , dass beim Au u des Plugins on de Kommandozeile aus mi els Kon igu a ion au
Kommandozeile
-Decho.message="Hie kommm die Nach ich "
diese Pa ame e kon igu ie we den kann. Dadu ch wi d die Exp ession
${echo.message}
de inie , de en We dem Mojo-Pa ame e zugewiesen wi d.
Zusä zlich wi d du ch die Pa ame e -Anno a ion implizi es geleg , dass de Goal-
Pa ame e im Plugin-Abschni de POM-Da ei kon igu ie we den kann, wie es Kon igu a ion übe
POM-Da ei
be ei s anhand des Ma en-Compile -Plugins in Lis ing 5.3 da ges ell wu de:
<con igu a ion>
<message>Hie s eh de Nach ich en ex </message>
</con igu a ion>
Schließlich wi d noch ein De aul -We ü den Pa ame e de inie , welche zum
T agen komm , alls zu Lau zei wede die Exp ession echo.message de inie noch De aul -We
eine Kon igu a ion inne halb des POM o handen is . Abe auch de De aul -We
133
5 Implemen ie ung des Ma en Measu emen F amewo ks
wi d e s zu Lau zei om Ma en-F amewo k an das Mojo übe geben. Dadu ch is
es möglich, du ch die Dekla a ion
@pa ame e de aul - alue="${p ojec .name}"
das en sp echende A ibu des Mojos mi einem De aul -We zu ini ialisie en, wel-
che e s zu Lau zei des Mojos bekann is . Die Exp ession ${p ojec .name} wi d
om Ma en-F amewo k selbs e zeug und en häl den ak uellen P ojek namen, de
wiede um dem POM des ak uellen P ojek s en nommen is .
Somi gib es d ei Möglichkei en, um zu Lau zei eines Plugins Pa ame e an dessen
D ei Möglichkei en
de
Pa ame e übe gabe Mojos zu übe geben:
•Kommandozeilenpa ame e
•Kon igu a ion übe Ein äge in de POM-Da ei
•De aul -We e (We u. U. e s du ch die P ojek umgebung bes imm )
In allen Fällen en häl das Mojo nich selbs den Code zu Ini ialisie ung de A -
ibu e, sonde n die Ini ialisie ung e olg gemäß dem Dependency-Injec ion-P inzip
du ch das umgebende Ma en-F amewo k.15 Dies e möglich die E s ellung spezi-
elle Plugins zu E mi lung on So wa emaßen. Die Mess unk ionen können als
Plugin-Goals implemen ie we den, welche dann aus dem P ojec -Objec -Model ih-
e Kon igu a ionsin o ma ionen beziehen.
5.2.2 Beispiel-Plugin: Be echnung de Hals ead-Maße
Als beispielha e Implemen ie ung eines Ma en-Plugins zu So wa emessung soll an
diese S elle ein Plugin zu Be echnung de Hals ead-So wa e-Maße [Hal77] o ge-
s ell we den. Dieses wu de on Lo enz Singe im Rahmen seine Bachelo -A bei
[Sin06] an de Uni e si ä Bay eu h en wickel .
Die Hals ead-Maße wu den 1977 e ö en lich und gehö en mi zu den bekann-
e en So wa emaßen ( gl. [Zus98], S. 1). Sie basie en au de Annahme, dass die
Hals ead-
So wa emaße aus üh ba en P og amm eile aus Ope a o en und Ope anden au gebau sind ( gl.
[Wol03]). Dabei we den ypische weise Va iablen und Kons an en als Ope anden be-
ach e . Die es lichen P og ammbes and eile sind somi Ope a o en ( gl. [Zus98],
S. 37). Die Hals ead-Maße selbs basie en au olgenden Basismaßen:
•Anzahl de e wende en un e schiedlichen Ope a o en n1
•Anzahl de e wende en un e schiedlichen Ope anden n2
•Gesam zahl de e wende en Ope a o en N1
•Gesam zahl de e wende en Ope anden N2
15Die Objek a iable message in de Klasse EchoMojo is zwa als p i a e dekla ie . T o zdem is
es übe die Ja a-Re lec ion-API (h p://ja a.sun.com/docs/books/ u o ial/ e lec ) mög-
lich, on außen au Objek a iablen zuzug ei en und diese zu modi izie en. Eine beispielha e
Anlei ung dazu inde sich u. a. in [Ull07].
134
5.2 E wei e ba kei on Ma en
Dami lassen sich u. a. die olgenden Hals ead-Maße be echnen:
Implemen ie ungslänge: N=N1+N2
Vokabula : n=n1+n2
Hals ead-Länge: HL=n1·log2n1+n2·log2n2
Hals ead-Volumen: HV=N·log2n
Zusä zlich zu diesen Maßen ha Hals ead auch da on abgelei e e Maße ü Schwie-
igkei , den In elligenzgehal und den Implemen ie ungsau wand on P og ammen
angegeben ( gl. [Hal77]). Einige de Hals ead-Maße, insbesonde e die abgelei e en K i ik an den
Hals ead-Maßen
Maße, wu den in de Li e a u o k i isie und eilweise als Beispiele ü „con used
and inadequa e measu emen “ (siehe [FP98]) bezeichne .
Jedoch wu de on Wolle in [Wol03] da ges ell , dass sich insbesonde e die Imple-
men ie ungslänge Nals geeigne e es Maß ü die Längenmessung on Ja a-Applika- Be ach ung de
Implemen ie ungs-
länge
ionen als das wei e b ei e e LOC-Maß e weis . Diese Ansich wi d on Zuse in
[Zus03] bes ä ig . Zusä zlich wi d da au hingewiesen, dass sich dami gemäß [Zus98]
(Kapi el 8) die Implemen ie ungslänge zu Abschä zung des Wa ungsau wandes ü
Ja a-Applika ionen emp iehl . Die Implemen ie ungslänge Nha insbesonde e ge-
genübe dem LOC-Maß den Vo eil, dass sie wei wenige s a k om P og ammie s il
(z. B. Klamme se zung) abhäng als das LOC-Maß.
T o zdem is sie maschinell ech ein ach zu e mi eln, nachdem es geleg wu de,
welche Ja a-Sp achelemen e als Ope a o en bzw. als Ope anden gezähl we den. In
[Wol03] inde sich beispielsweise die Inkonsis enz, dass Va iablendekla a ionen als
Ope a o en gezähl we den, wenn es sich um eine p imi i e Va iable handel (in ,
by e,boolean, e c.), sie jedoch als Ope anden zählen, wenn es sich um Re e enz a-
iablen (z. B. S ing) handel . Demgegenübe we den on Singe die Dekla a ionen
on Va iablen und Me hoden einhei lich als Ope anden gezähl , was auch dem O i-
ginalansa z16 on Hals ead en sp ich ( gl. [Sin06], S. 32 .). Diese Un e scheidung
mach sich jedoch nu bei de Hals ead-Länge HLbeme kba . Fü die Implemen ie-
ungslänge N üh en beide Zählweisen zum gleichen E gebnis.
Die Hals ead-Länge und das Hals ead-Volumen sollen an diese S elle auch nich
wei e be ach e we den, da de en Bedeu ung seh ums i en is bzw. emp ohlen Hals ead-Länge
und -Volumen
wi d, zumindes au e s e e noch eine Ko ek u unk ion anzuwenden ( gl. [Zus98],
S. 546 ., [Wol03]).
Ve wendung des Hals ead-Me ics-Plugin
Das im Rahmen on [Sin06] en wickel e Hals ead-Me ics-Plugin wi d übe das Goal
Me icsRepo au ge u en. Dieses Goal kann un e ande em übe die in Lis ing 5.5
da ges ell en Pa ame e kon igu ie we den.
Dabei we den zunächs die Ve zeichnisse ü die zu e messenden Ja a-Da eien
als Pa ame e de inie , wobei als Vo eins ellungen das Sou ce-Ve zeichnis ü die
eigen liche Ja a-Applika ion und das zugehö ige Uni -Tes s-Ve zeichnis hin e leg
16Hals ead e wende in [Hal77] nu Sp achbeispiele ü Algol,Fo an und PL/1.
135
5 Implemen ie ung des Ma en Measu emen F amewo ks
1/∗∗
2∗ The sou ce di e c o y o b owse .
3∗ @pa ame e de au l − alu e="${ p o je c . b u i l d . so u ce Di e c o y }"
4∗/
5p i a e S ing sou ceDi ;
6
7/∗∗
8∗ The e s di ec o y o b owse .
9∗ @pa ame e de au l − alu e="${ p o je c . b u i l d . es S ou ce Di e c o y }"
10 ∗/
11 p i a e S ing es Di ;
12
13 /∗∗
14 ∗ De ines i e s s should be analysed .
15 ∗ @pa ame e de au l − alue=" ue "
16 ∗/
17 p i a e boolean analyseTes s ;
18
19 /∗∗
20 ∗ S p e c i i e s he d i e c o y whe e he ep o w i l l be gene a ed
21 ∗
22 ∗ @pa ame e de au l − alue="${ p o jec . ep o in g . ou pu Di ec o y }"
23 ∗ @ equi ed
24 ∗/
25 p i a e File ou pu Di ec o y ;
Lis ing 5.5: Pa ame e des Hals ead-Me ics-Plugin (Auszug)
sind. Diese Vo gaben können jedoch übe Ein äge in de POM-Da ei übe sch ie-
ben we den. Dadu ch is es möglich, das Hals ead-Me ics-Plugin auch au beliebige
Plugin au beliebige
P ojek e anwendba ande e Ja a-P ojek e anzuwenden, welche nich Ma en als Build-Tool e wenden.
Die Ausgabe e olg s anda dmäßig in dem Ve zeichnis, in dem auch die üb igen
Repo s on Ma en abgeleg we den. Schließlich kann noch kon igu ie we den, ob
die Hals ead-Maße nu ü den p oduk i en Sou cecode ode auch un e Einbezie-
hung des Tes -Sou cecodes be echne we den sollen.
Die Abbildung 5.6 zeig beispielha einen Ausschni aus einem mi diesem Plu-
gin e s ell en Ma en-Repo . Die Einbindung des Plugins in die POM-Da ei is in
Beispiel-Repo
Lis ing 5.2 (S. 123) ab Zeile 36 da ges ell .
Zum Abschluss de Be ach ungen dieses Plugins bleib es zus ellen, dass die-
ses Plugin in e s e Linie als Nachweis ü die Ve wendba kei on Ma en ü die
So wa emessung implemen ie wu de. Die Hals ead-Maße wu den ausgewähl , weil
insbesonde e in [Wol03] die Implemen ie ungslänge Nund die (ko igie e) Hals ead-
Länge HLals im Ve gleich zu den Lines o Code obus e e Maße zu Um angsmes-
Robus e Maße zu
Um angsmessung sung on Ja a-P og ammen emp ohlen we den. Insbesonde e de Hals ead-Länge
wi d diesbezüglich noch wei e es Po enzial zugesp ochen, da dieses Maß e l. dop-
pel o handene Code-Abschni e nich meh ach zähl , da sie allein on dem im
136
5.2 E wei e ba kei on Ma en
Abbildung 5.6: Du ch das Hals ead-Me ics-Plugin e zeug e Ma en-Repo
(Ausschni )
137
5 Implemen ie ung des Ma en Measu emen F amewo ks
P og amm e wende en Vokabula abhängig is . Fü die p ak ische Anwendung die-
ses Maßes sind jedoch noch wei e e S udien no wendig ( gl. [Wol03]).
Die Implemen ie ungslänge N, d. h. die Summe alle e wende en Ope a o en und
Ope anden, is jedoch als Längenmaß ü Sou cecode akzep ie , und ha gegenübe
Implemen ie ungs-
länge als
Um angsmaß den Lines o Code den Vo eil, dass dieses Maß om P og ammie s il unabhängig
is und dass lange und ku ze Ausd ücke un e schiedlich gezähl we den ( gl. [Wol03]
und [Zus03]). Da dieses Maß jedoch äqui alen zu den Non-commen ing Sou ce S a e-
men s (NCSS) [Lee06] is , wu den diese im Rahmen diese A bei als Längenmaß
eingese z , da das zugehö ige Ma en-Plugin egelmäßig ak ualisie wi d.
5.3 Messwe gebe als Ma en-Plugins
Nachdem im o he gehenden Abschni gezeig wu de, dass mi els Ma en-Plugins
g undsä zlich beliebige So wa emaße au oma isie e mi el we den können, soll an
diese S elle nun de Beg i des Messwe gebe s einge üh we den.
Ein Messwe gebe is ein Ma en-Plugin, welches ein bes imm es So wa emaß
be echnen kann. Die Bezeichnung Messwe gebe wi d in de Mess echnik ü Ge ä-
Messwe gebe
e zu Bes immung physikalische ode me eo ologische G ößen wie beispielsweise
S oms ä ke, D uck, Tempe a u ode Niede schlagsmenge e wende . Und ähnlich,
wie z. B. ein Winds ä kemesse en wede in Bodennähe ode au einem e höh en
Punk posi ionie we den kann, kann ein Ma en-Messwe gebe so kon igu ie
we den, dass e nu Messwe e be ücksich ig , die zu einem bes imm en Kon ex
gehö en.
Ein Kon ex wi d dabei du ch die im Abschni 4.2 da ges ell en Kon ex in o -
ma ionen de inie , mi els de e die zu messenden En i ä en o he gekennzeichne
Kon ex
wu den.
Ein du ch einen Messwe gebe e mi el es So wa emaß is somi gekennzeichne
•du ch die A de Messung, die de Messwe gebe du ch üh , und
•du ch den Kon ex , au den die Messung eingesch änk wi d.
Somi is es möglich, einen Messwe gebe , de den Um ang bzw. die Um angs-
ände ung on Sou cecode-Elemen en bes immen kann, de a zu kon igu ie en, dass
Kon igu ie ba kei
on
Messwe gebe n seine Messungen au den Kon ex de Analyse-Ak i i ä en einsch änk sind. Die Um-
angsmessung selbs wi d dabei du chge üh , indem die zu messenden Sou cecode-
Elemen e aus dem Ve sions e wal ungssys em ausgecheck und e messen we den.
Um dabei einen bes imm en Kon ex be ücksich igen zu können, muss bei den
Commi -In o ma ionen mi angegeben wo den sein, im Rahmen welche Ak i i ä
die jeweiligen Sou cecode-Ände ungen du chge üh wu den. Du ch Ab age des
Ve sions e wal ungssys ems, welches eben alls in de Ma en-POM-Da ei e e en-
zie wi d, können anhand de Commi -In o ma ionen die im Rahmen bes imm e
Ak i i ä en e zeug en ode e ände en Sou cecode-Da eien mi den zugehö igen
Ve sionsnumme n iden i izie we den und du ch sukzessi es Aus-checken de be-
o enen Ve sionen kann de en G ößenände ung bes imm we den ( gl. [DHW06a],
[DHW06c]).
138
5.3 Messwe gebe als Ma en-Plugins
5.3.1 Kon igu a ion und Funk ion on Messwe gebe n
Am Beispiel de Auswe ung de Ak i i ä s-Kon ex in o ma ionen soll die Kon i-
gu a ion eines Messwe gebe s da ges ell we den. Da inne halb dieses Beispiels die
P ojek ak i i ä en als Anknüp ungspunk e ü die Sou cecode-Um angsmessung e -
wende we den, müssen die Commi -In o ma ionen im Ve sions e wal ungssys em
um die PSP-Codes de P ojek ak i i ä en e gänz wo den sein ( gl. Abschni 4.2,
S. 92). De S anda d-P ojek s uk u plan habe in diesem Beispiel nu eine Gliede-
ungsebene, wie e beispielsweise im Abschni 4.3.1 (S. 106 .) besch ieben wu de.
Bei diesem PSP inden P og ammie ä igkei en inne halb de Ak i i ä en Ve eilung de P o-
g ammie ä igkei en
•Analyse (in Fo m on P o o yping),
•Implemen ie ung und
•Tes (in Fo m on P og ammko ek u en)
s a . Somi is es au schluss eich zu e mi eln, wie sich die im Rahmen diese Ak-
i i ä en e zeug en Code-Um änge au die d ei Ak i i ä en e eilen. Insbesonde e
e schein in e essan , ob ielleich ein ela i g oße An eil des le z endlichen Code-
Um angs be ei s im Rahmen des P o o yping en s anden is . Auch kann au diese
Weise un e such we den, ob im Rahmen de P og ammko ek u en nu einzelne
P og ammzeilen übe a bei e wu den, wodu ch sich de Gesam um ang nich ge-
ände hä e, ode ob sich de P og ammum ang beim Einp legen de Ko ek u en
signi ikan e g öße ha e, was da au deu en wü de, dass dabei zusä zliche bzw.
o he nich be ücksich ig e An o de ungen implemen ie wu den (Requi emen s
C eep, gl. S. 109).
Im Bezug au einen einzelnen P og ammie e kann dabei olgende maßen zwischen
P og ammie ä igkei en im Rahmen on Implemen ie ungs- und Tes -Ak i i ä en Abg enzung on
P og ammie ä ig-
kei en im Rahmen
on
Implemen ie ungs-
ode
Tes -Ak i i ä en
un e schieden we den, dami die SCM-Commi -In o ma ionen mi den ko ek en
Kon ex in o ma ionen gekennzeichne we den können:
Alle P og ammände ungen, welche ein P og ammie e du ch üh , weil e mi dem
ge ade e s ell en P og ammabschni nich zu ieden is ode weil einzelne Uni -Tes s
ehlgeschlagen sind, welche de P og ammie e in ku zen Abs änden au seine P o-
g ammsou cen anwende , zählen als Implemen ie ungs-Ak i i ä en. Wenn dagegen
im Rahmen de Con inuous-In eg a ion-Tes s ( gl. S. 128) es ges ell wi d, dass
de Build-P ozess des Gesam sys ems nich meh e olg eich du chlau en we den
kann (B oken Build, gl. S. 128), so zählen die zu Ko ek u diese Fehle nö igen
P og ammie ä igkei en als Tes -Ak i i ä en. Gleiches gil ü die Behebung on
Fehle n, welche im Rahmen on Sys em- ode Akzep anz es s es ges ell we den.17
Diese Ein eilung läss sich zumindes eilweise auch im Ra ional Uni ied P ocess wie-
de inden ( gl. [K u04], S. 193 .). Auch hie gehö die Du ch üh ung on Uni -Tes s
und die Du ch üh ung de da aus esul ie enden Code-Ko ek u en zu Implemen-
17Beim Sys em es wi d das Gesam sys em gegen die An o de ungen ode die Spezi ika ion ge es e .
Beim Akzep anz es wi d das Sys em du ch den Anwende (Kunden) ge es e ( gl. [SL05]).
De Un e schied zwischen den kon inuie lichen In eg a ions es s und einem Sys em es is dabei
ließend ( gl. [KK05], S. 154 .), da mi en sp echend ausgea bei e en Uni -Tes -Sui en auch das
Gesam sys em au oma isie ge es e we den kann.
139