- Advanced Software Engineering Methodologies
- Software Engineering Techniques and Practices
- Software Engineering Research
- Service-Oriented Architecture and Web Services
- Software System Performance and Reliability
- Business Process Modeling and Analysis
- Model-Driven Software Engineering Techniques
- Semantic Web and Ontologies
- Team Dynamics and Performance
- Software Reliability and Analysis Research
- Open Source Software Innovations
- Formal Methods in Verification
- Embedded Systems Design Techniques
- Complex Network Analysis Techniques
- Access Control and Trust
- Software Testing and Debugging Techniques
- Usability and User Interface Design
- Design Education and Practice
- Manufacturing Process and Optimization
- Distributed systems and fault tolerance
- Web Data Mining and Analysis
- Data Management and Algorithms
- Context-Aware Activity Recognition Systems
- Multi-Agent Systems and Negotiation
- Knowledge Management and Sharing
University of Calgary
2000-2024
American University of Sharjah
2005-2020
Swansea University
1997-2020
Bridge University
2020
Marshall University
2020
Mannheim University of Applied Sciences
2020
University of Wales
1997-2020
University of Groningen
2011
University of Sharjah
2008
American University
2007
This article compares traditional requirements engineering approaches and agile software development. Our paper analyzes commonalities differences of both determines possible ways how development can benefit from methods.
We describe an empirical study of open-source and closed-source software projects. The motivation for this research is to quantitatively investigate common perceptions about projects, validate these through study. the hypothesis that grows more quickly, but does not find evidence support this. project growth similar all projects in analysis, indicating other factors may limit growth. creativity prevalent also examined, found using metric functions added over time. concept succeeding because...
Evaluation, prioritization and selection of candidate requirements are tremendous importance impact for subsequent software development. Effort, time as well quality constraints have to be taken into account. Typically, different stakeholders conflicting priorities the all these balanced in an appropriate way ensure maximum value final set requirements. Trade-off analysis is needed proactively explore certain decisions terms criteria constraints. The proposed method called Quantitative...
Commercial off-the-shelf (COTS) products are increasingly being used in software development. In COTS-based development, selecting appropriate COTS is the most crucial phase. This paper explores evolution of selection practices, and surveys eighteen significant approaches. The traces how each approach contributed to improvement current then compares them .The also highlights some open research issues relevant process, concludes with a discussion possible future directions address these
Contrary to traditional wisdom, the authors found that, when it comes requirements negotiations, groups meeting face-to-face perform no better than those using video conferencing and computer support. Furthermore, their study identified a particular distributed group configuration that significantly improved performance was more conducive negotiations meetings.
Defining, prioritizing, and selecting requirements are problems of tremendous importance. In this paper, a new approach called Quantitative WinWin for decision support in negotiation is studied. The difference to Boehm's groupware-based the inclusion quantitative methods as backbone better more objective decisions. Like original WinWin, uses an iterative approach, with aim increase knowledge about during each iteration. novelty presented idea three-fold. Firstly, it Analytical Hierarchy...
To identify objects from the requirements and to model problem in classes are critical object-oriented analysis design (OOAD). Unfortunately, this is recognized as a hard task for most software engineers, because both domain experience expertise needed, since there no crisp guideline. We present an approach with set of artifacts methodologies, automate transition requirement detail design. Use cases applied method capture record requirements. All use formalized by case template. A glossary...
Selecting appropriate styles for software architectures is important as impact characteristics of (e.g. reliability). Moreover, influence how built they determine architectural elements components, connectors) and rules on these are integrated in the architecture. Therefore this study presents a method, called SYSAS, systematic selection architecture styles. In style based (a) basic that relevant developer, (b) target system visible to end user. The procedure requires ratings about...
The selection of requirements engineering (RE) techniques during software project development is a challenge for most developers. One the reasons that there great lack education in academic programs, so developers have to learn practices on job. This can easily result are ill-suited particular project, as based personal preference rather than characteristics project. Very little research has been done area technique attributes. paper describes into and combination RE well case study applied...
In engineering design, customers usually provide product requirements in the form of a natural language while computer-aided design systems may prefer more formal and structured specifications. this paper, formalisation process is proposed to transform from its descriptions specification. The specification based on environment formulation problem, which identifies components included problem terms environment. Through lexical, syntactic, structure analysis be designed, components, their...
There is an ongoing debate in the software engineering (SE) community over usefulness and applicability of classical SE methodologies versus agile methodologies. Based on investigation philosophical origins, history technological support representative methodologies, a framework proposed this paper to help understand relationship between these different approaches. The provides novel, five-dimensional ways which consider concepts, historical background characteristic differences them,...
Requirements engineering (RE) helps to identify, analyze and document system requirements. Proper analysis understanding of requirements is important because it discover any defects or mistakes in the early stages development. Several processes techniques have been developed assist activities for product However, most existing line practices do not comprise all RE required proper identification, In this paper, we propose a systematic iterative approach The includes analysis, modeling...
The ongoing debate over the merits of classical software engineering (SE) methodologies and agile has so far resulted in no clear benefits for SE community. This paper uses CHAPL framework developed our previous research to analyse history methodologies. Our historical analysis focuses on following three perspectives: practices, principles, technological context. reveals that both approaches development have similar roots their proponents ample ground constructive discussions. In fact, can...
Selection of the most appropriate RE techniques for a software project based on project's characteristics is non-trivial process and common challenge faced by developers. In order to facilitate selection, we propose model technique suitability assessment (RETSA) attributes. This was developed surveys interviews experienced developers experts from industry academia. RETSA applied an industrial project. case study shows help this provided during selection
Recommendation systems provide users with up-to-date guidance on processes, artifacts or other project-relevant information. for requirements engineering can be used to the right information, at time, engineers. In this paper, we use systematic mapping an overview of recommendation process, their characteristics, and state validation. The resulting maps are analyzed conclusions identify limitations current studies, future research areas. results outline motivation our work a system that...