kandidatarbete - ida.liu.setddd77/timetable/kandidatarbete.pdf · kandidatarbete vs projektarbete 2...
TRANSCRIPT
Kandidatarbete
Kristian Sandahl
IDA
Kandidatarbete vs projektarbete
2
Kandidatarbetets syfte Projektarbetets syfte
Att integrera kunskap om programvaruutveckling Att skaffa och dokumentera erfarenheter från programutveckling
Att genomföra ett programvaruprojekt
Modifierad disposition
• Sammanfattning 1. Introduktion 2. Bakgrund 3. Metod 4. Systembeskrivning 5. Gruppens tekniska erfarenheter, positiva/negativa 6. Gruppens processrelaterade erfarenheter, positiva/negativa, alla faser 7. Individuella bidrag: Beskrivning och erfarenhet av roller eller "practices"
(2-3 sidor per person med minst en litteraturreferens) 8. Diskussion 9. Slutsats: Vad gör vi annorlunda nästa gång? 10. Referenser • Bilaga: Affärsplan
3
Introduktion
• Skall göra läsaren intresserad
• Motivering
• Syfte
• Frågeställning: generisk och individuell
4
Bakgrund
• Kallas ofta kontext
• Beskriver förutsättningar för • Replikerbarhet
• Överförbarhet
• Projektet är er empiri
5
Metod
• Forskningsmetod • Explorativ fallstudie
• Datakällor: • Kvantitativa (antal säkerhetshot, enkäter)
• Kvalitativa (reflektioner)
• Utvecklingsmetod • Iterativ
• SEMAT alpha
• Roller
• Dokument
6
Why do we need empricial studies?
Software Engineering has great variation in: • Scale • Domain • Tools • Infrastructure • Human resources • Organization • Locality • Technique • Quality
Method
Cause Effect
What is an experiment?
treatment
No treatment
Units (subjects)
Control group
Comparison
Types of experiments
• Randomized experiment: Units receiving the treatment are selected by random
• Quasi-experiment: Units are not selected randomly
• Controlled experiment: Comparison between treatments (Sjøberg et al 2005)
• Correlation study: Observes relationships with variables (empirical evaluation)
• Replication: Repeating the study
• Differentiated replication: Replication with variation of essential conditions
Variables
Age Sex Education Experience ...
Background variables
Controlled variables
Independent variables
Time of day Temperature Available resources ...
Method used Tool used Size of task Group size ...
Dependent variables
No of errors done Time to complete task Judgement of quality ...
Different Not changeable
Same Observed
Manipulated Observed
Assumed to change as effect manipulation of independent variables
Validity threats
• Internal validity: Are differences in dependent variables really due to changes of independent variables?
• Conclusion validity: Are our measurement and analysis methods appropriate?
• Construct validity: Are we measuring the phenomena we intend to do?
• External validity: To what population can we generalise our results?
Comparing means
Under certain conditions: Student’s t-test
Significance level: nomally 5%
Comparing distributions
Comparing severity ratings Severity Tester 1 Tester 2
Catastrophic 4 2
Severe 9 6
Moderate 53 27
Minor 105 58
• Are the testers’ methods the same?
• Under certain conditions: use the Chi-square test
• For 2x2 contigency tables other methods apply, for instance Cohen’s Kappa
The box plot
Comparing variance
Case Studies…
• ... are investigating contemporary phenomena in their context
• … can be: • Exploratory
• Descriptive
• Explanatory
• Improving
Triangulation
Increases precision and thrus worthiness Types: • Data (source) • Observer • Methodological • Theory
(Picture: Wikimedia commons)
Some more definitions
• Objective: overall statement of expectations
• Research questions: refinement of objective
• Hypothesis: supposed explanation
• Case: the object of the study
• Subjects: those providing information
• Qualitative data: Descriptions, text
• Quantitative data: Numbers, measurements
• Case study protocol: Procedures of study
• Protocol: Data obtained by observation, interview etc.
What happens if the line is broken?
Software project
Software engineer
Grounding
SWEBOK on a Profession
• Professional education, validated through accreditiation
• Certification or licensing
• Skill development, continuing professional education
• Professional society
• Commitment to norms
• Code of ethics
ACM/IEEE-CS Joint Task Force on Software Engineering Ethics v 5.2 1(2)
• 1 PUBLIC - Software engineers shall act consistently with the public interest.
• 2. CLIENT AND EMPLOYER - Software engineers shall act in a manner that is in the best interests of their client and employer consistent with the public interest.
• 3. PRODUCT - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
• 4. JUDGMENT - Software engineers shall maintain integrity and independence in their professional judgment.
• 5. MANAGEMENT - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
ACM/IEEE-CS Joint Task Force on Software Engineering Ethics v 5.2 2(2)
• 6. PROFESSION - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
• 7. COLLEAGUES - Software engineers shall be fair to and supportive of their colleagues.
• 8. SELF - Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
Hederskodex för Sveriges Ingenjörer
1. Ingenjören bör i sin yrkesutövning känna ett personligt ansvar för att tekniken används på ett sätt som gagnar människa, miljö och samhälle.
2. Ingenjören bör sträva efter att förbättra tekniken och det tekniska kunnandet i riktning mot ett effektivare resursutnyttjande utan skadeverkningar.
3. Ingenjören bör ställa sitt kunnande till förfogande i offentliga och enskilda sammanhang för att uppnå bästa beslutsunderlag och belysa teknikens möjligheter och risker.
4. Ingenjören bör inte arbeta inom eller samverka med företag och organisationer av tvivelaktig karaktär eller med mål som strider mot personlig övertygelse.
5. Ingenjören bör visa full lojalitet mot arbetsgivare och arbetskamrater. Svårigheter härvidlag bör tas upp till öppen diskussion, i första hand på arbetsplatsen.
6. Ingenjören får inte använda otillbörliga metoder i tävlan om anställning, uppdrag eller beställning, ej heller försöka skada kollegors anseende genom obefogade beskyllningar.
7. Ingenjören bör respektera anförtrodda upplysningars konfidentiella natur samt andras rätt till uppslag, uppfinningar, utredningar, planer och ritningar.
8. Ingenjören får inte gynna obehöriga intressen och bör öppet redovisa ekonomiska och andra intressen som kan påverka tilltron till hans eller hennes opartiskhet och omdöme.
9. Ingenjören bör enskilt och offentligt, i tal och skrift, sträva efter ett sakligt framställningssätt och undvika felaktiga, missvisande eller överdrivna påståenden.
10. Ingenjören bör aktivt stödja kollegor, som råkar i svårigheter på grund av ett handlande i enlighet med dessa regler, samt enligt bästa övertygelse avstyra brott mot dem.
My own thinking
• By definition, professional means that you are capable to make your living on what you do
• To do this your products and services shall be worthwhile for customers
• You have a minimum standard
• You can receive a series of similar assignments
• You can work under non-optimal conditions
• You can learn and instruct
• Being a professional is often not equal to gold-plating,
• it is not necessarily always good
www.liu.se