University of Minnesota
Software Engineering Center
/

You are here

Ian De Silva

Ian De Silva
Student/Research Assistant
Office Location: 
6-248 Keller Hall
Biography: 
Ian De Silva is a Ph.D. student in the Department of Computer Science at the University of Minnesota. His focus area is software engineering, specifically in using simulation to facilitate the evaluation and tailoring of software engineering processes for large enterprise organizations. Additionally, Ian holds a M.S. in Computer Science from the University of Minnesota and a B.S. in Computer Science from Michigan State University where he also pursued an additional major in Computational Mathematics. Prior to graduate school, Ian worked for IBM as a software engineer where he developed tooling to support the IBM i mid-range server platform, led several small projects, and introduced development process changes to his team. He has also held numerous positions working on or in support of the IBM i platform. Beyond his research in simulation, Ian's professional interests include software engineering processes, software licensing, and software engineering education. After graduation, he plans to teach software engineering while working in the industry, allowing him to leverage his work experience in the classroom to better prepare students to succeed as software engineers.

Recent Publications

A Framework to Evaluate Candidate Agile Software Development Processes

Today's software development projects must respond to fierce competition, a constantly changing marketplace, and rapid technological innovation. Agile development processes are popular when attempting to respond to these changes in a controlled manner; however, selecting an ill-suited process may increase project costs and risk. Before adopting a seemingly promising Agile approach, we desire to evaluate the approach's applicability in the context of the specific product, organization, and staff. Simulation provides a means to do this.

Domain Modeling for Development Process Simulation

Simulating agile processes prior to adoption can reduce the risk of enacting an ill-fitting process. Agent-based simulation is well-suited to capture the individual decision-making valued in agile. Yet, agile's lightweight nature creates simulation difficulties as agents must fill-in gaps within the specified process. Deliberative agents can do this given a suitable planning domain model. However, no such model, nor guidance for creating one, currently exists.

A Reference Model for Simulating Agile Processes

Agile development processes are popular when attempting to respond to changing requirements in a controlled manner; however, selecting an ill-suited process may increase project costs and risk. Before adopting a seemingly promising agile approach, we desire to evaluate the approach's applicability in the context of the specific product, organization, and staff. Simulation provides a means to do this. However, in order to simulate agile processes we require both the ability to model individual behavior as well as the decoupling of the process and product.

Pages