Hani Bani-Salameh | The Hashemite University (original) (raw)

Uploads

Papers by Hani Bani-Salameh

Research paper thumbnail of Domain analysis of formal model checking tools

2017 International Conference on Engineering and Technology (ICET), 2017

Finding faults in early stages of software development decreases the cost of testing and increase... more Finding faults in early stages of software development decreases the cost of testing and increases system reliability. For safety-critical software, it is vital to perform throughly verification procedures. Model-Checking can find many faults in an early stages, and therefore, it represent an important verification approach. In this paper, we use domain engineering to capture important features of model-checking tools. We used FODA method (Feature Oriented Domain Analysis) to describe the common features of important model-checking tools. We expect our results to help software engineers to identify tools that better fit their needs. Our results can also help in improving these tools. Index Terms-Formal method; Model checker; domain engineering; FODA.

Research paper thumbnail of Integrating Collaborative Program Development and Debugging within a Virtual Environment

A collaborative integrated development environment enables developers to share programming-relate... more A collaborative integrated development environment enables developers to share programming-related tasks. This paper presents the design and implementation of a collaborative IDE named ICI (Idaho Collaborative IDE). ICI enables developers in different locations to collaborate on a variety of software development activities in real-time. It supports software development in C, C++, Java, and Unicon. ICI combines a synchronous collaborative program editor and a real-time collaborative debugger within a 3D multi-user virtual environment. ICI reduces cognitive context switches between tools inside the IDE and between IDE tasks and virtual environment activities, allowing developers to share, in real-time, the process of editing, compiling, running, and debugging of their software projects.

Research paper thumbnail of Developers' social networks - tools analysis based on the 3Cs model

International Journal of Networking and Virtual Organisations, 2013

Social networks (SNs) have the potential to fundamentally change the nature of our social lives a... more Social networks (SNs) have the potential to fundamentally change the nature of our social lives and interactions, both personally and at the community level. They affect the way people interact no matter who they are (students, instructors, lawyers, programmers, or distributed developers), and no matter where they are (co-located or geographically distributed).

Research paper thumbnail of SCI: Towards a Social Collaborative Integrated Development Environment

2009 International Conference on Computational Science and Engineering, 2009

Software development teams face challenges communicating with each other. This paper presents the... more Software development teams face challenges communicating with each other. This paper presents the design of a social real-time collaborative IDE called SCI that unifies the concepts of social network and collaborative IDE. SCI integrates presence and activity awareness information and collaborative program development tools. Activity awareness information provides a sense of the presence of each team member: their activity on joint projects, technical interests, currently active sessions, and availability profile. The collaboration tools provide a wide range of facilities for synchronous and asynchronous collaboration and information sharing between team members.

Research paper thumbnail of SCI: Towards a Social Collaborative Integrated Development Environment

Software development teams face challenges communicating with each other. This paper presents the... more Software development teams face challenges communicating with each other. This paper presents the design of a social real-time collaborative IDE called SCI that unifies the concepts of social network and collaborative IDE. SCI integrates presence and activity awareness information and collaborative program development tools. Activity awareness information provides a sense of the presence of each team member: their activity on joint projects, technical interests, currently active sessions, and availability profile. The collaboration tools provide a wide range of facilities for synchronous and asynchronous collaboration and information sharing between team members.

Research paper thumbnail of A Social Collaborative virtual environment for software development

Software development teams often require information and expert help that are not supported by co... more Software development teams often require information and expert help that are not supported by conventional development environments. This paper presents a social development environment called SCI (Social Collaborative IDE) that unifies the concepts of social network and collaborative development environment. SCI integrates presence and activity awareness information and collaborative program development tools. The activity awareness information provides inter-project and inter-session sharing and awareness of other developers' behavior. The collaboration tools provide a wide range of facilities for synchronous and asynchronous collaboration and information sharing between team members. SCI presents a framework that manages pending invitations of team members.

Research paper thumbnail of Integrating Collaborative Program Development and Debugging within a Virtual Environment

A collaborative integrated development environment enables developers to share programming-relate... more A collaborative integrated development environment enables developers to share programming-related tasks. This paper presents the design and implementation of a collaborative IDE named ICI (Idaho Collaborative IDE). ICI enables developers in different locations to collaborate on a variety of software development activities in real-time. It supports software development in C, C++, Java, and Unicon. ICI combines a synchronous collaborative program editor and a real-time collaborative debugger within a 3D multi-user virtual environment. ICI reduces cognitive context switches between tools inside the IDE and between IDE tasks and virtual environment activities, allowing developers to share, in real-time, the process of editing, compiling, running, and debugging of their software projects.

Research paper thumbnail of INTRODUCING SOCIAL DEVELOPMENT ENVIRONMENTS

Research paper thumbnail of Domain analysis of formal model checking tools

2017 International Conference on Engineering and Technology (ICET), 2017

Finding faults in early stages of software development decreases the cost of testing and increase... more Finding faults in early stages of software development decreases the cost of testing and increases system reliability. For safety-critical software, it is vital to perform throughly verification procedures. Model-Checking can find many faults in an early stages, and therefore, it represent an important verification approach. In this paper, we use domain engineering to capture important features of model-checking tools. We used FODA method (Feature Oriented Domain Analysis) to describe the common features of important model-checking tools. We expect our results to help software engineers to identify tools that better fit their needs. Our results can also help in improving these tools. Index Terms-Formal method; Model checker; domain engineering; FODA.

Research paper thumbnail of Integrating Collaborative Program Development and Debugging within a Virtual Environment

A collaborative integrated development environment enables developers to share programming-relate... more A collaborative integrated development environment enables developers to share programming-related tasks. This paper presents the design and implementation of a collaborative IDE named ICI (Idaho Collaborative IDE). ICI enables developers in different locations to collaborate on a variety of software development activities in real-time. It supports software development in C, C++, Java, and Unicon. ICI combines a synchronous collaborative program editor and a real-time collaborative debugger within a 3D multi-user virtual environment. ICI reduces cognitive context switches between tools inside the IDE and between IDE tasks and virtual environment activities, allowing developers to share, in real-time, the process of editing, compiling, running, and debugging of their software projects.

Research paper thumbnail of Developers' social networks - tools analysis based on the 3Cs model

International Journal of Networking and Virtual Organisations, 2013

Social networks (SNs) have the potential to fundamentally change the nature of our social lives a... more Social networks (SNs) have the potential to fundamentally change the nature of our social lives and interactions, both personally and at the community level. They affect the way people interact no matter who they are (students, instructors, lawyers, programmers, or distributed developers), and no matter where they are (co-located or geographically distributed).

Research paper thumbnail of SCI: Towards a Social Collaborative Integrated Development Environment

2009 International Conference on Computational Science and Engineering, 2009

Software development teams face challenges communicating with each other. This paper presents the... more Software development teams face challenges communicating with each other. This paper presents the design of a social real-time collaborative IDE called SCI that unifies the concepts of social network and collaborative IDE. SCI integrates presence and activity awareness information and collaborative program development tools. Activity awareness information provides a sense of the presence of each team member: their activity on joint projects, technical interests, currently active sessions, and availability profile. The collaboration tools provide a wide range of facilities for synchronous and asynchronous collaboration and information sharing between team members.

Research paper thumbnail of SCI: Towards a Social Collaborative Integrated Development Environment

Software development teams face challenges communicating with each other. This paper presents the... more Software development teams face challenges communicating with each other. This paper presents the design of a social real-time collaborative IDE called SCI that unifies the concepts of social network and collaborative IDE. SCI integrates presence and activity awareness information and collaborative program development tools. Activity awareness information provides a sense of the presence of each team member: their activity on joint projects, technical interests, currently active sessions, and availability profile. The collaboration tools provide a wide range of facilities for synchronous and asynchronous collaboration and information sharing between team members.

Research paper thumbnail of A Social Collaborative virtual environment for software development

Software development teams often require information and expert help that are not supported by co... more Software development teams often require information and expert help that are not supported by conventional development environments. This paper presents a social development environment called SCI (Social Collaborative IDE) that unifies the concepts of social network and collaborative development environment. SCI integrates presence and activity awareness information and collaborative program development tools. The activity awareness information provides inter-project and inter-session sharing and awareness of other developers' behavior. The collaboration tools provide a wide range of facilities for synchronous and asynchronous collaboration and information sharing between team members. SCI presents a framework that manages pending invitations of team members.

Research paper thumbnail of Integrating Collaborative Program Development and Debugging within a Virtual Environment

A collaborative integrated development environment enables developers to share programming-relate... more A collaborative integrated development environment enables developers to share programming-related tasks. This paper presents the design and implementation of a collaborative IDE named ICI (Idaho Collaborative IDE). ICI enables developers in different locations to collaborate on a variety of software development activities in real-time. It supports software development in C, C++, Java, and Unicon. ICI combines a synchronous collaborative program editor and a real-time collaborative debugger within a 3D multi-user virtual environment. ICI reduces cognitive context switches between tools inside the IDE and between IDE tasks and virtual environment activities, allowing developers to share, in real-time, the process of editing, compiling, running, and debugging of their software projects.

Research paper thumbnail of INTRODUCING SOCIAL DEVELOPMENT ENVIRONMENTS