Software Quality Assurance

advertisement
CTIS 494
Software Quality Assurance
by
Dr. Ozlem Albayrak
2007 Fall
by Ozlem Albayrak
menu
CTIS 494 Outline (1)
Week
Subject
17.09 Introduction to Software Quality Assurance
24.09 Software Inspections and Testing
01.10 Capability Maturity Model
08.10 ISO9000 and SPICE (1 hour missing)
15.10 Software Quality Metrics
22.10 Seven Basic (B7) Tools of Quality
29.10 The Seven MP Tools
05.11 MIDTERM (30%)
by Ozlem Albayrak
CTIS 494 Outline (2)
12.11 5S for Intelligent Housekeeping in Software Development
19.11 Software QFD and Voice of the Customer
26.11 Risk Assessment and Failure Modes and Effects Analysis
03.12 Quality Measures and Statistical Methods for Trustworthy Software
10.12 Verification and Validation
(PROJECT REPORTs Submission 15%)
17.12 Testing and Evaluation (1 hour missing)
24.12 Integration, Extension and Maintenance for Trustworthiness
(PROJECT PRESENTATIONs 20%)
31.12 Review (2 hours missing)
7.12 FINAL (35 %)
by Ozlem Albayrak
menu
Today ...
Week
Subject
17.09 Introduction
Introduction to Software
QualityQuality
AssuranceAssurance
to Software
24.09 Software
Inspections
and Testing
Software Inspections
and Testing
01.10 Capability Maturity Model
08.10 ISO9000 and SPICE (1 hour missing)
15.10 Software Quality Metrics
22.10 Seven Basic (B7) Tools of Quality
29.10 The Seven MP Tools
05.11 MIDTERM (30%)
by Ozlem Albayrak
Review



Introduction to course elements
What is quality?
Differences between service and product
by Ozlem Albayrak
CTIS494 PROJECT DETAILS



35% of the total grade is from the projects
(same weight as final)
The course project is a group project each of
which will be developed by 4 students.
Project subjects will be announced by the
instructor. Project requires groups to submit a
report and deliver a in-class presentation.
Reports will be submitted 2 weeks before the
presentations.
by Ozlem Albayrak
Project Report specifications




Project reports will be prepared as web pages that can
be accessed by all the students and the instructor.
The groups are free to design their web pages format,
but the generated pages should be readable and
understandable.
Navigation among the pages should be carefully
organized.
The quality of the web pages will be determined by is
content, format as well as its timely distribution. Late
submissions will be heavily penalized.
by Ozlem Albayrak
Project Presentations





Project study will be presented in classroom.
Following the presentations there will be a question-answer
session during which the instructor and the other students are
allowed to ask questions.
Those students who prepare good questions will be awarded by
the instructor.
Fluency of the presentation is as important as its content, thus the
groups are urged to prepare their presentations in advance to
deliver a high quality presentation.
Duration of the presentations will be announced by the instructor.
Using time effectively is an important element.
by Ozlem Albayrak
Project Evaluation


20% of the project grade is allocated for project
presentation and 15% is for the project report.
15% includes evaluation of the following items:
–
–
–

Content
Format and ease and fluency of navigation
Timely delivery
20% includes evaluation of the following items:
–
–
–
–
Content
Fluency of the presentation
Obedience to time limits
Answers to questions
by Ozlem Albayrak
Quality exercise






Define high quality toilette paper?
Single (5 min)
In groups of two (5 min)
Reviews.......
Hw # : form a group of four
One address for the class and registration to
the group.... Do not wait for invitation register
by Ozlem Albayrak
What is quality?
by Ozlem Albayrak
Different Perspectives on Quality

There are many different definitions and
dimensions of Quality
–
–
–
–
–
Transcendent
Product based
User based
Manufacturing based
Value based
by Ozlem Albayrak
Garvin’s 8 quality dimensions
Performance
Durability
Serviceability
Features
Reliability
Aesthetics
Conformance
Percieved
quality
by Ozlem Albayrak
Performance

Efficiency with which a product achieves its
intended purpose
by Ozlem Albayrak
Features

Attributes of a product that supplement the
product basic performance
by Ozlem Albayrak
Reliability

Propensity (eğilim) for a product to perform
consistently over its useful design life
by Ozlem Albayrak
Conformance

Is a particular dimension of a product is within
the allowable range of tolerance of the
specification, the product conforms.
by Ozlem Albayrak
Durability

The degree to which a product tolerates stress
or trauma without failing
by Ozlem Albayrak
Serviceability

Ease of repair for a product
by Ozlem Albayrak
Aesthetics

Subjective sensory characteristics such as
taste, feel, sound, look and smell.
by Ozlem Albayrak
Perceived Quality

As the customer perceives the quality.
QUALITY
by Ozlem Albayrak
Service Quality dimensions




More difficult to define than to define product
quality
Tangibles
Service reliability
Assurance
by Ozlem Albayrak
Differing Functional Perspectives
on Quality






Engineering
Operations
Strategic Management
Marketing
Financial
Human Resources
by Ozlem Albayrak
Engineering

Engineering is an applied science.
–
–

Product Design Engineering
Concurrent Engineering (simultaneous
performance)
Statistics + technical orientation
by Ozlem Albayrak
Design Life Cycle
Idea Generation
Preliminary Design
Iterations
Prototype Development
Final Definition
Product Design Evaluation
Implementation
by Ozlem Albayrak
Operations


Focus was initially on statistical process control
Uses system view underlying modern quality
management thinking
by Ozlem Albayrak
Strategic Management



Refers to the planning processes
Long term orientation
Goal: to achieve sustainable competititve
advantage
by Ozlem Albayrak
Generic
Strategic Planning Process (1)
Firm Mission and Goals
External analysis
Strategic Options
Business level strategy
Corporate level strategy
Operational Subplans
by Ozlem Albayrak
Internal analysis
Generic
Strategic Planning Process (2)
Operational Subplans
Organizational
Design
Conflict Politics and
Change
Strategic Alignment between
Structure and Goals
by Ozlem Albayrak
Organizational
Reward System
Marketing

Customer satisfaction
by Ozlem Albayrak
Financial

Risk of investment vs. Potential rewards
by Ozlem Albayrak
Deming Value Chain
Improve quality
Cost decrease
Productivity Improves
Capture the market
Stay in business
Provide Jobs and more jobs
by Ozlem Albayrak
Human Resources



Employee empowerment
Job analysis
Total quality human resources management
by Ozlem Albayrak
The Three Spheres of Quality
Quality
Management
Quality
Assurance
Quality
Control
by Ozlem Albayrak
Quality
Control
Quality Control

Scientific method includes:
–
–
–
Analysis ( a process is broken into fundamental
pieces)
Relation (relationships between parts)
Generalization (how interrelationships apply to the
larger phenomenon of quality being studied)
by Ozlem Albayrak
Quality Control Activities






Monitoring process capability and stability
Measuring process performance
Reducing process variability
Optimizing processes to nominal measures
Performing acceptance sampling
Developing and maintaining control charts
by Ozlem Albayrak
Quality
Assurance
Quality Assurance

Activities associated with guaranteering the
quality of a product or service.
by Ozlem Albayrak
Quality Assurance Activities







Failure mode and effect analysis
Concurrent Engineering
Experimental Design
Process improvement
Design team formation management
Off-line experimentation
Reliability/durability product testing
by Ozlem Albayrak
Quality
Management
Quality Management

Management processes that overarch and tie
toegther the control and assurance activities
make up quality management.
by Ozlem Albayrak
Quality Management Activities






Planning for quality improvement
Creating a quality organizational culture
Providing leadership and support
Providing training and re-training
Designing a system to reinforce quality ideals
Facilitating organizational communication
by Ozlem Albayrak
Other perspectives


Value Added Perspective
Cultural Perspectives
by Ozlem Albayrak
Contingency Theory

There is no theory or method for operating a
business that can be applied in all instances.
This provides flexibility to managers in pursuing
quality.
by Ozlem Albayrak
Summary


Different perspectives on quality management
Quality sphere is composed of:
–
–
–
Quality Control
Quality Assurance
Quality Management
by Ozlem Albayrak
Quality Example





Define high quality toilette paper?
Single (5 min)
In groups of two (5 min)
Reviews.......
One address for the class and registration to
the group.... Do not wait for invitation register
by Ozlem Albayrak
CTIS 494
Software Quality Assurance
by
Dr. Ozlem Albayrak
2007 Fall
by Ozlem Albayrak
A Practical Approach to Software
Quality
Book by
G. O’Regan
Slides by
Dr. Ozlem Albayrak
2006 Spring
by Ozlem Albayrak
Outline






Software Engineering Challenge
History of Software Failures
Background to Software Quality
History of Quality
Software Engineering
Modern Software Quality Management
by Ozlem Albayrak
Next Week Assignment...

Your group will
–
Write a C/C++ code to do addition....
–
Please refer to your first assignments
by Ozlem Albayrak
Software Engineering Challenge

Challenge is to deliver:
High quality software on time to the customer

Focus on customer satisfaction
by Ozlem Albayrak
Software Engineering Challenge




Overestimation
How to estimate cost and schedule accurately
is a big challenge
Risk management is key
Example: Taurus project at London Stock
Exchange was 13,200% late and costed a lot,
and abondened
by Ozlem Albayrak
Software Engineering Challenge



Changing requirements
In civil engineering there are also problems
Software eng. less mature than civil eng.
by Ozlem Albayrak
History of Software Failures

Y2K problem
–
–
–

Find and analyze all code with a Y2K impact
Plan and make necessary changes
Cost to UK is $32 billion!!!
Software quality needs to be a key driving
factor
by Ozlem Albayrak
Introduction to Software Quality(2)

History of Quality
–
–
–
–
–
Shewart
Deming
Juran
Crosby
Other Quality Gurus
by Ozlem Albayrak
Background to Software Quality



Customers have high expectations
In the market there are many high quality
companies
Late delivery leads to extra cost
by Ozlem Albayrak
Background to Software Quality (2)

What is software quality
–
“Conformance to the requirements” Crosby
–
“Fitness for use” Juran
–
ISO 9126 standard for information technology
by Ozlem Albayrak
ISO 9126 – Quality Characteristics






Functionality: extent to which functions are avaliable
Reliability: extent to which software reliable
Usability: users say easy to use
Efficiency
Maintainability: easy to maintain
Portability: easy to transfer do different environments
by Ozlem Albayrak
Total Quality Management

Modern approach to quality management is
TQM
–
–
–
Customer focus
Process improvement
Development of quality culture
by Ozlem Albayrak
Software Quality Control





Extensive inspections and testing
Formal reviews
Aim is to identify defects
White box and black box tests
Unit, function, subsystem, system,
performance, integration, acceptance tests
by Ozlem Albayrak
History of Quality

Shewhart
–
–
Statistian at AT&T, 1920s
PDCA Model




Plan
Do
Check
Act
by Ozlem Albayrak
History of Quality (2)

Deming
–
–
–
1945s, Japan
14 step programme
Consistent purpose and direction in the organization
is more important then everyone doing his best
alone
by Ozlem Albayrak
History of Quality (3)

Juran
–
–
–

Another giant in the quality movement
Fitness for use
10 step programme
Crosby
–
Has influenced CMM (Capability Maturity Model)
by Ozlem Albayrak
Other Quality Gurus



Taguchi
Ishikawa
Feigenbaum
by Ozlem Albayrak
Introduction to Software Quality(3)

Software Engineering
–
–
–
Requirements Analysis
Specification
Design




–
Architectural
Functional
Object-oriented reuse
Verification of Design
Implementation
by Ozlem Albayrak
Introduction to Software Quality(4)
–
Testing






–
Unit
Integration
Sub-system
System
Performance
Acceptance
Maintenance
by Ozlem Albayrak
Maintenance


1st Malcom Baldridge Quality award to Motorola
Steps of Six Sigma:
–
–
–
–
–
–
Identify product or service
Identify customer and requirements
Identify needs to satisfy customer
Define process of doing work
Eliminate waste
Ensure continious improvement by:

Measuring, analyzing and controlling improved process
by Ozlem Albayrak
Modern
Software Quality Management




Software Inspections
Software Testing
Software Quality Assurance
Problem Solving
–
–
–
Fishbone diagrams
Histograms
Pareto Chart
- Trend Graph
- Scatter Graphs
- Failure Mode Effect Analysis
by Ozlem Albayrak
Modern
Software Quality Management(2)






Modeling
Cost of Quality
Metrics
Customer Satisfation
Assessments
Total Quality Management
by Ozlem Albayrak
Metrics

Measurement is important part of science and
engineering

Goal Question Metric by Basili

Data, Charts, Analysis, Trends, Action
by Ozlem Albayrak
Customer Satisfaction
Customer Saticfaction
Surveys
Customer Saticfaction
Measurement
Improvement
Planning
Execute Plan
by Ozlem Albayrak
Formal Methods

Advantage:
–
–
Utilization of mathematical models are being used
Lead to more robust(gürbüz) systems
by Ozlem Albayrak
Modern
Software Quality Management




Future of Software Quality
Organizational Culture and Change
Formal Methods
Quality and the Web
by Ozlem Albayrak
Quality and the WEB
Accesss from everywhere in the world
 May different browsers
 Usability, look and feel important
 Performance as key concept
 Security
 Many transactions at any time
 Avaliability (24x365)
 Relaibility
JAD/RAD with spiral development suggested

by Ozlem Albayrak
End of Musical notes

Check this web site:
http://sw-assurance.gsfc.nasa.gov
by Ozlem Albayrak
TO DO by Next Week:


Review
Next class:
Search web for software quality assurance
Come to class to discuss
by Ozlem Albayrak
Software Quality Assurance
S. Thomas Foster, Jr.
Boise State University
PowerPoint
prepared by
Dave Magee
University of Kentucky
Lexington Community College
modified by O. A.
Stephen McIlroy
BT Retail
Senior Systems Architect
Software Quality Assurance

What is it?

Why do we need it?

How do we achieve it?
by Ozlem Albayrak
What is Quality Assurance ?

Quality =
–
–
–


...meeting the customer’s requirements,
...at the agreed cost,
...within the agreed timescales.
Quality = “Fitness for purpose”
Quality = Customer satisfaction !
Quality Assurance is what we do to achieve this
by Ozlem Albayrak
“Success” v “Failure”
Quality Assurance helps us avoid failure !
Failure
Failure
Success
Content
Failure
by Ozlem Albayrak
Software failures
some examples

Taurus (London Stock Exchange)
–

London Ambulance Service
–

faults led to reversion to manual processes
Ariane 5
–

11 years late & 13,200% over budget
coding defect in module reused from Ariane 4
AT&T switching system
–
coding defect in three-line “fix”
by Ozlem Albayrak
Software failures
the statistics
Cancelled
31%
Successful
16%
Challenged
53%
by Ozlem Albayrak
Source: The Standish Group
Software failures
cost overruns
Under 20%
21 - 50%
51 - 100%
101 - 200%
201 - 400%
Over 400%

15.5%
31.5%
29.6%
10.2%
8.8%
4.4%
Average cost for “failed” projects is 189% of
the original estimate, i.e. almost double.
by Ozlem Albayrak
Source: The Standish Group
Software failures
time overruns
Under 20%
21 - 50%
51 - 100%
101 - 200%
201 - 400%
Over 400%

13.9%
18.3%
20.0%
35.5%
11.2%
1.1%
Average time for “failed” projects is 222% of
original estimate, i.e. more than double.
by Ozlem Albayrak
Source: The Standish Group
Software failures
content deficiencies
Under 25%
25 – 49%
50 – 74%
75 – 99%
100%

4.6%
27.2%
21.8%
39.1%
7.3%
On average “challenged” projects deliver 61%
of specified functions
by Ozlem Albayrak
Source: The Standish Group
Software failures
are things getting any better?
Significantly more failures
Somewhat more failures
No change
Somewhat fewer failures
Significantly fewer failures

27%
21%
11%
19%
22%
Only 41% of IT managers think there are fewer
failures today than 5 years ago
by Ozlem Albayrak
Source: The Standish Group
Why is it so hard to succeed?
by Ozlem Albayrak
Why is it so hard to succeed?
Software engineering is difficult
–
–
–
–
–
problems are complex & difficult to define
solutions are complex & difficult to specify
high degree of precision often required
progress is difficult to monitor
rapid pace of technological and business change
by Ozlem Albayrak
Why is it so important to succeed?





Huge demand for software
Shortage of skilled people
Limited financial resources
The need for correctness
Limited windows of opportunity
We can’t afford the cost of failure
by Ozlem Albayrak
How do we achieve QA?


By adopting a disciplined, professional
approach - engineering is predictable and
repeatable
Quality Management System
–
–

Documented processes & Best Practice
ISO 9001 & TickIT registration
Continuous Improvement
–
–
New methods (e.g. DSDM, UML) & tools
Better & more focussed Training
by Ozlem Albayrak
The Quality Management System

Defines the way we work
–
–
–

Procedures and guidelines
–

focuses on what rather than how
flexible
broadly applicable
mandatory elements and recommendations
Mix of best practice & common sense
by Ozlem Albayrak
Project control







Project initiation
Project closure
Estimation
Risks & issues
Project & Quality plans
Schedule plans
Progress monitoring & reporting
by Ozlem Albayrak
Quality control




Traceability
Quality Control Reviews
Approval process
Validation, Verification & Testing
by Ozlem Albayrak
Summary




What is Quality Assurance?
Why is it so difficult to succeed?
Why is it so important to succeed?
How do we achieve QA?
by Ozlem Albayrak

The goal of software inspection and test is to
reduce the expected cost of software failure
over the life of a product.
by Ozlem Albayrak
Popular Definitions of
Software Quality








Software that is developed right the first time
Minimization of fixes between releases
Measured loss imported to society after delivery
User satisfaction
Fitness for use
Performance/ expectations
Measurable properties of software
Conformance to requirements
by Ozlem Albayrak
Quantitative Definitions






Availability
Reliability
Defect rate
Problems per month
Mean time between failure
Loss to society (Taguchi)
by Ozlem Albayrak
What is a good software?





Written according to a coding standard
Design must be high quality
Succint and useful documentation
Comprehensive suite of regression tests must
accompany the software
Ref: H. Erdogmus, IEEE Software, 2007
by Ozlem Albayrak
Software Inspections and Testing



Inspection plays a key role in building software
Testing plays a key role in verifiying software
There are different ways to software
inspections:
–
–
Formal
Informal
by Ozlem Albayrak
Formal Inspections


Fagan inspection methodology
Gilb methodology
Roles
Author
Inspector
Tester
Moderator
by Ozlem Albayrak
Informal Inspection


Walkthrough of document or code by individual
other than author
Deliverable is reviewed informally
by Ozlem Albayrak
Fagan Inspections







Planning
Overview
Preparation
Inspection
Process improvement
Re-work
Follow-up
by Ozlem Albayrak
Economic Benefits of Sofware
Inspections

Positive impacts on:
–
Productivity
Quality
Time to market
Customer satisfaction
–
IBM Space Shuttle %85 inspections, %15 testing
–
–
–
by Ozlem Albayrak
Benefits of Software Inspections



Good for educating people about standards
and procedures
Cost of defect increases as software is being
developed
Cost of quality estimation varies between 20%40%
by Ozlem Albayrak
Software Inspection Methodology


Fagan, Gilb
Typical Roles
Author
– Inspector
Also
– Moderator
– Tester
– Reader
–
by Ozlem Albayrak
E-mail/Fax reviews


No physical meeting reviews
Depending on the organization this type of
reviews may work
by Ozlem Albayrak
Semi Formal Review Meeting



Actual review meeting
If review leader is other than author may work well
Phases are:
–
–
–
–
–
–
Planning
Distribution
Informal meeting (optional)
Preparation
Review meeting
Post review (corrections are verified)
by Ozlem Albayrak
Meeting Minutes
Item Under Review__________ Review Reference_________
Date____________________
Document Name __________ Version No_______________
Author__________________ No of Previous Reviews____
Reviewers_________________________________________
__________________________________________________
NOTES___________________________________________
_______________________________________________
by Ozlem Albayrak
Actions from the review
Issue
No
Raised
by
Page/
DSection/Line
by Ozlem Albayrak
Description
Action
Summary block in inspections





# major defects discovered
# minor defects discovered
Author estimate of rework time
# hours preparation
Amount of reviewed (pages/LOC)
by Ozlem Albayrak
Fagan Inspection Methodology

Objective of inspection is
–
–
to identify as many defects as possible and
to confirm the correctness of a particular
deliverable.
by Ozlem Albayrak
Fagan Inspection Process







Moderator – Planning/overview
Moderator, author – Overview
Inspectiors – Preparation
Inspectors – Inspection
Inspectors – Analysis, improvement
Author – Rework
Moderator, author – Follow-up
by Ozlem Albayrak
Fagan Inspection Guidelines
Activity
Area
Amount/hr
Max/hr
Preparation
Requirements
Design
Code
Test Plans
4 pages
4 pages
100 LOC
4 pages
6 pages
6 pages
125 LOC
6 pages
Inspection time
Requirements
Design
Code
Test Plans
4 pages
4 pages
100 LOC
4 pages
6 pages
6 pages
125 LOC
6 pages
by Ozlem Albayrak
Relaxed Fagan Inspection
Guidelines
Activity
Area
Amount/hr
Max/hr
Preparation
Requirements
Design
Code
Test Plans
4-8 pages
4-8 pages
100-130 LOC
4-8 pages
6 pages
6 pages
125 LOC
6 pages
Inspection time
Requirements
Design
Code
Test Plans
by Ozlem Albayrak
Fagan Inspection Methodology





Roles
Entry Criteria
Preparation
Inspection Meeting
Exit Criteria
by Ozlem Albayrak
Inspection Exit Criteria (1)
Inspection
Type
Mandatory/
Optional
Exit Criteria
Requirements
M
1.Requirements satisfy the customers needs
2.All requirements defects are corrected
Design Ins.
M
1.Design satisfies the requirements
2.All defects in the inspection are corrected
3.Design satisfies the design standards
Code Ins.
M
1.Code satisfies design and requirements
2.Code follows coding standards
3.Code compiles correctly
4.All defects from inspection removed
by Ozlem Albayrak
Inspection Exit Criteria (2)
Inspection
Type
Mandatory/
Optional
Exit Criteria
Test Plan
M
1.Test plan sufficient to test requirements
2.Test plan follows test standards
3.All defects from inspection removed
by Ozlem Albayrak
Issue Severity




Major
Minor
Process Improvement
Investigate
by Ozlem Albayrak
Defect Types
Code
Design
Requirements
Logic
Design
Requirements
Maintainability
Interface
Data Usage
Performance
Standards
Code Comments
Usability
Requirements
Logic
System Interface
Portability
Reliability
Maintainability
Error handling
Other
Product objectives
Documentation
Hardware interface
Competition Analysis
Function
Software Interface
Performance
Reliability
Spelling
by Ozlem Albayrak
Software Testing

Objective is
–
–

to verify the correctness of the software system and
to identify defects that are present.
Testing effort is often complicated by real world
issues, such as late delivery of software.
by Ozlem Albayrak
Test Planning











Identify scope of testing to be done
Estimates of time, resources, people, hardware, software and
tools
Provide resources needed
Provide test environment
Assign people to tasks
Define schedule
Identify risks and contingency plan
Track progress and take corrective action
Provide regular test status of passed, blocked,failed tests
Re-plan if scope of the project changes
Conduct post mortem to learn any lessons
by Ozlem Albayrak
Sample Test Plan
Activity
Resource
Name
Start
End
Comments
Review
requirements
Test Team
15.02.2007
05.03.2007
Complete
by Ozlem Albayrak
Steps in Test Plan












Review requirements
Overall test plan and review
System test plan and review
Performance test plan and review
Usability test plan and review
Regression plan and review
Test environment setup
System testing and re-test defects
Performance testing and re-test defects
Usability testing
Regression testing
Test reporting
by Ozlem Albayrak
Test Process

The quality of testing is dependent on the maturity of
the test process and a good test process include:
•Test
planning and risk
management
•Dedicated test environment and
test tools
•Test case definition
•Test automation
•Formality in handover to test
department
by Ozlem Albayrak
•Test
execution
•Test result analysis
•Test reporting
•Measurements of test
effectiveness
•Post mortem and test process
improvement
Test Case

A Test Case should include:
–
–
–
–
–
Purpose of test case
Setup required to execute the test case
Inputs to test case
The test procedure
Expected outputs or results
by Ozlem Albayrak
Test Management Tools
Open source Test Management Tools:
 http://www.opensourcetesting.org/testmgt.php

http://www.technologyevaluation.com/request/t
esttool_softeval.asp?se=google_testtools&gcli
d=CJvgv8Ca3o4CFQxaXgodIy-FPA
by Ozlem Albayrak
Next week:

Bring your first assignment to class
–

Demo’s will be done
Come to class prepared:
–
–
What is CMM/CMMI?
List of Turkish software companies having CMM(I)
by Ozlem Albayrak
Download