Presentation on software assessment in bangladesh basis soft_expo2012_final
1. Focus: Methodology , Findings and Salient's suggestion for Success
Researchers : Mohammad Shahadat Hossain Chowdhury,
Venue : BASIS SoftExpo-2012
Date : 26-Feb-2012
Department of CSE - United International University
2. 1. Hazard of Using Process
2. Experience and Methodology of Research
3. Strength and Weakness of Current Practice
activity
4. Salient Suggestion and Findings
5. Conclusion and Future Work
6. Q& A
Department of CSE - United International University
6. Common (Mis)conceptions about
Software Process
• Investment in Process = More Cost
• Industry operate at such a low margin that it
cannot afford processes.
• Processes increase overheads, resulting into
more development and/or deployment time.
• Processes makes an organization inefficient.
Our time is consumed by documentation,
rather than coding.
Department of CSE - United International University 6
7. Questions about Process and
Practice
• Is software process
improvement worth the
investment?
• Can a mature process really
pay for itself?
?
• Is ISO/CMMI or Six Sigma
goals worth pursuing?
• Or Can we go for such Model
which leads profit as well as
ensure minimum Process
Quality
Department of CSE - United International University 7
8. Research Methodology*
A. Initial approach Questionnaires using likert Scale
B. User story writing on projects
C. Finding demonstrate by PMI –Plus Minus Interesting
technique
Details : reasoning for questions *
Department of CSE - United International University 8
9. Research Methodology*
Likert Scale type
Department of CSE - United International University 9
10. Research Methodology*
Prepared Questionnaires
a. Organization related :22 Questions
b. Project Management & Requirement
Analysis : 24 Questions
c. Software Quality Assurance & Design :10 Questions
d. Coding :13 Questions
e. Testing :20 Questions
Some times, It was not limited to questions but move to
story what they are actually doing
Department of CSE - United International University 10
11. Research Methodology*
Step 1: Collecting data using User story
Step2 :Focus process areas for characterizations
i. Project Management
ii. Analysis & Design
iii. Quality Assurance
iv. Testing
Department of CSE - United International University 11
12. Research Methodology*
Why PMI?
PMI stands for 'Plus/Minus/Interesting'. It is a valuable
improvement to the 'weighing pros and cons' technique used
for centuries and implications of a decision.
When we have selected a course of action, PMI was a good
technique to use to check that it is worth taking.
If the decision is still not obvious, we can then score the table
to show the importance of individual items. The total score
should show whether it is worth implementing the decision.
Department of CSE - United International University 12
13. Research Methodology*
PMI Focus on Project Management
PMI- Plus minus
Interesting
Plus Minus Interesting
New Team member
Estimation was based on Real Life estimation
cope with New
expert judgment. was not considered.
domain.
Due to absence of
Project Monitoring
Re-Planning, More
Real Experience PM was not effective in
difficult to visualize
involved. terms of Issue
project ending rather
resolution.
than assumption.
Risk was addressed, Project close with
Risk Identification was no Mitigation or mutual support
good. Contingency Plan or understanding in later
corrective action. phase.
Domain Knowledge
Project Progress & No Re- Estimation retention Policy
Milestone meeting held. Done. through Document
was partially absent.
Department of CSE - United International University 13
14. Research Methodology*
PMI Focus on Project Management
PMI- Plus minus
Interesting Plus Minus Interesting
Requirement Validation and
No Re-Scheduling for Client reference creation
Sign off done with little
Re Planning. through extra support.
effort.
User Manual Validation by Resource Swapping
User and UAT approach. during Project.
Team Motivation for extra Infrastructure readiness
work and extra Mileage. related delay.
Client Maturity was not
good in terms of
Project Management Plan
Visualization or
prepared as a Bible.
Impacted Score Range [+-3] Requirements and
Interface.
Project Kickoff Ensures Sr.
Mgmt and Team Initial Technical and
Commitment covering Functional
infrastructure, steering Requirements were not
committee, escalation mature.
mechanism issue.
Initial Kick off Commitment
not follow up during the
project.
Department of CSE - United International University 14
15. Objectives of Software Process
Improvement Efforts *
• Reduce rework
– Each defects costs
– Higher number of defects results into very high rework cost
(and unsatisfied clients also)
• Increase productivity
– What is the productivity of your developer? Do you have
statistics?
• Remove bottlenecks
– The efficiency of development team depends on the process
bottlenecks
• Improve visibility
– Do you know the accurate project status at any point of
development?
Department of CSE - United International University 15
16. Case Example 1: Software Process
without Review and/or Inspections
Rework
Production
Requirements Rework 100++
Rework Systems / Rework
Acceptance Test
100+
Integration Rework
Design Rework Testing
100+
Rework
Unit Test
100+
Rework
Code
Department of CSE - United International University 16
17. Case Example 1: Software Process with
Review and /or Inspections
Rework Production
Requirements
Requirements
1
Systems /
Review/Inspection Acceptance Test
Design Rework
Design
1 Integration
Testing
Review/ Inspection
Unit Test
Rework
Code
Code
1
Review/ Inspection
Department of CSE - United International University 17
18. Cost of Review/Inspection Process Efforts
Req. Defects
Cost of Defect Removal (Tk. in 000)
20
18 Analysis Defects
16
14 Design Defects
12 Code Defects
10
8
6
4
2
Req. Analysis Design Code Test Acceptance Operations
Defect Removal Stage
Department of CSE - United International University 18
19. Limitation of Research Methodology*
* Limitations of this Research only 4 to 5 company visit.
* Lesson Learn from this research yet to incorporate in
the next research
•* Only SME local Organization selected but not
categorized based on Practitioners and expert
•
Department of CSE - United International University 19
21. Matrix showing strength & weakness of
activity Perform *
Activity Poor Low Avg High
1. Prepare formal Project Plan & Schedule X
proposal level
2. Prepare Estimation based on actual fact X
[ i.e. productivity factor]
3. Rework Effort Tracking X
4. Based/Raw data analysis for project X
progress, Defect and time sheet etc.
5. Schedule Track and update X
6. Root cause and defect analysis X
7. Domain Knowledge sharing X
8. Self study / R & D X
9. Prepare & update Project Plan & Schedule X
execution level
Department of CSE - United International University 21
22. Matrix showing strength & weakness of
activity Perform *
Activity Poor Low Avg High
10. Practice of Self study / R & D by team X
11. Response on Bug fixing and changing X
requirements of client
12. Track internal or external changes in X
requirements, its cost and dead line fail
13. Schedule and Effort Variance Track X
14. Maintenance period support and extra work X
15. Quality and Testing activity X
16. Skill and Role based Training X
17. Client dealing and Negotiation in effective X
manner
Department of CSE - United International University 22
23. Summary of Analytics *
Based on the data from the below table using 17 focus
Activities , We can convert organization strength upto
64.5%, if we use pareto analysis
Rate Number % Remark
High 5 29.5%
Avg 1 6%
Low 5 29.5% Try to convert
it into avg or
high
Poor 6 35% Activities
belong this can
be focus for
improvement
Total 17 100
Department of CSE - United International University 23
25. Salient Suggestions for Success *
1. Life cycle selection and validation for specific project type and
size based on client Maturity.
Key Benefit: Help project to focus on reality and maturity of
application, as well as ensure client expectations [in terms of time
and deliverables]
2. Emphasis on Estimation and share the reality with client sponsor
showing ROI-Return on Investment.
Key Benefit: Visualize and change clients target & create
Impression as well as productivity for future.
3. A small project charter / management plan need to ensure for
keeping overview of project
Key Benefit: Reduce Impact of resource swapping
Department of CSE - United International University 25
26. Salient Suggestions for Success Cont..
4.Plan may be based on Schedule either excels/Microsoft Project/ Jira,
Identify dependency, Re-Schedule visualizes the roadmap and
progress.
Key Benefit: Any time Management or client will get updates of
Project and may reduce the Risk of delay through
Mitigation/contingency plan. Corrective measures can be taken
easily.
5. Monitoring and control team, Milestone, Risk, should kept Minimum
Project Status Report, Minutes of Meeting and Action Item Tracker/
Issue Tracker monthly/weekly or daily scrum meeting can be
arranged.
Key Benefit: At least Sr. management and PM can be updated by this
report as well as Clients can be notified about the status.
Department of CSE - United International University 26
27. Salient Suggestions for Success Cont..
6. Separate Measurement can be tracked for Rework, Defect, skill,
costing, which may be calculated and analyzed for Cost and Benefit
analysis
Key Benefit: Cost and Benefit Analysis can be done [If management
focuses on it]
7. Resource Allocation and Release details need to be updated from
schedule with skill.
Key Benefit: Helps to plan for Future Project and skill
8. Knowledge Share culture may impose through Key Performance
Indicator.
Key Benefit: It helps to prevent another project committing the
same mistake and increase skilled resource
Department of CSE - United International University 27
28. Salient Suggestions for Success Cont..
9.ERD design needs to verify effectively before implementation.
Key Benefit: Helps to reduce rework in implementation phase
10.Need to follow Software Security, Maintainability issue.
Key Benefit: It will help to increase customer satisfaction will
create option for reuse
11. Need to follow Minimum tools for version control or bug tracking
and effort of rework.
Key Benefit: Its help to identify the bug and reasoning for it and help
to calculate extra cost for re-work effort.
12. Ensure Domain Experts in Analysis Phase
Key Benefit: Overcome the project failure because of lack of Domain
Knowledge and experience of analyst and end users.
Department of CSE - United International University 28
29. Salient Suggestions for Success Cont..
13. Need to track bug and prepare test case for testing
Key Benefit: It will support to deliver quality product and help
team to make their weakness as strength.
14. Need to ensure risk tracking approach and risk database.
Key Benefit: Help to mitigate or contingency planning of risk and
support other learn from other mistakes/risk
Department of CSE - United International University 29
31. Collects ,
Measures Minimum
Practice
from SME org
Publish & Present Paper
Root Analyze &
validate by 3D analysis of Data
Software through PMI – Measures
practitioners At least 15 SME
Publish Metrics data and Paper
Root cause data
Map with Best Computation and share metrics
practice ,
Model and trend
Metrics
Evaluation Indicators &
Discuss and Validate Model Guide for SME
By BASIS
Department of CSE - United International University 31
32. How to have Successful Basic Process in
your project
Get services of a good Software Process Improvement
coach. Don’t follow do it yourself approach unless you
have the required expertise.
Confirm executive level (CxO) sponsorship and
commitment.
Treat Basic Process as a routine work and part of project.
Develop plan, outline key success factors and provide
resources.
Department of CSE - United International University
33. Common Reasons for the Failure of SPI
Efforts
Lack of executive-level (CxO) sponsorship and
commitment.
Lack of middle and 1st-line management commitment.
Organizational culture unwilling to change -- e.g.,
“Hero-developer” culture.
Lack of commitment to continuous Software Process
Improvement and Knowledge Monopoly
Do it yourself approach.
Department of CSE - United International University
34. Organization and the Practitioners
Options!
Continue with the software
industry’s historical record.
OR
Transform your organization and
practice into an efficient and mature
way with higher profits and quality
Lets see the culture build the process
Department of CSE - United International University 34
35. But anyone can start now and
create a successful ending.
Department of CSE - United International University 35
36. Mistakes are painful when they
happen & enjoyed by the competitors
But year's later collection of mistakes
is called experience, which leads to
success.
It allow Learn from Others Mistake
Department of CSE - United International University
37. It’s a continuous journey in
software process improvement
We welcome the carp of our work for the future
strength, towards this research, as we are still learning
from the real life practice .
Thank You for patience and support.
Department of CSE - United International University 37
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.
PMI is an important Decision Making tool: the mind tools used so far in this section have focused on selecting a course of action from a range of options. Before you move straight to action on this course of action, it is important to check that it is going to improve the situation (it may actually be best to do nothing!) PMI is a useful tool for doing this. How to Use the Tool: In the column underneath 'Plus', write down all the positive results of taking the action. Underneath 'Minus' write down all the negative effects. In the 'Interesting' column write down the implications and possible outcomes of taking the action, whether positive, negative, or uncertain. By this stage it may already be obvious whether or not you should implement the decision. If it is not, consider each of the points you have written down and assign a positive or negative score to it appropriately. The scores you assign may be quite subjective. Once you have done this, add up the score. A strongly positive score shows that an action should be taken, a strongly negative score that it should be avoided. Example: A young professional is deciding where to live. Her question is 'Should she move to the big city?' She draws up the PMI table below: Plus Minus Interesting More going on (+5) Have to sell house (-6) Easier to find new job? (+1) Easier to see friends (+5) More pollution (-3) Meet more people? (+2) Easier to get places (+3) Less space (-3) More difficult to get own work done? (-4) No countryside (-2) More difficult to get to work? (-4) +13 -18 -1 She scores the table as 13 (Plus) - 18 (Minus) - 1 (Interesting) = - 6 For her, the comforts of a settled rural existence outweigh the call of the 'bright lights' - it would be much better for her to live outside the city, but close enough to travel in if necessary. PMI was codified by Edward de Bono Key points: PMI is a good way of weighing the pros, cons and implications of a decision. When you have selected a course of action, PMI is a good technique to use to check that it is worth taking. To use the technique, draw up a table with three columns headed Plus, Minus and Interesting. Within the table write down all the positive points of following the course of action, all the negatives, and all the interesting implications and possible outcomes. If the decision is still not obvious, you can then score the table to show the importance of individual items. The total score should show whether it is worth implementing the decision.