ABC Software House - courses.cs.ut.ee
Transcript of ABC Software House - courses.cs.ut.ee
ABC Software HouseSTUDY OF CURRENT SOFTWARE DEVELOPMENT PROCESS AND SUGGESTIONS FOR IMPROVEMENTS
By:Ijlal HussainKhalil Ur Rehman
Agenda Introduction
Baseline Process
Target Process
Implementation of Target Process
Measurement and Control
Conclusion
IntroductionABC is a well known Software House
◦ Established in 1989
◦ Three major Departments
◦ Use a traditional software development process
◦ .Net and Delphi are main technologies of development
Method used in this SPI◦ Process Modeling, Analysis of the current process
◦ PROFES Method
Issues in Current Process◦ Delays in software product delivery
◦ Defects in software
Goals of the SPI is to reduce the delays and defects
Baseline ProcessActivities
Artifacts◦ First meeting document, Task List, Completed Tasks,
Deliverable software
Roles◦ Executive, Team Managers (Department Heads), Teams
Tools/Methods/Techniques◦ .Net, Delphin and DMBS
Performance◦ 30% software projects are not delivered on time.
◦ Maintenance workload is high◦ Defects reported by customer
Target ProcessChanged Activities
◦ Meeting with the customer◦ Software Development
New Activities◦ Effort Estimation◦ Program based Testing
New Artifact◦ Software Requirement Specification ◦ Effort Estimation Document
Removed Artifact◦ First meeting document
New Method/Tool◦ SRS – IEEE 830◦ Unit Test◦ COCOMO
Implementation of Target ProcessIntroductory Session (5 Aug, 2015) – Introduction of the target process to all staff of Company
Tool Selection (12 Aug, 2015) – Discussion on suggested tools
Assessing Need of Training for Employees (19 Aug, 2015) – Discussion on necessary trainings
Training on SRS (26 Aug, 2015) – One day session on Documenting Software Requirement Specification
Effort Estimation (31 Aug – 03 September) – 2 to 3 hours, 3 – 4 days training on effort estimation methods
Program Based Testing (07 – 09 September) – Training on program based/unit testing
Selection of pilot project – project of 4 developers working for 6 months.
Roll Out – if method success on pilot project then it will be implemented on all projects for next six months
Monitoring and Control – end of 1st year data on projects will be analyzed and final decision will be taken
Measurement and ControlBase Measures
◦ Code Quality◦ Software Product Delays
Derived Measures◦ Average Quality◦ Average Software Product Delays
At end of the pilot project first check will performed◦ After pilot project check will be performed each quarter
At end of first year, Success Criteria◦ Target process has improved 30% product quality (i.e. reduce defects and maintenance load) ◦ Product delays reduced to 15% from 30%◦ Target process will be declared a success
Low quality than base process will be failure
In all other cases process will be studied again for improvements
Measurement and ControlBase Measures
Code QualityEntity Code
Attribute Quality
Unit Defects
Range [0, ∞)
When it is measured 6 months after deployment
Who collects data Support Team
How it is collected Customers’ feedback of defects
Who is responsible for
data integrity
Support Team
Software Product Delays
Entity Software Product
Attribute Delays
Unit Delayed Products
Range [0, ∞)
When it is measured Each Year
Who collects data Support Team
How it is collected Recording number of projects not
delivered on time in one year
Who is responsible for data
integrity
Support Team
Measurement and ControlDerived Measure
Average Quality
Entity Code
Attribute Average Quality
Unit (Number of Defects/KLOC)
Range [0, ∞)
When it is measured 6 months after deployment
Who collects data Support Team
How it is collected Customers’ feedback of
defects
Who is responsible for data
integrity
Support Team
Average Software Product DelaysEntity Software Product
Attribute Delays
Unit Number of Delayed Products/Year
Range [0, ∞)
When it is measured Each Year
Who collects data Support Team
How it is collected Recording number of products not delivered
Who is responsible for
data integrity
Support Team
ConclusionRationale
◦ Effort Estimation
◦ Defect Reduction
◦ Interviewing Customer
Risks◦ Effort Estimation
◦ Developer Resistance
◦ Program based Tests many not increase quality of software product
References[1] Acuna, S. T., Juristo, N., Moreno, A. M., & Mon, A. (2005). Overview of Software Process Models and Descriptive Criteria for their Analysis. A software Process Model Handbook for Incorporating People’s Capabilities.
[2] http://www.ijser.org/researchpaper%5CAnalysis_of_Software_Cost_Estimation_using_COCOMO_II.pdf
[3] https://courses.cs.ut.ee/MTAT.03.243/2015_spring/uploads/Main/example-report5.pdf
Thanks
Q & A