1 / 46

Software Measurement - Introduction

Modern Aspects in Software Engineering 5. Software Measurement Prof. Dr.-Ing. habil. Reiner Dumke Otto-von-Guericke-Universität Magdeburg Fakultät für Informatik, Institut für Verteilte Systeme AG Softwaretechnik http://ivs.cs.uni-magdeburg.de/sw-eng/agruppe/. Software Measurement - Introduction.

Download Presentation

Software Measurement - Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modern Aspects in Software Engineering5. Software MeasurementProf. Dr.-Ing. habil. Reiner DumkeOtto-von-Guericke-Universität MagdeburgFakultät für Informatik, Institut für Verteilte SystemeAG Softwaretechnikhttp://ivs.cs.uni-magdeburg.de/sw-eng/agruppe/

  2. Software Measurement - Introduction Measurement:

  3. Software Measurement - Introduction Software Measurement: „…is the process by which numbers or symbols are assigned to attributes of entities in the real world in such a way as to describe them according to clearly defined rules.“ (Fenton, 1991)

  4. Software Measurement - Introduction Software Metrics: „… are used to characterize the essential features of software quantitatively, so that classification, comparison, and mathematical analysis can be applied.“ (Conte, 1992)

  5. Software Measurement - Introduction • Questions: • the size of a program • the usability of a software system • the performance of a reactive system • the estimation of the development costs • the evaluation of the programmer experience • the realibility of an embedded system • the productivity of a software developer

  6. Software Measurement - Introduction Software metrics example: trend analysis Cost trends development effort

  7. Software Measurement - Introduction • Software metrics example: rules of thumb • One dollar software development leads to two dollar maintenance • 1 KLOC professional software includes 3 errors • productivity of a programmer: 250 LOC/month • Y2K migration: 1500 LOC/month

  8. Software Measurement - Introduction • Software metrics example: formulas • Doc pages = 0.0347 * LOC0.93 • program complexity = #decisions + 1 • current effort = total_effort/(total_time2 * edt/2) • readability = 206.85 – 0.846 word_length – 1.105 sentences_length

  9. Software Measurement - Introduction • Software metrics example: metrics • code metrics (Halstead, LOC) • flow graph metrics (McCabe, depth of nesting) • call graph metrics (Henry-Kafura, coupling) • structure metrics (levels, entropy) • etc.

  10. Software Measurement - Introduction Halstead Metric:

  11. Software Measurement - Introduction Halstead Metric:

  12. Software Measurement - Introduction Halstead Metric:

  13. Software Measurement - Introduction Flow graph metrics - Dijkstra structures

  14. Software Measurement - Introduction Object-oriented Metrics by Chidamber/Kemerer

  15. Software Measurement - Introduction Current Situation in Software Measurement

  16. Software Measurement - Introduction Current Situation in Software Measurement

  17. Software Measurement - Introduction Current Situation in Software Measurement

  18. Software Measurement - Introduction Current Situation in Software Measurement

  19. Software Measurement - Introduction Current Situation in Software Measurement

  20. Software Measurement - Introduction Current Situation in Software Measurement

  21. Software Measurement - Introduction Investigations in Software Measurement

  22. Software Measurement - Introduction Investigations in Software Measurement

  23. Software Measurement - Introduction Investigations in Software Measurement

  24. Software Measurement - Measures Horst Zuse (1990): Software measures based on the measurement theory are founded in a scale which defines an homomorphism between a numerical relative and an empirical relative in order to measure based on units.

  25. Software Measurement - Measures

  26. Software Measurement - Measures Software metrics Software measures Software measurement Measurement based controlling

  27. Software Measurement - Measures Goal Question Metric (GQM):

  28. Software Measurement - Measures Goal Question Metric (GQM):

  29. Software Measurement - Measures Goal Question Metric (GQM):

  30. Software Measurement - Measures ISO 15939 Software Measurement Standard

  31. Software Measurement - Measures Measurement Framework: CAME

  32. Software Measurement - Measures Measurement Framework: Choice

  33. Software Measurement - Measures Logiscope Tool: . . . Analyzability: committed(aif) -> 1 . . . committed(RECU) -> 1 1 2 3 4 5 6 Empirical method ?!

  34. Software Measurement - Measures FLIGHT QUALITY = Average speed Intervall scale + average age of the crew Nominal scale + index of satisfaction (potentiell) Ratio scale + average temperatur ( C) Ratio scale + typ of the airplane - #air holes Ordinale scale - #passengers/capacity

  35. Software Measurement – Measures LOC(P1 ∘ P2) = LOC(P1) + LOC(P2), LOC((P1 ∘ P2) ∘ P3) = LOC(P1 ∘ (P2 ∘ P3)) = LOC(P1) + LOC(P2) + LOC(P3), LOC(P1 ∘ P2) = LOC(P2 ∘ P1), for LOC(P1)  LOC(P2) concludes LOC(P1 ∘ P3)  LOC(P2 ∘ P3), exists a number n so that LOC(P1)  LOC(P2) and LOC(P3) > LOC(P4) leads to LOC(P1 ∘ nP3)  LOC(P2 ∘ nP4). M(P1 ∘ P2) = M(P1) + M(P2), M((P1 ∘ P2) ∘ P3) = M(P1 ∘ (P2 ∘ P3)) = M(P1) + M(P2) + M(P3), M(P1 ∘ P2) = M(P2 ∘ P1), for M(P1) M(P2) concludes M(P1 ∘ P3) M(P2 ∘ P3), exists a number n so that M(P1) M(P2) and M(P3) > M(P4) leads to M(P1 ∘ nP3) M(P2 ∘ nP4). LOC(P) [Maintenance Unit]

  36. Software Measurement – Measures

  37. Software Measurement – CAME tools

  38. Software Measurement – CAME tools

  39. Software Measurement – CAME tools

  40. Software Measurement – CAME tools

  41. Software Measurement – CAME tools Palm based measurement:

  42. Software Measurement – CAME tools The LOC Agent (as Aglet)

  43. Software Measurement – CAME tools

  44. Software Measurement – CAME tools

  45. Software Measurement – CAME tools

  46. Questions, Remarks !!!

More Related