Surya Infoedge: Sqa: Unit 1
Surya Infoedge: Sqa: Unit 1
SQA: UNIT 1
By Zeeshan Sir
Quality means different thing to different people at different times, place and products.
For Ex: for some users, quality product is the one which has no or less defect, for some
product could match cost and delivery schedule along with services offered.
Some defined quality as – quality is fitness for use.
Quality can be defined as conformance to specifications because software engineering
don’t have to make changes in design & will suit users expectations like less cost, fast
delivery & good service support.
Quality can also be defined as extent to which customers believe that product meets or
surpasses needs & expectations.
Others believe that quality means delivering products that meet customer standard
defined by customer or some bodies.
Standard is defined by market forces & likes, dislikes of users.
Extra feature which is to be added should be specified prior to transition & if any feature
is not possible it should be specified before.
Future requirement should also be considered.
Q. Definition of Quality.
Verification Validation
Cycle of improvement:
Define
Measure
Monitor
Control
Improve
A. Define:
Supplier must know what must be, should be & could be feature present in the product
assigned by customer.
B. Measure:
Measurement gives difference between what is expected by customer& what is
delivered to him.
C. Monitor:
Progress must be monitored in development, testing & deployment.
Deviation must be analysed & reason must be sorted.
D. Control:
Quality control, verification & validation, organisational control leads to quality
assurance.
E. Improve:
Continual improvements are necessary to maintain on going customer satisfaction.
If project becomes successful, stakeholder will get benefited & if project fails they suffer.
Different stakeholders are:
Customer:
Customer is the main stakeholder who pays for the product.
For customer, quality means getting all the features in scheduled time.
Supplier:
Supplier provides input for making product.
As organization becomes successful, he will get more profit & his business will expand.
Employee:
People working in project or organization
For them, quality means getting better pay according to skill set.
Management:
People managing the organization/project.
It may be divided into project management, staff management, senior management,
investors etc.
They gain more profit, recognition & turnover improvement.
Suggest your friends to join Surya InfoEdge. SEM VI + PROJECT @12000
Practical oriented teaching and easy notes prepare you for best results. Page No: 3
Prof. Zeeshan Sir Surya InfoEdge
Dawn of your life
Society:
It is an individual perception towards successful organization.
It can increase resource availability like water, roads, power supply etc.
Government:
They have benefits like high tax, high export, foreign currency etc.
Customer focus:
It doesn’t matter if the organization improve in training , Quality design, OS, Software ,
buying new measuring tools but the customer determining whether it is worthy or not.
Process-Centred:
It focus on process thinking.
Process is a service of steps that taken input from supplier & provides output to
customer.
Integrated system:
Micro-process integrates to form business process required for defining an implementing
strategy.
Everyone must understand vision & guiding principle as well as quality process,
objective & critical process of organisation.
Continual improvement:
Organization should be creative & analytical to become more competitive & effective.
Communication:
It plays important role in maintaining morale & motivating employees at all roles.
Q. Write a note on quality in different areas.
Airline industry:
On time arrival and departure.
Suggest your friends to join Surya InfoEdge. SEM VI + PROJECT @12000
Practical oriented teaching and easy notes prepare you for best results. Page No: 5
Prof. Zeeshan Sir Surya InfoEdge
Dawn of your life
Comfortable journey.
Low cost service.
Reliability & safety
Health-care industry:
Correct diagnosis & treatment
Minimum waiting time
Lower cost
Safety and security.
Communication industry:
Clear communication
Faster access
Cheaper service
Automotive industry:
Continual improvement cycle focus on process with small improvement within system.
It is a concept to make changes in the existing system for better results.
PDCA is an iterative four stage approach for improving process, product or services.
PDCA Cycle:
P → Plan
It is about identifying the problem, collecting relevant data & understanding the
problem’s root cause, developing hypothesis about issue & deciding which one to test.
It is done by conducting the small experiment & deciding how to translate result in to full-
fledged implementation.
D → Do
Develop a solution & decide it’ s effectiveness
C → Check
It must be done periodically to check whether the progress is in proper direction
or not.
Study the result & decide whether hypothesis is supported or not.
A → Act
If there is a deviation between expected output & actual output, decide an action,
document it, inform others & recommend it for further PDCA cyles.
Cultural Changes
Planning:
Specific goals are determined & allocate adequate resources like time, work &
meeting space, people, developmental hardware & software.
Analysis:
It specifies the functional capabilities needed in the software
Use cases is an important tool for communication about requirement between
developer & client.
Design:
In this step, architecture is built for the project.
Development & Implementation:
Coding is done during development phase &product functioning is checked in
implementation phase.
Testing:
Finding bugs & documenting it
Deployment:
In this step, project is handover to a client.
Maintenance:
In this phase updates, patches & service support is provided.
Suggest your friends to join Surya InfoEdge. SEM VI + PROJECT @12000
Practical oriented teaching and easy notes prepare you for best results. Page No: 8
Prof. Zeeshan Sir Surya InfoEdge
Dawn of your life
Advantages :
Disadvantages :
Q. Iterative Model?
Iterative model is also called as incremental process model. This model follows the
development of software in increments & iterations
It is incremental from one requirement to next requirement simultaneously.
Advantages :-
Incremental Model :-
When the customer approaches the software engineer then the developer starts
collecting requirements from the user.
The development immediately jumps to analysis & design phase.
The design gets converted into codes.
When the testing of first feature get over then customer comes up with new
requirements.
When the first module is ready for deployment then the second module gets started.
When the maintenance phase of first module is going on then the second module coding
goes on simultaneously and client may ask for third requirement.
Example of incremental model :-
Customer ask client to develop word processor editing features to be included.
When the first requirement is deployed the customer asks for new feature like cut, copy
& paste.
When the first feature reaches the maintenance phase then the customer comes up with
third requirement likes spelling & grammar check.
Advantages :
Less time consuming.
Less employee’s requirement.
Customer satisfaction.
Disadvantages :-
Delivery date could not be decided.
Can require large space.
Speed can be slow.
1] Business Modelling :
A complete business analysis is perform to find important information for business, how
it can be obtained , how & when the information is process & what are the future
planning successful flow of information.
2] Data Modelling :
3] Process Modelling :
Description about adding, deleting and modifying data objects are given.
4] Application Generation :
It takes less time since all the prototype is already tested in every iterations.
Advantages :
Increase re-usability.
Reduce development time.
Takes customer feedback.
Disadvantages :
Suitable for costlier & modularized projects.
This model is followed when the customer does not have idea about software
development and developer doesn’t have idea whether the proposed will work or not.
Customer Evolution :
In this phase feedback is taken from customer.
Refining Prototype :
In this phase the improvements are done according to customer feedback.
Engineered Prototype :
The complete software is hand over to the client as specified.
Advantages :
Customer satisfaction.
Less cost.
Prototypes are tested.
Disadvantages :
Deadline can’t be pre-decided.
Risk of the project are not considered.
Design Phase :
It involves architectural design, logical design, physical product design & the final
design.
Construct or Built :
It refers to the production of actual software product at every spiral.
In this phase, built is produced with a version number and are sent to customer for
feedback.
Advantages :
Flexible for changing requirement.
User see’s the system early.
Disadvantages :
Spiral may go on indefinitely.
End of the project may not be known early.
Q . Explain Extreme Programming Process Model in detail? (Draw the diagram from
textbook)
Extreme programming is a light weight efficient, low risk, flexible, predictable & fun way
to be developing a software.
It is developed to address the specific needs if software development by small teams in
the phase of wage & changing requirement.
It provide values & principals to guide the team behavior.
A key assumption of extreme programming is the cast of changing program content on
time this can be achieved by :-
Continuous feedback from customer.
Short iterations
Designing & redesigning
Coding & testing properly
Customer involvement throughout the development
Delivery working product to the customer
Extreme programming involves writing a unit test before programming
Starting with a simple design & ordering when required
Pair programming
Integration testing
Minimum module is provided
Constant feedback
Mis-communication or No-communication :
Software Complexity:
The complexity of current software applications can be difficult for anyone without
experience in modern-day software development.
Windows-type interfaces, client-server & distributed applications, data communications,
enormous relational databases and sheer size of applications have all contributed to the
exponential growth in software/system complexity.
The use of object-oriented techniques can complicate instead of simplifying a project
unless it is well-engineered.
Programming Errors:
Inexperienced programmer or programmer without proper domain knowledge can do
mistakes while coding.
Changing Requirement:
If requirements are changed by customer, re-designing& re-scheduling are done which
ultimately affects the project.
If changes affect dependencies, it may result in errors.
Time pressure:
Un-realistic schedules which may happen in small organization or companies may result
in to bugs.
If time is not enough for designing, coding & testing then it ultimately leads to defects.
Poorly-documented code:
If the code is poorly documented then it is difficult to maintain or modify the code & it
may result in to a software bug
Why benchmarking?
To promote improvements in performance
To establish competitive edge
Organization that benchmark adapt the process to best fit their own needs & culture.
Although number of steps in the process may vary from organization to organization
The following six steps contain core techniques:
What to benchmark?
Understand Current Performance
Plan
Study others
Learn from data
Use findings
Quality metrics:
Stated/implied requirements:
Some requirement should be stated & some are understandable
Functional & non-functional requirements should be stated & they are documented
General/Specific requirements:
Usability is generic requirement & that doesn’t needs to be specified
Messaging, email service are specific requirements that needs to be specified
Present/Future Requirements:
Let’s take an example of banking application
Suppose bank currently wants 50k saving accounts and application on 2-tier architecture
But in future they might need 50 lacs saving accounts & that should be changeable.
King of Certifications
Advanced Web Designing Using
Laravel Framework @ 15000
Android @ 15000
OCA @ 10000
Admission in Progress
Suggest your friends to join Surya InfoEdge. SEM VI + PROJECT @12000
Practical oriented teaching and easy notes prepare you for best results. Page No: 18