SlideShare a Scribd company logo
1 of 28
Testing and Rolling Out
Enterprise Applications
 Each enterprise application undergoes various types
of testing to ensure that it demonstrates the desired
functionalities and quality attributes.
 Based on ‘What’ needs to be tested, testing can be
divided into two categories:
• Functional Testing: Testing the functionalities as per
the stated requirements is termed as functional
testing.
• Non-Functional testing: Non-Functional testing caters
to testing all the other things except functionalities to
ensure that the quality attributes are as per the
requirements.
Testing and its Types
Based on ‘How’ to test, the method of testing can be
divided into three categories:
 White Box Testing: This method of testing tests the
internal structure of the application in detail. This
method typically checks for the flow of data, control
and branching sequences
 Black Box Testing: This method of testing tests the
software without need for understanding the internal
structure and focuses on testing the application from
an external perspective.
 Gray Box testing is a hybrid form of white box and
black box testing methods
Methods of Testing
Testing Levels
Production Testing
Acceptance Testing
System Testing
Integration Testing
Unit Testing
Testing levels of enterprise applications
Contd….
 Unit testing is performed to ensure that a standalone
function/code/module/class works as per the
specifications.
 Integration testing is to ensure that the software
code/modules/functions/classes are grouped
together consistently.
 System testing is the testing in which system is also
investigated holistically from the perspective of
functional as well as non functional requirements.
Testing Levels (Contd…)
Contd….
 Acceptance Testing is done towards the end of testing
phase, just before the roll out of the enterprise
application, by the end users and primarily includes
the test cases based on a selective subset of end user
requirements.
 Production Testing is basically a pilot release of the
enterprise application in the production environment.
Testing Levels (Contd…)
Testing Approach
Test Strategy
Test Analysis
Test Execution
Test Planning
Enterprise Application Testing Approach Contd….
 Test strategy
• This refers to the overall approach to test the
enterprise application. It takes into account the
environment, the types of testing to be done,
the testing team, the effort, the cost and the timeline
of testing, defect tracking, tools to be used, test
planning and when to end the testing. The output of
this phase is a Test Strategy document.
 Test planning
• Test planning is used to plan the execution of tests as
decided in the test strategy.
 Test execution
• Development team may be responsible for executing
the unit testing and integration testing.
Testing Approach (Contd…)
Contd….
• Each of the test cases is then executed and the results
are logged.
• Test execution is done for both functional and non-
functional testing. Testing is considered complete
when the quality goals set in the test strategy are met.
 Test analysis
• The defects captured are analyzed for complexity, type,
severity, impact and many other things.
Testing Approach (Contd…)
Enterprise Application Environments
Production Testing
Acceptance Testing
System Testing
Integration Testing
Unit Testing Development
Test
Quality
Assurance
Staging
Production
Testing Levels Environments
Enterprise application environments and testing levels
Purpose of Enterprise Application
Environments
Application
Environments
Purpose
Development Development environment is a high access, low budget and low
security environment used mainly by the developers for construction
activities including unit testing.
Test This environment is used by the developers to perform integration
activities and to do integration testing. Test environment will typically
have moderate access control and moderate security.
Quality Assurance QA environment having high access controls is typically used for
Quality Assurance activities by an external Quality Assurance team.
Most of the non functional requirements are tested in this environment.
Staging Staging environment mimics production environment in all aspects,
possibly except for capacity and security. This environment may be
used for training end users. This ensures all physical configurations are
tested and ready for service.
Production Production environment is the environment where the final enterprise
application eventually resides. This environment has high security and
high access control. The capacity of this environment is designed to
cater to real life requirements. This also has to ensure high availability.
Integration Testing
 The software units/components are integrated into
assemblages after unit testing.
 The interfaces among these underlying
units/components are tested to ensure the working of
these units, when combined together, and is referred
to as integration testing.
 Integration testing teams can use Software
Construction Maps, along with other UML diagrams
such as sequence diagram, to understand the big
picture of these units/components.
 Integration testing is an example of gray box testing.
System Testing
 System testing is testing the enterprise application
and its interfaces as a whole.
 It is a black box testing where a completely integrated
enterprise application is tested for the specified
functional and non-functional requirements.
 A few of the non functional testing types which are
carried out in the system testing phase of enterprise
applications:
• Performance Testing
• Penetration Testing
• Usability Testing
• Globalization testing
• Interface Testing
Performance Testing
 Performance testing is one of the most important
aspects of system testing carried out from the
perspective of validating the responsiveness of the
system under a given workload profile, scalability to
handle growth in number of users and data volume
and stability without incurring visible performance
degradation.
 Typically performance testing comprises of activities
such as load testing, volume testing, stress testing and
endurance testing.
Contd….
Performance Testing (Contd…)
• Load Testing is where the enterprise application is
subjected to a variety of loads, mainly in terms of the
number of users accessing it, to baseline the
performance of the enterprise application.
• Volume Testing is somewhat similar to load testing
carried out by varying the volume of data processed by
the system.
• Stress Testing is done to ensure that the enterprise
application can handle the spikes in load due to
unusual circumstances like a sudden surge in user hits.
• Endurance Testing is performed primarily to identify
problems related to memory leaks by putting the
enterprise application through sustained load
conditions.
Performance Engineering Life Cycle
Performance NFR
Elicitation and Validation
Performance test
Strategy and Planning
Design considerations
for Performance and
Infrastructure Sizing
Performance testing
and Capacity Planning
Workload forecasting
and Capacity &
Infrastructure roadmap
Performance engineering life cycle
Performance Improvement
Corrective action plans are laid out after performance
testing to optimize the performance which typically
involves the following activities:
 Application code analysis: Run-time behavior of
application code is analyzed to investigate the
performance bottleneck.
 Database Optimization: Database schema and stored
procedures are also profiled to determine recursive
calls, physical reads, number of deadlocks, wait
events etc. to point out the performance bottleneck.
 Infrastructure resources and capacity optimization:
Network latency rate, collision rate,
incoming/outgoing packet rate etc. are the
performance parameters to watch for a network.
Penetration Testing
 Penetration testing is the black box testing of an
enterprise application from the security perspective.
 This is one of the most important types of testing in
B2C applications and community sites involving large
number of users.
 Penetration testing is a part of the overall application
security engineering life cycle.
Security Engineering Life Cycle
Security NFR
Elicitation and
Validation
Security test Strategy
and Planning &
Threat Modeling
Design
considerations for
security
Security code review
- Static code analysis
Penetration testing
Revisiting
application security
to handle future
attack vectors
Application security engineering life cycle
Usability Testing
 Usability testing is a form of black box testing of the
enterprise application to validate the usability
requirements typically mentioned as part of the non-
functional requirements.
 Usability testing is especially important for B2C
applications.
 Performed either by the end users themselves or
alternatively by business analysts who represent end
users.
Globalization Testing
 Globalization testing is a manual testing to validate
whether an enterprise application meets the
internationalization/localization requirements.
 This testing is typically performed by test engineers
and business analysts, who are aware of the language
of choice, by running the application in different
locales.
Interface Testing
 Interface testing validates the incoming and outgoing
interfaces of the application under test with respect
to all other applications that it interacts with.
 It is also known as intersystem testing.
 The entry criteria for interface testing are the
readiness and correct documentation of all the
participating systems in the interface testing.
 The objectives of interface testing are dependent on
factors such as nature of communication of interfaces,
request-response handling of the system, data
formats exchanged through the interfaces, types of
validations performed and nature of errors and
exceptions that could arise.
User Acceptance Testing
 User acceptance testing is the black box testing of an
enterprise application performed by the end users of
the system, primarily from the perspective of system’s
stated functionalities and usability.
 This is the last stage of testing before the application
rollout.
 The objectives of a typical user acceptance testing are
to validate:
• The stated functionalities in the system requirement
specification document.
• Part of non functional requirements like usability and
response time.
Contd….
User Acceptance Testing (Contd…)
• The access control of the modules of the application.
• The complete business processes.
• The business data from the outgoing and incoming
interfaces.
• Batch processes, if any.
• The report format and contents.
Rolling out Enterprise Application
 Rolling out enterprise applications means making the
application live on the production environment for
the end user.
 This is the time when the enterprise applications are
handed over to the enterprise application
maintenance team.
 Release engineers facilitate the rolling out procedure
of enterprise applications.
High level Strategies for Rollout
 Brand new rollout: This rollout strategy is for the first
roll out of a brand new application.
 Parallel switch: The parallel switch rollout strategy is
to bring up a new application environment in parallel.
The new environment is verified and application
traffic is switched from the old to the new
environment.
 Rolling rollout: The rolling rollout strategy is
applicable in a clustered and highly managed
environment.
Contd….
High Level Strategies for Rollout (Contd…)
 Phased rollout: Phased rollout is a slower variant of
the rolling rollout strategy. The rollout is phased out
on the basis of particular region or time.
 Up-Down-Up rollout: This rollout strategy starts with
bringing everything down. The system is upgraded,
verified and brought up again. This strategy is the
most time consuming and requires a lot of upfront
planning. This is the safest rollout strategy for large-
scale deployments.
THANK YOU

More Related Content

What's hot

Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement SpecificationNiraj Kumar
 
Architecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsArchitecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsGem WeBlog
 
Incepting Enterprise Applications
Incepting Enterprise ApplicationsIncepting Enterprise Applications
Incepting Enterprise ApplicationsGem WeBlog
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysisasimnawaz54
 
EC8791 Requirement-Specifications-Quality assurance techniques
EC8791 Requirement-Specifications-Quality assurance techniquesEC8791 Requirement-Specifications-Quality assurance techniques
EC8791 Requirement-Specifications-Quality assurance techniquesRajalakshmiSermadurai
 
Requirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsRequirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsIBM Rational software
 
Requirement Engineering Lec.1 & 2 & 3
Requirement Engineering Lec.1 & 2 & 3Requirement Engineering Lec.1 & 2 & 3
Requirement Engineering Lec.1 & 2 & 3Ahmed Alageed
 
Software Engineering Fundamentals
Software Engineering FundamentalsSoftware Engineering Fundamentals
Software Engineering FundamentalsRahul Sudame
 
Software Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summarySoftware Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summaryAhmed Kamel Taha
 
Requirements Engineering Processes
Requirements Engineering ProcessesRequirements Engineering Processes
Requirements Engineering ProcessesRa'Fat Al-Msie'deen
 
software engineering
software engineeringsoftware engineering
software engineeringSnow Queenzz
 
Ch4-Software Engineering 9
Ch4-Software Engineering 9Ch4-Software Engineering 9
Ch4-Software Engineering 9Ian Sommerville
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineeringPreeti Mishra
 
Define and Manage Requirements with IBM Rational Requirements Composer
Define and Manage Requirements with IBM Rational Requirements ComposerDefine and Manage Requirements with IBM Rational Requirements Composer
Define and Manage Requirements with IBM Rational Requirements ComposerAlan Kan
 
Requirement Elicitation Techniques
Requirement Elicitation TechniquesRequirement Elicitation Techniques
Requirement Elicitation TechniquesShwetha-BA
 

What's hot (20)

Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Architecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsArchitecting and Designing Enterprise Applications
Architecting and Designing Enterprise Applications
 
Incepting Enterprise Applications
Incepting Enterprise ApplicationsIncepting Enterprise Applications
Incepting Enterprise Applications
 
03 requirement engineering_process
03 requirement engineering_process03 requirement engineering_process
03 requirement engineering_process
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 
EC8791 Requirement-Specifications-Quality assurance techniques
EC8791 Requirement-Specifications-Quality assurance techniquesEC8791 Requirement-Specifications-Quality assurance techniques
EC8791 Requirement-Specifications-Quality assurance techniques
 
Requirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsRequirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutions
 
Sdlc
SdlcSdlc
Sdlc
 
Requirement Engineering Lec.1 & 2 & 3
Requirement Engineering Lec.1 & 2 & 3Requirement Engineering Lec.1 & 2 & 3
Requirement Engineering Lec.1 & 2 & 3
 
Software Engineering Fundamentals
Software Engineering FundamentalsSoftware Engineering Fundamentals
Software Engineering Fundamentals
 
Software Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summarySoftware Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summary
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysis
 
Requirements Engineering Processes
Requirements Engineering ProcessesRequirements Engineering Processes
Requirements Engineering Processes
 
software engineering
software engineeringsoftware engineering
software engineering
 
Ch4-Software Engineering 9
Ch4-Software Engineering 9Ch4-Software Engineering 9
Ch4-Software Engineering 9
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineering
 
Requirement analysis with use case
Requirement analysis with use caseRequirement analysis with use case
Requirement analysis with use case
 
Define and Manage Requirements with IBM Rational Requirements Composer
Define and Manage Requirements with IBM Rational Requirements ComposerDefine and Manage Requirements with IBM Rational Requirements Composer
Define and Manage Requirements with IBM Rational Requirements Composer
 
Requirement Elicitation Techniques
Requirement Elicitation TechniquesRequirement Elicitation Techniques
Requirement Elicitation Techniques
 
4 sdlc and stlc
4 sdlc and stlc4 sdlc and stlc
4 sdlc and stlc
 

Similar to Testing and Rolling Out Enterprise Applications

Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingRajesh-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingANKUR-BA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingSachin-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingVidya-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingFayis-QA
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146vidhyyav
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testingHaris Jamil
 
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing ConceptsPoojaLQA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingMurageppa-QA
 
Software testing
Software testingSoftware testing
Software testingRavi Dasari
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basicRohit Singh
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testingVenkat Alagarsamy
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx8759000398
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingShwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingLakshmi-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingSwatiS-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingVeneet-BA
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role) Shwetha-BA
 

Similar to Testing and Rolling Out Enterprise Applications (20)

Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing Concepts
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role)
 

More from Gem WeBlog

Analysis of optimization algorithms
Analysis of optimization algorithmsAnalysis of optimization algorithms
Analysis of optimization algorithmsGem WeBlog
 
Particle swarm intelligence
Particle swarm intelligenceParticle swarm intelligence
Particle swarm intelligenceGem WeBlog
 
Nature inspired metaheuristics
Nature inspired metaheuristicsNature inspired metaheuristics
Nature inspired metaheuristicsGem WeBlog
 
Darwin's theory of evolution
Darwin's theory of evolutionDarwin's theory of evolution
Darwin's theory of evolutionGem WeBlog
 
no free-lunch theorem
no free-lunch theoremno free-lunch theorem
no free-lunch theoremGem WeBlog
 
Video and animation
Video and animationVideo and animation
Video and animationGem WeBlog
 
Mpeg video compression
Mpeg video compressionMpeg video compression
Mpeg video compressionGem WeBlog
 
Designing multimedia
Designing multimediaDesigning multimedia
Designing multimediaGem WeBlog
 
Pointers and Structures
Pointers and StructuresPointers and Structures
Pointers and StructuresGem WeBlog
 
Dynamic memory allocation
Dynamic memory allocationDynamic memory allocation
Dynamic memory allocationGem WeBlog
 
Function pointer
Function pointerFunction pointer
Function pointerGem WeBlog
 
10. NULL pointer
10. NULL pointer10. NULL pointer
10. NULL pointerGem WeBlog
 
13. Pointer and 2D array
13. Pointer  and  2D array13. Pointer  and  2D array
13. Pointer and 2D arrayGem WeBlog
 
12.string and pointer
12.string and pointer12.string and pointer
12.string and pointerGem WeBlog
 
7. Pointer Arithmetic
7. Pointer Arithmetic7. Pointer Arithmetic
7. Pointer ArithmeticGem WeBlog
 
1. Pointer Basic
1. Pointer Basic1. Pointer Basic
1. Pointer BasicGem WeBlog
 
Quick Select - Computing a Median (Decrease and Conquer)
Quick Select - Computing a Median (Decrease and Conquer) Quick Select - Computing a Median (Decrease and Conquer)
Quick Select - Computing a Median (Decrease and Conquer) Gem WeBlog
 
Quick Select (Decrease and Conquer)
Quick Select (Decrease and Conquer) Quick Select (Decrease and Conquer)
Quick Select (Decrease and Conquer) Gem WeBlog
 
Topological Sorting (Decrease and Conquer)
Topological Sorting (Decrease and Conquer)Topological Sorting (Decrease and Conquer)
Topological Sorting (Decrease and Conquer)Gem WeBlog
 

More from Gem WeBlog (20)

Analysis of optimization algorithms
Analysis of optimization algorithmsAnalysis of optimization algorithms
Analysis of optimization algorithms
 
Particle swarm intelligence
Particle swarm intelligenceParticle swarm intelligence
Particle swarm intelligence
 
Nature inspired metaheuristics
Nature inspired metaheuristicsNature inspired metaheuristics
Nature inspired metaheuristics
 
Darwin's theory of evolution
Darwin's theory of evolutionDarwin's theory of evolution
Darwin's theory of evolution
 
no free-lunch theorem
no free-lunch theoremno free-lunch theorem
no free-lunch theorem
 
Video and animation
Video and animationVideo and animation
Video and animation
 
Mpeg video compression
Mpeg video compressionMpeg video compression
Mpeg video compression
 
Digital audio
Digital audioDigital audio
Digital audio
 
Designing multimedia
Designing multimediaDesigning multimedia
Designing multimedia
 
Pointers and Structures
Pointers and StructuresPointers and Structures
Pointers and Structures
 
Dynamic memory allocation
Dynamic memory allocationDynamic memory allocation
Dynamic memory allocation
 
Function pointer
Function pointerFunction pointer
Function pointer
 
10. NULL pointer
10. NULL pointer10. NULL pointer
10. NULL pointer
 
13. Pointer and 2D array
13. Pointer  and  2D array13. Pointer  and  2D array
13. Pointer and 2D array
 
12.string and pointer
12.string and pointer12.string and pointer
12.string and pointer
 
7. Pointer Arithmetic
7. Pointer Arithmetic7. Pointer Arithmetic
7. Pointer Arithmetic
 
1. Pointer Basic
1. Pointer Basic1. Pointer Basic
1. Pointer Basic
 
Quick Select - Computing a Median (Decrease and Conquer)
Quick Select - Computing a Median (Decrease and Conquer) Quick Select - Computing a Median (Decrease and Conquer)
Quick Select - Computing a Median (Decrease and Conquer)
 
Quick Select (Decrease and Conquer)
Quick Select (Decrease and Conquer) Quick Select (Decrease and Conquer)
Quick Select (Decrease and Conquer)
 
Topological Sorting (Decrease and Conquer)
Topological Sorting (Decrease and Conquer)Topological Sorting (Decrease and Conquer)
Topological Sorting (Decrease and Conquer)
 

Recently uploaded

Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...M56BOOKSTORE PRODUCT/SERVICE
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 

Recently uploaded (20)

Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 

Testing and Rolling Out Enterprise Applications

  • 1. Testing and Rolling Out Enterprise Applications
  • 2.  Each enterprise application undergoes various types of testing to ensure that it demonstrates the desired functionalities and quality attributes.  Based on ‘What’ needs to be tested, testing can be divided into two categories: • Functional Testing: Testing the functionalities as per the stated requirements is termed as functional testing. • Non-Functional testing: Non-Functional testing caters to testing all the other things except functionalities to ensure that the quality attributes are as per the requirements. Testing and its Types
  • 3. Based on ‘How’ to test, the method of testing can be divided into three categories:  White Box Testing: This method of testing tests the internal structure of the application in detail. This method typically checks for the flow of data, control and branching sequences  Black Box Testing: This method of testing tests the software without need for understanding the internal structure and focuses on testing the application from an external perspective.  Gray Box testing is a hybrid form of white box and black box testing methods Methods of Testing
  • 4. Testing Levels Production Testing Acceptance Testing System Testing Integration Testing Unit Testing Testing levels of enterprise applications Contd….
  • 5.  Unit testing is performed to ensure that a standalone function/code/module/class works as per the specifications.  Integration testing is to ensure that the software code/modules/functions/classes are grouped together consistently.  System testing is the testing in which system is also investigated holistically from the perspective of functional as well as non functional requirements. Testing Levels (Contd…) Contd….
  • 6.  Acceptance Testing is done towards the end of testing phase, just before the roll out of the enterprise application, by the end users and primarily includes the test cases based on a selective subset of end user requirements.  Production Testing is basically a pilot release of the enterprise application in the production environment. Testing Levels (Contd…)
  • 7. Testing Approach Test Strategy Test Analysis Test Execution Test Planning Enterprise Application Testing Approach Contd….
  • 8.  Test strategy • This refers to the overall approach to test the enterprise application. It takes into account the environment, the types of testing to be done, the testing team, the effort, the cost and the timeline of testing, defect tracking, tools to be used, test planning and when to end the testing. The output of this phase is a Test Strategy document.  Test planning • Test planning is used to plan the execution of tests as decided in the test strategy.  Test execution • Development team may be responsible for executing the unit testing and integration testing. Testing Approach (Contd…) Contd….
  • 9. • Each of the test cases is then executed and the results are logged. • Test execution is done for both functional and non- functional testing. Testing is considered complete when the quality goals set in the test strategy are met.  Test analysis • The defects captured are analyzed for complexity, type, severity, impact and many other things. Testing Approach (Contd…)
  • 10. Enterprise Application Environments Production Testing Acceptance Testing System Testing Integration Testing Unit Testing Development Test Quality Assurance Staging Production Testing Levels Environments Enterprise application environments and testing levels
  • 11. Purpose of Enterprise Application Environments Application Environments Purpose Development Development environment is a high access, low budget and low security environment used mainly by the developers for construction activities including unit testing. Test This environment is used by the developers to perform integration activities and to do integration testing. Test environment will typically have moderate access control and moderate security. Quality Assurance QA environment having high access controls is typically used for Quality Assurance activities by an external Quality Assurance team. Most of the non functional requirements are tested in this environment. Staging Staging environment mimics production environment in all aspects, possibly except for capacity and security. This environment may be used for training end users. This ensures all physical configurations are tested and ready for service. Production Production environment is the environment where the final enterprise application eventually resides. This environment has high security and high access control. The capacity of this environment is designed to cater to real life requirements. This also has to ensure high availability.
  • 12. Integration Testing  The software units/components are integrated into assemblages after unit testing.  The interfaces among these underlying units/components are tested to ensure the working of these units, when combined together, and is referred to as integration testing.  Integration testing teams can use Software Construction Maps, along with other UML diagrams such as sequence diagram, to understand the big picture of these units/components.  Integration testing is an example of gray box testing.
  • 13. System Testing  System testing is testing the enterprise application and its interfaces as a whole.  It is a black box testing where a completely integrated enterprise application is tested for the specified functional and non-functional requirements.  A few of the non functional testing types which are carried out in the system testing phase of enterprise applications: • Performance Testing • Penetration Testing • Usability Testing • Globalization testing • Interface Testing
  • 14. Performance Testing  Performance testing is one of the most important aspects of system testing carried out from the perspective of validating the responsiveness of the system under a given workload profile, scalability to handle growth in number of users and data volume and stability without incurring visible performance degradation.  Typically performance testing comprises of activities such as load testing, volume testing, stress testing and endurance testing. Contd….
  • 15. Performance Testing (Contd…) • Load Testing is where the enterprise application is subjected to a variety of loads, mainly in terms of the number of users accessing it, to baseline the performance of the enterprise application. • Volume Testing is somewhat similar to load testing carried out by varying the volume of data processed by the system. • Stress Testing is done to ensure that the enterprise application can handle the spikes in load due to unusual circumstances like a sudden surge in user hits. • Endurance Testing is performed primarily to identify problems related to memory leaks by putting the enterprise application through sustained load conditions.
  • 16. Performance Engineering Life Cycle Performance NFR Elicitation and Validation Performance test Strategy and Planning Design considerations for Performance and Infrastructure Sizing Performance testing and Capacity Planning Workload forecasting and Capacity & Infrastructure roadmap Performance engineering life cycle
  • 17. Performance Improvement Corrective action plans are laid out after performance testing to optimize the performance which typically involves the following activities:  Application code analysis: Run-time behavior of application code is analyzed to investigate the performance bottleneck.  Database Optimization: Database schema and stored procedures are also profiled to determine recursive calls, physical reads, number of deadlocks, wait events etc. to point out the performance bottleneck.  Infrastructure resources and capacity optimization: Network latency rate, collision rate, incoming/outgoing packet rate etc. are the performance parameters to watch for a network.
  • 18. Penetration Testing  Penetration testing is the black box testing of an enterprise application from the security perspective.  This is one of the most important types of testing in B2C applications and community sites involving large number of users.  Penetration testing is a part of the overall application security engineering life cycle.
  • 19. Security Engineering Life Cycle Security NFR Elicitation and Validation Security test Strategy and Planning & Threat Modeling Design considerations for security Security code review - Static code analysis Penetration testing Revisiting application security to handle future attack vectors Application security engineering life cycle
  • 20. Usability Testing  Usability testing is a form of black box testing of the enterprise application to validate the usability requirements typically mentioned as part of the non- functional requirements.  Usability testing is especially important for B2C applications.  Performed either by the end users themselves or alternatively by business analysts who represent end users.
  • 21. Globalization Testing  Globalization testing is a manual testing to validate whether an enterprise application meets the internationalization/localization requirements.  This testing is typically performed by test engineers and business analysts, who are aware of the language of choice, by running the application in different locales.
  • 22. Interface Testing  Interface testing validates the incoming and outgoing interfaces of the application under test with respect to all other applications that it interacts with.  It is also known as intersystem testing.  The entry criteria for interface testing are the readiness and correct documentation of all the participating systems in the interface testing.  The objectives of interface testing are dependent on factors such as nature of communication of interfaces, request-response handling of the system, data formats exchanged through the interfaces, types of validations performed and nature of errors and exceptions that could arise.
  • 23. User Acceptance Testing  User acceptance testing is the black box testing of an enterprise application performed by the end users of the system, primarily from the perspective of system’s stated functionalities and usability.  This is the last stage of testing before the application rollout.  The objectives of a typical user acceptance testing are to validate: • The stated functionalities in the system requirement specification document. • Part of non functional requirements like usability and response time. Contd….
  • 24. User Acceptance Testing (Contd…) • The access control of the modules of the application. • The complete business processes. • The business data from the outgoing and incoming interfaces. • Batch processes, if any. • The report format and contents.
  • 25. Rolling out Enterprise Application  Rolling out enterprise applications means making the application live on the production environment for the end user.  This is the time when the enterprise applications are handed over to the enterprise application maintenance team.  Release engineers facilitate the rolling out procedure of enterprise applications.
  • 26. High level Strategies for Rollout  Brand new rollout: This rollout strategy is for the first roll out of a brand new application.  Parallel switch: The parallel switch rollout strategy is to bring up a new application environment in parallel. The new environment is verified and application traffic is switched from the old to the new environment.  Rolling rollout: The rolling rollout strategy is applicable in a clustered and highly managed environment. Contd….
  • 27. High Level Strategies for Rollout (Contd…)  Phased rollout: Phased rollout is a slower variant of the rolling rollout strategy. The rollout is phased out on the basis of particular region or time.  Up-Down-Up rollout: This rollout strategy starts with bringing everything down. The system is upgraded, verified and brought up again. This strategy is the most time consuming and requires a lot of upfront planning. This is the safest rollout strategy for large- scale deployments.