COURSES
n. a unit of study for a prescribed curriculum
Graduate Courses Taught
Links provide descriptions, class statistics and evaluations
- Software Testing and Debugging
Fall 2009
Class Summary

| |
Course Description: This course covers the goals, practices, evaluation, and limitations of software testing and software debugging. Students receive practice in developing and using test plans and various testing and debugging techniques.
Number of Students: 9
Required Text: Burnstein, I., Practical Software Testing, Springer, June 24, 2003. ISBN (10-digit) 0387951318, ISBN (13-digit) 978-0387951317.
Group Project: This class involved a semester-long group project, which required students to validate the specification, design and implementation of a 2D video game.
|
Class Evaluations
| Instructor Rating |
4.89/5.0 |
| Class Satisfaction |
4.89/5.0 |
Class Comments
Mohammed Akour wrote:
Your class was difficult and required hard work, but you were the best in our learning, treatment and everything...
Robby Njos wrote:
Hopefully I will be able to take a class from you in the future. I really appreciate how you engage us students in class...
| Spring 2010
Class Summary

| |
Course Description: This course covers the goals, practices, evaluation, and limitations of software testing and software debugging. Students receive practice in developing and using test plans and various testing and debugging techniques.
Number of Students: 25
Required Text: Burnstein, I., Practical Software Testing, Springer, June 24, 2003. ISBN (10-digit) 0387951318, ISBN (13-digit) 978-0387951317.
Group Project: This class involved a semester-long group project, which required students to validate the specification, design and implementation of a student assessment application.
|
Class Evaluations
| Instructor Rating |
4.75/5.0 |
| Class Satisfaction |
4.71/5.0 |
Comments
Rahaf Barakat wrote:
I would like to thank you for the great course. I enjoyed the course and I learnt a lot.
Charles Buch wrote:
Your class was also one of the best in my collegiate career. It was very challenging while staying practical. I think you handled group problems really well too. Kind
yet fair.
- NDSU | CSCi 745 Formal Methods of Software Development

| |
Description: This course is a high level course with the aim of introducing the use of formal representations during the software development process. The formal representations are based on the theoretical foundations of computer sciences such as set theory, logic, and graph theory.
Prerequisites: CSCi 713 Software Development Processes
Required Text: Clarke, E.M., Grumberg O., Peled, D.A., Model Checking, The MIT Press, January 7, 1999. ISBN (10-digit) 0262032708, ISBN (13-digit) 978-0262032704.
Assignments: This course typically involves individual assignments related to formal specification and verification of software, including the use of a Z specification tool and a model checking tool.
|
- Fall 2010
Number of Students: 12 | Instructor Rating: 4.90/5.0 | Class Satisfaction: 4.60/5.0
- NDSU | CSCi 717 Software Construction

| |
Description: This course covers the fundamentals of software construction including programming and evaluation of the source code. Students receive a good grounding in and extensive practice with the comprehensive libraries associated with a modern programming language.
Prerequisites: CSCi 713 Software Development Processes
Required Text: McConnell, S., Code Complete 2: A Practical Handbook of Software Construction, Microsoft Press, June 9, 2004. ISBN (10-digit) 0735619670, ISBN (13-digit) 978-0735619678.
Project: The on-campus version of this course typically involves a semester-long group project, designed to give students practical experience constructing a medium-sized software system.
|
- Spring 2011
Number of Students: 17 | Instructor Rating: TBD | Class Satisfaction: TBD
Undergraduate Courses Taught
Links provide descriptions, class statistics and evaluations
- NDSU | CSCi 372 Comparative Programming Languages

| |
Description: This course explains the concept and impact of a block-structured language. Several languages will be compared with respect to application, suitability, syntax and semantics.
Prerequisites: CSCi 161 Computer Science II or CSCi 228 Computing Fundamentals II
Required Text: Sebesta, R.W., Concepts of Programming Languages (9th Edition), Addison Wesley, April 2, 2009. ISBN (10-digit) 0136073476, ISBN (13-digit) 978-0136073475.
Assignments: This course typically involves problem-solving assignments in different language categories including scripting, object-orientation, functional and logic programming. Some assignments can be done in groups of at most two or three persons.
|
- Spring 2011
Number of Students: 24 | Instructor Rating: TBD | Class Satisfaction: TBD
- FIU | COP 1996 Introduction to Computer Programming
- FIU | CEN 4011 Introduction to Software Engineering
- FIU | CGS 2518 Computer Data Analysis
Courses Developed
- NDSU | CSCi 717 Software Construction
- NDSU | CSCi 745 Formal Methods of Software Development
- FIU | COP 1996 Introduction to Computer Programming
AD·VIS·ING
v. to give counsel to; offer an opinion as worth following
Major Advisees
- Annaji Ganti
PhD Student | Proposal anticipated in Summer 2011. Annaji is a Software Design Engineer in Test at Microsoft, Fargo.
- Talukdar Asgar
PhD Student | Proposal anticipated in Fall 2011. Talukdar is a Technical and Testing Lead in ERP at Maximus Inc., Minneapolis.
- Mohammed Akour
PhD Student | Passed Comprehensive in Spring 2010. Mohammed is a Graduate Assistant in Computer Science at NDSU.
- Iyad Alazzam
PhD Student | Comprehensive Exam in Fall 2010. Iyad is a Graduate Assistant in Computer Science at NDSU.
- Richard Rummelt
PhD Student | Proposal anticipated in Fall 2011. Richard is a Senior Lecturer in Computer Science at NDSU.
- Akanksha Jaidev
MS Student | Passed Comprehensive in Spring 2010 at PhD Level. Akanksha is a Web Developer in the Center for Rural Health at UND.
- Arti Katiyar
MS Student | Passed Comprehensive in Fall 2010. Arti is a Web Developer Assistant in Distance and Continuing Education at NDSU.
- Asha Yadav
MS Student | Comprehensive Exam in Spring 2011.
Dissertation and Thesis Directed
PhD Dissertation Committees
- Farah Kandah, Computer Science, Fall 2010 to Present, Major Advisor Dr. Weiyi Zhang.
MS Thesis and Paper Committees
- A. Anupama Reddy, Computer Science, Fall 2010 to Present, Major Advisor Dr. Kendall Nygard.
- Srikanth Aakula, Computer Science, Fall 2010, Major Advisor Dr. Weiyi Zhang. Completed Oral Defense on 11/15/2010.
- Revathi Dhamotharan, Electrical and Computer Engineering, Spring 2010 to Present, Major Advisor Dr. Rajendra Katti.
- Pramodh Thalloji, Software Engineering, Spring 2010, Major Advisor Dr. Kenneth Magel. Completed Oral Defense on 5/17/10.
- Jed Patrick Limke, Computer Science, Fall 2009 to Present, Major Advisor Dr. Jun Kong.
- Siva Vanteru, Computer Science, Fall 2009 to Spring 2010, Major Advisor Dr. Weiyi Zhang. Completed Oral Defense on 5/14/10.
MEN·TOR·ING
v. to serve as a trusted counselor to another person
Student Research & Artistic Initiatives (FIU)
- Jairo Pava
Spring 2008 | Co-authored 1 conference paper and 1 poster through mentorship. Jairo was later accepted to the FIU REU Summer 2008 program where he extended his work to publish another paper.
Research Experience for Undergraduates (FIU)
All students supported under grant
NSF REU IIS-0552555
- Alain E. Ramirez
Summer 2007 | Co-authored 1 journal and 2 conference papers through mentorship, and won the SCIS Best Undergraduate Award. Alain was later hired as a Java Developer by TracFone Wireless.
- Barbara Morales
Summer 2007 | Co-authored 2 conference papers through mentorship. Barbara was later accepted to another Computer Science REU program at the University of Houston in Summer 2008.
- Ronald Stevens Jr.
Summer 2006 | Co-authored 2 conference papers through mentorship. Ronald was later accepted to the Masters program in the College of Computing at the Georgia Institute of Technology.
E·VAL·U·A·TIONS
n. an assessment to determine the worth of something
Software Testing & Debugging (NDSU)
- Spring 2010 | Instructor Rating: 4.75/5.0
- Fall 2009 | Instructor Rating: 4.89/5.0
Introduction to Software Engineering (FIU)
- Fall 2008 | Instructor Rating: 4.74/5.0
COM·MENTS
n. a remark, observation, or criticism
Software Testing & Debugging (NDSU)
All comments published with consent of students
Spring 2010 |
Rahaf Barakat wrote:
I would like to thank you for the great course. I enjoyed the course and I learnt a lot.
Spring 2010 |
Charles Buch wrote:
Your class was also one of the best in my collegiate career. It was very challenging while staying practical. I think you handled group problems really well too. Kind
yet fair.
Fall 2009 |
Barjesh Arora wrote:
Thanks for teaching us such a wonderful course. It immensely helped me in learning a lot of testing skills, and enhanced my overall knowledge
Fall 2009 |
Mohammed Akour wrote:
Your class was difficult and required hard work, but you were the best in our learning, treatment and everything...
Fall 2009 |
Robby Njos wrote:
Hopefully I will be able to take a class from you in the future. I really appreciate how you engage us students in class...
Introduction to Software Engineering (FIU)
Fall 2008 |
Ali Alshamma wrote:
Your class really opened my eyes on many things that I should be aware of as a computer engineer, and I have learned alot from you during the semester. I believe you will be an excellent professor when you finish your PhD...
Fall 2008 |
Andres Loor wrote:
I am really proud to have you as my professor for Software Engineering...