McDonnell Douglas Foundation Software Engineering Laboratory

Mission: Is to perform research on challenging issues of software engineering technology that are critical to support the development, operation and maintenance of modern software-centric systems. Our lab will enhance the competitiveness of member organizations by conducting collaborative research programs, developing joint R&D proposals to compete for state, national, and international funding, and delivering high-quality educational and training programs both on-campus and off-campus.

Current Lab Faculty Researchers: Frank Liu (Lab Director), Marouane Kessentini, Bruce McMillin

Current Lab Student Researchers: Ming Dong (Post-doc), Ravi Santosh Arvapally, Kenneth Kofi Fletcher, Eric Christopher Barnes, Ali Alhajhouj, Mohamed Wiem Mkaouer, Lokesh Krishna Ravichandran, Ali Ouni (Exchange student with University of Montreal-Canada), Adnane Ghannem (Exchange student with Ecole de Technologie Superieur-Canada), Rim Mahouachi (Exchange student with University of Tunis-Tunisia), Ameni Ben Fadhel (Exchange student with University of Tunis-Tunisia), Akshay Harwande, Wafa Werda (Exchange student with University of Tunis-Tunisia), Nathan Barron

Current Projects:

  • Web-based Computer Supported Intelligent argumentation and collaborative Decision Support System.
  • Development of a Portable Turn-Key Motion Capture System for Shop-Floor Use
  • Automated Assembly Simulation using Motion Capture with Wiimotes
  • Eye tracking for Model Maintenance and evolution
  • Automation of code and model maintenance artificial intelligence-based techniques: transformation, testing and evolution
  • Empirical studies for software refactoring

Current Funding Sources:

Research Highlights:

Web-based Computer Supported Intelligent Argumentation and Collaborative Decision Support System
Frank Liu

Web-based argumentation and collaborative decision making is a process of reaching consensus in a decision making group of stakeholders through web-based argumentation by evaluation of different possible alternative solutions of an issue. The web-based intelligent argumentation system allows stakeholders to post their arguments and evidences on different alternatives of an issue, assign weights and priorities to the arguments and reach the most favorable alternative using a fuzzy inference engine.

  1. Ravi Santosh Arvapally and Xiaoqing (Frank) Liu, “Analyzing credibility of arguments in a Web-based intelligent argumentation system for collective decision support based on K-means clustering algorithm”, Accepted for publication in the journal of Knowledge Management Research & Practice, June, 2012.
  2. Ravi Santosh Arvapally, Xiaoqing (Frank) Liu and Wei Jiang, “Identification of Faction Groups and Leaders in Web-based Intelligent Argumentation System for Collaborative Decision Support”, the 2012 International Conference on Collaboration Technologies and Systems (CTS 2012), Denver, Colorado, USA, May 21-25, 2012.
  3. Xiaoqing (Frank) Liu, Eric Christopher Barnes, and Juha Erik Savolainen, “Conflict Detection and Resolution for Product Line Design in a Collaborative Decision Making Environment,  Proc. of the 2012 ACM Conference on Computer Supported Cooperative Work (CSCW’12), Seattle, Feb., 2012.
  4. Xiaoqing (Frank) Liu, Rubal Wanchoo, Ravi Santosh Arvapally, “Empirical Study of an Intelligent Argumentation System in Multi-Criteria Decision Making,” Proc. of the 2011 International Conference on Collaboration Technologies and Systems (CTS’2011), Philadelphia, Pennsylvania, USA, May, 2011.
  5. Xiaoqing (Frank) Liu, Hojong Baik,  Ravi Santosh Arvapally, Rubal Wanchoo, Web-based Intelligent Computational Argumentation based Conflict Resolution in Air Traffic Management, Proc. of 2010 Annual International Symposium on Applications and the Internet, Seoul, South Korea, July, 2010.

Model and Code Transformation by Example
Marouane Kessentini

The objective of this research is to design, build and evaluate new automated software maintenance tools which will enable computer engineers charged with the task of evolving existing software systems to do so more efficiently and accurately than ever before. Improving the capability to evolve existing software will drastically improve productivity and competitiveness of our software industry. In order to benefit from new hardware innovations that provide higher performance and better functionality, existing software systems must also evolve. However, the evolution of languages and software architectures provides a strong motivation to migrate/transform existing software systems. In fact, this transformation allows taking advantage of the latest technologies while preserving system functionality. One can replace existing designs with new, functionally equivalent ones manually. However, as argued in, developing new systems from scratch implies high costs and risks whereas redesigning or revalidating the same functionalities, although common and expected,  has become an intense time-consuming task due to years of extensive maintenance where changes were not properly documented and design practices became outdated.

In this project, we intend to improve developer productivity by automating different evolution/transformation activities for software accuracy in evolving large software systems. We plan to investigate and evaluate ways to make model and code transformations easy to manipulate, reusable, fully automatable, and verifiable. The ultimate goal of this project is to provide automated software maintenance tools that developers can use to transform, test and evolve models or codes easily. The new automation technology will create a collaborative environment where information can be retained and shared with future ease of handling set as a goal that will always be at the forefront of maintenance development.

  1. Kessentini, M., and Mkaouer, M., Multi-objective model transformation, Software of Systems and Software, Accepted, Elsevier (to appear), 2012.
  2. Kessentini, M., Sahraoui, H., Boukadoum, M. and Omar ben Omar, Search-Based Model Transformation by Example, Software and System Modeling Journal, Vol 20, pp. 209-226, Springer, 2012.
  3. Kessentini, M., Sahraoui, H., and Boukadoum, M. Example-based Model Transformation Testing, Automated Software Engineering Journal, Vol 18, pp 199-224, Springer, 2012.
  4. Ben Fadhel, A., Kessentini, M., Langler, P., and Wimmer, M., Search-based Detection of High-level Model Change, Published, 28th IEEE International Conference on Software Maintenance (ICSM 2012), IEEE computer society (acceptance rate 21%), 2012.
  5. Ouni, A., Kessentini, M., Sahraoui, H., and Mohamed Salah Hamdi, Search-based Refactoring: Towards Semantics Preservation, Published, 28th IEEE International Conference on Software Maintenance (ICSM 2012), IEEE computer society (acceptance rate 21%), 2012.