Notes Flashcards
SDLC
Software Developmental Life Cycle - The process take to build / develop software from its initial conception to its release
QA - Quality Assurance
to assure the quality of an application or software system by testing through the development life cycle, and delivery of a bug/defect free product, making sure the software is built as expected
Business Owner
director of overall product
Product Owner
manager of a specific product
Stake Holder
anyone who has an interest in the product, someone with influence. the people involved in or affected by a project’s activities.
stakeholders can include: project sponsor, project team, customers, project manager, support staff, suppliers, opponents to the project.
Subject Matter Expert
Someone who specializes in the subject at hand, someone to consult with
Developers
develop the code
Business Analyst
gives the requirements along with the Product Owner, tells you exactly what you need to do
Architect
designs what the website/product should look like from looks to backend connections
Scrum Master / Project Manager
makes sure everyone is able to do their part successfully
Why are there bugs?
- inaccurate understanding of end user (customer) needs
- inability to deal with changing reqs
as dev team is building a lot of changes for requirements can be made and this leads to inconsistencies - software that is hard to maintain
- software and hardware can be incompatible
all software needs to be compatible to all hardware/platforms put out - late discovery of serious flaws
- lack of focus on quality
Requirements
What you want or desire from a system
what is wanted is specified
Functional Requirements
what you want the system to do
Non-functional requirements
are restrictions on the types of solutions that will meet the functional requirements
- usability, reliability, performance, supportability, compatibility, security
Use Case
a set of scenarios that describes an interaction between user and a system
User Stories
a very high level definition of a requirement, containing just enough information so that the devs can produce a reasonable estimate of the effort to implement it
- As a (role) I want to (something) so that (benefit)
ex: As a student I want to purchase a parking pass so that I can drive to school.
Test Cases
a specific interaction (design steps) that a tester will have in order to test a single behavior of the software
(manually going through the features and testing each use case or user story to check if all acceptance criteria are working)
Test Script
program/script written in a scripting/programming language to record/script specific interactions (design steps) that a tester will have, in order to test a single behavior of the software
When you use an automated language or tool to help you confirm if requirements are working.
Test Suite
(a folder) a collection of Test Cases / Test Scripts that are intented to be used to test a software
RTM
Requirements Traceability Matrix
a cross-reference between a test case document and the functional / design specification document
mapping between test cases and requirements
SMART: Requirements Guideline
Specific
Measurable
Attainable
Realistic
Time-bound
Test Case Components (TUPSIDOP)
Test Case Name
Unique Identifier
Pre-Condition
Step No.
Input
Design Steps
Output
Post-Condition
Test Artifacts
things we care about as a QA, the deliverables (test cases, test scripts, etc)
Unit Testing
testing each smallest individual module or unit of the application, normally performed by software test engineers
Integration Testing
Individual software modules are combined and tested as a group, taking two units that have been tested and testing the interface between them
Smoke Testing (Build Acceptance Testing, Build Verification Testing, Ad-Hoc Testing)
Making sure the build is ready to be tested further by testing the most important functionalities for each module