TRANSCRIPCIÓNEnglish

Search-Based Software Engineering: Challenges, Opportunities and Applications - Tutorial @GECOO 2020

1h 43m 6s14,161 palabras2,204 segmentsEnglish

TRANSCRIPCIÓN COMPLETA

0:01

hello I'm glad to present this tutorial

0:03

today on search method software

0:05

engineering challenges opportunities and

0:08

recent applications my name is Adina I'm

0:10

from ETS Montreal University of Quebec

0:13

in Canada so first of all I would like

0:15

to thank professors Mark Harmon and

0:17

Marvin Santini for the inspiration to

0:20

prepare part of this tutorial and I'm

0:22

also grateful for all my students

0:24

co-authors and collaborators this work

0:27

have never been possible without their

0:28

support and collaboration so this

0:31

tutorial today will cover different

0:32

aspects I will start by presenting the

0:35

biological basis behind science and

0:38

engineering and then I will describe

0:40

what is SBC and how we apply it in

0:43

practice then to better understand this

0:45

message I will present three

0:47

applications of SPS see what under

0:49

commendation of refactoring changes the

0:52

second application is about improving

0:54

the web services design and the third

0:56

application is about reviewing code

0:59

changes in modern code review the

1:03

wraptor I will present the hands-on

1:04

activity using an existing open source

1:06

framework called

1:08

my framework and simplified case study

1:11

on software migration and finally I'll

1:13

be presenting and discussing the

1:16

challenges and future work with search

1:19

based software engineering so let's

1:21

start with the philosophical basis

1:23

behind science and engineering so

1:26

science is more about using

1:28

experimentation and analysis to explore

1:30

the world around us so we can take

1:33

problem we characterize it quantify and

1:36

model the problem this is mainly the

1:38

role of scientist on the other side in

1:41

engineering we take this information

1:43

provided by scientists and use it to

1:45

design and develop products that are

1:48

gonna allow us to quality human life to

1:53

continue

1:54

Engineering offers humanity the hope

1:56

because science gives us a state of

1:59

information but no concrete solution so

2:02

the scientist mainly is looking at how

2:05

things are theoretically done while the

2:08

engineer is looking at how things are

2:10

practically done

2:12

the scientist Murli explores what exists

2:17

but the engineer is more creating what

2:21

has never been existed before

2:23

so as analogy a computer scientist we

2:28

look at the fundamental principles

2:30

behind computation and how it works well

2:34

the idea for an engineer is to complete

2:37

specifications or meet designs but

2:39

within a set of constraints and

2:41

limitations so how would you consider

2:45

yourself yourself

2:46

are you more engineer or scientist so

2:49

the the synergy or the innate

2:52

relationship between both science and

2:55

engineering is on the basis of search

2:57

based software engineering so search

3:00

based software engineering inert from

3:03

both fields

3:04

computer science and software

3:06

engineering so let's move to the first

3:11

part 2 of this tutorial about what is as

3:14

BSC so before delving into the details

3:18

of especially let us see what are the

3:20

common work that engineers talk about

3:22

all the time so we check it from

3:24

different engineering fields they mostly

3:28

talk about optimized analyzed solution

3:31

estimate tolerance constraint model we

3:35

found that the dimensional optimized

3:39

wise so one in breach and one in

3:42

American so good so as busy is mainly

3:46

about optimization is in the core of

3:49

SBAC the term SVC was coined first by

3:54

Mark Harmon in 2001 and SPC is about the

3:59

use of intelligent search techniques to

4:01

explore large search spaces guided by

4:04

what we call Fitness function that

4:06

captures the properties of a desirable

4:09

solutions that we need we seek to have

4:11

and there exist several ready-made

4:14

algorithms such as the Genetic

4:15

Programming harmony search particle

4:18

swarm optimization and simulated

4:20

annealing all these algorithms will be

4:23

used to solve any optimization

4:26

problem including in software

4:27

engineering and other fields so these

4:31

algorithms fall under the evolutionary

4:35

search algorithms as part of machine

4:38

learning which are all artificial

4:40

intelligence techniques to be used for

4:42

robotics originally and other fields so

4:48

SBC is mainly an intersection between

4:50

two fields the optimization and software

4:53

engineering in software engineering we

4:56

have multiple problems that need to be

4:57

solved like automated test generation

5:00

code refactoring software project

5:03

management requirements engineering

5:04

fault

5:05

localization and program repair the

5:09

field of search based optimization

5:10

provides us with a set of ready-made

5:14

algorithms that are ready to use from

5:18

single objective to monthly or many

5:21

objective I graded such as the genetic

5:23

algorithm the non dominated sort and

5:25

genetic algorithm etc and the

5:29

application of serrated optimization to

5:31

software engineering would create the

5:35

field of SBAC we found search basic

5:38

testing which is an active field in the

5:40

software engineering community we have

5:43

also search based refactoring search

5:45

based software management search basic

5:47

requirements engineering etc so let's

5:50

see how or what is SBC in in a natural

5:54

so we mainly start from software

5:57

engineering problem then we try to use a

6:00

solution representation or a specific

6:02

encoding for the solution we can

6:04

represent the solution as for example a

6:06

vector or a 3-2 to fix a given problem

6:11

then we need to define what we call

6:13

Fitness function that evaluates how good

6:16

is our represented solution then we need

6:19

to define change operators that can

6:23

refine this the candidate solution to

6:25

make it better and that can involve over

6:29

an evolutionary process to make the

6:32

solution better and fitter

6:35

so the field of search basis of fringing

6:39

is growing

6:40

very fast overtime so as we can see the

6:43

trend of the use of SDSC until mid-2012

6:47

we have over 1,600 authors from nearly

6:51

300 institutions spread over more than

6:54

40 countries so this is realistic

6:57

scenario and the philosophy behind this

7:00

busy pushed a lot of researchers and

7:02

practitioners to use SBAC to solve their

7:05

problems and today we are dedicated

7:09

tracks in the top conferences like in XE

7:13

or in FSC or also in top conferences in

7:17

evolutionary computation like geek oh

7:19

there is a dedicated track for SBC

7:22

there are also some dedicated

7:24

international conferences back or

7:26

symposiums like SSB se or sbst we found

7:29

also several publications in the top

7:31

journals fat asian Tosa in the recent

7:34

years so maybe the question is why this

7:37

is growing that fast the answer is that

7:40

in like other fields we have a valuable

7:42

opportunity to check many possible

7:44

solutions for a given a problem and then

7:47

select the best one in physical

7:49

engineering this could be limited and

7:51

costly as we need to try different

7:55

solutions and experiments and the cost

7:59

can limit the application of these

8:02

simulations so however in software

8:05

engineering for example to fix a bug we

8:07

can change the structure of a program

8:09

and try different patches to find the

8:12

Bell and then find the best one so there

8:15

is almost no cost for such experiment we

8:18

can modify the code as much as we can

8:21

this makes software engineering more

8:23

attractive and more applicable in

8:29

practice so for example let us see a

8:32

real world example of space rocket so

8:35

the goal is to find the optimal

8:38

structure that maximizes the compression

8:40

and minimize the forth conception

8:42

consumption this is an extremely costly

8:47

experiment we can try cannot write

8:50

physically on the space so people

8:52

usually

8:53

use simulations but there is a risk that

8:56

simulation is not as similar to the

9:01

reality software engineering is more

9:03

attractive in this case for example to

9:06

find an optimal design that maximize

9:08

cohesion and minimize coupling this is

9:12

possible so we can modify the code see

DESBLOQUEAR MÁS

Regístrate gratis para acceder a funciones premium

VISOR INTERACTIVO

Mira el video con subtítulos sincronizados, superposición ajustable y control total de la reproducción.

REGÍSTRATE GRATIS PARA DESBLOQUEAR

RESUMEN DE IA

Obtén un resumen instantáneo generado por IA del contenido del video, los puntos clave y las conclusiones.

REGÍSTRATE GRATIS PARA DESBLOQUEAR

TRADUCIR

Traduce la transcripción a más de 100 idiomas con un solo clic. Descarga en cualquier formato.

REGÍSTRATE GRATIS PARA DESBLOQUEAR

MAPA MENTAL

Visualiza la transcripción como un mapa mental interactivo. Comprende la estructura de un vistazo.

REGÍSTRATE GRATIS PARA DESBLOQUEAR

CHATEA CON LA TRANSCRIPCIÓN

Haz preguntas sobre el contenido del video. Obtén respuestas impulsadas por IA directamente desde la transcripción.

REGÍSTRATE GRATIS PARA DESBLOQUEAR

SACA MÁS PARTIDO A TUS TRANSCRIPCIONES

Regístrate gratis y desbloquea el visor interactivo, los resúmenes de IA, las traducciones, los mapas mentales y mucho más. No se requiere tarjeta de crédito.

    Search-Based So… - Transcripción Completa | YouTubeTranscript.dev