PDF - INF I-CHAP 02-Software-Engineering Part 04-EN
PDF - INF I-CHAP 02-Software-Engineering Part 04-EN
„Engineering Informatics I“
WS 2024/2025
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
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
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/
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
Possible reasons:
Long running times
Complexity
Unclear and increasing requirements
Inadequate planning
Unsuitable IT approaches
Insufficient cost calculation
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
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
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)
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)
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)
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 16
Delphi estimation method: Workflow (3)
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.
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
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
+-
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 32
Survey conclusions
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
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.
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
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
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.
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
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
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
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]
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 53
Software equation
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)
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.
Wikipedia.org
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 57
Rayleigh Distribution
f(x)
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
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
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
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
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.
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)
Calc. [Month]
end
Source: Oestreicher
04.10.2024 | Lecture „Engineering Informatics I“, Chapter 02 Part 04 | Prof. Dr.-Ing. Uwe Rüppel | 73