SlideShare une entreprise Scribd logo
1  sur  8
Project CPSC 542 Summer-08 Ali Raza aliraza@csn.fullerton.edu Introduction Software systems are becoming more challenging to build day by day especially in the enterprise environment. High qualified staff ensures that software products are built on time, under budget, and are of the highest quality with respect to the attributes such reliability, correctness, usability and the ability to meet all user requirements [1]. For the quality outputs, we perform verification and validation (V&V) process during the software life cycle.  ,[object Object],“Validation is the process of evaluating a software system or component during, or at the end of, the development cycle in order to determine whether it satisfies specified requirements.” [2] In other words, validation is a process where we determine whether the product satisfies the specified user requirements as well as quality attribute such as reliability, scalability, and performance etc during or at the end of the SDLC. ,[object Object],“Verification is the process of evaluating a software system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase.”[2] In other words, verification is a process where we determine whether conditions imposed at the beginning of each phase are satisfied for instance does the code reflect conditions imposed by the design. Ever since complexity of the software systems have increased in an enterprise environment, it is very hard to release a successful product without using any V&V tools.  If we research, we can see there are many tools available now for verification and validation of the software systems.   This paper will discuss two tools for V&V such as NUnit and Mercury Quality Center (MQC) ,[object Object]
URLhttp://www.nunit.org/index.php ,[object Object]
Introduction:NUnit is a simple unit-testing framework for the.NET platform which was ported from JUnit framework initially.  It is an open source product. We can download from NUnit website [4].  In SDLC, developers write unit test in order to test their modules and classes, and as a result they verify the code against the design of the software. ,[object Object],We can integrate the NUnit framework with visual studio and automate our unit testing process. NUnit supports all the visual studio project type such as C#, VB.NET, J# and C++.  When tests are run for a Visual studio project, they run just as if the output assembly had been loaded with one exception. The default location for the config file is the directory containing the project file and its default name is the same as the project file with an extension of .config. For example, the following command would load the tests in the nunit.tests assembly using the configuration file.   nunit.tests.dll.config located in the same directory as the dll.         nunit.exe nunit.tests.dll On the other hand, the following command would load the tests using the configuration file nunit.tests.config located in the same directory as the csproj file.         nunit.exe nunit.tests.csproj The same consideration applies to running tests using the console runner. [4] ,[object Object],This is an important feature of NUnit which provides a central unit testing framework to the .Net applications.  NUnit gives a rich set of assertions as static method of the Assert classes [1]. Therefore, if assertions fail during the unit testing process then method doesn’t return and an error is reported.   ,[object Object],In earlier version of NUnit, we used to identify tests based on inheritance and naming conventions. But later on, NUnit has used custom attributes for this purpose. NUnit Framework namespace contains all the NUnit attributes. Each source file that contains test must include a using statement for that namespace and the project must reference the framework assembly, nunit.framework.dll. [4] ,[object Object],We can run various versions of the .NET framework by using the configuration files.  This will be helpful when developers need to know how the system would behavior in different CLRs. ,[object Object],NUnit allows loading suites of tests from multiple assemblies in both console and GUI.  In any case a top level suite is constructed, which contains the root suite for each assembly. ,[object Object],As discussed above, NUnit is a product which will be used for unit testing.  Unit Testing is a white box testing.  White box testing starts at the method, functions and basic class level and progress through complex classes and sometime sub modules. In white box testing our focus will be on statements, branches, path, loops and data follows of the coding.  NUnit tool facilities verification because we verify that the code reflects conditions imposed by the design phase.  ,[object Object],NUnit will be used during the implementation phase (coding) of the software life cycle.  And developers will ensure that code has written as per design. Because by writing the unit tests themselves they will head start towards the quality product and bug free code. ,[object Object],Unit testing is very useful technique for preventing the defects and NUnit is the perfect tool for .Net framework.  I used NUnit way back when I worked on.Net technologies.  I used to perform the unit testing before I handed over the code to SQA group, and if I make any changes to the code then I used to perform the regression testing to verify that everything working as expected.  As a result SQA group find fewer defects which were mostly related to data issues.  ,[object Object]
URLhttps://h10078.www1.hp.com/cda/hpms/display/main/hpms_content.jsp?zn=bto&cp=1-11-127-24^1131_4000_100__ ,[object Object]
IntroductionMercury Quality Center (MQC) is bought by HP.  It is a web-based management tool which provides a centralized control over the entire testing project.  MQC is used by the testers as well as managers.  It provide an easy interface to manage and organize activities such as requirement coverage, management of test cases, detail reports after the execution of test cases, management of defect and test automation. [7] We can divide MQC in to two parts.  One is for administrator tools called Site Administrator and another one is for user tools called Quality Center Bin.   ,[object Object],It is the important part of the MQC and also the starting point.  All the administrative tasks such as creating the project, assign resources or users to the project, creating specific role etc is done from this section.   We can also configure other application such as WinRunner or Quality Test Professional (QTP).  This section also used as mail servers, and for authentication.  For instance we can configure MQC with active directory where user will login to MQC by using her/his windows network password and username. [7] ,[object Object],This part of MQC is related to the users who interact with the tool.  Because it provides following functionality  ,[object Object]
Defining requirements
Creating test cases
Running test cases automatically

Contenu connexe

Tendances

Lecture#02, building blocks of uml ASE
Lecture#02, building blocks of uml ASELecture#02, building blocks of uml ASE
Lecture#02, building blocks of uml ASE
babak danyal
 
Components in real time systems
Components in real time systemsComponents in real time systems
Components in real time systems
Saransh Garg
 
Software estimation
Software estimationSoftware estimation
Software estimation
Md Shakir
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
Hayim Makabee
 

Tendances (20)

Lecture#02, building blocks of uml ASE
Lecture#02, building blocks of uml ASELecture#02, building blocks of uml ASE
Lecture#02, building blocks of uml ASE
 
Components in real time systems
Components in real time systemsComponents in real time systems
Components in real time systems
 
WHITE BOX TESTING ashu.pptx
WHITE BOX TESTING ashu.pptxWHITE BOX TESTING ashu.pptx
WHITE BOX TESTING ashu.pptx
 
Unit testing with NUnit
Unit testing with NUnitUnit testing with NUnit
Unit testing with NUnit
 
How to select the right automated testing tool
How to select the right automated testing toolHow to select the right automated testing tool
How to select the right automated testing tool
 
Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software Engineering
 
Test case design
Test case designTest case design
Test case design
 
xUnit
xUnitxUnit
xUnit
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
Globalization issues in project management
Globalization issues in project managementGlobalization issues in project management
Globalization issues in project management
 
Insprint automation, build the culture
Insprint automation, build the cultureInsprint automation, build the culture
Insprint automation, build the culture
 
Software Design and Modularity
Software Design and ModularitySoftware Design and Modularity
Software Design and Modularity
 
Regular Expression in Compiler design
Regular Expression in Compiler designRegular Expression in Compiler design
Regular Expression in Compiler design
 
Software estimation
Software estimationSoftware estimation
Software estimation
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
Incremental process model
Incremental  process  modelIncremental  process  model
Incremental process model
 
Regression testing
Regression testingRegression testing
Regression testing
 
.NET and C# Introduction
.NET and C# Introduction.NET and C# Introduction
.NET and C# Introduction
 

En vedette

Executive QA Strategy Presentation
Executive QA Strategy PresentationExecutive QA Strategy Presentation
Executive QA Strategy Presentation
Martin Ruddy
 
SOFTWARE VERIFICATION & VALIDATION
SOFTWARE VERIFICATION & VALIDATIONSOFTWARE VERIFICATION & VALIDATION
SOFTWARE VERIFICATION & VALIDATION
Amin Bandeali
 
Validation testing
Validation testingValidation testing
Validation testing
Slideshare
 
Deterministic vs stochastic
Deterministic vs stochasticDeterministic vs stochastic
Deterministic vs stochastic
sohail40
 
Software engineering presentation
Software engineering presentationSoftware engineering presentation
Software engineering presentation
MJ Ferdous
 

En vedette (20)

Testing tools
Testing toolsTesting tools
Testing tools
 
What Exactly are the Techniques of Software Verification & Validation
What Exactly are the Techniques of Software Verification & ValidationWhat Exactly are the Techniques of Software Verification & Validation
What Exactly are the Techniques of Software Verification & Validation
 
[Kartuku] Software Quality
[Kartuku] Software Quality[Kartuku] Software Quality
[Kartuku] Software Quality
 
Executive QA Strategy Presentation
Executive QA Strategy PresentationExecutive QA Strategy Presentation
Executive QA Strategy Presentation
 
Beyond "Quality Assurance"
Beyond "Quality Assurance"Beyond "Quality Assurance"
Beyond "Quality Assurance"
 
SOFTWARE VERIFICATION & VALIDATION
SOFTWARE VERIFICATION & VALIDATIONSOFTWARE VERIFICATION & VALIDATION
SOFTWARE VERIFICATION & VALIDATION
 
Knowledge sharing for QA teams
Knowledge sharing for QA teamsKnowledge sharing for QA teams
Knowledge sharing for QA teams
 
Call Centre QA - Debra De Graaf
Call Centre QA - Debra De GraafCall Centre QA - Debra De Graaf
Call Centre QA - Debra De Graaf
 
Regression and performance testing
Regression and performance testingRegression and performance testing
Regression and performance testing
 
PechaKucha 20x20 - Merdeka Lalu Apa (Go-jek)
PechaKucha 20x20 - Merdeka Lalu Apa (Go-jek)PechaKucha 20x20 - Merdeka Lalu Apa (Go-jek)
PechaKucha 20x20 - Merdeka Lalu Apa (Go-jek)
 
Role of engineers in army
Role of engineers in armyRole of engineers in army
Role of engineers in army
 
Model Checking Tutorial
Model Checking TutorialModel Checking Tutorial
Model Checking Tutorial
 
Validation testing
Validation testingValidation testing
Validation testing
 
Software Requirement Elicitation Techniques http://www.imran.xyz
Software Requirement Elicitation Techniques http://www.imran.xyzSoftware Requirement Elicitation Techniques http://www.imran.xyz
Software Requirement Elicitation Techniques http://www.imran.xyz
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
 
Deterministic vs stochastic
Deterministic vs stochasticDeterministic vs stochastic
Deterministic vs stochastic
 
Agile Project Management - An introduction to Agile and the new PMI-ACP
Agile Project Management - An introduction to Agile and the new PMI-ACPAgile Project Management - An introduction to Agile and the new PMI-ACP
Agile Project Management - An introduction to Agile and the new PMI-ACP
 
Génie Logiciel : les tests
Génie Logiciel : les testsGénie Logiciel : les tests
Génie Logiciel : les tests
 
Introduction to Agile Project Planning and Project Management
Introduction to Agile Project Planning and Project ManagementIntroduction to Agile Project Planning and Project Management
Introduction to Agile Project Planning and Project Management
 
Software engineering presentation
Software engineering presentationSoftware engineering presentation
Software engineering presentation
 

Similaire à Tools for Software Verification and Validation

Hrishikesh_iitg_internship_report
Hrishikesh_iitg_internship_reportHrishikesh_iitg_internship_report
Hrishikesh_iitg_internship_report
Hrishikesh Malakar
 

Similaire à Tools for Software Verification and Validation (20)

Cloud Testing Research
Cloud Testing ResearchCloud Testing Research
Cloud Testing Research
 
hp_alm.docx
hp_alm.docxhp_alm.docx
hp_alm.docx
 
5 Best Unit Test Frameworks to Automate Unit Tests
5 Best Unit Test Frameworks to Automate Unit Tests5 Best Unit Test Frameworks to Automate Unit Tests
5 Best Unit Test Frameworks to Automate Unit Tests
 
Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++
 
Hrishikesh_iitg_internship_report
Hrishikesh_iitg_internship_reportHrishikesh_iitg_internship_report
Hrishikesh_iitg_internship_report
 
Quality Assurance Process
Quality Assurance ProcessQuality Assurance Process
Quality Assurance Process
 
Unit Testing in Flutter - From Workflow Essentials to Complex Scenarios
Unit Testing in Flutter - From Workflow Essentials to Complex ScenariosUnit Testing in Flutter - From Workflow Essentials to Complex Scenarios
Unit Testing in Flutter - From Workflow Essentials to Complex Scenarios
 
ISTQB Agile Tester - Agile Test Tools
ISTQB Agile Tester - Agile Test ToolsISTQB Agile Tester - Agile Test Tools
ISTQB Agile Tester - Agile Test Tools
 
13090016_vectorcast.ppt
13090016_vectorcast.ppt13090016_vectorcast.ppt
13090016_vectorcast.ppt
 
DevOps Practices in a Nutshell
DevOps Practices in a NutshellDevOps Practices in a Nutshell
DevOps Practices in a Nutshell
 
Unit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software EngineeringUnit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software Engineering
 
DevOps CI Automation Continuous Integration
DevOps CI Automation Continuous IntegrationDevOps CI Automation Continuous Integration
DevOps CI Automation Continuous Integration
 
Unit testing - what is its importance
Unit testing - what is its importanceUnit testing - what is its importance
Unit testing - what is its importance
 
Automation Testing of Web based Application with Selenium and HP UFT (QTP)
Automation Testing of Web based Application with Selenium and HP UFT (QTP)Automation Testing of Web based Application with Selenium and HP UFT (QTP)
Automation Testing of Web based Application with Selenium and HP UFT (QTP)
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
STLC & SDLC-ppt-1.pptx
STLC & SDLC-ppt-1.pptxSTLC & SDLC-ppt-1.pptx
STLC & SDLC-ppt-1.pptx
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoil
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycle
 
SCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPSSCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPS
 
Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2
 

Plus de aliraza786

Practical Software Measurement
Practical Software MeasurementPractical Software Measurement
Practical Software Measurement
aliraza786
 
Establishing a Software Measurement Process
Establishing a Software Measurement ProcessEstablishing a Software Measurement Process
Establishing a Software Measurement Process
aliraza786
 
DSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps MashupsDSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps Mashups
aliraza786
 
Software Effort Measurement Using Abstraction Techniques
Software Effort Measurement Using Abstraction TechniquesSoftware Effort Measurement Using Abstraction Techniques
Software Effort Measurement Using Abstraction Techniques
aliraza786
 
Maintenance Best Practices for Service Oriented
Maintenance Best Practices for Service OrientedMaintenance Best Practices for Service Oriented
Maintenance Best Practices for Service Oriented
aliraza786
 
Intellectual Property Open Source Software Movement
Intellectual Property   Open Source Software MovementIntellectual Property   Open Source Software Movement
Intellectual Property Open Source Software Movement
aliraza786
 

Plus de aliraza786 (6)

Practical Software Measurement
Practical Software MeasurementPractical Software Measurement
Practical Software Measurement
 
Establishing a Software Measurement Process
Establishing a Software Measurement ProcessEstablishing a Software Measurement Process
Establishing a Software Measurement Process
 
DSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps MashupsDSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps Mashups
 
Software Effort Measurement Using Abstraction Techniques
Software Effort Measurement Using Abstraction TechniquesSoftware Effort Measurement Using Abstraction Techniques
Software Effort Measurement Using Abstraction Techniques
 
Maintenance Best Practices for Service Oriented
Maintenance Best Practices for Service OrientedMaintenance Best Practices for Service Oriented
Maintenance Best Practices for Service Oriented
 
Intellectual Property Open Source Software Movement
Intellectual Property   Open Source Software MovementIntellectual Property   Open Source Software Movement
Intellectual Property Open Source Software Movement
 

Tools for Software Verification and Validation