Vorlesung Software-Reengineering

Größe: px
Ab Seite anzeigen:

Download "Vorlesung Software-Reengineering"

Transkript

1 Vorlesung Software-Reengineering Prof. Dr. R. Koschke 1 D. Simon 2 1 Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen 2 Institut für Software Technologie Fakultät Informatik, Elektrotechnik und Informationstechnologie Universität Stuttgart Oktober 2004

2 Überblick I 1 Blatt 1 2 Blatt 3 3 Blatt 4 4 Blatt 6

3 latt 1 Blatt 1 1 Blatt 1 Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

4 latt 1 Programmwissen und -repräsentation / r e t u r n s i n d e x o f key / i n t I n d e x ( i n t f i e l d, i n t l e n g t h, Item key ) { i n t i ; f o r ( i =0; i < l e n g t h ; i ++) i f ( f i e l d [ i ] == key ) r e t u r n i ; } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

5 latt 1 Programmrepräsentation c a s e X i s when 1 => Do Something ; when 2 => Do Something Else ; when o t h e r s => Do Nothing ; end c a s e ; Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

6 latt 3 Blatt 3 2 Blatt 3 A1:Klonerkennung A2:Metriken A2:LOC A2:Halstead A2:qksort A2:lqksort BubbleSort: Code BubbleSort: Halstead Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

7 latt 3 Kloneerkennung nach Baker 1 2 f o r ( ; c > 0 ; c ) { 3 p = p + 1 ; 4 } 5 6 f o r ( ; i > 0 ; i ) { 7 s = s + 1 ; 8 p = p 1 ; 9 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

8 latt 3 1 // o r i g i n a l : h t t p : / /www. d. umn. edu / g s h u t e /C/ examples / q u i c k s o r t. C 2 #i n c l u d e <s t d i o. h> 3 4 i n t A [ ] = { 99, 43, 22, 17, 57, 32, 43, 19, 26, 48, 87, 12, 75, 5 c o n s t i n t numentries = s i z e o f (A)/ s i z e o f ( i n t ) ; 6 7 v o i d l q k s o r t ( i n t i l o, i n t i h i ) { 8 i n t p i v o t ; // p i v o t v a l u e f o r p a r t i t i o n i n g a r r a y 9 i n t ulo, u h i ; // i n d i c e s at ends o f u n p a r t i t i o n e d r e g i 0 i n t i e q ; // l e a s t i n d e x o f a r r a y e n t r y with v a l u e 1 i n t tempentry ; // temporary e n t r y used f o r swapping 2 3 i f ( i l o >= i h i ) { 4 r e t u r n ; 5 } 6 // S e l e c t a p i v o t v a l u e. 7 p i v o t = A [ ( i l o + i h i ) / 2 ] ; 8 // I n i t i a l i z e ends o f u n p a r t i t i o n e d r e g i o n and l e a s t i n d e x o 9 // with v a l u e e q u a l to p i v o t. 0 i e q = u l o = i l o ; 1 u h i = i h i ; Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

9 latt 3 2 // While the u n p a r t i t i o n e d r e g i o n i s not empty, t r y to r e d u c 3 w h i l e ( u l o <= u h i ) { 4 i f (A[ u h i ] > p i v o t ) { 5 // Here, we can r e d u c e the s i z e o f the u n p a r t i t i o n e d 6 // t r y a g a i n. 7 uhi ; 8 } e l s e { 9 // Here, A[ u h i ] <= p i v o t, so swap e n t r i e s at i n d i c e s 0 // u h i. 1 tempentry = A[ u l o ] ; 2 A[ u l o ] = A[ u h i ] ; 3 A[ u h i ] = tempentry ; 4 // A f t e r the swap, A[ u l o ] <= p i v o t. 5 i f (A[ u l o ] < p i v o t ) { 6 // Swap e n t r i e s at i n d i c e s i e q and u l o. 7 tempentry = A[ i e q ] ; 8 A[ i e q ] = A[ u l o ] ; 9 A[ u l o ] = tempentry ; 0 // A f t e r the swap, A[ i e q ] < p i v o t, so we need to 1 // i e q. 2 i e q ++; Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

10 latt 3 3 // We a l s o need to change ulo, but we a l s o need 4 // t h a t when A[ u l o ] = p i v o t, so we do i t a f t e r t 5 // s t a t e m e n t. 6 } 7 // Once again, we can r e d u c e the s i z e o f the u n p a r t i 8 // r e g i o n and t r y a g a i n. 9 u l o ++; 0 } 1 } 2 // Now, a l l e n t r i e s from i n d e x i l o to i e q 1 a r e l e s s than 3 // and a l l e n t r i e s from i n d e x u h i to i h i + 1 a r e g r e a t e r tha 4 // p i v o t. So we have two r e g i o n s o f the a r r a y t h a t can be s 5 // r e c u r s i v e l y to put a l l o f the e n t r i e s i n o r d e r. 6 l q k s o r t ( i l o, i e q 1 ) ; 7 l q k s o r t ( u h i + 1, i h i ) ; 8 } 9 0 v o i d q k s o r t ( v o i d ) { 1 l q k s o r t ( 0, numentries 1 ) ; 2 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

11 latt 3 1 v o i d 2 b u b b l e S o r t ( i n t l i s t [ ], i n t l e n ) 3 { 4 i n t s o r t e d = FALSE ; 5 w h i l e (! s o r t e d ) 6 { 7 i n t j ; 8 s o r t e d = TRUE; 9 f o r ( j = 0 ; j < l e n 1 ; j ++) 0 { 1 i f ( l i s t [ j ] > l i s t [ j + 1 ] ) 2 { 3 i n t t ; 4 s o r t e d = FALSE ; 5 t = l i s t [ j ] ; 6 l i s t [ j ] = l i s t [ j + 1 ] ; 7 l i s t [ j + 1 ] = t ; 8 } 9 } 0 } 1 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

12 latt 3 LOC lqksort qksort lqksort + qksort bubblesort LOC (wc) Non-blank LOC CLOC ELOC Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

13 latt 3 Halstead Länge N = N 1 + N 2 Vokabular µ = µ 1 + µ 2 Volumen V = N log 2 µ Program Level L est = (2/µ 1 ) (µ 2 /N 2 ) Programmieraufwand E est = V /L est mit µ 1, µ 2 = Anzahl unterschiedlicher Operatoren, Operanden N 1, N 2 = Gesamtzahl verwendeter Operatoren, Operanden Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

14 latt v o i d q k s o r t ( v o i d ) { 6 l q k s o r t ( 0, numentries 1 ) ; 7 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

15 latt 3 Halstead für qksort Operatoren qksort 1 1 Summe 1 Operanden qksort 1 lqksort numentries Summe 4 µ = = 5 N = = 5 V = 5 log , 6 Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

16 latt 3 1 v o i d l q k s o r t ( i n t i l o, i n t i h i ) { 2 i n t p i v o t ; i n t ulo, u h i ; i n t i e q ; i n t tempentry ; 3 i f ( i l o >= i h i ) r e t u r n ; 4 p i v o t = A [ ( i l o + i h i ) / 2 ] ; 5 i e q = u l o = i l o ; u h i = i h i ; 6 w h i l e ( u l o <= u h i ) { 7 i f (A[ u h i ] > p i v o t ) { uhi ;} 8 e l s e { 9 tempentry = A[ u l o ] ; 0 A[ u l o ] = A[ u h i ] ; 1 A[ u h i ] = tempentry ; 2 i f (A[ u l o ] < p i v o t ) { 3 tempentry = A[ i e q ] ; 4 A[ i e q ] = A[ u l o ] ; 5 A[ u l o ] = tempentry ; 6 i e q ++; 7 } 8 u l o ++; 9 } 0 } 1 l q k s o r t ( i l o, i e q 1 ) ; 2 l q k s o r t ( u h i + 1, i h i ) ; 3 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

17 latt 3 Halstead für qksort/lqksort Operatoren lqksort 1 >= 1 2 [] 11 3 = / 1 6 <= 1 7 > Summe 31 µ = = 21 N = = 81 V = 81 log , 7 Operanden lqksort 1 lqksort 2 2 ilo 4 3 ihi 4 4 pivot 3 5 ulo 8 6 uhi 7 7 ieq 4 8 tempentry 4 9 A Summe 50 Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

18 latt 3 1 v o i d 2 b u b b l e S o r t ( i n t l i s t [ ], i n t l e n ) 3 { 4 i n t s o r t e d = FALSE ; 5 w h i l e (! s o r t e d ) 6 { 7 i n t j ; 8 s o r t e d = TRUE; 9 f o r ( j = 0 ; j < l e n 1 ; j ++) 0 { 1 i f ( l i s t [ j ] > l i s t [ j + 1 ] ) 2 { 3 i n t t ; 4 s o r t e d = FALSE ; 5 t = l i s t [ j ] ; 6 l i s t [ j ] = l i s t [ j + 1 ] ; 7 l i s t [ j + 1 ] = t ; 8 } 9 } 0 } 1 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

19 latt 3 Halstead für BubbleSort Operatoren bubblesort 1! 1 2 = 7 3 < [] Summe 20 Operanden bubblesort 1 sorted 4 2 FALSE 2 3 TRUE 1 4 j len list 6 9 t 2 Summe 30 µ = = 16 N = = 50 V = 50 log 2 16 = 200 Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

20 latt 3 Metrikenübersicht lqksort qksort lqksort + qksort bubblesort LOC (wc) Non-blank LOC CLOC ELOC McCabe Halstead 355,7 11,6 355,7 + 11,6 200 Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

21 latt 3 Empirische Studien Maintainability Index (Coleman/Oman, 1994): MI 1 = ln(v ) 0.23 V (g ) 16.2 ln(loc) MI 2 = MI sin 2.46 percm V = average Halstead Volume per module V (g ) = average extended cyclomatic complexity per module LOC = average LOC per module percm = average percent of lines of comment per module MI 2 nur bei sinnvoller Kommentierung MI < 65 schlechte / MI 85 gute Wartbarkeit MI 1 (lqksort) = ln(355, 7) ln(30) MI 2 (lqksort) = MI 1 (lqksort) + 50 sin /50 85, 17 MI 1 (bubblesort) = ln(200) ln(21) MI 2 (bubblesort) = MI 1 (bubblesort) + 50 sin /21 93, 2 Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

22 latt 4 Blatt 4 3 Blatt 4 A1:Program Slicing Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

23 latt 4 Program Slicing 1 i n t sum, prod ; 2 3 v o i d f o o ( i n t v a l u e ) { 4 i f ( v a l u e > 0) { 5 sum = sum + v a l u e ; 6 prod = prod v a l u e ; 7 f o o ( v a l u e 1 ) ; 8 } 9 } 0 1 i n t main ( ) { 2 sum = 0 ; 3 prod = 1 ; 4 f o o ( 1 0 ) ; 5 p r i n t ( sum ) ; 6 p r i n t ( prod ) ; 7 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

24 latt 4 Program Slicing 1 2 v o i d f o o ( i n t v a l u e, i n t sum, i n t prod ) { 3 i f ( v a l u e > 0) { 4 sum = sum + v a l u e ; 5 prod = prod v a l u e ; 6 f o o ( v a l u e 1, sum, prod ) ; 7 } 8 } 9 0 i n t main ( ) { 1 i n t sum, prod ; 2 sum = 0 ; 3 prod = 1 ; 4 f o o ( 1 0, &sum, &prod ) ; 5 p r i n t ( sum ) ; 6 p r i n t ( prod ) ; 7 } Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

25 Blatt 6 4 Blatt 6 A 6.1:Clustering A 6.2:Code-Transformation Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

26 four-legged hair-covered intelligent marine thumbed cats dogs dolphins gibbons humans whales Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

27 cats dogs dolphins gibbons humans whales cats 1 0 1/4 0 0 dogs 0 1/4 0 0 dolphins 1/4 1/3 1 gibbons 2/3 1/4 humans 1/3 whales Auswahl: {cats} {dogs} Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

28 Unweighted Pair-Group-Average avg-link(c, A B) = A sim(c, A) + B sim(c, B) A + B Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

29 cats,dogs dolphins gibbons humans whales cats,dogs 0 1/4 0 0 dolphins 1/4 1/3 1 gibbons 2/3 1/4 humans 1/3 whales Auswahl: {whales} {dolphins} Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

30 cats,dogs dolphins,whales gibbons humans cats,dogs 0 1/4 0 dolphins,whales 1/4 1/3 gibbons 2/3 humans Auswahl: {humans} {gibbons} Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

31 cats,dogs dolphins,whales gibbons,humans cats,dogs 0 1/8 dolphins,whales 7/24 gibbons,humans Auswahl: {dolphins, whales} {gibbons, humans} Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

32 cats,dogs dolphins,...,humans cats,dogs 1/16 dolphins,...,humans Auswahl: {cats, dogs} {dolphins, whales, gibbons, humans} Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

33 Dendrogramm / / / cats dogs whales dolphins humans gibbons Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

34 Challenge 1 Aufgabenstellung Aufgabe Übersetzung if-then-elsif-else in geschachteltes if-then-else-if-then-else. Hinweise beispielorientiert denken nicht nur elsif-klausel verändern nicht nur textuelle Änderungen vornehmen Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

35 Grammatikregeln für if define if statement if [expn] then [NL][IN] [sub scope] [EX] [repeat elsif clause] [opt else clause] end if end define define elsif clause elsif [expn] then [sub scope] end define [NL][IN] [EX] Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

36 Initialisierung include "Turing.Grm" function main replace [program] P [program] by P [convertelsifs] end function Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

37 Challenge 1 Transformationsregel rule convertelsifs replace [if statement] if StartCondition [expn] then IfBody [sub scope] elsif FirstSubCondition [expn] then FirstElsIfBody [sub scope] OtherClauses [repeat elsif clause] ElseClause [opt else clause] end if by if StartCondition then IfBody else if FirstSubCondition then FirstElsIfBody OtherClauses ElseClause end if end if end rule Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

38 Challenge 2 Aufgabenstellung Aufgabe Übersetzung geschachteltes if-then-else-if-then-else in if-then-elsif-else. (Inverse Transformation zu Aufgabe 1) Hinweise iterativ denken Konstruktor einsetzen Konkatenation [.] einsetzen Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

39 Challenge 2 Transformationsregel I rule constructelsifs replace [if statement] if OuterCond [expn] then OuterThen [sub scope] OuterElsIfs [repeat elsif clause] else if InnerCond [expn] then InnerThen [sub scope] InnerElsIfs [repeat elsif clause] InnerElse [opt else clause] end if end if Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

40 Challenge 2 Transformationsregel II construct NewElsIf [elsif clause] elsif InnerCond then InnerThen by if OuterCond then OuterThen OuterElsIfs [. NewElsIf] [. InnerElsIfs] InnerElse end if end rule Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

41 Grammatikregeln für if define if statement if [expn] then [NL][IN] [sub scope] [EX] [repeat elsif clause] [opt else clause] end if end define define elsif clause elsif [expn] then [sub scope] end define [NL][IN] [EX] Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

42 Challenge 3 Aufgabenstellung Aufgabe Übersetzung case-of-label in if-then-elsif-else. Hinweise etwas aus dem Nichts erschaffen Konstruktor einsetzen Subregel definieren Modifikator each einsetzen Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

43 Grammatikregeln für case define case statement case [expn] of [case alternative] [repeat case alternative] [opt last case alternative] end case end define [NL][IN] [EX] define case alternative label [expn] [repeat comma expn] : [sub scope] end define [NL][IN] [EX] Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

44 Challenge 3 Hauptregel I rule translatecases replace [statement] case CaseVar [primary] of label FirstLabel [expn] EquivalentLabels [repeat comma expn] : DoThis [sub scope] FurtherAlternatives [repeat case alternative] DefaultAlternative [opt last case alternative] end case construct BaseCondition [expn] CaseVar = FirstLabel construct ElsIfList [repeat elsif clause] construct ElseClause [opt else clause] Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

45 Challenge 3 Hauptregel II by if BaseCondition [commatoequals CaseVar each EquivalentLabels] then DoThis ElsIfList [translatesubsidiaryalternative CaseVar each FurtherAlternatives] ElseClause [translatedefaultalternative DefaultAlternative] end if end rule Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

46 Challenge 3 Nachgeordnete Alternativen function translatesubsidiaryalternative CaseVar [primary] AlternativeText [case alternative] replace [repeat elsif clause] ExistingClauses [repeat elsif clause] deconstruct AlternativeText label FirstValue [expn] OtherValues [repeat comma expn] : AlternativeBody [sub scope] construct BaseCondition [expn] CaseVar = FirstValue construct NewElsIfClause [elsif clause] elsif BaseCondition [commatoequals CaseVar each OtherValues] then AlternativeBody by ExistingClauses [. NewElsIfClause] end function Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

47 Challenge 3 Letzte Alternative function translatedefaultalternative AlternativeText [opt last case alternative] replace [opt else clause] deconstruct AlternativeText label : AlternativeBody [sub scope] by else AlternativeBody end function Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

48 Grammatikregeln für Ausdrücke define expn [primary] [opt operator expn] end define define operator expn [op] [expn] end define define primary ( [expn] ) [prefix op] [primary] [stringlit] [number] [reference] end define Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

49 Challenge 3 Mehrere Labels rule commatoequals LeftHandSide [primary] CommaLabel [comma expn] deconstruct CommaLabel, Label [expn] replace [expn] ExistingOrExpns [expn] construct NextCondition [expn] LeftHandSide = Label by ( ExistingOrExpns ) or NextCondition end rule Koschke/Simon (Univ. Bremen/Stuttgart) Vorlesung Software-Reengineering WS 2004/ / 49

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. R. Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2005/06 Überblick I 1 Blatt 2 1 Blatt 2 A 2.1:

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke 1 1 Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2005/06 Überblick I 1 Refactoring 1 Refactoring

Mehr

Softwaremetriken verstehen und nutzen

Softwaremetriken verstehen und nutzen Softwaremetriken verstehen und nutzen Manuel Pichler http://manuel-pichler.de PHP Unconference Hamburg 12. September 2009 Über mich Manuel Pichler Total stolzer Papa Jahrgang 1978 Diplom Informatiker Softwarearchitekt

Mehr

Management von Softwaresystemen Systembewertung: Metriken und Prozess

Management von Softwaresystemen Systembewertung: Metriken und Prozess Management von Softwaresystemen Systembewertung: Metriken und Prozess Referent: Vadym Alyokhin Betreuer: Florian Deißenböck Übersicht Definition Einführung in die Messtheorie Meilensteine von Software-Metriken

Mehr

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Asset Management in Second Life

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Asset Management in Second Life Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen Vorlesung im Sommersemester 2007 an der Technischen Universität Ilmenau von Privatdozent Dr.-Ing. habil. Jürgen

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2009/10 Überblick I 1 I 1 Arten von Reengineering-Projekten

Mehr

Seminar "Softwareentwicklung in der Wissenschaft" "Code-Qualität"

Seminar Softwareentwicklung in der Wissenschaft Code-Qualität Seminar "Softwareentwicklung in der Wissenschaft" "Code-Qualität" Johann Weging 8weging@informatik.uni-hamburg.de Arbeitsbereich Wissenschaftliches Rechnen Department Informatik Universität Hamburg 2011-02-09

Mehr

Software-Metriken. Dipl.-Ing.(BA) Henning Sievert Seminar Software-Entwurf WS 2004/05

Software-Metriken. Dipl.-Ing.(BA) Henning Sievert <email@henningsievert.de> Seminar Software-Entwurf WS 2004/05 Software-Metriken Dipl.-Ing.(BA) Henning Sievert Seminar Software-Entwurf WS 2004/05 Gliederung Einordnung in den Seminar-Kontext Grundlegende Definitionen Klassifikation von

Mehr

Unterspezifikation in der Semantik Hole Semantics

Unterspezifikation in der Semantik Hole Semantics in der Semantik Hole Semantics Laura Heinrich-Heine-Universität Düsseldorf Wintersemester 2011/2012 Idee (1) Reyle s approach was developed for DRT. Hole Semantics extends this to any logic. Distinction

Mehr

Algorithmen und Datenstrukturen. und. Programmieren in Haskell

Algorithmen und Datenstrukturen. und. Programmieren in Haskell Datenstrukturen WS 2013/2014 Datenstrukturen Robert, Stefan Janssen, Alexander Sczyrba Technische Fakultät AG Praktische Informatik October 30, 2013 Kontakt & Kontext Prof. Dr. Robert Email: robert@techfak.uni-bielefeld.de

Mehr

HIR Method & Tools for Fit Gap analysis

HIR Method & Tools for Fit Gap analysis HIR Method & Tools for Fit Gap analysis Based on a Powermax APML example 1 Base for all: The Processes HIR-Method for Template Checks, Fit Gap-Analysis, Change-, Quality- & Risk- Management etc. Main processes

Mehr

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich?

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich? KURZANLEITUNG Firmware-Upgrade: Wie geht das eigentlich? Die Firmware ist eine Software, die auf der IP-Kamera installiert ist und alle Funktionen des Gerätes steuert. Nach dem Firmware-Update stehen Ihnen

Mehr

Exercise (Part II) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part II) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part II) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2009/10 Überblick I 1 Metriken I 1 Metriken

Mehr

How to use the large-capacity computer Lilli? IMPORTANT: Access only on JKU Campus!! Using Windows:

How to use the large-capacity computer Lilli? IMPORTANT: Access only on JKU Campus!! Using Windows: How to use the large-capacity computer Lilli? IMPORTANT: Access only on JKU Campus!! Using Windows: In order to connect to Lilli you need to install the program PUTTY. The program enables you to create

Mehr

DOWNLOAD. Englisch in Bewegung. Spiele für den Englischunterricht. Britta Buschmann. Downloadauszug aus dem Originaltitel:

DOWNLOAD. Englisch in Bewegung. Spiele für den Englischunterricht. Britta Buschmann. Downloadauszug aus dem Originaltitel: DOWNLOAD Britta Buschmann Englisch in Bewegung Spiele für den Englischunterricht auszug aus dem Originaltitel: Freeze Hör-/ und Sehverstehen Folgende Bewegungen werden eingeführt: run: auf der Stelle rennen

Mehr

https://portal.microsoftonline.com

https://portal.microsoftonline.com Sie haben nun Office über Office365 bezogen. Ihr Account wird in Kürze in dem Office365 Portal angelegt. Anschließend können Sie, wie unten beschrieben, die Software beziehen. Congratulations, you have

Mehr

Klausur Verteilte Systeme

Klausur Verteilte Systeme Klausur Verteilte Systeme SS 2005 by Prof. Walter Kriha Klausur Verteilte Systeme: SS 2005 by Prof. Walter Kriha Note Bitte ausfüllen (Fill in please): Vorname: Nachname: Matrikelnummer: Studiengang: Table

Mehr

Abteilung Internationales CampusCenter

Abteilung Internationales CampusCenter Abteilung Internationales CampusCenter Instructions for the STiNE Online Enrollment Application for Exchange Students 1. Please go to www.uni-hamburg.de/online-bewerbung and click on Bewerberaccount anlegen

Mehr

0/28. Software-Metriken. Andreas Zeller. Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken

0/28. Software-Metriken. Andreas Zeller. Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken 0/28 Software-Metriken Andreas Zeller Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken Software-Metriken 1/28 Zu den Aufgaben eines Managers gehört die Kontrolle der Software-Entwicklung:

Mehr

Rätsel 1: Buchstabensalat klassisch, 5 5, A C (10 Punkte) Puzzle 1: Standard As Easy As, 5 5, A C (10 points)

Rätsel 1: Buchstabensalat klassisch, 5 5, A C (10 Punkte) Puzzle 1: Standard As Easy As, 5 5, A C (10 points) Rätsel 1: uchstabensalat klassisch, 5 5, (10 Punkte) Puzzle 1: Standard s Easy s, 5 5, (10 points) Rätsel 2: uchstabensalat klassisch, 5 5, (5 Punkte) Puzzle 2: Standard s Easy s, 5 5, (5 points) Rätsel

Mehr

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part XI) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

Extracting Business Rules from PL/SQL-Code

Extracting Business Rules from PL/SQL-Code Extracting Business Rules from PL/SQL-Code Version 7, 13.07.03 Michael Rabben Knowledge Engineer Semantec GmbH, Germany Why? Where are the business rules? Business Rules are already hidden as logic in

Mehr

Geometrie und Bedeutung: Kap 5

Geometrie und Bedeutung: Kap 5 : Kap 5 21. November 2011 Übersicht Der Begriff des Vektors Ähnlichkeits Distanzfunktionen für Vektoren Skalarprodukt Eukidische Distanz im R n What are vectors I Domininic: Maryl: Dollar Po Euro Yen 6

Mehr

Objects First With Java A Practical Introduction Using BlueJ. Mehr über Vererbung. Exploring polymorphism 1.0

Objects First With Java A Practical Introduction Using BlueJ. Mehr über Vererbung. Exploring polymorphism 1.0 Objects First With Java A Practical Introduction Using BlueJ Mehr über Vererbung Exploring polymorphism 1.0 Zentrale Konzepte dieses Kapitels Methoden-Polymorphie statischer und dynamischer Typ Überschreiben

Mehr

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg 19.04.2011

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg 19.04.2011 Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 19.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei

Mehr

Maintainability Index als Instrument der Software-Wartung

Maintainability Index als Instrument der Software-Wartung Stuttgart 04.10.2007 Maintainability Index als Instrument der Software-Wartung Maintainability Index als Instrument der Software-Wartung Dieses Werk einschließlich aller seiner Teile ist urheberrechtlich

Mehr

Getting started with MillPlus IT V530 Winshape

Getting started with MillPlus IT V530 Winshape Getting started with MillPlus IT V530 Winshape Table of contents: Deutsche Bedienungshinweise zur MillPlus IT V530 Programmierplatz... 3 English user directions to the MillPlus IT V530 Programming Station...

Mehr

Accounting course program for master students. Institute of Accounting and Auditing http://www.wiwi.hu-berlin.de/rewe

Accounting course program for master students. Institute of Accounting and Auditing http://www.wiwi.hu-berlin.de/rewe Accounting course program for master students Institute of Accounting and Auditing http://www.wiwi.hu-berlin.de/rewe 2 Accounting requires institutional knowledge... 3...but it pays: Lehman Bros. Inc.,

Mehr

Technische Universität München WS 2004/2005 Fakultät für Informatik 11. Dezember 2004 Prof. Dr. Seidl

Technische Universität München WS 2004/2005 Fakultät für Informatik 11. Dezember 2004 Prof. Dr. Seidl Name: Vorname: Matr. Nr.: Technische Universität München WS 2004/2005 Fakultät für Informatik 11. Dezember 2004 Prof. Dr. Seidl Zwischenklausur zu Einführung in die Informatik I Hinweis: In dieser Zwischenklausur

Mehr

How-To-Do. Hardware Configuration of the CC03 via SIMATIC Manager from Siemens

How-To-Do. Hardware Configuration of the CC03 via SIMATIC Manager from Siemens How-To-Do Hardware Configuration of the CC03 via SIMATIC Manager from Siemens Content Hardware Configuration of the CC03 via SIMATIC Manager from Siemens... 1 1 General... 2 1.1 Information... 2 1.2 Reference...

Mehr

Harry gefangen in der Zeit Begleitmaterialien

Harry gefangen in der Zeit Begleitmaterialien Folge 029 Grammatik 1. The pronoun "es" (review) "es" is a pronoun that usually substitutes a neuter noun. Example: Ist das Bett zu hart? - Nein, es ist nicht zu hart. (es = it das Bett = the bed) But:

Mehr

Die Datenmanipulationssprache SQL

Die Datenmanipulationssprache SQL Die Datenmanipulationssprache SQL Daten eingeben Daten ändern Datenbank-Inhalte aus Dateien laden Seite 1 Data Manipulation Language A DML statement is executed when you Add new rows to a table Modify

Mehr

Qualität und Qualitätsmodelle

Qualität und Qualitätsmodelle 1 M. Broy, F. Deißenböck, E. Jürgens, S. Wagner Qualität und Qualitätsmodelle 07. Mai 2007 Software im Automobil Workshop Software-Qualität 2 Maintainability Portability Unit-Test Reusability Architecture

Mehr

Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str. 3 07743 Jena

Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str. 3 07743 Jena Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str. 3 07743 Jena http://www.im.uni-jena.de Contents I. Learning Objectives II. III. IV. Recap

Mehr

CABLE TESTER. Manual DN-14003

CABLE TESTER. Manual DN-14003 CABLE TESTER Manual DN-14003 Note: Please read and learn safety instructions before use or maintain the equipment This cable tester can t test any electrified product. 9V reduplicated battery is used in

Mehr

KOP / FBS - Programmierung

KOP / FBS - Programmierung KOP / FBS - Programmierung Programmieren in Anweisungsliste Programmieren in strukturierten Text Programmieren in Kontaktplan Programmieren in Funktionsbausteinsprache KOP Programmierung (1) 2 1 Neues

Mehr

KOBIL SecOVID Token III Manual

KOBIL SecOVID Token III Manual KOBIL SecOVID Token III Manual Einführung Vielen Dank, dass Sie sich für das KOBIL SecOVID Token entschieden haben. Mit dem SecOVID Token haben Sie ein handliches, einfach zu bedienendes Gerät zur universellen

Mehr

Software Renovierung Ein Weg aus der Kostenfalle

Software Renovierung Ein Weg aus der Kostenfalle Software Renovierung Ein Weg aus der Kostenfalle Dr. Markus Pizka 16. September 2008 Fragestellung Lebenszyklen >30 Jahre Steigende Kosten und Risiken Abnehmende Qualität Zuverlässigkeit Sicherheit Wartungsaufwand

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 Anweisungen... 4-2 4.1 Strukturierte Programmierung... 4-2 4.1.1 Geschichte... 4-2 4.1.2 Strukturierung im Kleinen... 4-2 4.2 Einige Beispielanwendungen... 4-4 4.2.1 Addierer (do-schleife)...

Mehr

Tuesday 10 May 2011 Afternoon Time: 30 minutes plus 5 minutes reading time

Tuesday 10 May 2011 Afternoon Time: 30 minutes plus 5 minutes reading time Write your name here Surname Other names Edexcel IGCSE German Paper 1: Listening Centre Number Candidate Number Tuesday 10 May 2011 Afternoon Time: 30 minutes plus 5 minutes reading time You do not need

Mehr

p^db=`oj===pìééçêíáåñçêã~íáçå=

p^db=`oj===pìééçêíáåñçêã~íáçå= p^db=`oj===pìééçêíáåñçêã~íáçå= Error: "Could not connect to the SQL Server Instance" or "Failed to open a connection to the database." When you attempt to launch ACT! by Sage or ACT by Sage Premium for

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 Einführung in die Programmiersprache Java (Teil II)... 4-2 4.4 Strukturierte Programmierung... 4-2 4.4.1 Strukturierung im Kleinen... 4-2 4.4.2 Addierer (do-schleife)... 4-3 4.4.3 Ein- Mal- Eins

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2006/07 Überblick I 1 Metriken Software-Metriken

Mehr

Allgemeines Der Schal ist ein pi-schal das heisst, dass immer wenn sich die Reihenzahl verdoppelt hat die Maschenzahl verdoppelt wird.

Allgemeines Der Schal ist ein pi-schal das heisst, dass immer wenn sich die Reihenzahl verdoppelt hat die Maschenzahl verdoppelt wird. Sisyphos Allgemeines Der Schal ist ein pi-schal das heisst, dass immer wenn sich die Reihenzahl verdoppelt hat die Maschenzahl verdoppelt wird. Lesen der Charts Auf den Charts sind die geraden Reihen nicht

Mehr

CampusCenter. Anleitung zur Online-Einschreibung für Promovenden. Instructions for the PhD online enrollment procedure

CampusCenter. Anleitung zur Online-Einschreibung für Promovenden. Instructions for the PhD online enrollment procedure CampusCenter Alsterterrasse 1 20354 Hamburg www.uni-hamburg.de/campuscenter Anleitung zur Online-Einschreibung für Promovenden Instructions for the PhD online enrollment procedure 1. Rufen Sie die Website

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Inequality Utilitarian and Capabilities Perspectives (and what they may imply for public health)

Inequality Utilitarian and Capabilities Perspectives (and what they may imply for public health) Inequality Utilitarian and Capabilities Perspectives (and what they may imply for public health) 1 Utilitarian Perspectives on Inequality 2 Inequalities matter most in terms of their impact onthelivesthatpeopleseektoliveandthethings,

Mehr

Level 2 German, 2015

Level 2 German, 2015 91126 911260 2SUPERVISOR S Level 2 German, 2015 91126 Demonstrate understanding of a variety of written and / or visual German text(s) on familiar matters 2.00 p.m. Friday 4 December 2015 Credits: Five

Mehr

Statische Code-Analyse: Software-Metriken Fernstudium Master Wirtschaftsinformatik Formale Methoden

Statische Code-Analyse: Software-Metriken Fernstudium Master Wirtschaftsinformatik Formale Methoden Statische Code-Analyse: Software-Metriken Fernstudium Master Wirtschaftsinformatik Formale Methoden Isabell Füll Grömmsche Koppel 15 24111 Kiel isabell.fuell@googlemail.com Amselweg 3 24222 Schwentinental

Mehr

Priority search queues: Loser trees

Priority search queues: Loser trees Priority search queues: Loser trees Advanced Algorithms & Data Structures Lecture Theme 06 Tobias Lauer Summer Semester 2006 Recap Begriffe: Pennant, Top node Linien gestrichelt vs. durchgezogen Intro

Mehr

Preisliste für The Unscrambler X

Preisliste für The Unscrambler X Preisliste für The Unscrambler X english version Alle Preise verstehen sich netto zuzüglich gesetzlicher Mehrwertsteuer (19%). Irrtümer, Änderungen und Fehler sind vorbehalten. The Unscrambler wird mit

Mehr

Listening Comprehension: Talking about language learning

Listening Comprehension: Talking about language learning Talking about language learning Two Swiss teenagers, Ralf and Bettina, are both studying English at a language school in Bristo and are talking about language learning. Remember that Swiss German is quite

Mehr

Hazards and measures against hazards by implementation of safe pneumatic circuits

Hazards and measures against hazards by implementation of safe pneumatic circuits Application of EN ISO 13849-1 in electro-pneumatic control systems Hazards and measures against hazards by implementation of safe pneumatic circuits These examples of switching circuits are offered free

Mehr

ONLINE LICENCE GENERATOR

ONLINE LICENCE GENERATOR Index Introduction... 2 Change language of the User Interface... 3 Menubar... 4 Sold Software... 5 Explanations of the choices:... 5 Call of a licence:... 7 Last query step... 9 Call multiple licenses:...

Mehr

Umgang mit und Ersetzen von fehlenden Werten bei multivariaten Analysen

Umgang mit und Ersetzen von fehlenden Werten bei multivariaten Analysen Umgang mit und Ersetzen von fehlenden Werten bei multivariaten Analysen Warum überhaupt Gedanken machen? Was fehlt, ist doch weg, oder? Allgegenwärtiges Problem in psychologischer Forschung Bringt Fehlerquellen

Mehr

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2 ReadMe zur Installation der BRICKware for Windows, Version 6.1.2 Seiten 2-4 ReadMe on Installing BRICKware for Windows, Version 6.1.2 Pages 5/6 BRICKware for Windows ReadMe 1 1 BRICKware for Windows, Version

Mehr

Background for Hybrid Processing

Background for Hybrid Processing Background for Hybrid Processing Hans Uszkoreit Foundations of LST WS 04/05 Scope Classical Areas of Computational Linguistics: computational morphology, computational syntax computational semantics computational

Mehr

Funktion definieren Gibt Summe der Gehälter zurück. Aufruf in einem SQL-Statement

Funktion definieren Gibt Summe der Gehälter zurück. Aufruf in einem SQL-Statement Funktion definieren Gibt Summe der Gehälter zurück Aufruf in einem SQL-Statement Dr. Christian Senger Einführung PL/SQL 1 Procedures & Transaktionen CREATE OR REPLACE PROCEDURE write_log ( log_code IN

Mehr

Cleanroom Fog Generators Volcano VP 12 + VP 18

Cleanroom Fog Generators Volcano VP 12 + VP 18 Cleanroom Fog Generators Volcano VP 12 + VP 18 Description & Functional Principle (Piezo Technology) Cleanrooms are dynamic systems. People and goods are constantly in motion. Further installations, production

Mehr

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32 Steueranweisungen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder Programmblöcken)

Mehr

ausgezeichnet - doch! - Hinweis Nr. 1. zuerst - dann - danach - endlich - Hinweis Nr. 2.

ausgezeichnet - doch! - Hinweis Nr. 1. zuerst - dann - danach - endlich - Hinweis Nr. 2. 1.08 Fragebogen Neue Wörter Gibt es neue Wörter heute? Alte Wörter ausgezeichnet - doch! - Hinweis Nr. 1. ein bißchen - hat den Apfel gegessen - zuerst - dann - danach - endlich - Hinweis Nr. 2. Perfekt

Mehr

SELF-STUDY DIARY (or Lerntagebuch) GER102

SELF-STUDY DIARY (or Lerntagebuch) GER102 SELF-STUDY DIARY (or Lerntagebuch) GER102 This diary has several aims: To show evidence of your independent work by using an electronic Portfolio (i.e. the Mahara e-portfolio) To motivate you to work regularly

Mehr

SS 2011 Network Security Dozent(en): Prof. Dr. Peter Martini

SS 2011 Network Security Dozent(en): Prof. Dr. Peter Martini SS 2 Network Security Dozent(en): Prof. Dr. Peter Martini Wie regelmäßig hast du die Vorlesung besucht How regularly have you attended this lecture? nie never immer always Entspricht der Raum deinen Anforderungen

Mehr

WAS IST DER KOMPARATIV: = The comparative

WAS IST DER KOMPARATIV: = The comparative DER KOMPATATIV VON ADJEKTIVEN UND ADVERBEN WAS IST DER KOMPARATIV: = The comparative Der Komparativ vergleicht zwei Sachen (durch ein Adjektiv oder ein Adverb) The comparative is exactly what it sounds

Mehr

Methodische Grundlagen des Software Engineering - Übung 9

Methodische Grundlagen des Software Engineering - Übung 9 Engineering - Übung 9 9 Prozess und Softwarequalität Abgabe der Hausaufgaben am Anfang der jeweiligen Präsenzübung am 14.06.2011 bzw. 15.06.2011. Hinweise und Kontakt: Veranstaltungsseite 1 9.1 Grundlagen

Mehr

Kontrollstrukturen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Kontrollstrukturen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-14-15/infoeinf WS14/15 Action required now 1. Smartphone: installiere die App "socrative student"

Mehr

EVANGELISCHES GESANGBUCH: AUSGABE FUR DIE EVANGELISCH-LUTHERISCHE LANDESKIRCHE SACHSEN. BLAU (GERMAN EDITION) FROM EVANGELISCHE VERLAGSAN

EVANGELISCHES GESANGBUCH: AUSGABE FUR DIE EVANGELISCH-LUTHERISCHE LANDESKIRCHE SACHSEN. BLAU (GERMAN EDITION) FROM EVANGELISCHE VERLAGSAN EVANGELISCHES GESANGBUCH: AUSGABE FUR DIE EVANGELISCH-LUTHERISCHE LANDESKIRCHE SACHSEN. BLAU (GERMAN EDITION) FROM EVANGELISCHE VERLAGSAN DOWNLOAD EBOOK : EVANGELISCHES GESANGBUCH: AUSGABE FUR DIE EVANGELISCH-LUTHERISCHE

Mehr

Software-Metriken: Purismus vs. Pragmatismus

Software-Metriken: Purismus vs. Pragmatismus Software-Metriken: Purismus vs. Pragmatismus Web DevCon Manuel Pichler 17.10.2011 Software-Metriken: Purismus vs. Pragmatismus 1 / 42 Über mich Diplominformatiker Mehr als 10 Jahre Erfahrung im Web-Umfeld

Mehr

Teil 2.2: Lernen formaler Sprachen: Hypothesenräume

Teil 2.2: Lernen formaler Sprachen: Hypothesenräume Theorie des Algorithmischen Lernens Sommersemester 2006 Teil 2.2: Lernen formaler Sprachen: Hypothesenräume Version 1.1 Gliederung der LV Teil 1: Motivation 1. Was ist Lernen 2. Das Szenario der Induktiven

Mehr

Metriken zur Messung des Software-Entwicklungsprozesses;

Metriken zur Messung des Software-Entwicklungsprozesses; SQAM Software Komplexität und Qualität von Software Wie bestimmt man die Komplexität von Quellcode und welchen Einfluss hat sie auf die Wartbarkeit? Die Softwarequalität und die Wartbarkeit von Applikationen

Mehr

Statistics, Data Analysis, and Simulation SS 2015

Statistics, Data Analysis, and Simulation SS 2015 Mainz, June 11, 2015 Statistics, Data Analysis, and Simulation SS 2015 08.128.730 Statistik, Datenanalyse und Simulation Dr. Michael O. Distler Dr. Michael O. Distler

Mehr

9. Übung Algorithmen I

9. Übung Algorithmen I INSTITUT FÜR THEORETISCHE INFORMATIK 1 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft Institut für Theoretische www.kit.edu Informatik Musterlösung

Mehr

Top Tipp. Ref. 08.05.23 DE. Verwenden externer Dateiinhalte in Disclaimern. (sowie: Verwenden von Images in RTF Disclaimern)

Top Tipp. Ref. 08.05.23 DE. Verwenden externer Dateiinhalte in Disclaimern. (sowie: Verwenden von Images in RTF Disclaimern) in Disclaimern (sowie: Verwenden von Images in RTF Disclaimern) Ref. 08.05.23 DE Exclaimer UK +44 (0) 845 050 2300 DE +49 2421 5919572 sales@exclaimer.de Das Problem Wir möchten in unseren Emails Werbung

Mehr

C R 2025 C LOSE PUSH OPEN

C R 2025 C LOSE PUSH OPEN 3V C R 2025 C LOSE PUSH OPEN ) ) ) 25 222 3V C R 2025 C LOSE PUSH OPEN 25 222 3V C R 2025 C LOSE PUSH OPEN 25 222 Den här symbolen på produkten eller i instruktionerna betyder att den elektriska

Mehr

Open Source. Legal Dos, Don ts and Maybes. openlaws Open Source Workshop 26 June 2015, Federal Chancellery Vienna

Open Source. Legal Dos, Don ts and Maybes. openlaws Open Source Workshop 26 June 2015, Federal Chancellery Vienna Open Source Legal Dos, Don ts and Maybes openlaws Open Source Workshop 26 June 2015, Federal Chancellery Vienna 1 2 3 A Case + vs cooperation since 2003 lawsuit initiated 2008 for violation of i.a. GPL

Mehr

Die Kunst des Programmierens...

Die Kunst des Programmierens... Die Kunst des Programmierens... Wo die Kosten anfallen Der Mythos Wiederverwendung: Design für Wartung als eigentliches Ziel, Objekt Spektrum 4/2009 software maintainers sped 45 percent of their time seeking

Mehr

BTree.dll - Balancierte und verkettete Bäume. Ecofor. BTree.dll. Realisiert mit Microsoft Visual Studio 16.04.2015 1/9

BTree.dll - Balancierte und verkettete Bäume. Ecofor. BTree.dll. Realisiert mit Microsoft Visual Studio 16.04.2015 1/9 BTree.dll Realisiert mit Microsoft Visual Studio 16.04.2015 1/9 INHALT 1. Allgemein... 3 2. Class BTree1 (balanciert)... 3 3. Class BTree2 (balanciert und verkettet)... 4 4. Beschreibung BTree1 und BTree2...

Mehr

Testen und Metriken. Einige Fehler. Fehler vermeiden. Andreas Zeller Universität des Saarlandes Microsoft Research. http://www.st.cs.uni-sb.

Testen und Metriken. Einige Fehler. Fehler vermeiden. Andreas Zeller Universität des Saarlandes Microsoft Research. http://www.st.cs.uni-sb. Testen und Metriken Andreas Zeller Universität des Saarlandes Microsoft Research http://www.st.cs.uni-sb.de/ Einige Fehler Fehler vermeiden Spezifizieren Beweisen Gegenlesen Testen Module Welche sollte

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Adersberger, Spisländer FAU Erlangen-Nürnberg Software-Metriken 1 / 26 Software-Metriken Josef Adersberger Marc Spisländer Lehrstuhl für Software Engineering

Mehr

VHDL Verhaltensmodellierung

VHDL Verhaltensmodellierung VHDL Verhaltensmodellierung Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 VHDL Verhaltensmodellierung 1/26 2008-10-20

Mehr

2 German sentence: write your English translation before looking at p. 3

2 German sentence: write your English translation before looking at p. 3 page Edward Martin, Institut für Anglistik, Universität Koblenz-Landau, Campus Koblenz 2 German sentence: write your English translation before looking at p. 3 3 German sentence analysed in colour coding;

Mehr

1. General information... 2 2. Login... 2 3. Home... 3 4. Current applications... 3

1. General information... 2 2. Login... 2 3. Home... 3 4. Current applications... 3 User Manual for Marketing Authorisation and Lifecycle Management of Medicines Inhalt: User Manual for Marketing Authorisation and Lifecycle Management of Medicines... 1 1. General information... 2 2. Login...

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2010/11 Überblick I Durchführung von Reengineering-Projekten

Mehr

Ruby - Objektorientiertes Scripting, aber richtig!

Ruby - Objektorientiertes Scripting, aber richtig! Ruby - Objektorientiertes Scripting, aber richtig! Andreas Krennmair krennmair@acm.org 2. November 2003 0-0 Ruby - Objektorientiertes Scripting, aber richtig! 0-1 Aga Ruby s Syntax Ruby s coole Konzepte

Mehr

Frankfurt am Main. Dortmund. Stuttgart. Düsseldorf

Frankfurt am Main. Dortmund. Stuttgart. Düsseldorf Aufgabenstellung Ein Handlungsreisender will seine Produkte in den zehn größten Städten Deutschlands verkaufen. Er startet in Berlin und will seine Reise dort beenden. Die zehn einwohnerreichsten Städte

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Relevante(r) Deskriptor(en) Deskriptor 5: Kann einfachen Interviews, Berichten, Hörspielen und Sketches zu vertrauten Themen folgen.

Relevante(r) Deskriptor(en) Deskriptor 5: Kann einfachen Interviews, Berichten, Hörspielen und Sketches zu vertrauten Themen folgen. RULES IN THE FAMILY Fertigkeit Hören Relevante(r) Deskriptor(en) Deskriptor 5: Kann einfachen Interviews, Berichten, Hörspielen und Sketches zu vertrauten Themen folgen. (B1) Themenbereich(e) Familie und

Mehr

Darstellung und Anwendung der Assessmentergebnisse

Darstellung und Anwendung der Assessmentergebnisse Process flow Remarks Role Documents, data, tool input, output Important: Involve as many PZU as possible PZO Start Use appropriate templates for the process documentation Define purpose and scope Define

Mehr

USB Treiber updaten unter Windows 7/Vista

USB Treiber updaten unter Windows 7/Vista USB Treiber updaten unter Windows 7/Vista Hinweis: Für den Downloader ist momentan keine 64 Bit Version erhältlich. Der Downloader ist nur kompatibel mit 32 Bit Versionen von Windows 7/Vista. Für den Einsatz

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #6. SQL (Teil 4)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #6. SQL (Teil 4) Vorlesung #6 SQL (Teil 4) Fahrplan Besprechung der Übungsaufgaben Einschub: Self Joins (relevant fürs Praktikum) Dynamische Intergritätsbedingungen, das Trigger - Konzept von Oracle Prozedurale Erweiterungen,

Mehr

Der SAS DataStep und die Prozedur SQL. 2014 Cellent Finance Solutions GmbH 05.06.2014 Seite: 1

Der SAS DataStep und die Prozedur SQL. 2014 Cellent Finance Solutions GmbH 05.06.2014 Seite: 1 Der SAS DataStep und die Prozedur SQL 2014 Cellent Finance Solutions GmbH 05.06.2014 Seite: 1 Zahlen und Fakten auf einen Blick Firmensitz: Geschäftsstellen: Branchenerfahrung: Umsatz: Anzahl Mitarbeiter:

Mehr

Software Echtzeitverhalten in den Griff Bekommen

Software Echtzeitverhalten in den Griff Bekommen Software Echtzeitverhalten in den Griff Bekommen B.Sc.Markus Barenhoff [www.embedded-tools.de] Dr. Nicholas Merriam [www.rapitasystems.com] Übersicht Reaktionszeit Nettolaufzeit Optimierung Worst-Case

Mehr

Forefront TMG Scripting mit VBScript und Powershell

Forefront TMG Scripting mit VBScript und Powershell Forefront TMG Scripting mit VBScript und Powershell Forefront TMG kommt wird mit einer Read Only Powershell Unterstuetzung geliefert. Das folgende Bilderbuch zeigt einige Powershell-Befehle, sowie die

Mehr

2.3.1 Einleitung Einfache Sortierverfahren Höhere Sortierverfahren Komplexität von Sortierverfahren Spezielle Sortierverfahren

2.3.1 Einleitung Einfache Sortierverfahren Höhere Sortierverfahren Komplexität von Sortierverfahren Spezielle Sortierverfahren 2.3 Sortieren 2.3.1 Einleitung 2.3.2 Einfache Sortierverfahren 2.3.3 Höhere Sortierverfahren 2.3.4 Komplexität von Sortierverfahren 2.3.5 Spezielle Sortierverfahren 1 Selection-Sort Idee: Suche kleinstes

Mehr

Einkommensaufbau mit FFI:

Einkommensaufbau mit FFI: For English Explanation, go to page 4. Einkommensaufbau mit FFI: 1) Binäre Cycle: Eine Position ist wie ein Business-Center. Ihr Business-Center hat zwei Teams. Jedes mal, wenn eines der Teams 300 Punkte

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 4 (7.5.2014) Asymptotische Analyse, Sortieren IV Algorithmen und Komplexität Erfahrungen 1. Übung C++ / Java sind komplett ungewohnt Struktur

Mehr

GRIPS - GIS basiertes Risikoanalyse-, Informations- und Planungssystem

GRIPS - GIS basiertes Risikoanalyse-, Informations- und Planungssystem GRIPS - GIS basiertes Risikoanalyse-, Informations- und Planungssystem GIS based risk assessment and incident preparation system Gregor Lämmel TU Berlin GRIPS joined research project TraffGo HT GmbH Rupprecht

Mehr

Programmier-Befehle - Woche 10

Programmier-Befehle - Woche 10 Funktionen Rekursion Selbstaufruf einer Funktion Jeder rekursive Funktionsaufruf hat seine eigenen, unabhängigen Variablen und Argumente. Dies kann man sich sehr gut anhand des in der Vorlesung gezeigten

Mehr

Oracle Forms von A -Z

Oracle Forms von A -Z Oracle Forms von A -Z Source Code Analytics Andreas Gaede www.pitss.com Copyright 2012 PITSS GmbH Source Code Analytics Agenda Source Code Analytics Warum Software Qualität? Ist Software Qualität messbar?

Mehr