I hold a Doctorat de Troisieme Cycle from the Institut National Polytechnique de Grenoble, a PhD from the University of Illinois at Urbana Champaign, and a Doctorate es-Sciences d’Etat from the Universite Joseph Fourier de Grenoble. I worked in Algeria, Australia, Austria, Canada, China, France, Japan, Tunisia and the USA. At NJIT, I teach Data Structures, Software Design and Software Testing (subject of my 2015 book, by Wiley).
- 1985: Doctorat es-Sciences d´Etat, Universite Joseph Fourier de Grenoble, Grenoble, France.
- 1981: PhD, University of Illinois at Urbana Champaign, Urbana, IL, USA.
- 1978: Doctorat de Troisieme Cycle, Universite Joseph Fourier de Grenoble, Grenoble, France.
Awards and Honors
- 1999: Recognition of Service Award, Association of Computing Machinery (co-Program Chair, SSR ´99).
- 2000: Certificate of Appreciation, NASA (Design for Safety Initiative).
- 2001: Outstanding Researcher Award, West Virginia University College of Engineering.
- 2002: Certificate of Appreciation, IEEE Computer Society (H.D Mills Award Committee).
Please be advised that all information pertaining to my courses is available through webct. If you are enrolled to one of my courses, normally you would have access to the webct site for the course, where available information is posted. Below are recent copies of course syllabi. A syllabus may evolve from one term to the next, so if you are using an obsolete syllabus, take nothing for granted.
- CS 610, Summer 2007
- CS 673, Spring 2007
Broad interests in software engineering, ranging from technical to organizational to managerial aspects.
- Foundations of Software Engineering. Discrete mathematics. Relational Algebra. Refinement calculi.
- Dependability. Dimensions of dependability. Quantifying dependability. Defining and characterizing system security.
- High Assurance Systems Engineering. System fault tolerance. System redundancy.
- Verification and Validation. Verification and Validation of Adaptive systems. Extracting program functions.
- Software Processes. Software reuse. Product Line Engineering. Software architectures.
- Software Measurement. Software cost estimation. Software metrics.
- Software Engineering Trends. Analyzing and predicting software technology trends.