Curriculum Vitae - H. Sègla Jean-Luc KPODJEDO by dfsdf224s


									                                           Curriculum Vitae
H. Sègla Jean-Luc KPODJEDO
4930 Queen Mary #5, H3W 1X2                                                    Phone: +1 514 655-5793
Montréal, Québec, Canada                                                       Fax:   +1 514 340-4657


Ph.D.            Comp. Sci. and Soft. Eng., Polytechnique Montréal, Canada       07 / 2011 (projected)
         Thesis:        Graph Matching Applied to Software Evolution
         Supervisors: Philippe Galinier & Giuliano Antoniol

M.Sc.A           Computer Engineering, Polytechnique Montréal, Canada                        08 / 2007
         Thesis:       A Reputation Model for Transactions in Ad-Hoc Networks
         Supervisor:   Samuel Pierre

Eng. Diploma    Computer Engineering, UTBM, France                                           11 / 2005

Internships and Industrial Experience

EMMAS                            École Polytechnique de Montréal (Canada)               (6 months) 2005
        For my second and last internship in my Engineer Diploma cursus, I worked on the project
EMMAS (Electricity Market Multi-Agents Simulation) whose goal was to simulate different strategies for
actors in a decentralized electricity market. My tasks involved the conception of the back-end database
and the implementation of the multi-agents system using programming skills in Java and MySQL and the
multi-agents library MadKIT.

STILES                          Regional Council of Bourgogne (France)                (6 months) 2004
        For my 1 internship in my Engineer Diploma cursus, I worked on the project STILES for the
Regional Council of Bourgogne (CRB) in France. The project was a pioneering work initiated by the
Region of Bourgogne aiming at computerizing the management of investments and renovation works in
the public schools of Regions in France. My work resulted in a fully functional Web site, used to this
date, for the management of those investments. It required technical skills in PHP and PostgreSQL and
involved the design and implementation of a back end database, the entry interfaces, including an
innovative user-friendly query tool and an automated generation of official documents. My mandate
ended with a 2-day tutorial session for the 30+ employees of the CRB.

Computer Maintainer           FirstNET, Internet Service Provider (Benin)             (8 months) 2001
        As agent in the Technical Service, my tasks involved the installation and connection of cyber-
cafes, and the hardware and software maintenance of computers.

Kpodjedo H. S. J-L.                           Page 1 of 10                                   5-Nov-10
Research Interests

Software Engineering (software evolution/maintenance and quality, search based software engineering,
empirical studies, reverse engineering), Combinatorial Optimization (meta-heuristics, graph algorithms)

Research statement

I envisage a research carrier firmly placed in search-based software engineering. I believe that, in terms
of costs, performance and new insights, there are benefits in reformulating many software engineering
problems as optimization problems. Consistent with my Ph.D. work, I expect my contributions to be
primarily in the analysis of software evolution to improve software quality.

Current Work
My Ph.D. research is centered on software evolution but it also involved, beforehand, work on generic
algorithms for graph matching and, afterwards, applications on defect prediction models. My approach
revolves on the matching of different versions of a given software artifact through the life of a system
and involves three distinct but related aspects. First, the need of an efficient tool for such a matching
task lead to the development of a tabu search technique for approximate graph matching. Second,
software artifacts such as class diagrams are modeled as directed graphs and the matching algorithm is
applied to match subsequent diagrams. Third, based on the obtained matchings, I proposed new design
evolution metrics and assessed their usefulness in defect prediction models. The following paragraphs
detail each of those three main aspects of the work I am doing along with my supervisors.

Approximate Graph Matching
In many fields, there is interest in finding a good matching between two given objects represented as
graphs. In most real-world cases, matchings of interest should tolerate errors of correspondence
between nodes and arcs and consequently, approximate graph matching formulations have been
proposed. However, existing literature is centered on image and biochemistry communities with very
specific graph matching problems, benchmarks and algorithms. As a result, researchers and
practitioners from other fields, when facing their own graph matching problems, can be hard-pressed in
choosing between algorithms designed for other specific applications. Moreover, given that most graph
instances in image and biochemistry literature are very small (less than 100 nodes), the chosen
algorithm may well end up being unable to scale up.
To address this situation, we chose to tackle in a generic way, the approximate graph matching problem.
First, we observed and empirically validated that initializing a local search with a very small subset of
“correct” node matches is enough to get excellent results at the end of the search [2]. The lesson here is
that, instead of directly trying to correctly match all nodes and edges of a given graph to the nodes and
edges of another graph, one could focus on correctly matching a reduced subset of nodes. Thus, in order
to do just that, we resorted to the concept of local node similarity. Our approach consists in assessing,
by analyzing their neighborhoods, how likely it is to have a pair of nodes included in a good matching.
We investigated many ways of computing similarity values between pairs of nodes and proposed
additional techniques to attach a level of confidence to any computed similarity value. Our work results
in a similarity enhanced tabu algorithm [3, a] which advances the state-of-art.

Kpodjedo H. S. J-L.                           Page 2 of 10                                      5-Nov-10
Software Evolution through the Matching of High Level artifacts
Long-lived Object Oriented (OO) systems often possess a rich history of changes and design decisions
which should be harnessed by developers in their maintenance and evolution tasks and by managers in
their planning of those same tasks. However, given the size and complexity of OO systems and in case of
insufficient documentation or infra-structure, retrieving and understanding the history of the design
evolution is a difficult task which requires appropriate techniques.
In our approach, a design representation, usually the class diagram, is first recovered from the code and
modeled as a directed graph; then our graph matching algorithm is applied to gain insight on its
evolution through different snapshots. Our key difference is that, unlike the other approaches which are
solely dedicated to a specific representation, our generic graph matching algorithm can be adapted to
study different artifacts, provided that they can be represented as directed graphs and different
problems by changing the optimization criterion. To date, we tested our approach on the evolution of
class diagrams [1, 4, 5] and empirically proved it to be both efficient and scalable.

Design Evolution Metrics for Defect Prediction
Testing is the most widely adopted practice to ensure software quality. However, this activity is often a
compromise between the available resources and an ideal software quality. In object-oriented
development, testing effort should be focused on defective classes [8, 9]. Unfortunately, identifying
those classes is a challenging and difficult activity on which many metrics, techniques, and models have
been tried with mixed success.
Following the retrieval of class diagrams evolution by our graph matching approach, we proposed and
investigated the usefulness of elementary design evolution metrics in the identification of defective
classes [b]. The metrics include the numbers of added, deleted, and modified attributes, methods, and
relations. They are used to recommend a ranked list of classes likely to contain defects for a system. We
evaluated the efficiency of our approach according to three criteria: presence of defects, number of
defects, and defect density in the top-ranked classes. We conducted experiments with small to large
systems and made comparisons against known metrics (31 complexity metrics and the Chidamber and
Kemerer’s metrics). Results show that the design evolution metrics, when used in conjunction with
known metrics, improve the identification of defective classes. In addition, they show that our design
evolution metrics make significantly better predictions of defect density than other metrics and, thus,
can help in reducing the testing effort by focusing test activity on a reduced volume of code [b].

Outline of My Research Plan
My research plan is in line with the work I’m doing for my Ph.D. and will be centered on software
evolution, software quality and search-based software engineering. In order to broaden the range of
experiments I will be able to perform on software artifacts, I foresee extensions to the graph matching
tool I’ve been developing. I also intend to conduct experiments destined to retrieve the evolution of
different software artifacts (such as sequence diagrams or state machines) and investigate how the
extracted information can help maintainers and managers. Additionally, software testing is a research
field I am willing to explore, given my teaching experience in the field. Finally, I believe that my
knowledge of meta-heuristics and graph theory could result in fruitful collaborations with future
colleagues and contribute to the outreach of my university.

Kpodjedo H. S. J-L.                           Page 3 of 10                                     5-Nov-10
Publications and Scholar Work

Under Review
    a. Kpodjedo, S., Galinier, P., Antoniol, G., “Using Local Similarity Measures to Efficiently Address
        Approximate Graph Matching”, submitted to Discrete Applied Mathematics, 37 pages, October
Under Minor Revision
    b. Kpodjedo, S., Ricca, F., Galinier, P., Antoniol, G., Gueheneuc, Y.-G., “Design Evolution Metrics for
        Defect Prediction in Object Oriented Systems”, Empirical Software Engineering, 30 pages,
        September 2010
Journal papers
    1. Kpodjedo, S., Ricca, F., Galinier, P., Antoniol, G., Gueheneuc, Y-G., “Studying Software Evolution
        of Large Object-Oriented Software Systems Using an ETGM Algorithm”, Journal of Software
        Maintenance and Evolution,, 32 pages, September 2010
    2. Kpodjedo, S., Galinier, P., Antoniol, G., “On the Use of Similarity Metrics for Approximate Graph
        Matching”, Electronic Notes in Discrete Mathematics Vol. 36, 1 pp. 687-694, August 2010.

Peer-reviewed Conference papers

    3. Kpodjedo, S., Galinier, P., Antoniol, G., “Enhancing a Tabu Algorithm for Approximate Graph
        Matching by Using Similarity Measures”, Proceedings of the 10th Eur. Conf. on Evolutionary
        Computation in Combinatorial Optimization (EvoCOP2010), April 7–9 2010, Istanbul, Turkey, pp.
    4. Kpodjedo, S., Ricca, F., Antoniol, G., Galinier, P., “Recovering the Evolution Stable Part Using an
        ECGM Algorithm: Is There a Tunnel in Mozilla?”, Proceedings of the 13th Eur. Conf. on Software
        Maintenance and Reengineering (CSMR2009), March 24-27, 2009, Fraunhofer IESE,
        Kaiserslautern, Germany, pp. 179-188.
    5. Kpodjedo, S., Ricca, F., Antoniol, G., Galinier, P., “Error Correcting Graph Matching Application to
        Software Evolution”, Proceedings of the 15th Working Conference on Reverse Engineering
        (WCRE2008), October 15-18, 2008, Antwerp, Belgium, pp. 289-293.
    6. Kpodjedo, S., Pourzandi, M., Pierre, S., “Reputation Based Trust Management Using TCG in
        Mobile Ad-Hoc Networks (RTA)”, Proceedings of the 33rd IEEE Conference on Local Computer
        Networks (LCN2008), October 14-17, Montreal, Quebec, Canada, pp. 518-519

Kpodjedo H. S. J-L.                            Page 4 of 10                                      5-Nov-10
Workshop papers

    7. Kpodjedo, S., “Approximate Graph Matching in Software Engineering”, Proceedings of the 16th
        Working Conference on Reverse Engineering (WCRE2009), October 13-16, 2008, Lille, France,
        Doctoral Symposium, pp. 295-298
    8. Kpodjedo, S., Ricca, F., Antoniol, G., Galinier, P., “Evolution and Search Based Metrics to Improve
        Defects Prediction”, Proceedings of the 1st International Symposium on Search Based Software
        Engineering (SSBSE2009), May 13-15, 2009, Cumberland Lodge, Windsor, UK, pp. 23 - 32.
    9. Kpodjedo, S., Ricca, F., Antoniol, G., Galinier, P., “Not all classes are created equal: toward a
        recommendation system for focusing testing”, Proceedings of the 1st International Workshop on
        Recommendation Systems for Software Engineering (RSSE2008) co-located with ACM SIGSOFT
        2008 / FSE 16, November 10, 2008, Atlanta, Georgia, USA, pp. 6-10

Kpodjedo H. S. J-L.                           Page 5 of 10                                      5-Nov-10
Teaching Interests

I’m primarily interested in teaching classes in software engineering but I’m also inclined to teach meta-
heuristics, introductory programming, data structures, and databases.

Teaching Statement

I share the opinion that teaching is the noblest of all professions. Teaching is both a great opportunity
and a great responsibility. I believe that the legacy of a professor is not to be found only in her/his
publications or possibly outstanding careers for Master or Ph.D. students she/he mentored. Teachers
should do their best to positively impact the intellectual lives of all their students. This requires that they
show expertise, good pedagogy and passion in their teaching. As a student, I used to value the most
those three criteria and I believe they rank very high in the overall appreciation of a course for most
students. In the following, I will first detail my philosophy on those three points and then present some
specifics for software engineering courses.
Students deserve to be taught by someone who is knowledgeable in the field she/he is teaching. From
this point of view, and especially for computer science and engineering teachers, Internet is both an ally
and an enabler of more challenging questions from students. Nowadays, it is easier for a teacher to keep
herself/himself up to date with the newest developments in her/his field. Conversely, students too have
easier access to information and teachers need to be aware of that and act accordingly by raising even
more their own standards. As an aspirant professor, being knowledgeable and up-to-date in courses I
will be teaching is for me an absolute must and I see this as a great opportunity for self-improvement.
My personal experience in teaching reinforced my belief that one of the key aspects for successful
teaching resides in getting the students interested in the notions they are being taught. To achieve this
objective, I think that teachers should highlight, as often as possible, the general purpose of the
concepts they are teaching. They should provide a clear answer to the “So what?” question on every
new notion. Consequently, I think that teaching in knowledge-intensive fields such as software
engineering should first aim at capturing the interest of the students before delving into the more
specific aspects they need to master. When it comes to teaching new notions, I intend to first take the
necessary time to present the underlying ideas rather than rushing to the specifics.

Kpodjedo H. S. J-L.                             Page 6 of 10                                         5-Nov-10
In my opinion, a teacher must display passion or at least a high interest in what he is teaching. I see this
as a very powerful facilitator in conveying his knowledge. As a student, my most inspiring teachers were
those who were genuinely passionate about what they were teaching. This is not something that can be
required from all professors and all courses but I believe that teachers should learn to like the courses
they are giving because it will ease their teaching duties and positively impact the motivation of their
students. In my opinion, expertise and good pedagogy are much more effective with a bit of passion,
either genuine or cultivated.
Software Engineering
As a software engineering teacher, I intend to put emphasis on collaborative work and open-ended
projects. Whether in the industry or in academia, students will have to cooperate with other people and
it is essential that they get the communication, conflict resolution, and leadership skills they need to
succeed in such contexts. Moreover, team work can result in effective peer learning. Additionally,
prioritizing open-ended projects, and thus allowing the students to define their project up to a certain
point, will promote, among students, personal skills such as critical and creative thinking along with time

Teaching Experience

École Polytechnique de Montreal
         LOG2430: Software Validation and Verification (undergraduate course)
          Description: Introduction to Testing and Validation Methods. Drivers, Stubs, Oracles. Black Box
          Testing. White Box Testing. Test Generation for Finite State Machines. Introduction to Object-
          Oriented Testing. Strategies for Integration Testing. Statistical Approaches in Software
          Validation and Verification.
              o Lecturer                                                                            Fall’10
              o Teacher Assistant                                                Fall’08, Fall’09, Winter’10
         INF6102: Applied Meta-Heuristics for Computer Science (graduate course)
          Description: Hard Combinatorial Problems in Computer Science. Solving Approaches:
          Build/Repair. Solving Techniques: Greedy Heuristic, Simulated Annealing, Tabu Search, Iterative
          Local Search, Genetic Algorithms, Ant Colony Optimization. Hybridization, Memetic Algorithms.

Kpodjedo H. S. J-L.                            Page 7 of 10                                       5-Nov-10
        Adaptation of Meta-Heuristics to Problems at hand. Efficient Search of Best Neighbor:
        Appropriate Data Structures, Incremental Algorithms. Parameter Settings for Heuristics.
        Statistical Analysis of Experimental Results. Applications in Tele-communications Networks, Bio-
        Informatics, Scheduling.
              o Teacher Assistant                           Winter’07, Winter’08, Winter’09, Winter’10
École Polytechnique de Montreal
       Maria Dona Awedikian, Summer student,                                            Summer’08
       Ahmed Belderrar, M. Sc. A student,                                        Summer’10 - present

Kpodjedo H. S. J-L.                          Page 8 of 10                                     5-Nov-10
Professional Development

Professional Knowledge and Skills

Programming Languages           Java, C/C++, Perl, Ada, Pascal, Python, Lisp, Prolog, CLP(R)

Web Development                 PHP, HTML, XML, JavaScript, ActionScript, Macromedia Suite

Software Tools                  Eclipse, R, Borland Together, Visual C++, Matlab, EasyPHP, Madkit,
                                Microsoft Office Suite, ILog Solver

Database systems                Oracle, MySQL, PostgreSQL

Conference and Workshop Presentations

       “Enhancing a Tabu Algorithm for Approximate Graph Matching by using Similarity Measures” at
        the 10th Eur. Conf. on Evolutionary Computation in Combinatorial Optimization (EvoCOP2010),
        Istanbul, Turkey, April 8, 2010.
       “On the use of similarity metrics for Approximate Graph Matching” at the International
        Symposium on Combinatorial Optimization (ISCO), Hammamet, Tunisia, March 26, 2010.
       “Approximate Graph Matching in Software Engineering” at the Doctoral Symposium of the 16th
        Working Conference on Reverse Engineering (WCRE2009), Lille, France, October 15, 2008.
       “Not all classes are created equal: toward a recommendation system for focusing testing” at the
        1st International Workshop on Recommendation Systems for Software Engineering (RSSE2008),
        Atlanta, Georgia, USA, November 10, 2008.
       “Enhancing a Tabu Algorithm for Approximate Graph Matching by Using Similarity Measures” at
        the Optimization Days (JOPT2010), Montreal, Canada, May 12, 2010.

Conference Attendances

       10th Eur. Conf. on Evolutionary Computation in Combinatorial Optimization (EvoCOP2010),
        Istanbul, Turkey, April 7-9, 2010.
       International Symposium on Combinatorial Optimization (ISCO), Hammamet, Tunisia, March 24-
        26, 2010.
       16th Working Conference on Reverse Engineering (WCRE2009), Lille, France, October 15, 2008.
       6th IEEE Working Conference on Mining Software Repositories (MSR2009), Vancouver, Canada,
        May 16-17, 2009.
       17th IEEE International Conference on Program Comprehension (ICPC2009), Vancouver, Canada,
        May 17-19, 2009.

Kpodjedo H. S. J-L.                            Page 9 of 10                                    5-Nov-10
       International Conference on Predictor Models In Software Engineering Software (PROMISE2009)
        Vancouver, Canada, May 18-19, 2009.
       31st International Conference on Software Engineering, Vancouver, Canada, May 16-24, 2009.
       16th ACM SigSoft International Symposium on the Foundations of Software Engineering (ACM
        SIGSOFT 2008 / FSE 16), Atlanta, Georgia, USA, November 9-14, 2008.

Professional Service

       Publicity chair, 17th Working Conference on Reverse Engineering (WCRE2010)
       Reviewer,       14th Eur. Conf. on Software Maintenance and Reengineering (CSMR2010)

Professional Affiliations

IEEE Student Membership                                                                2010 - present

Kpodjedo H. S. J-L.                         Page 10 of 10                                   5-Nov-10

To top