I want to make a model that can recommend the model and approach to follow during SDLC. Please guide me a little in this and if there is such a system, please mention it and let me know how we can improve it.
I'm not sure about an existing recommender system but choosing a model, as per my knowledge, is dependant on a lot of varying factors that are not even fixed i.e. there are no fixed rules to choose a model. Rather, the choice can be based on personal preferences or project attributes or available resources or time available or even familiarity; to name a few.
I guess you first need to see if you can find such validated rules that can help you make such recommendations.
Otherwise, there are only pros & cons & constraints related to each.
Yes, there are recommendation systems in software engineering that can suggest models and approaches to follow during the software development life cycle (SDLC). One example is the Recommender System for Software Engineering (RSSE) framework, which is a knowledge-based recommender system that can provide guidance on the selection of software development methods, techniques, and tools based on the project's characteristics and requirements.
The RSSE framework utilizes a knowledge base that contains information about different software development approaches and models, as well as their advantages, disadvantages, and recommended usage scenarios. The system takes input from the project manager or team and applies a decision-making process to recommend the most appropriate software development approach or model.
Another example is the JESSICA system, which is a case-based reasoning system for software engineering. JESSICA provides recommendations on software development methodologies and tools based on previous successful projects with similar characteristics. The system uses a case library that stores information about past projects, including their characteristics, requirements, and the software development approaches and tools that were used. The JESSICA system retrieves similar cases from the case library and recommends the most appropriate software development methodology and tools based on the outcomes of those previous projects.
Overall, these recommendation systems can help software development teams make more informed decisions about the selection of software development methods, techniques, and tools, which can lead to improved software quality and project success.
The answer to your question will turn on the kind of SDLC being contemplated. If, for argument's sake, we limit the scope of your question to Waterfall and Agile, the models for both are radically different one from the other.
It will therefore be important for you to first define your scope of interest as it pertains to software development styles/approaches.