Слайд 2
Предмет та метод емпіричної інженерії ПЗ.
Емпіричні дослідження.
Історія розвитку
емпіричної ІПЗ.
Середовища для емпіричних досліджень ПЗ. CAESE - засоби
Слайд 3
Емпірична інженерія ПЗ
Емпірична інженерія програмного забезпечення – сукупність
дій для отримання знань з метою кращого розуміння аспектів
розробки програмного забезпечення. Результатом дій є ряд тверджень щодо визначеного переліку проблем. Ці твердження являються відповідями на поставлені запитання та підтвердженням чи спростуванням гіпотез.
Слайд 4
Предмет емпіричної ІПЗ
Предмет ЕІПЗ – дослідження процесів (життєвого
циклу ПЗ), процесів інженерії програмного забезпечення та самих методів
досліджень.
Слайд 5
Методи емпіричної ІПЗ
Методи ЕІПЗ:
Загальні науково-емпіричні ті теоретичні;
Конкретно наукові:
Контрольовані
експерименти;
Дослідження ситуацій;
Дослідження-огляди.
Слайд 6
Дослідження в натуральному середовищі
Дослідження в натуральному середовищі пов’язані
з реальними задачами через спостереження за розробниками ПЗ в
«природному середовищі», в якому відбувається розробка ПЗ.
Слайд 7
Дослідження в лабораторних умовах
Дослідження в лабораторних включають в
себе моделювання процесів розробки та проведення експериментів.
Слайд 8
Дослідження ПЗ
Дослідження ПЗ
“У великому”
“В малому”
“В середньому”
Слайд 9
Історія розвитку емпіричної ІПЗ
Belady, Lehman (1970s)
Yuen (1985-1988)
Tamai, Torimitsu
(1992)
Cook, Roesch (1994)
Gefen, Schnerberger (1996)
Basili (1996)
Lehman (1997)
Слайд 10
Історія розвитку емпіричної ІПЗ - Belady, Lehman
1970s
Data: 21
user-oriented releases of OS/360
Dependent Variables: Release sequence numbers, system
age, system size, number of system modules, complexity
Statistical Test: Multivariate Regression, Autocorrelation
Results: 5 “lows” of SW evolution dynamics
Слайд 11
Історія розвитку емпіричної ІПЗ - Yuen
1985-1988
Data: 5000 “components”
over 19 month period, 3000 KLOC; some modules form
OS/360; “notices” – user’s instructions
Priority class, originator’s reference, release affected, component affected, machine affected, category of error discovered, response time; Cumulative modules handled, handle rate, fraction of modules handled, size, release interval, net growth; releases and numbers of “notices” per week
Chi-square, Contingency coefficient measure, Time series, T-statistic, Auto and cross correlations, Poisson distribution; Runs test, Turning points test, Phase length test; Runs test, Turning points test, Phase length test, Time series analysis/ Spectral analysis technologies, Linear filtering
Слайд 12
Історія розвитку емпіричної ІПЗ - Tamai, Torimitsu
1992
95 systems,
5 years, mainframe software, 70% COBOL
Age of SW life
span, software size before and after replacement, application areas, replacement factors
Sample statistics, Correlations
Слайд 13
Історія розвитку емпіричної ІПЗ - Cook, Roesch
1994
10 versions
of real time German telephone switching software released over
18 months
Number of functions, number of function changed, number of major changes
Correlations, exploratory factor analysis with varimax rotation
Слайд 14
Історія розвитку емпіричної ІПЗ - Gefen, Schnerberger
1996
29 month
of Software Problem Reports (SPRs), 250 KLOC
Modification type (total
number of SPRs, number of corrective SPRs, number of adaptive SPRs), number of new applications, number of modifications caused by previous modifications
Linear regression, Wilcoxon Matched-Pair Signed-RanksTest, Kolmogorov-Smirnov Goodness of Fit Test
Слайд 15
Історія розвитку емпіричної ІПЗ - Basili
1996
25 SW releases
of 10 different systems at NASA
Effort and size
for different types of maintenance activities/tasks
Mann-Whitney U non-parametric tests, OLS regression
Слайд 16
Історія розвитку емпіричної ІПЗ - Lehman
1997
21 SW releases
of a financial package
Size of system in modules and
number of modules changed
Least squares and inverse square regression model, mean absolute error
Слайд 18
Вимірювання
Analist4j
iPlasma
CodeCritic
CCCC
HPMas
Microsoft Visual Studio 2008
Слайд 19
Аналіз даних
Ginger 2
Erix
Emerald
GQM інструмент
поліпшення якості ПЗ інструментом Tian
Troster
Pаlma
Testing
Склад
мов– Koala
Видобуток даних
VizzAnalizer
Слайд 22
CAESE інструменти
Програмне інженерія авторізованої емпірічної системи (CAESE)
Підтримка в
базовому навчанні
Залучення до емпіричної діяльності
Робота з багатьма
типами даних
Особливості
Емпірична модель навчального процесу
Збір даних моделі
Емпіричні дослідження інструментів
Слайд 25
Емпіричні моделі процесу навчання в CAESE