New Challenges in Software Reiner R. Dumke Otto-von-Guericke Universität Magdeburg http://ivs.cs.uni-magdeburg.de/sw-eng/agruppe/ http://www.smlab.de
Next Challengens in Software 0. 0. Our Team Agenda 1. 1. Software Metrics 2. 2. Software 3. 3. Open Problems and New Challenges
Our Team- Team Leader the world of mainframe computer Reiner R. Dumke Publications in software generation Dr. Dumke, 1980 orientation to software metrics general Chair of European Conference...
Our Team Members & Partners Team external PhD s Partners
Our Team - Teaching Programming Concepts (AspectJ, Prolog, Haskell) Formal Specification (LOTOS, Z) Web Engineering Software Engineering http://ivs.cs.uni-magdeburg.de/ sw-eng/agruppe/lehre/ Programming (C++/Java) V&V Compiler Constrcution Distribted System Development (CORBA) Performance Engineering Service Engineering Agent-oriented Software Engineering (JADE) Component-based Software Engineering (EJB) Software Infrastructures (Server Farms, P2P, Grids) Software Quality Management
Our Team - Education Teaching in Cuba PhD Seminars in Idaho Industrial courses Presentation Skills in Seminars Awards for Diploma Thesis
Our Team - Research Uni Partners Communities GI-Fachgruppe 2.1.10 Software-Messung und -Bewertung http://ivs.cs.uni-magdeburg.de/ sw-eng/agruppe/forschung/ Industrial Partners 7
Our Team - Communities Project areas: models and paradigms infrastructures and cockpits Risk analysis Quality assurance in automotiv software Efficiency in e-business systems etc. PhD ceremonies Conference discussions 8
Our Team - Publications 9
1 Software Metrics - Motivation obviously: To measure is to know. (Maxwell) A science is a mature as its measurement tools. (Pasteur) You cannot control what you cannot measure. (DeMarco) Not everything that counts can be counted, not everything that is counted counts. (Einstein) otherwise: Our inability to actually measure knowledge means that much of our metric process is built on a foundation of sand. (Amour) Software metrics should be easy to use and easy to understand. How many metrics should be used? 10
1 Software Metrics as Counting Manhattan Metric: d(p,p(i))= x-x(i) + y-y(i) as car navigation index in a city Defect Density: dd = #components_with_defects / #components MTBF: Mean Time between Failure, MTDD: Mean Time between Disclosure and Diagnosis, MTDR: Mean Time between Diagnosis and Repair, MTFD: Mean Time between Failure and Disclosure, MTFR: Mean Time between Failure and Repair, MTTF: Mean Time to Failure. 11
1 Software Metrics as Evaluation e. g. OO Metrics C&K: WMC (weighted methods per class) DIT (depth of inheritance tree): Vererbungsbaumes bis NOC (number of children) Response time evaluation: CBO (coupling between object classes) RFC (response for a class) LCOM (lack of cohesion) 12
1 Software Metrics as Approach Process level: CMMI (Capability Maturity Model Integration) Product size COSMIC Full Function Point Time of development: SLIM (Software Lifecycle Management) 13
1 Software Metrics as Formal Calculus McCabe Fenton/Pfleeger Whitty Zuse Baudry Khoshgoftaar/Munson Allen Chapin Structure-Based Approaches Information-theoretic Approaches Axiomatic Approaches Prather Zuse Poels Rule-Based Approaches Hausen Jacobi/Cahill Shepperd Hastings/Sajev Algebraic Approaches Whitmire Halstead Boehm Ejiogu Albrecht Functional Approaches Putnam Peters/Parnas Munson Formal Approaches Statistics Evanco/Lacovara Dao Han Juristo Singpurwalla Kitchenham Lei Dumke/Hanebutte Shneidewind Pandian Wohlin 14
1 Problems with Software Metrics Metrics as counting: Thresholds Chosen intervals Maximum, minimum Parts/distributions Metrics and statistics: Typical mistakes: Scale type errors Percentage failures Only few statistical relevance Incorrect statistical distributions 15
1 Problems with Software Metrics Flight quality = Ratio scaled Average speed + Average age of the crew + Satisfaction index + Average temperature ( C) + Typ of airplane Interval scaled Nominal scaled (potential) Ratio scaled Ordinal scaled - #(Turbulences) - #(Seats)/ #(Passengers) 16
2 Software infrastructures Integrated measurement process process Measures Metrics 17
2 Software as Standard ISO 15939 Requirements for Information Needs Technical and Management Process User Feedback Information Products Establish & Sustain Commitment Commitment Plan the Process Core Process Planning Information Perform the Process Evaluate Information Products & Performance Measures Experience Base Improvement Actions Evaluation Results 18
2 Software as Methods methods controlling improvement experimentation estimation assessment referencing modelling measurement analysis evaluation application phases supports visualization prediction pred. visualization pred. visualization experience 19
2 Software as Areas
2 Software as Homomorphism
2 Software Systems MS = (M MS, R MS ) = ({G, A, M, (Q, V, U), E, T, P}, R MS ) Goals Personnel Artefacts Tools Methods Quantities Values Units Experiences
2 Software Processes ingredients output results repercussions resources
2 Software Frameworks Declarative Framework of Zuse Zuse: A Framework of Software DeGruyter Berlin 1998
2 Software Frameworks Declarative Framework of ISO 15939 Requirements for Information Needs Technical and Management Process User Feedback Information Products Establish & Sustain Commitment Commitment Plan the Process Core Process Planning Information Perform the Process Evaluate Information Products & Performance Measures Experience Base Improvement Actions Evaluation Results Metrics News, 6(2001)
2 Software Frameworks Operational Framework of ISO 15939 artefactbased operation quantificationbased operation valuebased operation experiencebased operation artefacts/objects Product (architecture, implementaion, documentation) Process (management, life cycle, CASE) Resources (personnel, software, hardware) models Flow graph Callgraph Structure tree Code schema etc. Scale types, statistics evaluation Metrics Question Goal correlation estimation adjustment analysis transformation visualization interpretation Answer Goal attainment calibration etc. goals quality costs effort grade etc. Solingen/Berghout: The Goal/Question/ Metric Method. McGraw Hill 1999
2 Software Frameworks Operational Framework of Six Sigma artefactbased operation quantificationbased operation valuebased operation experiencebased operation artefacts/objects Product (architecture, implementaion, documentation) Process (management, life cycle, CASE) Resources (personnel, software, hardware) models Flow graph Callgraph Structure tree Code schema etc. Scale types, statistics correlation Error deviation estimation adjustment calibration evaluation analysis transformation visualization interpretation etc. goals quality costs DMAIC model effort grade etc. DMAIC: define, measure, analyze, improve, control Tayntor: Six Sigma Software Development. Auerbach Publ. 2003
2 Software Improvement Declarative and Operational Framework of E4 Ebert/Dumke: Software, Springer Publ. 2007
2 Software Improvement Participants at the E4 Framework Harry Sneed ANECON Wien David Gustafson Kansas Sate University Alain Abran ETS Montreal Manfred Bundschuh AXA Colognia Robert Glass University Brisbane David Card SPC Florida Luigi Bulgione SEMO Rom Charles Symons COSMIC Leader Horst Zuse TU Berlin Peter Liggesmeyer IESE Kaiserslautern Andreas Schmietendorf FHW Berlin Falk Uebernickel University of Regensburg Ruediger Zarnekow TU Berlin Jochen Scheeg T-Systems Ton Dekkers ISBSG Chair Marek Leszak Lucent Nuremberg Dieter Stoll Alcatel Nuremberg
2 Software as Cost Estimation Founders of the COSMIC 1998 Charles Symons SM Ltd, UK Prof. R. Dumke Uni Magdeburg since 2003 the COSMIC FFP Standard 19761
2 Software as e- e- Communities e- Service e-quality Service e- Consulting e-experience / e-repositories e-learning e-certification
2 Software as e- Using GQM approach in the SML@b Using our Java measurement service in the SML@b Using ISBSG measurement repository Using CMMI evaluation Using our process evaluation Web applications for process improvement Using the Web Service
2 Paradigm-Based Software Software Paradigms Intentions
2 Paradigm-Based Software Components vs. object oriented Agent-based systems vs. object oriented
2 Software and Causal Networks Metrics-Based Causal Relationships
2 Software and Causal Networks Definition: The CNPM Approach and First Results Causal Network based Process Model (CNPM)
2 Software and Causal Networks CMMI-SP 1.1 Establish the Strategic Training Needs (correction)
2 Software Process Levels Case-Based Evaluation of Process (MP)
2 Software Process Levels Software process establishment (SPE) Process improvement model (PIM) Empirical process model (EPM) Software process measurement model (SPM)
3 Open Problems and Next Challenges Missing books of Software about general measurement and evaluation processes for software measurement education about different software paradigms in native languages and your intention!
3 Open Problems and Next Challenges More activities as Web-based measurement services Web-based measurement repositories Community supports and organisation Proactive measurement initiatives and your intention!
3 Open Problems and Next Challenges Higher Complexity of Processes!
3 Open Problems and Next Challenges Can we built a World Wide Experience Repository?
3 Open Problems and Next Challenges Can we built a Set of Measures?
Open Problems and Challenges Thanks for your attention! http://www.smlab.de