3. Evolution of software products
versions and releases
• Corrective Maintenance
• Minor releases
• Major releases
4. Enchancements in Major Versions
• New feature or Functionalism
• Exploitations of new developments in
hardware and software
• Providing support for new environments
11. Product life cycle Activities
• Requirement Definition
• Design
• Development
• Testing
• Deployment and
• Maintenance
12. Requirement Definition
• Inputs from the user community
• Inputs from marketing and sales teams
• Competitive information
• Market survey
• Inputs from the field groups
• Feedback from earlier versions of the product
13. Design Phase
• Some of the issues in the design phase are:
• Standards Compliance
• Technology choice or constraints
• Portability
• User interface
• Testability
• Diagnosable
• Maintainability
• Installability
• Interoperability
14. Development Phase
• Proper documentation
• Effective re-use
• Adherence to coding standards
• SQA procedures like reviews
15. Testing Phase
• White box testing
• Black Box Testing
• Unit Testing
• Integration Testing
• System Testing
• Regression Testing
17. Different types of software
products
• Two fundamental questions:
• What are the different types of software
products that we come across?
• For each type of product, who are the different
types of users in a customer organization?
18. Types of software products and user
profiles from maintenance viewpoint
Product category Examples Types and Profiles of Users Factors for Maintenance
Shrink-Wrapped software Word processing software End users Usually the problem can be
localized to some oddities in
the customers data or
environment.
Extensible products Application products •End users
•Business analysts
Need to ensure that the
customization is done as per
norms.
Development tools •Compilers
•Application development
tools
•Databases
•System administrators
•In house analysts and
developers
•End users
The ways in which users use
the product are diverse and
this has implications on
reproducing and diagnosing
problems
Pervasive products Operating systems •System administrators
•End-users
Problems could be dependent
on the user environment,
thereby complicating problem
isolation
22. An Overview of Corrective
Maintenance
CEO
Product
Marketing
Sales
Finance,
Admin
Product
Development
Customer
Support
Customer Organizations
Product
functionality
elicitation
Product
sales front-
end Financial
Transactions
Problem /
maintenance
requests
23. Layers within customer support and
product maintenance
Customer Call canters
Knowledge
repository
Expert level
support
Defect fixers
Problem
tracking
system
Source
code
problem
resolution
Problem log
Defect report
resolution
Transfers
to
24. Classification of problems
• Environment issue/error
• Usage issue/error
• Known problem(with a solution or
workaround)
• Product error that needs to be corrected
25. Other forms of Maintenance
• Adaptive Maintenance
• Enhancements
• Preventive Maintenance
• Proactive defect prevention
28. Customer-side preliminary activities
• Eliminating obvious usage errors
• Ascertaining the impact of the problem
• Identifying any workarounds
• Gathering the required information for the
product organisation
• Communicating internally and with the
software product vendors
29.
30.
31.
32.
33.
34.
35. Customer Support Group Role
• Customer filling a problem report
• Ascertaining validity of the customer and
environment
• Choosing an analyst to service the problem
• Getting into problem details
36. Customer Support Group Role
• Evaluating whether a problem is really a
problem
• Ascertaining whether the problem is a known
problem
• Does the problem need to be passed on to next
level of support(or to Development)?
• Communicating with the customer
39. Defects that are reported by
internal customers
• Product testing team
• Internal groups using the product
• Internal clients of building blocks or
components
• Changes would happen in the process of
reporting the problem
• The steps in problem reporting that would also
apply for internal customers
40. Logistics and Tooling
• Customer repository
• Problem knowledgebase
• Customer support repository
• Diagnostic information capture tool
• Defect repository
• Diagnostic information through
instrumentation
45. Skill sets needed for the various
roles during problem reporting
• Product in-charge
• End-users
• Support analyst
• Common skills for both the roles: product in-
charge & support analyst
46. Challenges, Best Practices and
Pitfalls
• Customer challenges:
-How do I know whom to call or complain?
-How do I know whether my expectation of
the product behavior is appropriate or not?
• Vendor organization challenges:
-How do I assess the real business impact of
the problem?
47. Challenges
• How do I assess the real business impact of the
problem?
• How do I get the required information from the
customer(especially when he or she is angry)
• How do we make it easier for the customers to
find out the solutions for the problems by
themselves?
49. Pitfalls
• Not having an objective way of classifying
problem priority
• Not abstracting the problem to the appropriate
level
50. Measurements of Effectiveness in
problem reporting
• Number of times customer can get a fix to his
problem by self –service
• Time taken by the customer to reach the right
support analyst
• Number of times problems reported to the
development/maintenance teams
• Time taken by the support analyst to provide a
solution