Paper Session 1 Software Evolution Paul Klint, Bas van Vlijmen, - - PowerPoint PPT Presentation

paper session 1
SMART_READER_LITE
LIVE PREVIEW

Paper Session 1 Software Evolution Paul Klint, Bas van Vlijmen, - - PowerPoint PPT Presentation

Software Analysis And Transformation Paper Session 1 Software Evolution Paul Klint, Bas van Vlijmen, Jurgen Vinju Today Writing your Motivation Motivation Paragraphs Improving text and submitting it Discuss clones, metric


slide-1
SLIDE 1

Software Analysis And Transformation

Paper Session 1

Software Evolution Paul Klint, Bas van Vlijmen, Jurgen Vinju

slide-2
SLIDE 2

SWAT - SoftWare Analysis And Transformation

Today

  • Writing your Motivation
  • Motivation
  • Paragraphs
  • Improving text and submitting it
  • Discuss clones, metric & design patterns
  • Intro to argumentation
slide-3
SLIDE 3

SWAT - SoftWare Analysis And Transformation

Motivation

  • What is the goal of a motivation?
  • Who are you motivating?
  • What are you motivating?
  • giving excuses for invested time in writing? no.
  • providing reasons for them to read your paper!
  • A typical motivation includes:
  • Definition, position, contribution, plan
slide-4
SLIDE 4

SWAT - SoftWare Analysis And Transformation

Definition

  • What is the topic?
  • What is not the topic?
  • What is a good definition?
slide-5
SLIDE 5

SWAT - SoftWare Analysis And Transformation

Position

  • What is your perspective? goal?
  • In what sense is this paper “unique” or “special”?
  • Position by relating your paper
  • to other papers (“related work”)
  • to what existed before, to current reality
  • to what the reader already knows
  • to a known or accepted contrary view
slide-6
SLIDE 6

SWAT - SoftWare Analysis And Transformation

Contribution

  • What is the return on investment for reading?
  • What are the lessons to learn?
  • What are actionable conclusions?
  • How {c,w,sh}ould your paper “change the world”?
  • Who knows examples?
slide-7
SLIDE 7

SWAT - SoftWare Analysis And Transformation

Plan

  • Outline of the paper
  • forward references to sections
  • explains global structure of the paper
  • Helps the reader decide where to put energy
  • (not relevant for your current assignment)
slide-8
SLIDE 8

SWAT - SoftWare Analysis And Transformation

Paragraphs

  • Good paragraphs have
  • correct and simple language (ok)
  • helpful and clear structure
  • logical message
  • readable flow
slide-9
SLIDE 9

SWAT - SoftWare Analysis And Transformation

Paragraphs

  • Bad paragraphs have:
  • spelling errors and grammatical mistakes
  • no (clear) structure
  • reasoning fallacies or incomplete arguments
  • incoherent and unconnected sentences
slide-10
SLIDE 10

SWAT - SoftWare Analysis And Transformation

Tip 1

  • Do not confuse ‘difficult to understand’ with

‘deep thinking’

  • “An understanding of the causal factors involved

in code cloning by programmers could lead to more effective prevention.”

  • “We could prevent programmers to clone code

more effectively if we new why they do.”

  • What is the difference?

(These and the following examples are adapted from “Style - the basics of clarity and grace”, by J.M. Williams)

slide-11
SLIDE 11

SWAT - SoftWare Analysis And Transformation

Tip 2

  • Writing is telling a story
  • Make main characters subjects
  • Make important actions verbs
  • “Once upon a time, as a walk in the woods was

taking place on the part of Little Red Riding Hood, the Wolf’s jump from behind a tree…”

  • “Once upon a time, Little Red Riding Hood was

walking in the forest, when the Wolf jumped

slide-12
SLIDE 12

SWAT - SoftWare Analysis And Transformation

Clones & fairy tales

  • “The argument of authors of code clone detection tools with

respect to the harmfulness of copy and paste programming is based on their belief in the tendency of programmers of wanting to maintain each clone consistently.”

  • “The authors of code clone detection tools argue that copy

and paste programming is harmful because they believe that programmers want to maintain each clone consistently.”

  • So: use subjects for actors and verbs for actions.
  • This makes your paragraphs less abstract and more concrete
slide-13
SLIDE 13

SWAT - SoftWare Analysis And Transformation

Tip 3

  • From quality of sentences to paragraphs
  • Connect sentences, sometimes making a sentence less clear to

make the whole paragraph more clear

  • “Programmers frequently introduce clones: exact copies of source

code fragments. Later, they may forget to maintain such clones consistently”

  • “Programmers frequently introduce clones: exact copies of source

code fragments. Such clones are often forgotten to be maintained consistently”

  • Flow is especially important in longer paragraphs
  • Use the passive tense to flip a sentence
slide-14
SLIDE 14

SWAT - SoftWare Analysis And Transformation

Tip 4: Get the book

  • Style - The Basics of Clarity and Grace
  • Second edition
  • Joseph M. Williams
  • 2006
  • Pearson Education, Inc
slide-15
SLIDE 15

SWAT - SoftWare Analysis And Transformation

Feedback time (15 min)

  • Read each others motivation (on a different topic), and suggest improvements.
  • Do you understand the text?
  • Are you motivated to read on?
  • Identify structure:
  • topic, explanation, illustration
  • abstract to concrete
  • bottom-line up front?
  • Identify logic:
  • cause & effect
  • “if”, “because”, “when”, “so”
  • Identify flow
  • rder of topics in consecutive sentences
  • connectives “so”, “because of …”, “therefore”, “this is why”, “these examples show”,

slide-16
SLIDE 16

SWAT - SoftWare Analysis And Transformation

Discussion

  • Did you recognize bad/good style?
  • Was is doable to improve? How?
  • What about the topics? Questions?
  • Clones
  • Metrics
  • Patterns
slide-17
SLIDE 17

SWAT - SoftWare Analysis And Transformation

Rewrite your motivation

  • 15 minutes
  • submit it on blackboard after (today!)
  • we check if it’s ok
slide-18
SLIDE 18

SWAT - SoftWare Analysis And Transformation

Next session

  • Read about argumentation and schemes
  • Choose a position
  • Make argumentation scheme
  • Less is more: make one interesting point
  • Try to complete it, all the way from claim down to

facts

  • Stop at well-motivated assumptions and

(published?) conjectures, when time is up.

slide-19
SLIDE 19

SWAT - SoftWare Analysis And Transformation

Argumentation

  • What is the goal of an argument?
  • What are the means to get to this goal?
slide-20
SLIDE 20

SWAT - SoftWare Analysis And Transformation

Argumentation

  • Correct logic
  • Facts
  • Clearly stated assumptions
  • KISS - keep it simple stupid
  • (convincing rhetoric and writing style are for

session 3)

slide-21
SLIDE 21

SWAT - SoftWare Analysis And Transformation

Wicked Problems

  • [wikipedia] “"Wicked problem" is a phrase originally used in social

planning to describe a problem that is difficult or impossible to solve because of incomplete, contradictory, and changing requirements that are often difficult to recognize.

  • The term ‘wicked’ is used, not in the sense of evil but rather its

resistance to resolution.[1] Moreover, because of complex interdependencies, the effort to solve one aspect of a wicked problem may reveal or create other problems.”

  • Software Engineering is a wicked problem
  • Every part of software engineering probably too
  • This is why argumentation is particularly interesting in our field
slide-22
SLIDE 22

SWAT - SoftWare Analysis And Transformation

Use Schemes

  • To separate improving logic from improving

language

  • Box is a statement, claim or fact
  • Edge is a causal relation
  • “Araucaria” is a software tool you could use
slide-23
SLIDE 23

SWAT - SoftWare Analysis And Transformation

  • Args are pro or con
  • Optionally, you can distinguish conjunctions (and) from

disjunctions (or)

slide-24
SLIDE 24

SWAT - SoftWare Analysis And Transformation

Next session

  • Read about argumentation and schemes
  • Van Eemeren (see BB)
  • Make argumentation scheme