SlideShare a Scribd company logo
Software Architecture
             Software Architectural Test Case Writing




2009.11.08                                                    Sitdhibong Laokok
                                                        goto.champ@gmail.com
Agenda

• Software Development Methodology
• Software Testing
• Architectural Test Case Writing
Agenda

• Software Development Methodology
• Software Testing
• Architectural Test Case Writing
Software Dev. Methodology



• Waterfall Model
• Iterative and Incremental Model
Waterfall
Requirements

      Design

       Implementation

               Verification

                   Maintenance
Iterative and Incremental

                              System Analysis                       Coding



                                              Architecture Design

                                                                             TEST
Business     Critical Requirement
 Goal                                     Test Case Design



                                Requirement
Vilfredo Pareto
   Italian economist
    (1848 - 1923)
20

80
100

      20%
 75


                80%
 50

      80%
 25


                20%
  0
      Actions   Results
Iterative and Incremental

                              System Analysis                       Coding



                                              Architecture Design

                                                                             TEST
Business     Critical Requirement
 Goal                                     Test Case Design



                                Requirement
Business Goals




                                        System Feature




                                  Function Requirement




                                             Test Case


Comes from Critical Requirement
Agenda

• Software Development Methodology
• Software Testing
• Architectural Test Case Writing
Test Plan : “SPACEDIRT”
•   Scope         •   Incidentals

•   People        •   Risks

•   Approach      •   Tasks

•   Criteria

•   Environment

•   Deliverable
Goals

• To improve quality
• For reliability estimation
• For Verification and Validation (V&V)
Verification & Validation
• Functionality   • Engineering       • Adaptability
  • Correctness     • Efficiency         • Flexibility
  • Reliability     • Testability       • Reusability
  • Usability       • Documentation     • Maintainability
                    • Structure
Software Dimension




W3C Semantic Web Logo - http://www.w3.org/2007/10/sw-logos.html
Software Dimension
                                                                  Usability



                                Quality                                       Functionality


                                                                  Security



W3C Semantic Web Logo - http://www.w3.org/2007/10/sw-logos.html
Software Testing

• Unit Test
• Functional Test
• Reliability Test
• Performance Test
• Architectural Test
Functional & Non-Functional

                    Functionality
      Enter PIN no., Select account type, Choose
      or Enter Amount, Receive money


                  Non-Functionality
         Verify PIN no. with bank, Check total
       amount in machine, Check user’s account
                balance, Error Handling
Quality Attributes*
        • Availability
        • Modifiability
        • Performance
        • Security
        • Traceability
        • Usability
*Or Non-Functionality Requirement
Quality Attribute Scenarios
 •   Source of stimulus                   •   Artifact

 •   Stimulus                             •   Response

 •   Environment                          •   Response measure




                                Artifact
                     Stimulus                  Response
                                Environment
Source of stimulus                                        Response measure
Artifact
                     Stimulus                       Response
                                  Environment
Source of Stimulus                                             Response measure


  Source of
   Stimulus    Developer

   Stimulus    Wishes to change the UI

   Artifact    Code

 Environment   At design time

  Response     Modification is made with no side effect
  Response
  measure      In 3 hours
In the case of developer want to change UI Design
Vision                                       Vision

                                                                                        Business Goals
                              BG1               BG2                 BG3
                                                                                        System Feature

            SF1               SF2                SF3                SF4             SF5

                                                                                            Function
                                                                                          Requirement
             FR2                    FR4
                                                 FR6          FR8
      FR1               FR3                                               FR9       FR10
                                      FR5                FR7

                  TC4         TC6
                                                TC9            TC12       TC13
TC1         TC3                                                                               TC16
                        TC5         TC7
                                                             TC11
      TC2                                 TC8         TC10                       TC14       Test Case
Software Engineering – Dr Ghazy Assassa                                                        Page 2 of 5


                                                Test Case Template (Doc:T_01)

    Test Case #:                                                     Test Case Name:                    Page: 1 of ..
    System:                                                           Subsystem:
    Designed by:                                                      Design Date:
    Executed by:                                                      Execution Date:
    Short Description:



      Pre-conditions




    Step Action                                 Expected System Response                Pass/ Comment
                                                                                        Fail
     1
     2




      Post-conditions




http://faculty.ksu.edu.sa/ghazy/CSC342_Tools/Test%20Case%20Template.pdf
Software Engineering – Dr Ghazy Assassa                                                                           Page 3 of 5

                                               Test Case Example1 (simple test)

    Test Case #: 2.2                                                 Test Case Name: Change PIN                         Page: 1 of 1
    System: ATM                                                       Subsystem: PIN
    Designed by: ABC                                                  Design Date: 28/11/2004
    Executed by:                                                      Execution Date:
    Short Description: Test the ATM Change PIN service

      Pre-conditions
      The user has a valid ATM card - The user has accessed the ATM by placing his ATM card in the machine
      The current PIN is 1234
      The system displays the main menu

    Step Action                              Expected System Response                                              Pass/ Comment
                                                                                                                   Fail
     1     Click the 'Change PIN' button     The system displays a message asking the user to enter the new PIN
     2     Enter '5555'                      The system displays a message asking the user to confirm (re-enter)
                                             the new PIN
     3     Re-enter '5555'                   The system displays a message of successful operation
                                             The system asks the user if he wants to perform other operations
     4     Click 'YES' button                The system displays the main menu
     5     Check post-condition 1

      Post-conditions
      1. The new PIN '5555' is saved in the database




http://faculty.ksu.edu.sa/ghazy/CSC342_Tools/Test%20Case%20Template.pdf
Vision

Business Goals


System Feature




    Function
  Requirement




    Test Case
Agenda

• Software Development Methodology
• Software Testing
• Architectural Test Case Writing
Architecture Design is Shaped by KPIs

                   KPI #1




   KPI #3                               KPI #2


             Developer
                         Architecture




                   KPI #4
Artifact
                     Stimulus                       Response
                                  Environment
Source of Stimulus                                             Response measure


  Source of
   Stimulus    Developer

   Stimulus    Wishes to change the UI

   Artifact    Code

 Environment   At design time

  Response     Modification is made with no side effect
  Response
  measure      In 3 hours
In the case of developer want to change UI Design
Architecture Design is Shaped by KPIs

  KPI #1: Developer have to change UI within 3 hours at design time




    KPI #3                                               KPI #2


                       Developer
                                     Architecture




                               KPI #4
System Qualities
• Availability    • Reliability
• Modifiability    • Interoperability
• Usability       • Integrability
• Performance     • Supportability
• Security        • Customizability
• Testability     • Safety
• Scalability     • Maintainability
• Extensibility
Test Case Elements
                  Approaches

         Name                  Objective




Expected Output                Test Scripts
 and Outcome
                    Input
Sample Scenario
            Scenario refinement for Scenario:

            Scenario(s):

            Business Goals:

            Relevant Quantity Attribute(s):

                                      Stimulus:
                Scenario Components




                                      Source of Stimulus:

                                      Environment:

                                      Artifact:

                                      Response:

                                      Response Measure:

            Questions:

            Issues:



Narong Chansoi, “Software Architecture Test Case Writing”
Artifact
                     Stimulus                       Response
                                  Environment
Source of Stimulus                                             Response measure


  Source of
   Stimulus    Developer

   Stimulus    Wishes to change the UI

   Artifact    Code

 Environment   At design time

  Response     Modification is made with no side effect
  Response
  measure      In 3 hours
In the case of developer want to change UI Design
Sample Scenario
            Scenario refinement for Scenario: PR1-SCE1-CHANGEUI

            Scenario(s): Developer want to change UI at design time

            Business Goals:

            Relevant Quantity Attribute(s): Maintainability

                                      Stimulus:             Wishes to change the UI
                Scenario Components




                                      Source of Stimulus:   Developer

                                      Environment:          At design time

                                      Artifact:             Code

                                      Response:             Modification made no side effect

                                      Response Measure:     In 3 hours

            Questions: Developer change the UI in test server before deploy to production server?

            Issues:



Narong Chansoi, “Software Architecture Test Case Writing”
Software Engineering – Dr Ghazy Assassa                                                                           Page 3 of 5

                                               Test Case Example1 (simple test)

    Test Case #: 2.2                                                 Test Case Name: Change PIN                         Page: 1 of 1
    System: ATM                                                       Subsystem: PIN
    Designed by: ABC                                                  Design Date: 28/11/2004




                                                                          e
    Executed by:                                                      Execution Date:
    Short Description: Test the ATM Change PIN service




                                             pl
      Pre-conditions
      The user has a valid ATM card - The user has accessed the ATM by placing his ATM card in the machine
      The current PIN is 1234




                                           am
      The system displays the main menu

    Step Action                              Expected System Response                                              Pass/ Comment
                                                                                                                   Fail
     1     Click the 'Change PIN' button     The system displays a message asking the user to enter the new PIN
     2     Enter '5555'                      The system displays a message asking the user to confirm (re-enter)
                                             the new PIN
                         Ex
     3     Re-enter '5555'                   The system displays a message of successful operation
                                             The system asks the user if he wants to perform other operations
     4     Click 'YES' button                The system displays the main menu
     5     Check post-condition 1

      Post-conditions
      1. The new PIN '5555' is saved in the database




http://faculty.ksu.edu.sa/ghazy/CSC342_Tools/Test%20Case%20Template.pdf
References
•   Narong Chansoi: “Software Architectural Test Case Writing”

•   Dr.Varanyu, “80-20” http://varanyu.blogspot.com/2008/10/8020.html

•   “List of Quality Attribute” - http://en.wikipedia.org/wiki/List_of_system_quality_attributes

•   Donald Graham, “Quality Attribute Scenarios”, http://www.spin.org.za/spin21/SPIN%2021%20-
    %20QAS.pdf

•   Christoph Stoermer, “Moving Towards Quality Attribute Driven Software Architecture Reconstruction”,
    http://www.cs.vu.nl/~x/square/qadsar.pdf

•   Ed, “Patterns & Practices Test : Architecture Testing”, http://blogs.msdn.com/pagtest/archive/
    2005/03/18/398678.aspx

•   Louis Marshall, “Project Management for the Web: Quality Test Plan”, http://pm4web.blogspot.com/
    2008/07/quality-test-plan.html

•   Dr Ghazy Assassa, “Software Engineering: Test Case Template and Example”, http://faculty.ksu.edu.sa/ghazy/
    CSC342_Tools/Test%20Case%20Template.pdf

•   GSA, “FIPS 201 Evaliation Program - Template Generator Test Procedure”, http://fips201ep.cio.gov/
    documents/Template%20Generator_Test%20Procedure_v2.0.0.pdf
References
•   QA Plan, “Test Suite”, http://readyset.tigris.org/nonav/templates/test-suite.html

More Related Content

What's hot (20)

PDF
에어큐브
tistrue
 
PPTX
Lab 2-2 Small Business Seminar
melissa flores
 
PPTX
Enterprise Architecture – Vision and Reality on the Same Page
Simon Polovina
 
PPTX
Roadmap 101 of the ServiceNow business platform
Sheetal Kale
 
PDF
Métricas e Indicadores baseados na ITIL
CompanyWeb
 
PDF
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Redis Labs
 
PDF
Cybersecurity leaders guide to xdr for business
filin5
 
KEY
Event Driven Architecture
Stefan Norberg
 
PDF
QA-presentation
Darya Bialova
 
PDF
Serverless Architecture - A Gentle Overview
CodeOps Technologies LLP
 
PDF
apidays LIVE New York 2021 - Solving API security through holistic obervabili...
apidays
 
PDF
Interface characteristics - Kim Clark and Brian Petrini
Kim Clark
 
PPTX
DevOps Transformation at Dynatrace and with Dynatrace
Andreas Grabner
 
PDF
IT4IT™ Reference Architecture in short.
Architecture Center Ltd
 
PDF
Troubleshooting & Debugging Production Microservices in Kubernetes as present...
Baruch Sadogursky
 
PPTX
Shift left as first transformation step into Quality Assurance
Zbyszek Mockun
 
PDF
The Power of Auto ML and How Does it Work
Ivo Andreev
 
PPT
The Gartner IAM Program Maturity Model
Sarah Moore
 
PPTX
Software Test Metrics and Measurements
Davis Thomas
 
PPTX
API Management Part 1 - An Introduction to Azure API Management
BizTalk360
 
에어큐브
tistrue
 
Lab 2-2 Small Business Seminar
melissa flores
 
Enterprise Architecture – Vision and Reality on the Same Page
Simon Polovina
 
Roadmap 101 of the ServiceNow business platform
Sheetal Kale
 
Métricas e Indicadores baseados na ITIL
CompanyWeb
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Redis Labs
 
Cybersecurity leaders guide to xdr for business
filin5
 
Event Driven Architecture
Stefan Norberg
 
QA-presentation
Darya Bialova
 
Serverless Architecture - A Gentle Overview
CodeOps Technologies LLP
 
apidays LIVE New York 2021 - Solving API security through holistic obervabili...
apidays
 
Interface characteristics - Kim Clark and Brian Petrini
Kim Clark
 
DevOps Transformation at Dynatrace and with Dynatrace
Andreas Grabner
 
IT4IT™ Reference Architecture in short.
Architecture Center Ltd
 
Troubleshooting & Debugging Production Microservices in Kubernetes as present...
Baruch Sadogursky
 
Shift left as first transformation step into Quality Assurance
Zbyszek Mockun
 
The Power of Auto ML and How Does it Work
Ivo Andreev
 
The Gartner IAM Program Maturity Model
Sarah Moore
 
Software Test Metrics and Measurements
Davis Thomas
 
API Management Part 1 - An Introduction to Azure API Management
BizTalk360
 

Viewers also liked (6)

PPT
Methods to test an e-learning Web application.
telss09
 
PPS
E Learning Case Study
wingfdeb
 
PDF
Test case template
sephalika
 
DOC
online education system project report
Hagi Sahib
 
DOCX
Virtual education system
Dhara024
 
PPTX
Rfid technology
Publicis Sapient
 
Methods to test an e-learning Web application.
telss09
 
E Learning Case Study
wingfdeb
 
Test case template
sephalika
 
online education system project report
Hagi Sahib
 
Virtual education system
Dhara024
 
Rfid technology
Publicis Sapient
 
Ad

Similar to Software Architecture: Test Case Writing (20)

PPT
Chapter_02_Process Models_Roger Pressman.ppt
brmadhu
 
PPT
software requirement engineeringg.ppt
SsdSsd5
 
PPTX
Study of solution development methodology for small size projects.
Joon ho Park
 
PDF
Testing in an Open Source Middleware Platform Space The WSO2 Way.
WSO2
 
PDF
ITS-Fidel
Fidel Softech P. Ltd
 
PPTX
BA conf presentation 2010
Julen Mohanty
 
PDF
Machine programming
DESMOND YUEN
 
PPTX
Lanzamiento Visual Studio 2012 - Modern ALM
Debora Di Piano
 
PPTX
Lights-Out Testing for Lights-On Business
Worksoft
 
PDF
Reliability Growth Planning: Its Concept, Applications, and Challenges
ASQ Reliability Division
 
PPTX
Visual Studio 2010 ALM Tools Overview
Ayman El-Hattab
 
PDF
Software defect prevention example project
Zarko Acimovic
 
PDF
Defect prevention techniques
Zarko Acimovic
 
PPT
Il product development - 20 01 2011
nakham
 
PPTX
06 operations and feedback dap-kabel
David Alvarez Palomo
 
PDF
Faster apps. faster time to market. faster mean time to repair
Compuware ASEAN
 
PDF
Постоянное тестирование интеграции
SQALab
 
PDF
A journey to_be_a_software_craftsman
Jaehoon Oh
 
PPT
Feasible
anasamirah
 
PPTX
Lesson2 software process_contd2
Nongkonlek Los Blancos
 
Chapter_02_Process Models_Roger Pressman.ppt
brmadhu
 
software requirement engineeringg.ppt
SsdSsd5
 
Study of solution development methodology for small size projects.
Joon ho Park
 
Testing in an Open Source Middleware Platform Space The WSO2 Way.
WSO2
 
BA conf presentation 2010
Julen Mohanty
 
Machine programming
DESMOND YUEN
 
Lanzamiento Visual Studio 2012 - Modern ALM
Debora Di Piano
 
Lights-Out Testing for Lights-On Business
Worksoft
 
Reliability Growth Planning: Its Concept, Applications, and Challenges
ASQ Reliability Division
 
Visual Studio 2010 ALM Tools Overview
Ayman El-Hattab
 
Software defect prevention example project
Zarko Acimovic
 
Defect prevention techniques
Zarko Acimovic
 
Il product development - 20 01 2011
nakham
 
06 operations and feedback dap-kabel
David Alvarez Palomo
 
Faster apps. faster time to market. faster mean time to repair
Compuware ASEAN
 
Постоянное тестирование интеграции
SQALab
 
A journey to_be_a_software_craftsman
Jaehoon Oh
 
Feasible
anasamirah
 
Lesson2 software process_contd2
Nongkonlek Los Blancos
 
Ad

More from Sitdhibong Laokok (15)

PDF
แม่แบบและแบบบันทึกสำหรับกระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
PDF
คู่มือประกอบกระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
PDF
กระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
PDF
การนิยามและการปรับปรุงกระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
PDF
Software Metrics: Paper Presentation
Sitdhibong Laokok
 
PDF
ข้อเสนอโครงการ.ระบบจัดการส่งดอกไม้ของฮานะ
Sitdhibong Laokok
 
PDF
SNA: Information Sharing Behavior
Sitdhibong Laokok
 
PDF
Seminar Slide: Investigating dependencies in software requirements for change...
Sitdhibong Laokok
 
PDF
Git installation
Sitdhibong Laokok
 
PDF
New M-Culture + Elementary WordPress
Sitdhibong Laokok
 
PDF
WordPress Theme Development Short Manual
Sitdhibong Laokok
 
PDF
Introduction to WordPress Theme Development
Sitdhibong Laokok
 
PDF
JAXB: Create, Validate XML Message and Edit XML Schema
Sitdhibong Laokok
 
KEY
Introduce to SVN
Sitdhibong Laokok
 
PDF
พระราชบัญญัติ ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ. 2550
Sitdhibong Laokok
 
แม่แบบและแบบบันทึกสำหรับกระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
คู่มือประกอบกระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
กระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
การนิยามและการปรับปรุงกระบวนการออกแบบรายละเอียดซอฟต์แวร์
Sitdhibong Laokok
 
Software Metrics: Paper Presentation
Sitdhibong Laokok
 
ข้อเสนอโครงการ.ระบบจัดการส่งดอกไม้ของฮานะ
Sitdhibong Laokok
 
SNA: Information Sharing Behavior
Sitdhibong Laokok
 
Seminar Slide: Investigating dependencies in software requirements for change...
Sitdhibong Laokok
 
Git installation
Sitdhibong Laokok
 
New M-Culture + Elementary WordPress
Sitdhibong Laokok
 
WordPress Theme Development Short Manual
Sitdhibong Laokok
 
Introduction to WordPress Theme Development
Sitdhibong Laokok
 
JAXB: Create, Validate XML Message and Edit XML Schema
Sitdhibong Laokok
 
Introduce to SVN
Sitdhibong Laokok
 
พระราชบัญญัติ ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ. 2550
Sitdhibong Laokok
 

Recently uploaded (20)

PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
July Patch Tuesday
Ivanti
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 

Software Architecture: Test Case Writing

  • 1. Software Architecture Software Architectural Test Case Writing 2009.11.08 Sitdhibong Laokok [email protected]
  • 2. Agenda • Software Development Methodology • Software Testing • Architectural Test Case Writing
  • 3. Agenda • Software Development Methodology • Software Testing • Architectural Test Case Writing
  • 4. Software Dev. Methodology • Waterfall Model • Iterative and Incremental Model
  • 5. Waterfall Requirements Design Implementation Verification Maintenance
  • 6. Iterative and Incremental System Analysis Coding Architecture Design TEST Business Critical Requirement Goal Test Case Design Requirement
  • 7. Vilfredo Pareto Italian economist (1848 - 1923)
  • 9. 100 20% 75 80% 50 80% 25 20% 0 Actions Results
  • 10. Iterative and Incremental System Analysis Coding Architecture Design TEST Business Critical Requirement Goal Test Case Design Requirement
  • 11. Business Goals System Feature Function Requirement Test Case Comes from Critical Requirement
  • 12. Agenda • Software Development Methodology • Software Testing • Architectural Test Case Writing
  • 13. Test Plan : “SPACEDIRT” • Scope • Incidentals • People • Risks • Approach • Tasks • Criteria • Environment • Deliverable
  • 14. Goals • To improve quality • For reliability estimation • For Verification and Validation (V&V)
  • 15. Verification & Validation • Functionality • Engineering • Adaptability • Correctness • Efficiency • Flexibility • Reliability • Testability • Reusability • Usability • Documentation • Maintainability • Structure
  • 16. Software Dimension W3C Semantic Web Logo - http://www.w3.org/2007/10/sw-logos.html
  • 17. Software Dimension Usability Quality Functionality Security W3C Semantic Web Logo - http://www.w3.org/2007/10/sw-logos.html
  • 18. Software Testing • Unit Test • Functional Test • Reliability Test • Performance Test • Architectural Test
  • 19. Functional & Non-Functional Functionality Enter PIN no., Select account type, Choose or Enter Amount, Receive money Non-Functionality Verify PIN no. with bank, Check total amount in machine, Check user’s account balance, Error Handling
  • 20. Quality Attributes* • Availability • Modifiability • Performance • Security • Traceability • Usability *Or Non-Functionality Requirement
  • 21. Quality Attribute Scenarios • Source of stimulus • Artifact • Stimulus • Response • Environment • Response measure Artifact Stimulus Response Environment Source of stimulus Response measure
  • 22. Artifact Stimulus Response Environment Source of Stimulus Response measure Source of Stimulus Developer Stimulus Wishes to change the UI Artifact Code Environment At design time Response Modification is made with no side effect Response measure In 3 hours In the case of developer want to change UI Design
  • 23. Vision Vision Business Goals BG1 BG2 BG3 System Feature SF1 SF2 SF3 SF4 SF5 Function Requirement FR2 FR4 FR6 FR8 FR1 FR3 FR9 FR10 FR5 FR7 TC4 TC6 TC9 TC12 TC13 TC1 TC3 TC16 TC5 TC7 TC11 TC2 TC8 TC10 TC14 Test Case
  • 24. Software Engineering – Dr Ghazy Assassa Page 2 of 5 Test Case Template (Doc:T_01) Test Case #: Test Case Name: Page: 1 of .. System: Subsystem: Designed by: Design Date: Executed by: Execution Date: Short Description: Pre-conditions Step Action Expected System Response Pass/ Comment Fail 1 2 Post-conditions http://faculty.ksu.edu.sa/ghazy/CSC342_Tools/Test%20Case%20Template.pdf
  • 25. Software Engineering – Dr Ghazy Assassa Page 3 of 5 Test Case Example1 (simple test) Test Case #: 2.2 Test Case Name: Change PIN Page: 1 of 1 System: ATM Subsystem: PIN Designed by: ABC Design Date: 28/11/2004 Executed by: Execution Date: Short Description: Test the ATM Change PIN service Pre-conditions The user has a valid ATM card - The user has accessed the ATM by placing his ATM card in the machine The current PIN is 1234 The system displays the main menu Step Action Expected System Response Pass/ Comment Fail 1 Click the 'Change PIN' button The system displays a message asking the user to enter the new PIN 2 Enter '5555' The system displays a message asking the user to confirm (re-enter) the new PIN 3 Re-enter '5555' The system displays a message of successful operation The system asks the user if he wants to perform other operations 4 Click 'YES' button The system displays the main menu 5 Check post-condition 1 Post-conditions 1. The new PIN '5555' is saved in the database http://faculty.ksu.edu.sa/ghazy/CSC342_Tools/Test%20Case%20Template.pdf
  • 26. Vision Business Goals System Feature Function Requirement Test Case
  • 27. Agenda • Software Development Methodology • Software Testing • Architectural Test Case Writing
  • 28. Architecture Design is Shaped by KPIs KPI #1 KPI #3 KPI #2 Developer Architecture KPI #4
  • 29. Artifact Stimulus Response Environment Source of Stimulus Response measure Source of Stimulus Developer Stimulus Wishes to change the UI Artifact Code Environment At design time Response Modification is made with no side effect Response measure In 3 hours In the case of developer want to change UI Design
  • 30. Architecture Design is Shaped by KPIs KPI #1: Developer have to change UI within 3 hours at design time KPI #3 KPI #2 Developer Architecture KPI #4
  • 31. System Qualities • Availability • Reliability • Modifiability • Interoperability • Usability • Integrability • Performance • Supportability • Security • Customizability • Testability • Safety • Scalability • Maintainability • Extensibility
  • 32. Test Case Elements Approaches Name Objective Expected Output Test Scripts and Outcome Input
  • 33. Sample Scenario Scenario refinement for Scenario: Scenario(s): Business Goals: Relevant Quantity Attribute(s): Stimulus: Scenario Components Source of Stimulus: Environment: Artifact: Response: Response Measure: Questions: Issues: Narong Chansoi, “Software Architecture Test Case Writing”
  • 34. Artifact Stimulus Response Environment Source of Stimulus Response measure Source of Stimulus Developer Stimulus Wishes to change the UI Artifact Code Environment At design time Response Modification is made with no side effect Response measure In 3 hours In the case of developer want to change UI Design
  • 35. Sample Scenario Scenario refinement for Scenario: PR1-SCE1-CHANGEUI Scenario(s): Developer want to change UI at design time Business Goals: Relevant Quantity Attribute(s): Maintainability Stimulus: Wishes to change the UI Scenario Components Source of Stimulus: Developer Environment: At design time Artifact: Code Response: Modification made no side effect Response Measure: In 3 hours Questions: Developer change the UI in test server before deploy to production server? Issues: Narong Chansoi, “Software Architecture Test Case Writing”
  • 36. Software Engineering – Dr Ghazy Assassa Page 3 of 5 Test Case Example1 (simple test) Test Case #: 2.2 Test Case Name: Change PIN Page: 1 of 1 System: ATM Subsystem: PIN Designed by: ABC Design Date: 28/11/2004 e Executed by: Execution Date: Short Description: Test the ATM Change PIN service pl Pre-conditions The user has a valid ATM card - The user has accessed the ATM by placing his ATM card in the machine The current PIN is 1234 am The system displays the main menu Step Action Expected System Response Pass/ Comment Fail 1 Click the 'Change PIN' button The system displays a message asking the user to enter the new PIN 2 Enter '5555' The system displays a message asking the user to confirm (re-enter) the new PIN Ex 3 Re-enter '5555' The system displays a message of successful operation The system asks the user if he wants to perform other operations 4 Click 'YES' button The system displays the main menu 5 Check post-condition 1 Post-conditions 1. The new PIN '5555' is saved in the database http://faculty.ksu.edu.sa/ghazy/CSC342_Tools/Test%20Case%20Template.pdf
  • 37. References • Narong Chansoi: “Software Architectural Test Case Writing” • Dr.Varanyu, “80-20” http://varanyu.blogspot.com/2008/10/8020.html • “List of Quality Attribute” - http://en.wikipedia.org/wiki/List_of_system_quality_attributes • Donald Graham, “Quality Attribute Scenarios”, http://www.spin.org.za/spin21/SPIN%2021%20- %20QAS.pdf • Christoph Stoermer, “Moving Towards Quality Attribute Driven Software Architecture Reconstruction”, http://www.cs.vu.nl/~x/square/qadsar.pdf • Ed, “Patterns & Practices Test : Architecture Testing”, http://blogs.msdn.com/pagtest/archive/ 2005/03/18/398678.aspx • Louis Marshall, “Project Management for the Web: Quality Test Plan”, http://pm4web.blogspot.com/ 2008/07/quality-test-plan.html • Dr Ghazy Assassa, “Software Engineering: Test Case Template and Example”, http://faculty.ksu.edu.sa/ghazy/ CSC342_Tools/Test%20Case%20Template.pdf • GSA, “FIPS 201 Evaliation Program - Template Generator Test Procedure”, http://fips201ep.cio.gov/ documents/Template%20Generator_Test%20Procedure_v2.0.0.pdf
  • 38. References • QA Plan, “Test Suite”, http://readyset.tigris.org/nonav/templates/test-suite.html

Editor's Notes

  • #50: A Quality Attribute Scenario is a quality-attribute-specific requirement.