Current State

August 2011 - July 2014: Elected member of the Scientific Council at the Higher Institut of Computer Science and Multimedia of Sfax. University of Sfax, Tunisia.

Since 2011: Member of the I2M (Informatique et Multimédia) research Master commission at the Higher Institut of Computer Science and Multimedia of Sfax. University of Sfax, Tunisia.

Since 2009: Member of the ISI (Ingénierie des Systèmes d'Information) professional Master commission at the Higher Institut of Computer Science and Multimedia of Sfax. University of Sfax, Tunisia.

Since 2009: Member of the IPIM (Ingénierie de Production et d'Intégration Multimédia) professional Master commission at the Higher Institut of Computer Science and Multimedia of Sfax. University of Sfax, Tunisia.

Since September 2009: Associate Professor in Computer Science at the Higher Institut of Computer Science and Multimedia of Sfax. University of Sfax, Tunisia.

February 2008 - September 2009: Assistant Professor in Computer Science at the Higher Institut of Computer Science and Multimedia of Sfax. University of Sfax, Tunisia.

September 2006 - February 2008: Assistant Professor in Computer Science at the Higher Institut of Computer Science and Mathematics of Monastir. University of Monastir, Tunisia.

2008 - 2012: IEEE member (Computer Society): Member of the Institute of Electric and Electronic Engineering (IEEE).

Education

Ph.D. degree in Computer Science from the Paul Sabatier University of Toulouse-France and from the Faculty of Economics Sciences and Management of Sfax-Tunisia.

Master degree (DEA) in Computer Science from the Faculty of Economics Sciences and Management of Sfax-Tunisia.

University Degree in Computer Science from the Faculty of Economics Sciences and Management of Sfax-Tunisia.

Research activities

Research Topics

My research interests focus on :
  • Model Driven Architecture
  • Component-based Architectures
  • Architecture-based Software Evolution
  • Formal Design of Software Architectures
  • Service Oriented Architectures
  • Eclipse for Modeling

Research project in cooperation

Responsible of the DGRST/CNRS project N°. 12/R 14-01 in collaboration with Mr. Khalil DRIRA LAAS/CNRS, Toulouse, France. For more details, you can visit the Project Web Site.

Title: Conception des architectures logicielles dynamiques orientées services correctes par construction

Period: 2011 - 2013

Supervision of research

aa Co-supervision of PhD degrees

I participate in co-supervision of three PhD degrees in Computer Science:

[T3]

Title: Software Product Line of Service Oriented Architecture Patterns


Phd Student: Akram Kamoun

First registration: February 2013

[T2]

Title: An Approach for describing and modeling dynamic architectures


Phd student: Ilhem Khlif

First registration: December 2012

Abstract: This thesis aims to describe a generic approach for modeling architectures. Our purpose is to facilitate the description and validation of dynamic software architectures. We present a model-based design approach founded on visual notations describing, by extending UML notations, dynamic architectures at different description levels.
We describe a stepwise refinement process to automate the transition from a generic model describing a given point of view of a scale to a specific model describing this point of view in a different scale. To ensure compatibility between different levels of description, we adopt a rules-oriented description technique. These rules allows the refinement from a generic scale to another and from a specific scale to another in the same generic scale.

KeyWords: Dynamic Software Architectures, architecture refinement, UML notations, dynamic reconfiguration.

[T1]

Title: A Refinement-Based Approach for modeling and composing SOA Design Patterns


Phd Student: Imen Tounsi

First registration: December 2010

Abstract: Software Design Patterns provide architects and developers with reusable software elements helping them to master building complex software systems. Nevertheless, presented in an informal way, software design patterns may give rise to ambiguity and may lead to their incorrect usage. We focus here on SOA design patterns and propose alternatives to their description in informal visual notations. Describing SOA design patterns with a standard formal notation avoids misunderstanding by software architects and helps endowing design methods with reuse and refinement approaches for mastering software system architectures complexity. In this thesis, we propose ReMo-SDP, a Refinement-based approach for describing SOA Design Patterns. ReMo-SDP applies particularly to describing message-oriented SOA design patterns in conformance with the SoaML standard language. We define how to develop design pattern models in a stepwise manner associated to an automated translation into Event-B formal specifications. This step allows designers to check design correctness using the platform Rodin. These two steps, when performed before undertaking the effective coding of a design pattern, help providing correct-by-design software systems. To help non-specialists understanding the proposed approach, we illustrate it in details through different pattern examples.

KeyWords: SOA Design Patterns, SoaML Modeling, Event-B Formal Specification

Supervision of Master degrees

Supervision of several Master degrees in Computer Science:

[M8]

Zied Hrichi, Transforming message-oriented SOA design patterns to Event-B specifications. Defended on September 2013, at the Higher Institut of Computer Science and Multimedia of Sfax.

[M7]

Ilhem Khlif, A generic approach for modeling multi-scales for dynamic software architectures. Defended on December 18, 2012, at the Higher Institut of Computer Science and Multimedia of Sfax.

[M6]

Hayfa Ben Abdallah, Design and implementation of an Eclipse plug-in for modeling SOA design patterns. Defended on December 15, 2012, at Faculty of Economics Sciences and Management of Sfax.

[M5]

Saber Hadj Abdallah, Design and implementation of an Eclipse plug-in for modeling software architectures. Defended on December 01, 2012, at Faculty of Economics Sciences and Management of Sfax.

Co-supervision of several Master degrees in Computer Science:

[M4]

Fatma Zouari, Code generation from modeling architectural style according to MDA approach. Defended on December 09, 2011 at the Higher Institut of Computer Science and Multimedia of Sfax.

[M3]

Imen Tounsi, Specifying adaptation policies according to an architectural style. Defended on May 15, 2010 at Faculty of Economics Sciences and Management of Sfax.

[M2]

Achraf Boukhriss, Formal validation of the design of dynamic software architectures based on UML2.0. Defended on December 04, 2006 at Faculty of Economics Sciences and Management of Sfax.

[M1]

Mohamed Nadhmi Miladi, UML Profile for modeling component-based software architectures. Defended on July 11, 2005 at National School of Engineers of Sfax

Publications

Publications indexed by DBLP

Publications indexed by Scholar Google

Journal Article

[J2]

Imen Tounsi, Mohamed Hadj Kacem , Ahmed Hadj Kacem, and Khalil Drira: A Refinement-Based Approach for Building Valid SOA Design Patterns. In: International Journal of Cloud Computing, (IJCC) 2014. (To appear)

[J1]

Slim Kallel, Mohamed hadj Kacem, and Mohamed Jmaiel. Modeling and enforcing invariants of dynamic software architectures, Software and System Modeling (SoSyM), 11(1), 127-149, 2012 Springer. [BibteX | DOI]

Papers in Proceedings of International Conference

[C16]

Imen Tounsi, Mohamed Hadj Kacem, Zied Hrichi, Ahmed Hadj Kacem and Khalil Drira. ReMo-SDP Tool cookbook, The 2nd International Collaborative Tutorial of Multimedia Ontology-driven Learning Collaborative Architecture, (MOLCA’2014), Toulouse, France (2014).

[C15]

Imen Tounsi, Zied Hrichi, Mohamed Hadj Kacem, Ahmed Hadj Kacem and Khalil Drira. Using SoaML models and Event-B spécifications for modeling SOA design Patterns. In Proceeding of the 15th International Conference on Enterprise Information Systems (ICEIS’13), pages 294-301, Anger - France, July 2013 [BibteX | DOI]

[C14]

Imen Tounsi, Mohamed Hadj Kacem and Ahmed Hadj Kacem. Building Correct by Construction SOA Design Patterns: Modeling and Refinement. In : Proceedings of the 7th European Conference on Software Architecture, (ECSA’2013), Lecture Notes in Computer Science, vol. 7957, pp. 33-44. Springer Berlin Heidelberg, Monpellier, France (2013). [BibteX | DOI]

[C13]

Imen Tounsi, Mohamed Hadj Kacem, Ahmed Hadj Kacem. An Approach for Modeling and Formalizing SOA Design Patterns. In : Proceedings of the IEEE 22nd International WETICE Conference (WETICE’2013), pp. 330-335. IEEE Computer Society, Hammamet, Tunisia (2013). [BibteX | DOI]

[C12]

Imen Tounsi, Mohamed Hadj Kacem, Ahmed Hadj Kacem, Khalil Drira and Emna Mezghani. Towards an Approach for Modeling and Formalizing SOA Design Patterns with Event-B. In : Proceedings of the 28th Annual ACM Symposium on Applied Computing, (SAC’2013), pp. 1937-1938. ACM, Coimbra, Portugal (2013). [BibteX | DOI]

[C11]

Imen Tounsi, Mohamed Hadj Kacem, Ahmed Hadj Kacem, and Khalil Drira. The Sender Released Pattern : An SOA design pattern for inter-service message exchange. In : Proceedings of the IEEE 21st International WETICE Conference (WETICE’2012), pp. 405-410. IEEE Computer Society, Toulouse, France (2012). [BibteX | DOI]

[C10]

Ilhem Khlif, Mohamed Hadj Kacem and Khalil Drira. An approach to multiscale and multi points of view description for dynamic software architectures. In 6ème Conférence francophone sur les architectures logicielles (CAL’12), Montpellier - France, May 2012. [BibteX | PDF]

[C9]

Imen Loulou, Imen Tounsi, Mohamed Hadj Kacem, Ahmed Hadj Kacem, and Mohamed Jmaiel. Making sound policies for self-healing systems. In 9th annual international conference on New Technologies of Distributed Systems (NOTERE’09), Montréal - Canada, July 2009. [BibteX | PDF]

[C8]

Imen Loulou, Imen Tounsi, Mohamed Hadj Kacem, Ahmed Hadj Kacem, and Mohamed Jmaiel. A formal architecture-centric approach for safe self-repair. In Second International Conference on Web and Information Technologies (ICWIT’09), Kerkennah Island, Sfax, Tunisia, June 2009. [BibteX | PDF]

[C7]

Mohamed Nadhmi Miledi, Mohamed Hadj Kacem, Achraf Boukhriss, Mohamed Jmaiel, and K. Drira. A UML rule-based approach for describing and checking dynamic software architectures. In Proceedings of the 8th ACS/IEEE International Conference on Computer Systems and Applications (AICCSA'08), Doha, Qatar, April 2008. [BibteX | DOI]

[C6]

Mohamed Nadhmi Miledi, Mohamed Jmaiel, and Mohamed Hadj Kacem. A UML Profile and a FUJABA PlugIn for modelling dynamic software architectures. In Proceedings of the Workshop on Model-Driven Software Evolution MoDSE2007, number 4. European Conference on Software Maintenance and Reengineering, CSMR2007, IEEE, March 2007. [BibteX | DOI]

[C5]

Mohamed Hadj Kacem, Ahmed Hadj Kacem, Mohamed Jmaiel, and Khalil Drira. An uml-based approach for validation of software architecture descriptions. In Dirk Draheim and Gerald Weber, editors, Trends in Enterprise Application Architecture, 2nd International Conference, TEAA 2006, Berlin, Germany, November 29 - December 1, 2006, Revised Selected Papers, volume 4473 of Lecture Notes in Computer Science, pages 158-171. Springer, 2007. [BibteX | DOI]

[C4]

Mohamed Hadj Kacem, Ahmed Hadj Kacem, Mohamed Jmaiel, and Khalil Drira. Describing dynamic software architecture using an extended UML model. In Proceeding of the 2006 ACM Symposium on Applied Computing : Session track Model Transformation, Applied Computing, pages 1245-1249, Dijon, France, April 2006. ACM SIGAPP, ACM. [BibteX | DOI]

[C3]

Mohamed Hadj Kacem, Mohamed Jmaiel, Ahmed Hadj Kacem, and Khalil Drira. Evaluation and comparison of ADL based approaches for the description of dynamic software architectures. In Proceedings of the Seventh International Conference on Enterprise Information Systems ICEIS'05, pages 189-195, Miami, USA, May 2005. [BibteX | PDF]

[C2]

Mohamed Hadj Kacem, Mohamed Nadhmi Miladi, Mohamed Jmaiel, Ahmed Hadj Kacem, and khalil Drira. Towards a UML profile for the description of dynamic software architectures. In COEA’05: Proceedings of the International Conference on Component-Oriented Enterprise Applications, volume 70 of Lecture Notes in Informatics, pages 25–39, Erfurt, Germany, 2005. LNI. [BibteX | DOI]

[C1]

Mohamed Hadj Kacem, Mohamed Jmaiel, Ahmed Hadj Kacem, and Khalil Drira. Using UML2.0 and graph grammars for describing the dynamic software architectures. In Proceedings of the IEEE International Conference on Information Technology and Applications ICITA'05, pages 46-51, Sydney, Australia, July 2005. [BibteX | DOI]

PhD Thesis


Mohamed Hadj Kacem, Modeling of distributed applications in dynamic architecture: Design and Validation, November 2008, University of Paul Sabatier Toulouse-France. [BibteX | PDF]

Title: Modeling of distributed applications in dynamic architecture: Design and Validation
Abstract: The Adaptability of networked service-oriented systems is necessary to guarantee the continuity of services under changing infrastructure constraints and evolving user requirements. The architectural and the behavioural dynamic reconfigurations constitute the two acting categories allowing adaptability of such software systems to be managed. We propose to support the architectural reconfiguration-based adaptation and we propose a UML-based approach for describing, validating and checking dynamic software architectures. We elaborate a new UML profile associated with three meta-models that we define in order to describe (i) different architectural styles, (ii) their dynamic instances together with the associated reconfiguration operations, and (iii) their reconfiguration protocol. Our approach supports describing the architectural constraints that should be preserved during architecture evolving. The proposed approach supports automatic validation through a set of rules we define and implement for ensuring the correctness of the models w.r.t. the meta-models. These models are automatically transformed into Z specifications. This allows designers to prove, by elaborating Z theorems, the consistency of the defined architectural styles and the conformity of the associated instances and their transformation rules. We define a Design Process, called X, allowing guiding and assisting the architects to model the dynamic software architectures. The X Design Process is partially based on the MDA approach and 2TUP Process. Our design process is based on PIM and PSM parts. The proposed design process uses an iterative and incremental development approach and it is architecture-centric. A software environment supporting the different features of this approach has been developed and integrated as a plug-in in the open-source FUJABA tool. The plug-in is available at URL: http://www.laas.fr/~khalil/TOOLS/X.zip.
Supervisors: Prof Mohamed Jmaiel and Prof Khalil Drira.

Keywords: Architectural adaptation, Dynamic architecture, UML Profile, Validation, Formal verification, Design process

Organization Committee

NTIM'2013: 27 – 30 Juin 2013 Organizing Committee Membre of the 3rd summer school on Emerging Trends in Computing and Multimedia: E-Administration and Big Data: Challenges and Key Technologies, NTIM’2013. Hammamet, Tunisia, 27 – 30 Juin 2013

WETICE'2013 : 17 – 20 Juin 2013 Organizing Committee Chair of the 22th IEEE International Conference on Enabling Technologies: Infrastructures for Collaborative Enterprises WETICE’2013. Hammamet, Tunisia, 17 – 20 June 2013

JPI'2012, JPI'2013 and JPI'2014: Tunisia Organizing Committee Chair of the first, second and third Teaching Days ISIMS, JPI’2012, JPI’2013 and JPI'2014, Tunisia

OPODIS'2010: December 14 – 17, 2010
Organization Committee Member of the 14th International Conference On Principles Of Distributed Systems, OPODIS'2010. Tozeur, Tunisia, December 14 – 17, 2010

NOTERE'2010: May 31 – June 02, 2010
Organization Committee Member of the 10th annual international conference on New Technologies of Distributed Systems, NOTERE'2010. Tozeur, Tunisia, May 31 – June 02, 2010

METHODICA: Tunisia
Organization Committee Chair of the fifth, sixth, seventh, eighth and ninth workshop on Methods for the Adaptive Distributed Software, METHODICA, Tunisia

METHODICA: Tunisia
Organization Committee Member of the first, second, third and fourth workshops on Methods for the Adaptive Distributed Software, METHODICA, Tunisia

CRiSIS'08: October 27 – 30, 2008
Organization Committee Member of the third International Conference on Risks and Security of Internet and Systems CRiSIS'2008, Tozeur, Tunisia, October 27 - 30, 2008

GEI : March 2003, 2004, 2005, 2006, 2007, 2008 (Tunisia)
Organization committee member of the third, fourth, fifth, sixth, seventh and eighth Young Scientific Researcher days in Electrical and Computer Engineering (GEI), Tunisia

Tools & Results

Meidya

Meidya (Modeling and Enforcing Invariants of Dynamic Software Architecture) is based on three principal steps allowing the control of the software architecture evolution of component-based applications. This approach supports the modeling of the dynamic architecture, formal verification and enforcement of the architectural invariants. For more details, you can visit the Meidya Web site.

Contributors: Mohamed Hadj Kacem, Slim Kallel

MeidyaCoM-Policy

MeidyaCoM-Policy is an extension of MeidyaCoM project. MeidyaCoM project supports the modeling of correct by design Publish/Subscribe architectural style and the basic reconfiguration operations for the adaptation of software architecture. MeidyaCoM-Policy is an approach which proposes a way of applying these operations with respect to architectural style by the means of repair policies. For more details, you can visit the MeidyaCom-Policy Web Site.

Contributors: Imen Tounsi, Mohamed Hadj Kacem

G-Meidya

G-Meidya is a tool allowing modeling architectural style and reconfiguration operations using extended UML2.0 notations. The architectural style is transformed to a Graph and reconfiguration operations are transformed to Graph Rules. The Graph and Graph Rules will be imported and tested with the GMTE tool (Graph Matching and Transformation Engine). The matching result is a new graph. This graph shows the new architecture after the execution of the reconfiguration operation. For more details, you can visit the G-Meidya Web Site.

Contributors: Saber Hadj Abdallah and Mohamed Hadj Kacem

ReMo-SDP

ReMo-SDP tool is a graphical modeling tool that implements ReMo-SDP approach, it ensures an easy and efficient modeling way for users. It provides the following functionalities:
1. Modeling SOA design patterns with the SoaML language.
2. Transforming SOA design pattern models to Event-B specifications.
For more details, you can visit the visit the ReMo-SDP Web Site.

Contributors: Imen Tounsi, Zied Hrichi, Mohamed Hadj Kacem

Teaching

  • Web servers: Administration and creation (HTTP, FTP, SMTP, IIS, Apache) ( Exercises )
  • Websites: Design and administration (WAE)
  • Static Web development (HTML, CSS)
  • Internet tools
  • Languages of presentation and media manipulation (HTML, CSS, XML, XSLT)
  • Databases systems management (SGBD)
  • Databases
  • Program management (Visual Basic)
  • Operating system
  • C2I coordinator

Valid XHTML 1.0 Transitional