The purpose of this research is to make comparison of different software development models as well as software maintenance process models for the sake of presenting an enhanced maintenance model. The comparison is made on the basis of different criteria, such as functionality, usability, reusability, performance and availability. Software is developed to help the user of the system so that he/she can work more effectively and efficiently. In software development following phases are considered i.e. requirement gathering phase, requirement analysis phase, design phase, coding, and testing. The maintenance in working software is applied on the basis of following criteria: editing in software module, adding new features, removing useless features, and for enhancing functionality of complete software, so that the software product can cope with current working demands of market. To overcome the problems occurs in current working software there is need to make maintenance procedure more effective and perfect. The current study has been based on enhancement of software maintenance process. “Enhancement in Task-Oriented Software Maintenance Model by Using Requirement and Design Ruse Repository” is proposed in this paper, which is based on “Enhancement in Task-Oriented Model”. Through which it would become easy to proceed maintenance procedure in a controlled, cost effective and in a time saving way. Different software houses have been studied for the sake of making enhancement in the software maintenance model. This proposed model has lot of benefits over previous maintenance model. Moreover this study increases the customer confidence over maintainer and also uses as helping hand for increasing developer’s confidence over customer or user.
In this research a process model is proposed for software companies to overcome scrum process issues with the combination of agile model and appropriate lean principles without compromising its benefits and evaluate its success in five different software development companies. Scrum is widely used agile development method that put prominence on the cross functional and self-organized teams working in small items called sprints to regularly construct entire increment of product. It heavily depends upon the people and project due to flexibility in requirement change. Moreover, Software development managers, project managers and team lead engineers unsure how to apply agile methods with lean principles, how to minimized developer and team management overload and how to promote interest in team members. Many organization fail in getting success and proper benefits from scrum as it is difficult to handle large and complex project that involve weak value flow, team level and multiple team level issues. In software development to much developer overload due to extra features makes the project heavy weight. No proper model is yet introduced which implement lean principles in Agile model, If proper eliminate waste principles are used in scrum process it will provide better and light weight improved process.