{"title":"CWS: An Awareness Tool to Support Starting Collaboration in Global Software Development","authors":"Ramón R. Palacio, A. Morán, Víctor M. González","doi":"10.2174/1874107X01004020038","DOIUrl":"https://doi.org/10.2174/1874107X01004020038","url":null,"abstract":"Software development organizations are facing a paradigm shift towards Distributed Software Development. This shift introduces situations from which organizations may benefit (e.g. highly skilled human resources, development groups closer to client location, etc.); but also introduces challenges to which organizations have to adapt (e.g. coordina- tion difficulties, inadequate knowledge management and communication, and lack of inter-virtual-team trust relation- ships). In this work, we particularly study the lack of timely adequate opportunities for informal interaction, which has been identified as an underpinning foundation to overcome coordination, communication and trust limitations. To achieve this, we introduce and define the concept of Collaborative Working Spheres (CWS), through which developers can obtain information related to the personal activities of their distributed colleagues. CWS allow identifying opportunities for col- laboration in suitable moments both for the one making contact and the one being contacted. We notice that other exam- ples of technologies, including the telephone and instant messaging are used by developers for starting collaboration; however, they do not provide enough information from the personal activity of the person being contacted. We argue that with CWS, software developers will be able to become aware about the status and progress their partners have achieved in some activity, and use this information to inform their starting collaboration. We illustrate this concept with the design of a CWS-based messenger tool that supports Collaborative Working Spheres for Distributed Software Developers. The re- sults of an initial evaluation provide encouraging evidence on the perceived usefulness and ease of use of the proposed CWS-based messenger tool.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"60 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126161729","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":"The Introduction of Several User Interface Structural Metrics to Make Test Automation More Effective","authors":"I. Alsmadi, M. Al-Kabi","doi":"10.2174/1874107X00903010072","DOIUrl":"https://doi.org/10.2174/1874107X00903010072","url":null,"abstract":"User interfaces have special characteristics that differentiate them from the rest of the software code. Typical software metrics that indicate its complexity and quality may not be able to distinguish a complex Graphical User Inter- face (GUI) or a high quality one from another that is not. This paper is about suggesting and introducing some GUI struc- tural metrics that can be gathered dynamically using a test automation tool. Rather than measuring quality or usability, the goal of those developed metrics is to measure the GUI testability, or how much it is hard, or easy to test a particular user interface. We evaluate GUIs for several reasons such as usability and testability. In usability, users evaluate a particular user interface for how much easy, convenient, and fast it is to deal with it. In our testability evaluation, we want to auto- mate the process of measuring the complexity of the user interface from testing perspectives. Such metrics can be used as a tool to estimate required resources to test a particular application.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130534665","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":"The Paradoxical Relationships of Risks and Benefits in Offshore Outsourcing of Software Projects","authors":"Sakgasit Ramingwong, L. Ramingwong","doi":"10.2174/1874107X00903010035","DOIUrl":"https://doi.org/10.2174/1874107X00903010035","url":null,"abstract":"Offshore outsourcing of software projects is an important competitive strategy in modern software business. There has been a long discussion of risks and benefits of this approach. Interestingly, while some issues are perceived as a significant benefit by a group of researchers, they are conversely perceived as a critical risk by others. This paper dis- cusses the two sides of these risk-benefit elements as well as their management strategies.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-06-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124550112","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":"Survey of Software Inspection Research","authors":"Sami Kollanus, Jussi Koskinen","doi":"10.2174/1874107X00903010015","DOIUrl":"https://doi.org/10.2174/1874107X00903010015","url":null,"abstract":"There is a great need to assure and improve the reliability and quality of software. Software inspections were introduced over 30 years ago as an answer for this need and they have inspired a lot of research covering many different kinds of aspects. There is a need for an up-to-date survey revealing the current state and the overall evolution of the most prominent research on the area. This paper presents a comprehensive survey focusing on the most relevant 16 interna- tional high-impact scientific publication series. There are 153 articles included in the survey covering both technical and management aspects. The main results include a description of the research trends during 1980-2008 and a description of the main results of the included studies. The description is organized based on a taxonomy of the inspection research as having emerged based on the survey. At general level the surveyed research provides clear evidence that inspections gen- erally benefit software development and quality assurance. There are several proposed theoretical variations for the in- spection process but also many empirical studies. Although the conducted research is relatively scattered, proper science- based understanding about some of the most studied issues has been achieved. Our main conclusion is that conducting empirical research needs to be continued in order to validate the effects of the different kinds of proposed theoretical con- structs in practice. Empirical studies are needed especially in order to better understand the proper implementation and the actual impacts of applying inspections in different kinds of industrial and organizational settings.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133716146","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":"Evaluation Methodology for Assessing Management System Establishment Support Tools","authors":"Anja Wiedemann","doi":"10.2174/1874107X00903010009","DOIUrl":"https://doi.org/10.2174/1874107X00903010009","url":null,"abstract":"The establishment and operation of a certified management system (e.g. for Quality Management or Informa- tion Security Management) according to an international standard is a complex task for an organization. Hence, organiza- tions usually search for support in order to successfully establish the management system and pass the certification proce- dure. This support is represented by consultants and / or by appropriate software tools. These software tools are designed to support the implementation and operation of management systems within organizations. This article presents an evalua- tion methodology for such software tools. An evaluation of such software tools for the establishment of management sys- tems in organizations provides trust into these tools to the users of the tools, and it also provides a confirmation to the manufacturers of these tools that the evaluated aspects are straight.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-04-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115259975","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":"Alternating Group Coordinator (AGC): An Approach to Improve eXtreme Programming","authors":"H. Mcheick, H. Artail","doi":"10.2174/1874107X00903010001","DOIUrl":"https://doi.org/10.2174/1874107X00903010001","url":null,"abstract":"Agile development methods such as eXtreme Programming (XP) are increasingly adopted by software organi- zations and engineers to access its effectiveness and the benefits it promises. However, XP has some limitations in certain aspects pertaining to inter-group communication and teamwork. This issue is attributed mostly to the isolation among dif- ferent pair-programmer groups. In this analysis, we study the impact of applying our solution of the Alternating Group Coordinator (AGC) on the effectiveness of XP. After giving an overview of XP and the issue which we address, we de- scribe the solution we devise and the method used to evaluate this solution through a statistical questionnaire and using it to develop a mathematical model that describes it.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"134 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-02-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114925718","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":"Data Validation, Data Neutralization, Data Footprint: A Framework Against Injection Attacks","authors":"Guy-Vincent Jourdan","doi":"10.2174/1874107X00802010045","DOIUrl":"https://doi.org/10.2174/1874107X00802010045","url":null,"abstract":"Untrusted data validation is an important part of software security, yet most current validation techniques fall short in two ways: they lack practicality when it comes to validating data in large scale, real life applications, and they do not clearly identify the different goals of handling untrusted data securely. In this paper, we clarify the different, independent problems that \"data validation\" should solve, and we provide a clear and detailed three step process to data validation: a \"data validation\" step to protect the application itself against malicious users, a \"data neutralization\" step to protect other applications from malicious users of the application, and a \"data footprint\" step to protect against attacks on future, unforeseen components that will be connected to the application.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-01-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116410675","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":"Tracing Time Operating System State Determination","authors":"Jean-Hugues Deschênes, M. Desnoyers, M. Dagenais","doi":"10.2174/1874107X00802010040","DOIUrl":"https://doi.org/10.2174/1874107X00802010040","url":null,"abstract":"In recent years, tracing operating system behavior by recording kernel events has proven to be a particularly ef- fective tool. However, when used to characterize the system's behavior through time, including its state, the list of state transitions that the kernel events represent is not sufficient to characterize the state for the entire data acquisition period. The initial operating system state, when tracing starts, is also required. The challenge lies in obtaining a complete snapshot of the initial state, while minimizing the impact on the system being traced. This impact may be in terms of CPU or disk I/O consumption, instrumentation memory, or burst activity at trace start time detrimental to the real-time response. Such impact is especially disturbing on small real-time limited resources embedded systems. In this paper, we will propose an efficient approach to extract such initial state information and discuss the software mod- ule we have developed to provide the aforementioned data to the LTTng tracing tool and its accompanying viewer, LTTV. This module not only improves LTTV's accuracy by providing the initial state of all processes in the system, but also pro- vides an inventory of relevant kernel objects at minimal cost, without increasing noticeably the interrupt latency.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-01-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129032659","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 Graduate Level Case Study Using a Real World Project: What Students Say They Learned","authors":"C. Garrison","doi":"10.2174/1874107X00802010031","DOIUrl":"https://doi.org/10.2174/1874107X00802010031","url":null,"abstract":"Allowing graduate students to develop a real world project for actual customers provides an opportunity for students to experience the benefits of following basic software engineering principles. Most universities now offer a course in software engineering and many information technology students must complete a class project in conjunction with their degree program. One reason businesses often struggle to implement a software process improvement program is that many practicing professionals have never experienced the complete software lifecycle and discovered how software engineering principles aid a real project. This paper presents the lessons learned by students in a capstone graduate soft- ware development course when required to develop an intensive real world project for real customers. Students had to solve the same type of problems encountered by practicing professionals, developed an appreciation for following soft- ware engineering principles, discovered the importance of good team communication and appreciated developing a prod- uct for a real customer.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"1650 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115838556","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":"Adaptability Evaluation at Software Architecture Level","authors":"P. Tarvainen","doi":"10.2174/1874107X00802010001","DOIUrl":"https://doi.org/10.2174/1874107X00802010001","url":null,"abstract":"Quality of software is one of the major issues in software intensive systems and it is important to analyze it as early as possible. An increasingly important quality attribute of complex software systems is adaptability. Software archi- tecture for adaptive software systems should be flexible enough to allow components to change their behaviors depending upon the environmental and stakeholders' changes and goals of the system. Evaluating adaptability at software architec- ture level to identify the weaknesses of the architecture and further to improve adaptability of the architecture are very important tasks for software architects today. Our contribution is an Adaptability Evaluation Method (AEM) that defines, before system implementation, how adaptability requirements can be negotiated and mapped to the architecture, how they can be represented in architectural models, and how the architecture can be evaluated and analyzed in order to validate whether or not the requirements are met. AEM fills the gap from requirements engineering to evaluation and provides an approach for adaptability evaluation at the software architecture level. In this paper AEM is described and validated with a real-world wireless environment control system. Furthermore, adaptability aspects, role of quality attributes, and diversity of adaptability definitions at software architecture level are discussed.","PeriodicalId":262856,"journal":{"name":"The Open Software Engineering Journal","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121593608","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}