IBM Software Group Testhantering enligt RUP Henrik Szemere Product Specialist henrik.szemere@se.ibm.com
2
Verifiera programvarans kvalitet kontinuerligt Programvaruproblem blir 100 1000 gånger dyrare att hitta och åtgärda efter driftsättning Kostnad Kostnad för åtgärdande Kostnad för uteblivna möjligheter Kostnad för förlorade kunder Förberedelse Etablering Konstruktion Överlämning 3
Typiska utmaningar för att uppnå hög kvalitet Resurser är inte fokuserade på proriterade projekt Förväntningar på kvalitet är inte uttalad det finns ingen gemensam förståelse av kraven Inga gemensamma metoder finns Testningen tar för lång tid Det finns ingen möjlighet att se ändringsprocessen Det är svårt att förstå produktens arkitektur Det finns inga gemensamma lösningar på gemensamma problem 4
Varför behövs en process? Den ger riktlinjer för hur man utvecklar kvalitetsprogramvara på ett effektivt sätt Den minskar riskerna och ger ökad förutsägbarhet Den förespråkar en gemensam vision och kultur Den fångar och representerar praxis 5
En teambaserad definition av process En process definierar vem som gör vad, när och hur, för att uppnå ett visst mål. Nya eller ändrade krav Programvaruutvecklingsprocess Nytt eller ändrat system 6
RUP: En riskdriven, användningsfallsbaserad, arkitektcentrisk, interativ, konfigurerbar mjukvaruutvecklingsprocess 7
Dvs, en process som stödjer Iterativt tillvägagångssätt Stöd för aktiviteter och artefakter Processen fokuserar på arkitektur Användningsfall som driver design och implementation Modeller som abstraherar systemet 8
Disciplin: Test Syfte: Testning fokuserar huvudsakligen på att utvärdera kvalitet med hjälp av ett antal grundläggande praxis: Att hitta och dokumentera fel hos programvarans kvalitet. Att ge en generell uppfattning om programvarans kvalitet. Att visa att de antaganden man gjorde i design- och kravspecifikationerna håller, i form av konkreta demonstrationer. Att utvärdera funktionerna hos programvaran som den är designad. Att säkerställa att kraven har implementerats korrekt. Testdisciplinen förser i många avseenden övriga discipliner med tjänster. 9
Riskprofiler IBM Software Group Vattenfallsrisk Risk Riskreducering Iterativ risk Tid 10
Processtruktur - Livscykelfaser Förberedelse Etablering Konstruktion Överlämning tid Rational Unified Process definierar fyra faser: Förberedelse Definierar projektets omfattning Etablering Planera projektet, specificera egenskaper, ta fram grundversion av arkitekturen Konstruktion Bygg produkten Överlämning Överlämna produkten till slutanvändarna 11
Översikt av Rational Unified Process-begrepp Discipliner utför Aktivitet Begrepp Arbetsflödesdetaljer Arbetsriktlinje Aktivitet: En arbetsenhet som en roll ansvarar för och som rollen kan tillfrågas att utföra Roll ansvarar för in ut En roll: definierar en persons beteende och ansvar, eller beteendet och ansvaret hos en mängd personer som arbetar tillsammans i ett team. Mall Artefakt Verktygsguide Kontrollpunkter Artefaktsriktlinje Rapport refererar till Artifakt:Information som produceras, utvecklas eller används av en process 12
Roller används vid resursplanering Resurser Roll Aktivitet Pelle Maria Josef Stina Janne Arkitekt Systemanalytiker Kravställare Testanalytiker Testare Varje person i projektet tilldelas en eller flera roller Identifiera Design Mechanisms Finna aktörer och användningsfall Skapa användingsfall Identifiera test Idéer Analysera fel En roll kan tilldelas en eller fler personer 13
RUP Test Manager Role, Activities, and Artifacts Activities: Test Manager Agree Mission Identify Test Motivators Obtain Testability Commitment Assess and Advocate Quality Assess and Improve Test Effort Artifacts: Test Manager Test Plan Test Evaluation Summary The Test Manager role is tasked with the overall responsibility for the test effort's success. 14
RUP Test Analyst Role, Activities, and Artifacts Activities: Test Analyst Identify Targets of Test Identify Test Ideas Define Test Details Define Assessment and Traceability Needs Determine Test Results Artifacts: Test Analyst Test Ideas List Test Case Workload Analysis Model Test Data Test Results The Test Analyst role is responsible for initially identifying and defining the required tests, and subsequently evaluating the results of the test effort. 15
RUP Test Designer Role, Activities, and Artifacts Activities: Test Designer Define Test Approach Define Test Environment Configurations Identify Testability Mechanisms Structure the Test Implementation Define Testability Elements Develop Test Guidelines Artifacts: Test Designer Test Automation Architecture Test Interface Specification Test Environment Configuration Test Suite Test Guidelines The Test Designer role is responsible for defining the test approach and ensuring its successful implementation. 16
RUP Tester Role, Activities, and Artifacts Activities: Tester Implement Test Implement Test Suite Execute Test Suite Analyze Test Failure Artifacts: Tester Test Scripts Test Log The Tester role is responsible for the core activities of the test effort, which involves conducting the necessary tests and logging the outcomes of that testing. 17
Nyckelbegrepp i RUP: Arbetsflöde Ett villkorsstyrt flöde av högnivåaktiviteter (arbetsflödesdetaljer) som producerar ett resultat av märkbart värde 18
Arbetsflödena ger stöd för iterativ utveckling Arbetsflödes ex : krav Arbetsflödes ex: Test 19
Arbetsflödesdetaljer Exempel på arbetsflödesdetalj: Validate Build Stability 20
Vägen genom arbetsflödet beror på: Läge i Livscykeln Producerade artefakter Teknologi Iterationens mål Exempel: Test 21
Arbetsflödet för testdisciplinen I RUP Define Evaluation Mission Identify the appropriate focus of the test effort for the iteration. Gain agreement with stakeholders on the corresponding goals that will direct the test effort. 22
Arbetsflödet för testdisciplinen I RUP Test and Evaluate Achieve appropriate breadth and depth of testing to enable a sufficient evaluation of the targeted test items. 23
Arbetsflödet för testdisciplinen I RUP Achieve Acceptable Mission Deliver a useful evaluation result to the stakeholders of the test effort. Actively prioritize the test work that remains to be conducted. 24
Arbetsflödet för testdisciplinen I RUP Verify Test Approach Demonstrate the techniques outlined in the Test Approach will support the required testing. Verify that the approach will work, produce accurate results and is appropriate for the available resources. 25
Arbetsflödet för testdisciplinen I RUP Validate Build Stability Validate that the build is stable enough for detailed test and evaluation work to begin. 26
Arbetsflödet för testdisciplinen I RUP Improve Test Assets Maintain and improve the evolving test assets. (e.g. Maintain test suites and test data; harvest test-ideas into catalogs; clarify change request details) 27
Varje bygge är en testlivscykelkandidat 28
Sammanfattning av testdisciplinen i RUP Är en iterativ testprocess Är skalbar och går att skräddarsy Är skapt för flexibiltet Är en riskbaserad process 29
30
IBM Software Group Test i ClearQuest 7 Henrik Szemere Product Specialist henrik.szemere@se.ibm.com
ClearQuest Test Manager Analyst ClearQuest Requirements Coverage Defect and Change Tracking Tester RequisitePro Test Planning & Tracking Unified Change Management Rational Test Tools Developer To Do List Rational Software Architect VS.Net, other IDEs Versioned Artifacts Components & Subsystems Baselines& Builds ClearCase ClearQuest is the HUB for Lifecycle Management Drives Activity Workflow Team Members get To Do List Links to RequisitePro, Test Tools, ClearCase Provides metrics and reporting 32
Lifecycle Traceability Query one source for all aspects of project progress Requirements Tests Defects Query to find Test results associated to requirements Defects associated to test results Defects associated to tests associated to requirements Traceability from requirements to tests and defects closes the loop on the software development cycle 33
Test Management with ClearQuest Eclipse, Windows and Web Clients for test project tracking Eclipse Based Test Management Joins Functional and Performance Tester to complete transition of testing tools to eclipse platform Native and web clients also available Key Functional Areas Test Planning Create test plans, test cases and configured test cases Test Execution Create suites or run individual test cases Test Reporting Extensive query and reporting facilities to measure test progress 34
Extensible Test Ecosystem Integrated with Rational, open source and 3rd party test automation tools Test automation tools Open source solutions Partner solutions Third party test automation tools Collect and report on results from Rational test execution engines Rational Manual Tester Rational Functional Tester Rational Performance Tester Collect and report on results from Eclipse Test and Performance Tools Project junit tests Manual tests URL tests Open API Extensibility SPI Dynamics QAInspect Ring-Zero 35
Communicate Real-time Project Status Queries & Charts Easily create and modify with Wizards Charts: Aging, Trend, Distribution Reports Use industry-standard reporting tools Export to many common formats (Excel, Word, HTML) E-mail notification Automatic notification of events and state changes Configurable through GUI interface 36
Test Case Chart 1. User looks at the status of the tests 3. A large portion of the Test Cases are scheduled but not executed yet. 2. The number of Test Cases planned or implemented is fairly low 4. User can go deeper into the executed Test Cases and look at the results distribution 37
Lifecycle Traceability Query one source for all aspects of project progress Leverage existing reports or Create new reports with Crystal Reports To provide the information you need for decision making Test Verdicts Test Case Trending 38
Compliance and Control Using Audit Trails and esignatures to track change Audit Trails can track changes to individual records Provides immutable change log of all record change activity e-signature requirement can be added to any event on any artifact Will record who changed a record, when and how the record was changed e-signature provides immutable evidence of process completion e-signature Approval Requirement Test Case Test Execution Validate Results Approve 39
IBM Software Group Frågor? Henrik Szemere Product Specialist henrik.szemere@se.ibm.com