Managing Knowledge in Agile Software Development
Amitoj Singh, Kawaljeet Singh, Neeraj Sharma · 2021
These days business activities are changing at very rapid rate and there are increasingly complex requirements set on programming solution that puts traditional software development methods (also called heavyweight) at the rear and leads to the need for other development practices which can overcome the problem of software crises. Modern approaches, also known as agile or lightweight methodologies, claim to provide solution to above said problem. Heavyweight methodologies, commonly known for its traditional ways to develop software put emphasis on comprehensive planning, detailed documentation, and expansive design. Unlike traditional methods, agile methodologies employ short iterative cycles, and rely on tacit knowledge within a team. Knowledge Management (KM) can be easily accepted into agile software development environments. Following are two reasons in favor of this point of view. First, the agile cultural infrastructure already encourages values such as cooperation, communication and knowledge sharing; specifically, agile software development processes include some practices that support KM, e.g. stand-up meetings, the planning game, pair programming and the informative workplace. Second, KM is about learning, and ASD set up an environment that supports learning processes. In this paper, attempt is made to find out specific agile practices which promote KM.