Kannan Mohan
Baruch College
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Kannan Mohan.
European Journal of Information Systems | 2009
Lan Cao; Kannan Mohan; Peng Xu; Balasubramaniam Ramesh
Agile development methodologies such as Extreme Programming are becoming increasingly popular due to their focus on managing time to market constraints and the ability to accommodate changes during the software development life cycle. However, such methodologies need to be adapted to suit the needs of different contexts. Past literature has paid little attention to examine the adaptation of agile methodologies. Using adaptive structuration theory as a lens to analyze data from a multisite case study, we examine how the structure of agile methods, projects, and organizations affect the adaptation of agile methodologies. We describe the various sources of structure that affect appropriation of agile practices, the set of appropriated practices and their characteristics, and their link to process outcomes. Based on our findings, we provide prescriptions for adapting agile development methodologies. We also discuss how adapted agile practices can address several challenges faced by agile development teams.
hawaii international conference on system sciences | 2004
Lan Cao; Kannan Mohan; Peng Xu; Balasubramaniam Ramesh
The need to develop software at Internet speed and accommodate changes during the entire software development life cycle has made lightweight or agile development methodologies like extreme programming popular. However, such methodologies have been considered to be beneficial for small and medium sized projects, with small teams. In this paper, based on a case study in an organization that develops large-scale, complex software using a modified form of extreme programming, we highlight the key differences between agile principles proposed in prior literature and the agile practices that are suitable for large-scale, complex software development. Based on these differences, we propose general guidelines on tailoring agile development methodologies to make them suitable for the development of large, complex software systems.
Information Systems Research | 2012
Balasubramaniam Ramesh; Kannan Mohan; Lan Cao
Distributed software development has become a common reality with the advent of off-shore development and the need to be close to markets. Also, the dynamic nature of the environment in which businesses operate suggests the use of agile development methods. Whereas distributed software development requires the use of formal processes advocated by plan-driven approaches, rapidly changing environments are appropriate candidates for the use of agile development methods. This tension in agile distributed development poses conflicting demands between alignment and adaptability in the software development process. We conducted a multisite case study of three projects that use agile distributed development to examine how these organizations developed contextual ambidexterity---the ability to pursue conflicting demands simultaneously. Our findings, presented as a conceptual framework, indicate that conflicting demands between alignment and adaptability posed by agile distributed development can be addressed by a set of balanced practices that shape performance management and social context---two important antecedents of contextual ambidexterity.
hawaii international conference on system sciences | 2003
Kannan Mohan; Balasubramaniam Ramesh
Product/service family engineering, which encourages the development of a common product platform, plays a key role in facilitating large-scale and planned reuse in the development of customized products. In product family designs, managing points of variability is critical to achieve product variety. Variation points are points at which one among the several possible variations of a feature of a system can be selected to achieve different configurations of a product. We are developing an ontology that catalogues the different concepts associated with variability. This ontology is used to define the elements characterizing the knowledge elements necessary for managing variability in product/service families. We have also developed a knowledge management system integrated with an ontology development tool to facilitate knowledge capture and retrieval for variability management.
IEEE Software | 2010
Kannan Mohan; Balasubramaniam Ramesh; Vijayan Sugumaran
A software product line is a set of software-intensive systems sharing a common, managed set of features, developed from reusable core assets and incorporating variations to derive product variants. This involves identifying commonality and variability in the product family and implementing shared artifacts while preserving the ability to implement required variability. Software development organizations that recognize market opportunities for products that share a significant number of common elements, but that also exhibit variations, can reap significant economic benefits with SPLE. Agile methods emphasize improvisation over conventional development approaches. These methods focus on quick development in an uncertain, ill-understood environment in which requirements rapidly evolve. These methods also view people, rather than formal documentation, as a projects most important element.
decision support systems | 2007
Kannan Mohan; Balasubramaniam Ramesh
Group decision and negotiation (GDN) in distributed collaborative environments involves the acquisition and use of extensive knowledge. Knowledge elements that play a critical role in guiding GDN activities are distributed across different work environments that are not seamlessly integrated with each other. We argue that integrating fragmented knowledge will improve the process of GDN in software development. In this paper, we present an approach to knowledge integration using traceability. Our approach comprises of: (a) a traceability framework that identifies the key knowledge elements that are to be integrated, and (b) a prototype system that supports the acquisition, integration, and use of knowledge elements represented by the traceability framework. We illustrate the usefulness of our approach with a case study in a software development organization.
decision support systems | 2008
Kannan Mohan; Peng Xu; Lan Cao; Balasubramaniam Ramesh
Software configuration management (SCM) and traceability are two prominent practices that support change management in software development. While SCM helps manage the evolution of software artifacts and their documentation, traceability helps manage knowledge about the process of the development of software artifacts. In this paper, we present the integration of traceability and SCM to help change management during the development and evolution of software artifacts. We developed a traceability model using a case study conducted in a software development organization. This model represents knowledge elements that are essential to comprehensively manage changes tracked within the change management function of SCM tools. A tool that supports the integrated practice of SCM and traceability is also presented. We illustrate the usefulness of our model and tool using a change management scenario that was drawn from our case study. We also present a qualitative study towards empirically evaluating the usefulness of our approach.
hawaii international conference on system sciences | 2002
Kannan Mohan; Balasubramaniam Ramesh
Service family architectures are based on a set of basic building blocks that can be configured appropriately to build different services based on the same set of assets. These building blocks should be designed to provide variability so as to facilitate configuration and assembly in order to produce a family of products/services. Such an architectural design for a family of services is recognized as a highly knowledge intensive process. Documenting design decisions associated with these various configurations leading to variability and the capability to trace the life of a variation in both forward and backward directions are key to a flexible development of a service family. In this paper; we discuss the key role played by a traceability-based knowledge management system in documenting such design decisions and in tracing variability. Using a case study, we illustrate the importance of using such a knowledge management system in the design and development of service families.
European Journal of Information Systems | 2013
Lan Cao; Kannan Mohan; Balasubramaniam Ramesh; Sumantra Sarkar
Agile software development that provides software development organizations, the ability to respond to changes in turbulent business environments, has been gaining wide adoption. Agile software development projects are characterized by ‘just enough’ planning and lack of upfront commitment to scope, cost, and schedule. These characteristics pose conflicting demands on managers responsible for making funding decisions, because traditional approaches to funding IT projects are often based on well-defined scope, cost, and schedule. These conflicts demand the adaptation of traditional funding processes to suit to agile projects. We draw from Adaptive Structuration Theory to understand the nature of conflicts between traditional IT project funding processes and the dynamic nature of agile projects, and how these conflicts are addressed by practices that are appropriated in the process of social interaction between funding decision makers and development teams. On the basis of a multisite case study, we present a framework that explains how organizations adapt traditional IT funding approaches to accommodate the unique characteristics of agile IT projects.
decision support systems | 2007
Kannan Mohan; Radhika Jain; Balasubramaniam Ramesh
New product development (NPD) in the pharmaceutical industry is very knowledge intensive. Knowledge generated and used during medical NPD processes is fragmented and distributed across various phases and artifacts. Many challenges in medical NPD can be addressed by the integration of this fragmented knowledge. We propose the creation and use of knowledge networks to address these challenges. Based on a case study conducted in a leading pharmaceutical company, we have developed a knowledge framework that represents knowledge fragments that need to be integrated to support medical NPD. We have also developed a prototype system that supports knowledge integration using knowledge networks. We illustrate the capabilities of the system through scenarios drawn from the case study. Qualitative validation of our approach is also presented.