Tredje kursveckan : Statisk testning, versionhantering och byggscript Flashcards
What is static testing?
A formal evaluation technique where the requirements, design or code representing the software are inspected in detail by a person or a group, other than the developer, to find defects, divergence against development standards or other problems.
What are the perks of static testing?
- Mistakes are discovered earlier
- It’s both efficient and effective
- Many mistakes are found
- Cost effective
- Different type of mistakes found
- Many mistakes can be found by inspection
- Can be applied to every type of artifact
- Informative
- Communicative
- Undervisande
What’s pair-programming?
It consists of two programmers sharing a single workstation (One screen, keyboard and mouse among the pair).
- Increased code quality
- Better transfer of skills
- Improved resiliency of a pair to interruptions
“Collaborative Construction”
- People are blind towards their own mistakes
- Other don’t have the same blindspot?
- It’s always good if someone observes what you do
- We tend to work better
“Collective Code Ownership
- Better code quality
- Knowledge spreading
It’s good if someone quits their job and more people can help with fixing problems.
Granskningar och inspektioner
- Formella / Informella
- Tekniska / Ledningsmässiga
Roller vid formell teknisk inspection
- Coordinator
Någon som ansvarar att saker kommer att bli gjort. Det kan vara den som utvecklar systemet eller delsystem, men det är ovanligt i formellt inspektion mer i informellt inspektion. Det kan vara projekt ledare, men hen kan vara mer akuta grejer att ägna sig åt, det kan vara en bi roll. Syftet är inte att inspektera men koordinera. - Moderator
Den som leder inspektionsmötet. Det här är roller så det behöver inte vara olika person.
Agera som mötesordförande. Se till att gå vidare och inte fastna och att man håller ett tempo. - Inspector
De som genomföra granskningen och det behöver inte heller vara olika person från de andra rollerna - Author / Owner (Kodägaren)
Rollen är inte att ingå i granskning och egentligen bara sitta med och lyssna på vad folk har kommi fram till och då är det viktigt att bidra med åsikter. - Editor (Sekreterare)
Ansvarar att saker anteknas. Kan vara moderator eller vara en annan person och det inte är kodägaren och det är lite mer partiskt.
Walkthrough
- Mindre formella versioner av inspektioner
- Kräver ofta inga förberedelser av deltagarna
- ”Författaren” sköter ofta genomgången
Olika lästekniker
- Ad hoc
- Checklistbaserade
Checklist-based testing is a type of siftware testing based on the pre-planned ”to-do” list of tasks called a checklist. Professional testers, who have sufficient technical experience usually complete these lists.
Checklists are used to structurize this type of testing in order not to waste time repeating the same tests.
Checklist-based testing advantages are
- Flexibility (Can be used in all testing types)
- Easy to create. It is not difficult to create, use and maintain a checklist.
- Analyzing the results. Checklist are easy to follow and examine.
- Team integration. The checklist can be ready-made guidance and help new testing personnel to integrate into work.
- Deadlines control. This type of testing help to control test accomplishment and not to miss some critical bugs before the deadline.
- Perspektivbaserade
- Scenariobaserade
- Stepwise abstaction
- Systematisk inspection
Test
- Kräver ett implementerat och exekverbart system
- En dynamisk metod
- Kan kontrollera om programmet är operativt användbart
- Kan kontrollera ickefunktionella krav som prestanda och användbarhet
Inspektioner
- Kan användas genom hela produktens livscykel
- En statisk metod
- Kan bara kontrollera att det som inspekteras uppfyller specifikationen
- Kan kontrollera andra egenskaper som till exempel underhållbarhet och om man följer standarder
Varför används inte statisk testning mer ?
- Högre kostnader tidigt i utvecklingscykeln
- Misstag visas upp för hela gruppen
- Tradition
What is configuration management ?
It’s a process to systematically manage, organize, and control the changes in the documents, codes, and other entities during the software development life cycle. The primary goal is to increase productivity with minimal mistakes.
- Version Management
- Change Management
- Build Management
Vad ska versionhanteras?
- Programkod
- Dokumentation
- Krav
- Buggrapporter
Versionhanteringssystem
En databas för källkodsfiler
Ändringslogg
Möjlighet att återkapa tidigare versioner