{"title":"Test Code Reuse from OSS: Current and Future Challenges","authors":"S. Makady, R. Walker","doi":"10.1145/3178298.3178305","DOIUrl":"https://doi.org/10.1145/3178298.3178305","url":null,"abstract":"We are told of the significant benefits of automated approaches to testing over manual approaches. However, it is unclear what automated testing practices exist, and how efficient or widespread such practices are within open source software. Although some organizations rigorously apply automated testing to their software, this rich pool of test code is not utilized to serve existing source code with poor or no test suites. To investigate how automated testing is performed in practice, we attempted a thorough, large-scale analysis of open source repositories. Alongside this analysis, we propose a novel approach to reuse such existing tests within projects that lack test code, hence leveraging the quality of such projects with minimal developer intervention. While such an analysis seems to be a straightforward task, we report on various practical challenges that hindered applying our proposed approach for tests' reuse. We present the challenges we have addressed so far, and those we expect to appear in the near future, in applying our approach for test reuse with open source projects. We outline potential solutions to the projected future challenges.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"97 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130370202","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Ali, Iman A. El-Dessouky, Mahmoud M. Abdallah, A. Nabih
{"title":"The Quest for Fully Smart Autonomous Business Networks in IoT Platforms","authors":"A. Ali, Iman A. El-Dessouky, Mahmoud M. Abdallah, A. Nabih","doi":"10.1145/3178298.3178301","DOIUrl":"https://doi.org/10.1145/3178298.3178301","url":null,"abstract":"The evolution of the business networks is fostering the demand for more connected devices to execute tangled and sophisticated business operations. This leverages complicated business networks space to include scalable network layers, more devices, and platforms relying on Internet of Things (IoT) solutions. Despite the fact that traditional IoT platforms usually target the technical side for IoT applications, they are not prepared enough to be easily integrated with pluggable and executable business logic or smart contracts. This makes it difficult to control a collection of shared business network resources in a standard and decentralized manner. With the rise of FinTech due to blockchain technology, it becomes possible to seamlessly engage business networks with financial digital assets. Consequently, combining IoT platforms with blockchain will drive new ways for better services consuming, transparency and products that depend on crowd-based economy [12]. In this paper, Sitechain is proposed as a new architecture to integrate IoT platforms with blockchain technology. The proposed architecture is not locked to specific IoT platforms but it can be extended to support different platforms in a standard, systematic and easy way. Sitechain is demonstrated by integrating Sitewhere and FIWARE IoT platforms with Hyperledger Fabric as a private blockchain network manager. Moreover a modeling language supported by Hyperledger composer is used to easily develop smart contracts and generate RESTful APIs, therefore any smart contract transaction events can be mapped into actions on remote devices. The system testing is performed using a large set of connected shared devices that are deployed as part of private business networks. The results are recorded in the conclusion section.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123404093","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Ahmed B. T. Sherif, Ahmad Alsharif, Mohamed Mahmoud, Jacob Moran
{"title":"Privacy-Preserving Autonomous Cab Service Management Scheme","authors":"Ahmed B. T. Sherif, Ahmad Alsharif, Mohamed Mahmoud, Jacob Moran","doi":"10.1145/3178298.3178303","DOIUrl":"https://doi.org/10.1145/3178298.3178303","url":null,"abstract":"In the autonomous vehicles era, vehicles will be an on-demand service rather than an owned product, i.e., many passengers will rely on Autonomous Cabs (ACs) in their transportation. In order to guarantee the high quality of the AC service, the AC company needs to learn the geographic distribution of the potential service requests. The best way to obtain this information is by requesting the passengers to frequently report their locations, e.g., by using their smart-phones. However, learning the passengers' locations causes a serious location privacy issue. In this paper, we propose a privacy-preserving scheme for reporting location information for AC management. Data aggregation approach is used to preserve location privacy by providing the AC company with the total number of requests in each geographic area, while hiding the individual reports of the passengers. Unlike the existing aggregation schemes that do binary data addition, the used aggregation scheme does individual bits addition. Our analysis and experimental results demonstrate that the proposed scheme is efficient and can preserve location privacy.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130301420","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Towards A Comprehensive Serious Educational Games' Ontology","authors":"Ahmed M. Abou Elfotouh, Eman S. Nasr, M. Gheith","doi":"10.1145/3178298.3178304","DOIUrl":"https://doi.org/10.1145/3178298.3178304","url":null,"abstract":"Serious Educational Games (SEGs) are games that have a purpose that differs from those for entertainment only. SEGs offer learners practicing what they learnt. The analysis and design of such games require integrating game design activities with educational design concepts (such as learning objectives, assessment methods, and educational content design). In addition, the integration of these domains require interdisciplinary team. As a result, a clear, concise communication between team members is a difficult goal to achieve and ambiguity could arise. An ontology, as a domain modeling tool, could be used as a meta-model to guide a SEG design and the development team, in addition to bridging the communication gap between the game design and pedagogic domains. There is little proof that a comprehensive web-enabled SEGs' ontology, which is characterized by completion, consistency, and reusability, exists. This paper presents our attempt to build a comprehensive web enabled SEGs ontology that could be exploited in the era of the semantic web to be shared and reused by the SEGs' development community. It is available on Protégé.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124395774","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Semantic Technology in Internet of Things Mashup Platforms","authors":"Aya Reda, S. Khattab","doi":"10.1145/3178298.3178309","DOIUrl":"https://doi.org/10.1145/3178298.3178309","url":null,"abstract":"The1 power of Internet of Things (IoT) is undeniably growing day after day, offering new benefits and opportunities. As The need of IoT market to continuously keep track of such opportunities, and empowering end-users to live up to this evolution. IoT Mashup has emerged as one of the techniques making it easier for end-users to deal with IoT technologies, Mashups are designed so that most of the work is executed behind the scenes so that the user is asked to the minimum level of interaction, by offering a user friendly interface, the user is involved in his own application regardless his/her technical background in the development process. This paper provides a technical background about IoT Mashups, Semantic Mashups, and their related work; it also provides a brief about existing IoT mashup tools, how they operate, and different classification methods for these tools.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124713783","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Risk-Based Test Estimation","authors":"Yasser Ghanim","doi":"10.1145/3178298.3178302","DOIUrl":"https://doi.org/10.1145/3178298.3178302","url":null,"abstract":"Test Estimation is a problematic area. Two main approaches were followed traditionally to estimate testing effort. Development Ratio method with testing effort as a fixed percentage of the development effort, and independent estimation techniques of the test requirements or WBS. Both approaches often apply adjustment factors to the resulting effort to reflect different technical and environmental parameters in order to increase estimation accuracy. However the old approaches share a common pitfall; the absence of direct correlation between the estimated effort and the criticality of the system under test in its operational context (risk of failure). Critical or sensitive test objects require more attention than the less critical or the more stable ones. The effort spent by testers on every test object got to be function of the risk the end users might incur should this object fail. This paper is an industry report based on practical experience that aims at combining the benefits of the traditional approaches with consideration of product risks. It provides a method that draws a product risk profile and devises a risk-based effort calculation formula and metrics scheme where effort is proportionate to the risk level of each object under test.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"397 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126751443","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Detecting Design Patterns from Source Code using Static Analysis Techniques","authors":"K. A. Mohamed, Amr A. Kamel","doi":"10.1145/3178298.3178307","DOIUrl":"https://doi.org/10.1145/3178298.3178307","url":null,"abstract":"This paper presents an approach to detect design patterns from source code using static analysis techniques. It depends on the concept of Code Property Graph and enriching graph with relationships and properties specific to Design Patterns, to simplify the process of Design Pattern detection. This approach used NoSQL graph database (Neo4j) and uses graph traversal language (Gremlin) for doing graph matching. Our approach, converts the tasks of design pattern detection to a graph matching task by representing Design Patterns in form of graph queries and running it on graph database.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122776831","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Scalable Distributed-Computing IoT Applied Architecture with Semantic Interoperable Gateway","authors":"A. A. Seif, Nissreen A. S. El-Saber","doi":"10.1145/3178298.3178306","DOIUrl":"https://doi.org/10.1145/3178298.3178306","url":null,"abstract":"Interoperability and enormous data processing remain significant challenges for Internet of Things' Systems. High heterogeneity in protocols, Vendors, data formats and worldwide acceptable standards' scarcity increase Interoperability Challenge. Depending on a centralized cloud server for data processing increased data latency and turn brokered systems into a bottleneck. In this paper, we proposed generic IoT applied architecture based on scalable distributed computing model from sensor node passing by IoT gateway to Cloud Server to minimize data latency and mitigate data processing burden on a centralized server. Our architecture is also based on an interoperable gateway using semantic web technologies to provide Interoperability among heterogeneous IoT devices.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133055327","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Implementing an ERP System in an Egyptian Research Center: Lessons from Practice","authors":"Mohamed A. Abd Elmoniem, Eman S. Nasr, M. Gheith","doi":"10.1145/3178298.3178308","DOIUrl":"https://doi.org/10.1145/3178298.3178308","url":null,"abstract":"Enterprise Resource Planning (ERP)1 Enterprise Resource Planning (ERP) systems are widely implemented in all enterprises in different domains nowadays. They work on managing an enterprise's data in a single central place. Their implementation is a challenging process that faces many difficulties. It is affected by many factors, such as an organization's size, and type, in addition to the culture of the people. Critical Success Factors (CSFs) became widely used to evaluate the success of an implementation process. This short paper briefly presents the fulfillment of CSFs in implementing an ERP system in one of the Egyptian research centers.","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116534557","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Requirements Elicitation Tool for Cloud-Based ERP Software Product Line","authors":"Mohamed A. Abd Elmoniem, Eman S. Nasr, M. Gheith","doi":"10.1145/3178298.3178300","DOIUrl":"https://doi.org/10.1145/3178298.3178300","url":null,"abstract":"Software Product Line (SPL) 1 is a very promising trend of software reusability. It could be applied in different fields in order to enhance and facilitate the software development process. In the last years, SPLs have broken into Enterprise Resource Planning (ERP) systems. An increasing need showed up for techniques, approaches and tools that combine SPL with ERP. Cloud ERP systems offer many benefits for Small and Medium Enterprises (SME). Managing the requirements elicitation process for Cloud ERP SPLs is a challenging process that faces many difficulties, such as the indirect interaction and the larger context of the target consumers. Facilitating the requirements elicitation process for cloud-based ERP SPLs by using automated tools will help to solve the faced difficulties. To the best of our knowledge, in the context of ERP SPLs, there are no tools for eliciting the requirements of cloud--based ERP SPLs nor even for ERP SPL. This paper exploits the advantages of the Form-Based Model (FBM) as a conceptual model to integrate it with cloud based ERP SPL. In addition, based on this integration, the paper presents a tool for eliciting the requirements of cloud-based ERP SPLs","PeriodicalId":247467,"journal":{"name":"Proceedings of the 3rd Africa and Middle East Conference on Software Engineering","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126881549","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}