Software Testing & Quality Assurance Slides - Week 9
Date Published: 05/12/2019
These slides will explain the Agile Methodology to understand how to do testing following Agile SDLC. We will also learn what is an XML, how the web applications are served on the internet, their architecture and building blocks. The successful tester should know these concepts to perform his daily job due to a huge number of web application development in the IT industry.

Agenda
  • Agile Methodology
  • XML
  • Web Application Architecture
  • HTML

      Agile Development Life Cycle - Overview
      • Mostly used SDLC in the IT industry.
      • Agile development model is a type of Incremental model.
      • Incremental Model: Divide full software development into various small builds (Multi Waterfall Cycles)

          Agile Development Life Cycle - Overview
          • Software is developed in incremental, rapid cycles.
          • This results in small incremental releases with each release building on previous functionality. 
          • Each release is thoroughly tested to ensure software quality is maintained.
          • Advantages
            • Customer satisfaction by continues delivery of the working product.
            • Strong interaction between Customer, developer, and testers.
            • Late requirements changings are welcomed.
          • Disadvantages
            • Difficult to estimate the total cost of the complete software.
          • When to use an Agile model?
            • Continues changing requirements

              Agile Development Life Cycle - Overview

                  Agile SDLC - Teams
                  • There are mainly three roles that a Scrum team have
                  • Product Owner – who has the responsibility of managing the product backlog. Works with end users and customers and provide proper requirement to the team to build the proper product.
                  • Scrum Master – who works with the scrum team to make sure each sprint gets complete on time. Scrum master ensures proper workflow to the team.
                  • Scrum Team – Each member in the team should be self-organized, dedicated and responsible for a high quality of the work.

                      Agile - Product and Sprint Backlogs
                      • Product Backlog -  is maintained by the project owner which contains every feature and requirement of the product.
                      • Sprint Backlog -  can be treated as a subset of product backlog which contains features and requirements related to that particular sprint only.

                          Agile - Daily Stand up Meeting
                          • Daily meetings among agile team members
                          • Meetings are usually 5 to 10 minutes long
                          • Scrum master facilitates the meeting
                          • The team discusses how much work has been completed.
                          • What are the plans to resolve the technical issues?
                          • What steps need to be taken to complete the projects etc.

                              Agile - Task Board
                              • Taskboard is a dashboard which shows the progress of the project
                              • User Story: which has the actual business requirement.
                              • To Do: Tasks that can be worked on.
                              • In Progress: Tasks in progress.
                              • To Verify: Tasks pending for verification or testing
                              • Done: Completed tasks.

                                  Agile - User Stories, Task and Epic
                                  • User Story: User Story defines the actual business requirement. Generally created by the Business owner.
                                  • Task: To accomplish the business requirements development team create tasks.
                                  • Epic: A group of related user stories is called an Epic.

                                      Agile - Testing
                                      • So what is different for a QA tester in agile methodology?
                                      • Agile testing is done parallel to the development activity whereas in the traditional waterfall model testing is done at the end of the development.
                                      • As done in parallel, agile testing is done on small features whereas in the waterfall model testing is done on the whole application.
                                      • Agile testing is done in a dynamic environment.

                                          XML
                                          • XML stands for EXtensible Markup Language. 
                                          • XML was designed to describe data. 
                                          • XML is a software- and hardware independent tool for carrying information. 
                                          • Maybe it is little hard to understand, but XML does NOT do anything. 
                                          • Software is required to send, receive or display an XML. 

                                              XML - Sample

                                                  XML - Invent Your Own Tags
                                                  • The tags in the XML are not defined in an XML standard. They are "invented" by the author of the XML document. 
                                                  • The XML language has no predefined tags. 
                                                  • XML allows the author to define his/her own tags and his/her own document structure

                                                      XML - Simplifies
                                                      • Data Transport: One of the most time-consuming challenges for developers is to exchange data between incompatible systems over the Internet. Exchanging data as XML greatly reduces this complexity, since the data can be read by different incompatible applications. 
                                                      • Platform Changes: Upgrading to new systems (hardware or software platforms), is always time-consuming. Large amounts of data must be converted and incompatible data is often lost. XML data is stored in text format. This makes it easier to expand or upgrade to new operating systems, new applications, or new browsers, without losing data. 

                                                          Web Application Architecture

                                                              Web Application Architecture Contd...

                                                                  Web Application Architecture Contd...

                                                                      HTML
                                                                      • Stands for HyperText Markup Language
                                                                      • With HTML you can create your own web site.
                                                                      • HTML is easy and fun to learn

                                                                          HTML Page

                                                                              HTML Explained
                                                                              • A markup language is a set of markup tags
                                                                              • HTML documents are described by HTML tags
                                                                              • Each HTML tag describes different document content
                                                                              • The text between <html> and </html> describes an HTML document
                                                                              • The text between <head> and </head> provides information about the document
                                                                              • The text between <title> and </title> provides a title for the document
                                                                              • The text between <body> and </body> describes the visible page content
                                                                              • The text between <h1> and </h1> describes a heading
                                                                              • The text between <p> and </p> describes a paragraph

                                                                                  Web Browser
                                                                                  • The purpose of a web browser (Chrome, IE, Firefox, Safari) is to read HTML documents and display them.
                                                                                  • The browser does not display the HTML tags, but uses them to determine how to display the document:

                                                                                      Software Testing Life Cycle (STLC)


                                                                                              Keywords: agile tutorial, agile sdlc, testing in agile, xml, web application architecture