0% found this document useful (0 votes)
20 views73 pages

PDF - INF I-CHAP 02-Software-Engineering Part 04-EN

Uploaded by

mori.eshkiki
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views73 pages

PDF - INF I-CHAP 02-Software-Engineering Part 04-EN

Uploaded by

mori.eshkiki
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 73

Lecture

„Engineering Informatics I“
WS 2024/2025

Chapter 02: Software Engineering for Engineering Applications, Part 04

2.4 Calculation of software projects 2.4.3. Recording and survey methods


2.4.3.1 Survey
2.4.1 Introduction 2.4.3.2 Observation
2.4.2 Basics of estimation 2.4.3.3 Self-writing
2.4.2.1 Effort estimation methods 2.4.3.4 Multi-moment recording
2.4.2.1.1 Expert estimate 2.4.4 Measurement of software product size
2.4.2.1.2 Three-point estimation method 2.4.5 The software equation for effort estimation
2.4.2.1.3 Delphi estimation method 2.4.6 The Function Point Method
2.4.2.1.4 Planning Poker® 2.4.7 COCOMO I + II
2.4.2.1.5 Analogy method 2.4.8 Early warning systems
2.4.2.1.6 Percentage method

04.10.2024 | Department 13 | Institute of Numerical Methods and Informatics in Civil Engineering | Prof. Dr.-Ing. Uwe Rüppel | 1
2.4.1. Introduction: Cost increase of large-
scale software projects in Germany

Toll Collect truck toll system


An estimated 6.9 billion euros in
additional costs, i.e. 11.5 times as
originally planned for the project,
was caused by the federal
government's truck toll system.
This also includes the loss of
revenue due to the delayed start of
the toll.
Cost increase 1150% !

http://www.spiegel.de/wirtschaft/soziales/grossprojekte-in-deutschland-die-top-und-flop-ten-a-1033977.html

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 2
2.4.1. Introduction: Cost increase of large-
scale software projects in Germany

FISCUS tax software for tax offices


A real disaster was the attempt by the federal state and
the federal government to develop a common software
for tax administration. Started in 1993, the project finally
failed in 2005. FISCUS caused additional costs of 4.6
billion euros and thus exceeded the budget by 11.5
times. The reason for this was not only technical
problems, but also politically caused problems.
With an average of 394 percent, projects from the public IT
sector have the highest cost increases and also cause
many billions of euros in additional costs in absolute
figures.
Cost increase 1150% !
http://www.spiegel.de/wirtschaft/soziales/grossprojekte-in-deutschland-die-top-und-flop-ten-a-1033977.html

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 3
In comparison: Airport BER (Opening
31.10.2020)
Billion EURO
Quelle:
https://de.statista.com/s
tatistik/daten/studie/245
914/umfrage/kosten-
des-flughafens-berlin-
brandenburg/

+ 314 % (excluding interest)


9 years late

Year

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 4
Cost increase of large-scale software
projects

For large-scale IT projects (similar to


large-scale construction projects), the
calculation of costs is a particular
challenge!

Possible reasons:
Long running times
Complexity
Unclear and increasing requirements
Inadequate planning
Unsuitable IT approaches
Insufficient cost calculation

-> Software development is a balance act


between functionality and costs

https://www.toptal.com/agile/software-costs-estimation-in-agile-project-management

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 5
Introduction

Offer calculation:
Effort estimation
Use previous measurements of product sizes, efforts and project
durations
Project controlling
Measurement of effort
Residual cost estimation
Measuring change frequency
Product Controlling
Measuring product size
Measuring error frequency
Measuring other quality parameters

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 6
Introduction (2)

Project review
Determination of product size, effort and project duration
Calculate productivity
Recording the last measurements from product controlling
Assessment of product quality based on error rates and other quality
parameters

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 7
Introduction
- Time and cost

Question: How long does it take and how much does it cost?

Procedure:
- Use of empirical values -> documentation of completed projects
- Estimation as a continuous iterative approach -> gradual approximation
- Disassemble the product into concrete, handy parts -> manageable =estimable
- Define tolerance margin -> how exactly do we have to estimate (+/- X%) ?
- Involve the developers in the estimation process

Basis of all procedures:


Find the optimum between system scope/time constraints and
effort/productivity/duration.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 8
2.4.2 Basics of estimation

Macro Estimation
Comparable (!?) "whole" projects based on experience
Comparable project attributes: technology, function, GUI, team, type of order, ...
Micro Estimation
Decomposition of the project into comparable (!?) parts
Sources for errors:
The disassembly is not complete. Something has been forgotten.
-> Estimate with multiple estimators
-> Different decompositions
-> Comparative Macro Estimation
Guessing the size of a part is too uncertain, the analogy is not good
-> With multiple estimators
-> Check for the independence of the areas valued
The total size is not an additive function of the individual quantities
-> Validate with macro estimation

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 9
2.4.2.1 Effort estimation methods
2.4.2.1.1 Expert estimation

Approach:
Expert estimation is a qualitative forecasting method that uses the knowledge of a selected
group of people. Due to their knowledge and experience, they have specialist knowledge.
The experts are prompted to predict the estimates subjectively. An aggregated overall
forecast is created from the available individual forecasts.
Process:
1. Project manager plans and defines the work packages of the unit to be estimated.
2. The project manager selects the appropriate experts.
3. The permissible limits of the estimation deviations from the mean of each estimate shall be
determined jointly by the project manager and the experts.
4. Each expert estimates the effort for each work package individually.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 10
Expert estimation

5. The estimates per work package shall be calculated arithmetically.


6. If at least one of the estimates deviates from the mean value in an order of magnitude
exceeding the agreed permissible limit, the corresponding work package must be broken down
again into smaller work packages.
7. For these newly formed work packages, the estimation process must be carried out anew until
the deviations no longer exceed the set limit.
8. The mean value is taken as an estimate of the effort of a work package.
Rules:
1. The prerequisite is the planning of the work packages.
2. By means of the expert estimation, the effort values for the individual work packages are
estimated as accurately as possible. No scheduling and capacity planning is carried out.
3. In order to make the estimate comprehensible, it is recommended that a protocol be made of
the assumptions for the individual work packages.
Method strongly influenced by subjective influences, partly difficult to understand.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 11
2.4.2.1.2 Three-point estimation method
(PERT estimation)
https://www.youtube.com/watch?v=W03VvNed8Xs

1:56

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 12
2.4.2.1.2 Three-point estimation method
(PERT estimation)

Approach: Developers are always too pessimistic to create a buffer for


themselves. This is to be compensated by the three-point approach.
Divide the product into individual work packages
Give three estimates for each work package:
Optimistic (if all goes well) Relative
probability of
Pessimistic (when everything goes badly) occurrence

Most likely (which is considered as realistic)


Three point estimation 3P (Beta distribution)
3P = (O + 4*M + P) / 6 Duration
(the calculated value is slightly worse than
the realistically estimated value)
Standard deviation: S
S = (P – O)/6 Image: Frank Michel
https://jendryschik.de/webl
Overall uncertainty = SQRT(Sum S) og/2010/03/31/spiel-mit-
den-wahrscheinlichkeiten

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 13
2.4.2.1.3 Delphi estimation method

2:35

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 14
Delphi estimation method: Workflow (1)

1. Identify the issue and objective


It is important to define the issue you are trying to solve and what you want to achieve
by using the Delphi method. Make sure that you know what you are trying to
forecast.
2. Choose a group of experts and a facilitator
The experts can be individuals who are internal or external to the organization. The
facilitator should take a neutral position and be someone with experience with
research and data collection.
3. Round one questionnaire
The moderator provides the first questionnaire for the experts. The type of questions in
round one are usually open-ended, as it allows experts to brainstorm their ideas.
The moderator collects all the answers from the questionnaire and hands out a
summary report of answers to the experts. In the summary report, the experts’
identities remain anonymous to encourage them to express their opinions freely.

https://corporatefinanceinstitute.com/resources/knowledge/other/delphi-method/

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 15
Delphi estimation method : Workflow (2)

4. Round two questionnaire


The second questionnaire should be created by analyzing the answers that you observe from the
first round. Identify any similarities between answers and eliminate irrelevant content, so the
second questionnaire can go in the direction where there is consensus within the experts.
When the experts answer the second questionnaire, their opinions may remain the same, or they
may change their opinions after reading the summary report from the first round and
understanding the other experts’ opinions. After the completion of the second questionnaire, the
moderator hands out a second summary report of answers to the experts.
5. Round three questionnaire
Proceed to the third round with the same idea as the second round. The third questionnaire should
be created by analyzing answers from the second questionnaire. The experts will answer the third
questionnaire based on their opinions from the summary report of answers in the second round.
You may continue to go through additional rounds of questionnaires or choose to stop here if you
feel like you’ve reached enough consensus between the experts, and all their forecasts agree with
each other.
https://corporatefinanceinstitute.com/resources/knowledge/other/delphi-method/

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 16
Delphi estimation method: Workflow (3)

There is also an anonymous variant


in which the experts do not know
each other in order not to influence
each other mutually.

Pinterest.com

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 17
2.4.2.1.4 Planning Poker® (Application in
SCRUM) https://www.youtube.com/watch?v=MrIZMuvjTws

5:31

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 18
2.4.2.1.5 Analogy method

Approach:
The basis for the analogy method is formed by already completed projects. For the
project to be estimated, a performance profile is created that is compared with the
profiles of the projects already completed. In doing so, they build on previous
experience and try to point out deviations caused by other prerequisites and
requirements and to modify the results of the completed project accordingly.
Workflow:
1. Search for already completed, similar projects.
2. Identify the new performance profile.
3. Identify he discrepancies between the new and the already completed project.
4. Evaluate the deviations and determination of the expected project costs.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 19
Analogy method

Rules:
1. In principle, the experience of similar projects is used. The actual effort (actual
values) of a project already realized at an earlier point in time is used for the effort
estimate.
2. The prerequisite is therefore always the existence of comparable projects and the
existence of the effort for the comparison projects.
3. With the degree of comparability (!?), the quality of the estimate increases.

The advantage is the low expenditure of time.

However, since this method is based on values from the past, new technologies and
techniques, new system components or new environments require the verification of
comparability ("do not compare apples with pears!").

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 20
2.4.2.1.6 Percentage method

Approach:
The percentage method assumes that the total expenditure of a project results from the
addition of the expenses in the individual phases of a phase concept and that the expenses
in the individual phases are in a fixed relationship to each other.
The percentage of a phase in the total costs of a project can be determined e.g. from a
statistical analysis of completed projects. If the costs for a phase are known, the total costs
can be determined. In the case of newly estimated projects, an estimate of the total costs is
made when the costs for a phase have already been incurred and interpolates e.g. via the
percentage share.
The total effort can therefore be predicted in two ways:
• A phase of the project is completed and the total effort is extrapolated from the effort incurred
there.
• A phase is estimated in detail and the expected total effort is inferred from this partial effort.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 21
Percentage method

Workflow:
1. Determination of the relevant expenses per phase.
2. The distribution used shall be the same as that of comparable projects.
3. Assign the effort required for the rough design phase of the project to be estimated.
4. If occasionally cross-phase work is carried out, then it is necessary to make an exact
demarcation of the effort to the phases for this estimation method.
5. Extrapolate the effort for the remaining phases.

Rules:
1. It should not be attempted to estimate the information that does not exist for this purpose, but
rather to strive to document such information in principle and to use and systematically
evaluate the amount of information available. An exact phase delimitation facilitates the
application of the method.
2. However, the prerequisite is the average distribution of the effort over the individual phases.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 22
2.4.3 Recording and survey methods
2.4.3.1 Survey
https://www.youtube.com/watch?v=mdVWbuffdNY

5:17

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 23
2.4.3.1 Survey
Approach:
The survey is based on the assumption that the individual knows his problems better
than outsiders. The survey gives employees the opportunity to describe grievances,
ideas, requirements, experiences or their symptoms from their point of view.
Forms of survey:
1. Questionnaire or opinion poll
The person to be interviewed independently fills out a questionnaire according to
previous Instructions. The questionnaire is distributed to all employees of the targeted
departments and is intended to provide information, e.g. about how they feel about
their relationship with the company in certain questions. Regular surveys also show
changes in the employee mentality and the working atmosphere and indicate problems
in interpersonal relationships or in the organization in good time.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 24
Survey

2. Interview or oral questioning


The respondent answers verbally to questions that are read out or freely formulated by the
interviewer. Interviews are conducted with a representative selection of employees and
allow a more detailed discussion on important aspects. Interviews usually do not allow
quantitative or statistical conclusions. However, the results are qualitatively far more
valuable than the findings gained from the questionnaires.
3. Direct line
The "direct line" is a possibility of voluntary interview. The respondent answers questions
asked through telephone. The advantage of this method lies in the manageability of the field
situation and thus also in the better control of the interviewers. Every employee can
comment on a - possibly given - point on the phone or simply explain what causes him
problems, what he is satisfied with and where he has concerns. Since this method provides
a wealth of valuable information, but does not always work reliably, it serves primarily as a
thematic stimulus for questionnaires or interviews.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 25
Survey

4. Other forms
In addition to written inquiries to the management, this includes discussions between members
of the top management and employees as well as open letters in company publications. With
these possibilities of the employee survey, facts can also be analyzed.
Every survey is a sensitive social situation! (-> Be careful of not influencing the
answers)

Degree of standardization:
1. Non-standard survey: The respondent is given a framework topic and has the opportunity to
express himself freely. It is up to you whether topics are deepened or new topics are added.
A non-standardized survey has a purely exploratory function and is therefore usually used
for object exploration.
2. Semi-standardized survey: The thematic scope is defined, but the design of the question
sequence and formulation is optional. Used mainly in the reconnaissance phase.
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 26
Survey

3. Standardized survey: In a standardized survey, the wording and order of the questions are
predetermined. As a result, the comparability and quantification of the results is possible and
a higher reliability is given.
Type of survey situation:
• oral questioning
• written survey
• telephone questioning (without gestures, facial expressions -> no body language "readable")
Number of respondents:
• Individual survey
• Group survey
Frequency/scope of the survey:
• - Cross-sectional survey: i.e. one-time survey of a study population
- Longitudinal survey: i.e. repeated interviews with a study population

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 27
Survey

Workflow:
1. Problem designation as formulation of the problem to be investigated into concrete
questions, i.e. demarcation of the problem, proof of the need for explanation, etc.
2. Designation of subject matter as rough indications for this phase: e.g. the time
periods, the groups of "phenomena" or persons to be recorded as well as the areas
that are accessible to a survey, i.e. the choice of the field situation.
3. Conducting the survey: Depending on the subject area, different methods are
considered. Once the survey instrument, e.g. a questionnaire, has been selected and
concretized, it is subjected to a suitability test (pretest) in the next step. When carrying
out and evaluating the pretest, the survey instrument must be examined for its
reliability and validity, the comprehensibility of questions, the uniqueness of the
selected categories and the concrete survey problems. After the correction of the
questionnaire, which may be necessary, the main survey is finally carried out.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 28
Survey

4. Analysis of the survey results: After data collection, evaluation methods are used. This
includes all work related to the preparation, analysis and interpretation of the survey
results.
5. Use of results: In order for the collected results to also have an "external impact" - in
the sense of contributing to problem solving - it is necessary to summarise the results
in a report and make them available to the public.
Rules:
• Systematic preparation of what you want to ask
• Intention/purpose of the survey
• The theory-based control of the entire survey to ensure the use of the survey as a
scientific method.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 29
Survey

• The control of the individual steps to determine to what extent the survey results have been
influenced by (undesirable) conditions
Notes on the process and content:
• The survey should be as simple as an everyday conversation
• Certain formulations (foreign words, abstract terms, double negations, etc.) must be
avoided.
• Suggestive formulations should also be avoided.
• Terms such as "frequent", "rare" etc. are relative. Therefore, the respondent must
be given a frame of reference.
• The questions should be short and concrete.
• The questions should be formulated neutrally and not hypothetically.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 30
Survey

Preconditions:
• Interviewers and respondents must be motivated
• The survey process must be able to be controlled cognitively and
• Both must be able to expect that they will not suffer any
disadvantages or negative consequences from their participation in
the survey process.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 31
+-

Advantages of the survey are:


• Identification of qualitative problems.
• Valuable starting point for a more thorough study.
• The problems detected cannot be detected with the usual control and analysis tools.
• Employees (even those who are not normally addressed) are motivated to contribute to problem solving.
• A large number of people, depending on the scope of the survey and the willingness of the respondents,
cooperate and provide a lot of information.
Disadvantages:
- Individualism of the approach, i.e. the statements of individuals allow only very limited conclusions about
organizations etc.
- Risk of hasty conclusions based on surveys without statistical validity
- High time and effort expenses.
- Involvement of employees may raise hopes that can hardly be fulfilled.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 32
Survey conclusions

 The survey is not suitable in situations in which the respondent


is uncertain: e.g. in the context of the reorganization of a
company, since the employee will usually show a different
behavior due to the feeling of "surrendering" and give different
answers than in situations where his creativity and ideas are in
demand.

 The survey rarely reveals the "truth" about a situation,


behavior, person, etc., but it still provides superiors, project
teams, etc. with valuable information to complement their own
view of the changes in companies and boundary conditions
relevant to project calculation.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 33
2.4.3.2 Observation

Basic aspects:
Position of the observer in the observation process
Degree of structuring of observation
Indirectness (e.g. video recordings) or immediacy of observation
Recognizability of the observation as such for those concerned
Place of observation
Form:
1. Participant and non-participatory observation
As part of the participating observation, the observer assumes the role of the
member in the observation process in addition to his actual role. It is therefore
part of the social fabric to be investigated. The prerequisites must be met:
a) the accessibility of the observation field

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 34
Observation

b) The role must be designed in such a way that the usual interactions are not
influenced.
c) The observer must not integrate too much into the structure of action, otherwise
he no longer has a distance to the object of observation.
2. Open/overt and covert observation
In open/overt observation, in contrast to covert observation, the observer
communicates his activities to those affected. In open observation, the people to
be observed know the purpose of the researcher's presence. Therefore, there is
also the risk that, due to the knowledge of the observation, there may be
behavioral changes, e.g. deviations from the usual behavior, in the observed
(reactivity).
Covert observation has legal problems.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 35
Observation

3. Structured and non-structured observation


In structured observation, a detailed observation scheme is used. This
scheme roughly corresponds to the questionnaire in the context of a
survey. The observer records his observations in the predetermined
scheme. With an observation scheme, a systematic observation is
possible and thus the comparability of the results is ensured. Non-
structured observation is not based on an observation scheme. In most
cases, only a rough guide with central observation categories is used.
Non-structured observation is mainly used in the exploration of still largely
unknown fields.
4. Field and laboratory observation
E.g. building walls in a producing laboratory and on the construction site

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 36
Workflow

1. Preparation phase: rough definition of the task content and the workplace environment
2. Elaboration of an observation scheme: for example based on the 5 "W" questions (Who,
What, When, Where, How, Why)
3. Actual observation, which may include:
• the design of the workplace and its environment
• a scheme for the procedure of the executing employee
• the observation of several work cycles
• the breakdown of the work into individual steps
• a list of qualitative performance criteria
• the statistical recording of incidents, irregularities, etc.
4. Preparation and evaluation of the collected data: the collected results are subjected to a
statistical analysis and evaluation and then interpreted. On the basis of the evaluation,
consequences can then be derived.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 37
+-

Problems:
• The observer is embedded in his own cultural and social context and this influences
his ability to perceive ("you see what you want to see") - > subjective perception.
• Self-evident things are easily overlooked, e.g. punctuality is often taken for granted
that it is no longer logged at all.
• Psycho-physical factors can also influence perception and behaviour (e.g. listless,
tired or activity under observation).
Time-consuming
Advantages:
• The actual behavior is recorded and not only statements about it.
• Unconscious behavior such as facial expressions, gestures, etc. can be recorded.
• Observation also provides information about people who have a more limited ability
to verbalize (see survey).

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 38
2.4.3.3 Self-writing

Approach:
As part of the self-registration, all the desired information is collected by the
employees or those affected themselves and then entered by them in a
prepared form. The self-recording is always suitable as a survey technique if a
very large circle of employees is affected or if a small or medium-sized
company has only a few specially trained organizers. Self-write-ups are mainly
used to define the work content, to specify the time, to determine activities or to
evaluate one's own performance.
Workflow:
Self-write-ups can usually only refer to one or at least very little data. As a result,
they are only used for the identification of such facts that are clearly definable and
repetitive. A daily report/timesheet is a typical example of a self-write-up.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 39
Self-writing

Rules:
• Consent and preparation of the affected employees
• The affected employees need sufficient motivation and perseverance when
filling out the forms
• Employees must not feel like they have to surrender
+-:
+ A wealth of information is provided
+ Easy to evaluate (for digital forms)
- Filling out the forms is associated with great effort.
- The self-writing is reductionist and above all purely quantitative.
- The employees concerned may feel pressured and, e.g. may be prone to
deliberately making false statements if they see the survey as a productivity
control.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 40
2.4.3.4 Multi-moment recording

Approach:
Multi-moment images are based on a variety of sample observations to analyze
the current state of a person, department, etc. The multi-moment study is
therefore a sampling method that gives statements about the percentage
frequency and thus about the duration of permanently recurring processes or
variables of any kind. This method is therefore suitable for the analysis of
systems in which certain situations are repeated more or less often. Multi-
moment shots are e.g. very useful for job descriptions.

The purpose of multi-moment recordings is to suggest from a limited number of


observed cases (samples) to the totality of all events. Subject to certain rules,
the sample can provide a useful image of the basic population.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 41
Multi-moment recording

Workflow:
• Goal determination
• Definition of observation modalities
• Determination of the required number of observations and tours
• Determination of the route for the tour and the observation sites
• Setting up a time limit for the start of the tour
The schedule for the observation can be determined, for example, by means of a series of random
numbers between 1 and 60. Each randomly determined number then determines the respective time
span between the tours. If you draw the number 45, this means that there is a time span of 45
minutes between the beginning of tour X and Y. Start of the tour: 8 h 36; Random number 45 -> 9 h
21 = 8 h 36 + 45 min.
• Draft sample observation form
• Information of those affected, the works council, etc.
• Entry of the results in the form
• Evaluation of the results

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 42
Multi-moment recording

Rules:
• The persons to be observed must be informed about the meaning and purpose of
the multi-moment recordings.
• Those observed must not perceive the observations as a performance check.
• The observer must behave as discreetly as possible.
• The observed must not be disturbed in their "normal" workflow.
+ -:
+ Only a short time per sample -> many samples possible
+ Stochastically reliable results: Close to actual events.
Only visible activities and states
Artificial behavior under observation

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 43
2.4.4 Measurement of software product size

What can be measured?


Effort
Duration
Product Size:
Internal properties ("intrinsic", e.g. Lines Of Code (LOC); depending on the programming
language)
 Does that make sense? E.g. a software has 250 objects...
 Strongly dependent on the programming language (see Language Table)
 "Net LOC" = "Gross LOC" - Comment lines - Blank lines
 What is gross or net? For example 1 line for each statement or a statement over
several lines?
 LOC, SLOC: Lines Of Code, Logical Lines Of Code (not physical line counts)
 Functionality of the software: Function Points (FP, next slide)

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 44
Function Points
https://www.youtube.com/watch?v=wr7t-4LOb7Q

7:50

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 45
Function Points

Product size: external properties ("extrinsic", e.g. function points (FP))


Functionality from the user's point of view
How measurable and comparable?

Procedure:
Select the functions that are counted (effort rating with function points, (FP)).
- Transactional: inputs (input data); Outputs of report type (output data) and
online requests (queries)
- Data-based functions can be found at the interfaces (user files) to other
programs and internal files.

There are company-specific rules for evaluation that are based on


experience.

-> International Function Point Users Group, www.ifpug.org

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 46
Example for a Function Point Language Table
https://www.qsm.com/resources/function-point-languages-table

“ Environmental factors can result in significant variation in the source statements


per function point. For this reason, QSM recommends that organizations collect
both code counts and final function point counts for completed software projects
and incorporate this data into project estimates. Where there is no completed
project data available for estimation, we provide the following industry gearing
factor information (where sufficient project data exists):
* Average
* Median
* Range (low - high)
The gearing factor is simply the average number of new plus modified (Effective)
Source Lines of Code per function point in the completed project. Gearing
factors are calculated by dividing the effective code count for a completed
project by the final function point count. SLOC counts represent logical, not
physical line counts.”

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 47
Example for a Function Point Language Table
https://www.qsm.com/resources/function-point-languages-table

Average (mean) or the median? In a perfectly symmetrical


distribution of gearing factors, the average and the median will
be identical or very close. The average is obtained by summing
the gearing factors and then dividing by the number of gearing
factors included in that sum. Although its purpose is to measure
"central tendency", the average can be pulled up or down by
extreme data values (or outliers). The median, on the other
hand, is simply the data point that lies in the center of an
ordered list of gearing factors. One half of the data points will
lie above (and one half below) the median. When the data set
is skewed (biased either toward the high or low end by extreme
data values), the median may be a more accurate indicator of
the central tendency.
To find the mode, order the numbers lowest to highest and see
which number appears the most often.
average,
E.g. 3, 3, 6, 13, 100 = 3. The mode is 3 https://en.m.wikipedia.org/wiki/File:Visualisation_mode_median_mean.svg

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 48
Example for a Function Point Language Table
https://www.qsm.com/resources/function-point-languages-table

For
more
see link
above

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 49
Example for a rough estimation of FP: Widget
Points
• Only for GUI and input/output
programs
• 1 widget point = 2.28 +- 0.34
function points [Source:
Oestreicher]
• Input widgets: input field (also for
outputs), ComboBox, menu button,
radio button, normal button,
CheckBox, TextEditor, ....
• Descriptive widgets: label,
separator, grouping box, window, ...
• Composite widgets: notebook,
table, list, scroll bar, ...
• Menu: The menu itself and every
menu item in it.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 50
Example for counting Widget points

Approach: 1 widget point =~ 2 function points


-> count widget points
-> look in the Language Table -> LOC/FP per language -> LOC

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 51
Productivity

Intrinsic productivity:
IP = LOC/Time

Extrinsic productivity:
EP= FP/Time

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 52
2.4.5 The software equation for effort
estimate for projects with a high number of
employees
Software equation according to Putnam (1978)
Putnam [Putnam78] statistically analyzed a large number of juice products
projects in the seventies, first in the US Air Force, later in his company
QSM (Quantitative Software Management). He established a partly
analytical, partly empirical model between the three variables product size,
effort and duration. Source: itmipi.org

S = E * K1/3 * t4/3
With :
S = Product Size (Size), measured in [LOC]

K =Effort, measured in [Number of employees] * [Time]

t = Duration (Time), measured in [Time]

E = Technology Environment Factor) with the dimension


[LOC] *[Number of employees]1/3 * [Time]5/3

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 53
Software equation

This equation is derived analytically from a model


that describes the construction and reduction of the
project capacity over the duration of the project.
The main assumption of this model is that the
project staffing follows a Rayleigh distribution: The
shorter the project duration t, the steeper the project
staffing increases at the beginning, the higher its
maximum (see next slide).
It is important that a continuum approximation is
used, i.e. strictly speaking, the software equation
only applies in situations where the number of
employees is large.
It is not applicable to one-person projects (but
theoretically this is the most efficient)

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 54
Typical project occupation according to
Putnam

No. Rayleigh
Employees Distribution

(A continuous
probability
distribution)

The shorter the project duration t, the steeper the project staffing increases at the beginning, the
higher its maximum.
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 55
Software equation (2)

# The technology factor E should be constant in an organization with the same


development environment.
# The application of the SW equation is useful in cases where an estimate is to be
validated or, if the software scope S is known, an estimate is to be carried out.
# Dependence of the total effort on the duration of the project. In the third power, it is K
* t4 = const.
By differentiating you get dK / K = -4 dt / t.
A compression of the project duration by 1% requires a 4% higher effort!
-> speed is expensive !
# Reason: The planning of projects is usually very scarce in terms of resources: all
employees are 100% scheduled, tasks are no longer meaningfully divisible and there
are no waiting times on the critical path in the project.
# If earlier delivery is desired: only an economical solution - > scope of services.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 56
Basic assumption of the SW equation:
Project staffing according to Rayleigh
distribution
If the components of a two-dimensional random vector
are normally distributed and statistically independent,
then the amount is "Rayleigh distributed". This occurs,
for example, in a transmission channel used for radio
technology in mobile radio systems, if there is no direct
visual contact between the transmitter, such as a base
station, and the receiver, for example, a mobile phone.
The transmission channel impaired by the multipath
propagation over different, random reflections and
scatterings, for example on building walls and other
obstacles, can then be modeled as a so-called Rayleigh
channel with the help of the Rayleigh distribution.

The distribution of 10-minute mean values of wind


speed can also be described by a Rayleigh distribution.

Wikipedia.org

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 57
Rayleigh Distribution

A continuous random variable X is


called Rayleigh-distributed with The smaller x (e.g. the time), the more
parameters if it posses the greater is max. f(x) (e.g. Number of pers.
probability density: in the project)

f(x)

This results in the distribution


function;

Wikipedia.de

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 58
Example 1: SW equation for validating a
macro estimate

Prerequisite: The product size can be determined and the technology factor is
known.
Task: "From the project follow-up of project P1 it is known: To create the system
with 3600 function points in a new technology, 4500 effort hours were needed
from the analysis of customer requirements to delivery. The measured scope of
the delivered software was 50k LOC.
In Project P2, a larger system with the same technology is to be created. A
detailed plan is drawn up for P2 with many individual activities. Based on their
experience, the employees of P1 estimate the sum of the programming activities
to be three and a half times the scope, i.e. 175k LOC. To be on the safe side, the
calculator makes a surcharge of 25%. In addition, there are many individual
activities that are required by the larger project: subprojects with sub-project
managers, weekly project and sub-project meetings, multi-level software
integration, etc... Overall, these activities represent a 50% premium in P2. The
runtime of P2 is 50% greater than that of P1. Out of fear of underestimating the
budget, the calculator once again makes a safety surcharge of another 30%."

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 59
E.g. 1a: Validate estimation

Estimation: Approach based on the SW equation: Expenses are to be seen in relation to the
product size with "uncertainties" (estimation factors).
 K2/K1 = (S2/S1) x Fs (Estimation factor)
 K1= 4.500 h, S1= 50 kLOC, S2=175 kLOC
 K2= K1 x (S2/S1) x Fs used
 K2 = K1 x (175/50) x 1,25 x 1,5 x 1,3
 K2 = 8.53 x K1 = 33.385 [h]

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 60
Example 1b: Comparative calculation with
SW equation

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 61
E.g. 1b

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 62
E.g. 1b

(Bsp. 1a)

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 63
Example 2: Estimation of a reengineering

"An old system consisting of 500,000 LOC in the programming languages C, Cobol, and
Fortran is to be replaced by a new system. The function points of the legacy system are
determined by backfiring from the LOC using the language table.
The differences between the new and the old system are taken into account in the function
points. Since the following comparison requires the LOC that the implementation in C++ will
result, C++ code is determined using the Language Table 205,000 LOC. So far, this is a
product estimate.
The costs of the project are now calculated by converting another reengineering project of the
same department using the software equation. This other project had consumed LOC 300,000
and 60,000 hours. The term was 32 months. The project staffing for a period of 27 and 32
months is to be determined.
𝑆 205.000
𝑆 300.000
𝑡 27 𝐾 ?
𝑡 32 𝐸 𝐸
𝐾 60.000
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 64
Bsp. 2

For 27 months:

For 32 months:

;
;

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 65
E.g. 2

Assumption:
1 person-month = 160 hours; M stands for employees

K2,27 = 37.800 = M27 x 160 x 27

 M27 =~ 9

 M32 =~ 4

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 66
2.4.6 The Function Point Method

The Function Point Method [Albrecht 79; Albrecht, Gaffney 83] assumes that the effort
required to create a new product depends on the scope and difficulty of the product.
The scope is not expressed by LOC as with other methods, but is determined from the
product requirements.
The requirements are divided into categories.
Evaluation is based on statistical data from completed projects, which may have to be
measured to determine the FP achieved -> Internal (secret !) know how

Example from
https://www.javatpoint.com/soft
ware-engineering-functional-
point-fp-analysis

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 67
The Function Point Analysis functional units

The five parameters are also known as


information domain characteristics.
All these are assigned some weights that have
been experimentally determined and are shown in
the table.

Example from
https://www.javatpoint.com/soft
ware-engineering-functional-
point-fp-analysis

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 68
The Function Point Method

See slide before

Example from
https://www.javatpoint.com/software-engineering-functional-point-fp-analysis

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 69
Discussion

The starting point is product requirements, not LOC.


Adaptable to different application areas (change of categories).
Adaptable to new techniques (change of influencing factors and influence
assessment).
Adaptable to company-specific conditions (change in influence, factors, influence
assessment and class factors per class).
Refinement of the estimate according to the development progress (iterative
method).
Example:
1. estimation on the basis of the specifications,
2. estimation on the basis of the specifications,
3. Estimation after creation of the formal model.
Only the total effort can be estimated. A conversion to individual phases must be
done using the percentage method.
Strongly functional.

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 70
2.4.7 COCOMO I + II

Estimation methods are widely used in industry. Building on the experience of the
COCOMO (Constructive Cost Model) process presented by Boehm in 1981,
COCOMO II was presented in 1995, which supports an iterative approach and object-
oriented development.
COCOMO II consists of the three estimation types: Application Composition, Early
Design and Post Architecture. The only type of estimation that is currently well
calibrated and widely applicable is the Post Architecture.
KSLOC (Kilo Source Lines Of Code) serves as input, which are offset against 22
influencing factors via some formulas. The influencing factors cover a much broader
spectrum of influences than with the Function Point method. They are weighted
differently and have a strong effect on the estimation result. The skills of analysts and
programmers between worst and best ratings, for example, have an impact of about
300 percent on the total effort.
Aspects of consideration
Product: Reliability, reusability, DB size, documentation, ...
Staff: experience, quality, continuity, ...
Platform: Stability, Application Experience, ..
Project: Cross-site, team experience, .....
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 71
2.4.8 Early warning systems

# In order to measure the progress of a project, it is obvious to consider the measured size
of the product in relation to the final size as a degree of completion (= achieved size /
estimated total size).
# In the software industry, a different estimate is used:
Instead of the degree of completion, the remaining effort required for final completion is
estimated. This is apparently less accurate, as it uses an estimate (residual effort) when a
measurement (achieved size) could be used. The great advantage of the residual effort
estimate is that you no longer need the original estimate, but that the remaining work is
reassessed more or less independently of the original estimate.
# Since the scope of this remaining work becomes smaller and more manageable in the
course of the project, the remaining effort estimate becomes more and more accurate. The
estimation of the degree of completion without a residual effort estimate, on the other hand,
would become less and less accurate, as it is based on a small difference in large
numbers.
# With the residual effort estimate, errors of the original product size estimation are
corrected almost automatically.

Degree of completion = SIZE archived / (SIZE archived + Remaining Effort);

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 72
E.g. early warning system

[Number]
In month -4 it became apparent
that the scope of the necessary Relative
product size
work was not clear. This condition (estimation)

lasted for 3 months (variation of Degree


the degree of completion) Of completion
(measurement)
The remaining effort estimate Relative
illustrates the deadline overdraft by remaining effort

more than 2 months.

Calc. [Month]
end

Source: Oestreicher

04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 73

You might also like