B-22 Interview Questions / Soft Skills / SDET !

Lakukan tugas rumah & ujian kamu dengan baik sekarang menggunakan Quizwiz!

how many values and principles does Agile Methodology have?

- 4 values - 12 principles

Scrum Artifacts - Burn Down Chart

- A burn down chart shows the amount of work that has been completed in a sprint, and the total work remaining. - Burn down charts are used to predict your team's likelihood of completing their work in the time available.

Scrum Artifacts - Product Backlog

- A list of work that have to be done in the project. - The requirements or user stories are prioritized by Product Owner (PO) - Change is welcome on the product backlog - PO estimates and decides the release/deploy date.

User Story

- A short, simple requirements definition - Short, simple descriptions of a feature told from the customer. - To write a User Story we need 3 items. 1 - Actor -- Someone 2 - Action/Flow -- Something 3 - Outcome -- Benefit

Testable Requirement

- Able to be observed and measured - For testers we need to have specific criteria to test

Disadvantages of waterfall approach

- All requirements must be known prior to development, which greatly delays the project kickoff - The costumer can see project only at the end - Poor model for long and ongoing projects - Low flexibility level, difficult to make changes while developing

Stakeholder

- Anyone who is invested in the project or the product. - 2 types of Stakeholders (internal, external). - All the team members involved in the project are part of the internal stakeholders - All external parties that have a vested interest in the product are known as the external stakeholders

Scrum Roles: Product Owner

- Define the features of the product - Decide on release date and content - Prioritize features according to market value - Adjust features and priority as needed - Accept or reject work results - Being a bridge between Development team with Client - Consistently communicates with client to make sure Development team is in right business direction

What is the difference between desktop app and web app

- Desktop app is installed in your machine (computer) - Web app is in web

Advantages of waterfall approach

- Easy to understand, easy to use - Provides structure - Milestones are clear - Good for management control

What does Agile Scrum do?

- Enable You to Discover Problems - Create better working environment - Let each and every team member knows what they have to do to solve problems - Alert you when products are in danger of missing their delivery deadlines

Epic

- Epic is a large User Story. - No formal threshold, to consider a story an epic. - It simply means "Big User Story."

What challenges can you have while working in agile environment?

- Frequently Changing Requirements upper management changes prerequisites or drops stories during a sprint cycle

Measurable Requirement

- Goals should be measurable and realistic - We can test some measurable things but not performance or load (we do not test how fast an app is responding - it is done by performance tester)

Summary of Coding Phase

- Name of the step -> Coding/Developing - Role -> Developers - Input -> SRS document - Output -> The application/software

Summary of Design Phase

- Name of the step -> Design - Role -> Architecture/Designer - Input -> SRS document - Output -> Design documents + Risk analysis

Summary of Maintenance Phase

- Name of the step -> Maintenance - Role -> PO+ Developers + testers - Input -> Any new requirement, Any hidden bug found by end user - Output -> New version of the application

Summary of Deployment/Production Phase

- Name of the step -> Production/Deploying - Role -> Developers + testers - Input -> Bug free application - Output -> End user use the application

Summary of Requirement Gathering

- Name of the step -> Requirement Gathering - Role -> Product Owner (PO) - Input -> Costumer's requirement - Output -> Several documents

Summary of Testing Phase

- Name of the step -> Testing - Role -> Testers/QA Engineers - Input -> The software + SRS document - Output -> Bug free application

Realistic Requirement

- Objects, actions, or social conditions as they actually are; attainable (attainable and realistic seem to be very close) - It usually comes from customer (the person/company/stakeholder who wants the application)

Side Bar / Parking Lot

- Occurs following the Daily Standup meeting - Sidebar is conversation which is taken 'offline' - It only includes those members to whom the topic is related.

Grooming Meetings

- Organized by the PO - Before the meeting PO prioritize the product backlog - Estimate points for each user story - Scrum team is involved in the meeting - Beginning of each sprint and happens once

Spring Planning Meeting

- Organized by the PO. - Sprint planning is a time boxed, for a 2 week sprint the planning should not last more than 2 hours. - It begins with the team discussing the upcoming Sprint's goals and priorities.

Sprint Review OR Demo Meeting

- Organized by the Product Owner (PO). - 2 hour meeting, the Scrum Team shows what they have accomplished during the Sprint. - Project is assessed against the Sprint Goal that was determined during the Sprint Planning meeting.

The Daily Standup

- Organized by the Scrum Master - Discuss what has been done since the last standup meeting - Discuss what to do till the next standup meeting - Discuss any impediments standing in your way

Sprint Retrospective

- Organized by the Scrum Master - The purpose of the Sprint Retrospective is to improve the practices, teamwork and environment for the next Sprint based on how the previous Sprint went. - Discuss, what went well? what was not going well? How can we improve?

Scrum Team

- Product Owner - Development Team - Scrum Master

Maintenance Phase

- Project support - Update & improve software - Challenge from hidden bugs

Deploying/Production Phase

- Release the application to Production - Installing the Application to users machine

Scrum Roles: Scrum Master

- Responsible for enacting Scrum practices - Represents management to the project - Removes Impediment/blocker - Shield the team from external interferences - Ensure that the team is fully functional and productive - Do everything possible to make sure Development Team performs in highest level - Scrum Master is there to serve team, he or she has no authority over the team

Agile Scrum

- Scrum is Agile process that allows us to focus on delivering the highest business value in shortest time - The business sets the priorities. Team self organize to determine the best way to deliver the highest priority features - It allows us rapidly and repeatedly to inspect actual working software

Waterfall methodology is suitable for

- Short and small Project - Requirements are very clear - The organization has experience of similar projects

Attainable Requirement

- Something that is possible, and attainable, not asking for the impossible. - Reachable

The Big Four Meetings

- Sprint Planning - Daily Standup - Sprint Review - Sprint Retrospective

The Buildup Chart

- The Buildup Chart accurately reflects the development of the product by focusing on the Doneness Agreements made during Sprint Planning.

Business Owner

- The Business Owner is usually the 'Lead' Stakeholder, the team's Sponsor, or the Product Owner's Product Owner. - Basically the PO's BOSS

Product Backlog

- The Product backlog represents the ultimate list of ideas for the product, ordered in the manner the PO desires the Team to work on them.

Sprint Backlog

- The Sprint Backlog is a set of Stories the Team has agreed to complete during the current Sprint.

Specific Requirements

- What kind of requirement is critical to users' acceptance and use of the system - Makes it easier for us to test, we know exactly what to test

Developing/coding

- Write codes to build the application - Follow certain predefined coding guidelines - Divide the tasks into small unites

Testing Phase

- Write test documents - Manual vs Automation Testing - Log defat - Ensure the application meets the consumers expectation

Principles of Agile Methods

1 - Customer Satisfaction 2 - Welcome Changing Requirement 3 - Deliver Working Software Frequently 4 - Face-to-Face Conversation 5 - Working software 6 - sustainable development 7 - Self-Organizing team 8 - Continues Attention to Technical Excellence 9 - Simplicity is Essential 10 - Regularity Reflect on Continuously Improving 11 - Trust and Support 12 - Motivated Individual

Values of Agile Methodology

1 - Individuals and Interactions Over Processes and Tool 2 - Working Software Over Comprehensive Documentation 3 - Customer Collaboration Over Contract Negotiation 4 - Responding to Change Over Following a Plan

3 different environments

1) Dev Environment 2) Test Environment 3) Production Environment

6 Steps of Building a Software

1) Requirement gathering and Analysis 2) Design 3) Developing 4)Testing 5) Deployment 6) Maintenance

What are the two main methodologies used to develop softwares

1) Waterfall Methodology 2) Agile Methodology

Levels of Testing

1. Unit Testing : checks if software components are fulfilling functionalities or not. 2. Integration Testing : checks the data flow from one module to other modules. 3. System Testing : evaluates both functional and non-functional needs for the testing. 4. Acceptance Testing : checks the requirements of a specification or contract are met as per its delivery.

What is software development methodology?

A framework that is used to structure, plan, and control the process of developing and information system.

waterfall methodology

A sequence of phases in which the output of each phase becomes the input for the next

What is AC (Acceptance criteria ).

Acceptance criteria is a set of predefined requirements that must be met in order to mark a user story complete.

Which of the two software methodologies is widely used

Agile Methodology

Agile Methodology

Aims for customer satisfaction through early and continuous delivery of useful software components developed by an iterative process using the bare minimum requirements

Where are all the User Stories stored?

All User Stories are stored in the Product Backlog

Requirement gathering and analysis

All possible requirements of the system to be developed are captured in this phase and documented in a requirement specification document (RSD)

Who will design the project?

Architect (Technical Architect)

Scrum Artifacts - Sprint

Before the release, the team decides to choose a time boxed period to complete a set amount of work. This time period is called the Sprint.

Source of Requirements Gathering

Customers Business Partners End-Users Domain Experts Industry Analysts

What is DEFINITION OF DONE?

DEFINITION OF DONE - (user stories - is considered as completed) ● Has been tested ● No defects left ● (WHAT) check list of Product Owner to accept the story ● (WHO) mostly PO and Scrum adds some points ● (WHEN) demo (Sprint Review) ● is confirmed as done on the Demo Meetings when the Dev Team will demonstrate in the US and it will be accepted by PO and stakeholders - (user stories - is considered as completed)

What is DEFINITION OF READY?

DEFINITION OF READY - (user stories - is ready to be developed) - list of the criteria's that are ready to be developed. ● User story has clear acceptance criteria ● User story has test data ● User story has points ● It is small enough to be developed and tested during the sprint ● Test data is included to the user story ● (WHAT)Is a checklist for the Dev Team to take the user story to work ● (WHO) create it? Scrum Team together ● (WHEN) Talking on the sprint planning. ● usually discussed and made on the Sprint Planning Meeting

From where we are getting requirements?

From the customer Business partners End-users (who is going to use this app) Domain experts (domain is the field that you are trying to work for (bank, restaurant...)) - so the domain expert is the expert in the specific field. Industry analysts - extra info, that company gathers as data.

What is Functional Testing?

Functional testing verifies each function/feature of the software. How the software is working. Functional testing can be done manually. Examples of Functional Testing Types/Leves • Unit testing • Smoke testing • User Acceptance • Integration Testing • Regression testing • Localization • Globalization • Interoperability

What's Increment?

Increment is a concrete stepping stone toward the Product Goal. Each Increment is additive to all prior Increments and thoroughly verified, ensuring that all Increments work together. In order to provide value, the Increment must be usable. The entire Scrum Team is accountable for creating a valuable, useful Increment every Sprint.

Functionality of an application

Is the ability of the system to do the work for which it was intended.

What is MARS? (DEFINITION OF READY)

M - Measurable - Clearly specifies what the team needs to do to achieve the objective A - Attainable - Should be able to achieve the objective within the teams R - Relevant - Should be specific to the value being delivered S - Specific - States the intended outcome as simple, and concisely as possible

What is manual testing?

Manual testing is the process of manually testing software for defects. It requires a tester to play the role of an end user whereby they use most of the application's features to ensure correct behavior.

What is Non-Functional Testing?

Non Functional testing verifies aspects like performance, usability, reliability, etc. whereas Non Functional testing is hard to perform manually. Examples of Non-functional Testing Types • Performance Testing • Volume Testing • Security • Usability Testing • Load Testing (can 2000 users login in the same time) • Stress Testing • Compliance Testing • Portability Testing •Disaster Recovery Testing

Fibonacci pointing

Pointing Fibonacci - this is an example 21 - break down two tickets(US). 13 - 10 days 8 - 5 days 5 - 3 days 3 - 2 days 2 - 1.5 days 1 - 4 hours

Agile Scrum Artifacts

Product Backlog Sprint Backlog Burn Down Chart

Agile Scrum Roles

Product Owner Team (Dev Team) Scrum Master

Who writes the requirements for Software

Product owner (PO)

What is QA?

QA - is a quality analyst, quality assurance. A QA engineer is responsible for the creation of tests to identify issues with software before the product launch. Duties include identifying and analyzing any bugs and errors found during the test phase and documenting them for review after. It Has already started.

What is SMART?

Requirements should meet SMART criteria: Specific Measurable Attainable Realistic Testable

How many principals had agile, name one of those?

Satisfy the customer (through early and continues delivering) Welcome Changing Requirements (we are open to change but it does not mean that we accept every change right away, because it can affect the timeline, budget, process) Deliver Working Software Frequently (in a short timeline you start to deliver, from a couple of weeks to a couple of months) Face to Face conversation (people who are involved in this process - interact with each other) Working Software (we know that we are delivering frequently, but it must work properly) Sustainable development (you cannot be productive for 2 months and then give up or take a rest. The sponsor, developers, and users ....) Self-Organizing team (the team is organizing themselves, decide for themselves) Continues Attention to Technical Excellence (Development team makes sure they do research constantly and always deliver the best version) Simply is Essential (по сути) (because we deliver continuously and frequently) Regularity Reflect on Continuously Improving (to look back, what went well, what needs to improve, what needs to stop) Trust and Support (team and customer trust and support) Motivated Individuals

SDLC

Software Development Life Cycle

Agile Scrum Events

Sprint Planning Daily Scrum Sprint Review Retrospective

What is static testing?

Static Testing is a type of software testing in which software application is tested without code execution.

What is automated testing?

Test automation is the process of performing software testing activities with little or no human interaction, in order to achieve greater speed and efficiency.

Design Phase (SDLC)

The purpose of the Design Phase is to transform the requirements in to complete and detailed System Design Specification (SDS).

Definition of Done

This US is considered completed: - Has been tested - No defects left

Definition of Ready

This US is ready to be developed: - User story has clear acceptance criteria - User Story has test data - User story has points

What is INVEST? (DEFINITION OF READY)

USER STORY match INVEST: I - Independent - to the extent possible, doesn't not depend on other stories N - Negotiable - a story is a conversation starter, not the end result. Never talks about "how" V - Valuable - Something this adds value to the user E - Estimable - No research Required, well understood S - Small - Should not take more than one sprint to finish T- Testable - Actually able to test it.

Who accepts user stories?

User story accepts by PO.

What is Verification?

Verification is the process of checking that a software achieves its goal without any bugs. It is the process to ensure whether the product that is developed is right or not.

What is testing?

Verification the software application meets requirements. Testers test the code that is new / modified in that sprint. However, testers also need to ensure that the code developed and tested in the earlier sprints also is working along with the new code.

What do you do while the developer is developing the code?

You analize requirements for that story developer is working on and for other stories from your epic, clarifying with BA if something not clear, writing test cases/scenarios for the story in Jira, deciding which test case will be tested manually and which automated, which will go to regression and to smoke suites. Once you decide which will be automated you starting to work on your automation logic - create feature file with scenarios (Cucumber), create Step and Page classes, put there locators (may have only names not xpath yet if UI is not developed), writing the methods, creating test data for assertion. Also you may receive defects to retest.

What is 'Scrum of Scrums'?

● Scrum of Scrums is a scaled agile technique that offers a way to connect multiple teams who need to work together to deliver complex solutions. It helps teams develop and deliver complex products through transparency, inspection, and adaptation, at scale.

Difference between Static and Dynamic

● Static testing was done without executing the program whereas Dynamic testing is done by executing the program. ● Static testing checks the code, requirement documents, and design documents to find errors whereas Dynamic testing checks the functional behavior of software system, memory/CPU usage and overall performance of the system. ● Static testing is about the prevention of defects whereas Dynamic testing is about finding and fixing the defects. ● Static testing does the verification process while Dynamic testing does the validation process. ● Static testing is performed before compilation whereas Dynamic testing is performed after compilation. ● Static testing techniques are structural and statement coverage while Dynamic testing techniques are Boundary Value Analysis & Equivalence Partitioning.

What is User-Story Mapping?

● User story mapping represents and arranges user stories that help with understanding system functionalities, system backlog, planning releases, and providing value to customers. They arrange user stories based on their priority on the horizontal axis. On the vertical axis, they are represented based on the increasing levels of sophistication.


Set pelajaran terkait

Chapter 4 - Covenants, Commitments, & Notices

View Set

Clinical Kinesiology and Anatomy Chapter 5

View Set

Foundations of Optics TERMS (applied and visual)

View Set

SECTION 4: Changing, Replacing, and Renewing Your Driver's License

View Set

OB: Chapter 5 Sexually Transmitted Infection

View Set

Chapter 9 Smartbook: flexible budgets, standard costs, and variance analysis

View Set