32 research outputs found

    A Collaborative Computational Infrastructure for Supporting Technical Debt Knowledge Sharing and Evolution

    Get PDF
    Keeping information systems useful during their evolution is a complex task. This complexity usually comes from the lack of concern with their maintainability. The monitoring of technical debt (TD) is one way to minimize the effects of low maintainability. But even before developers can monitor the debt, they need to understand what TD types can be incurred, how they can be identified, and which causes can lead developers to incur them into the project. Nevertheless, despite the importance of to know what TD is, this knowledge is still spread out hindering a common understanding of the area. In this context, this paper presents TD Wiki, a collaborative computational infrastructure for supporting TD knowledge sharing and evolution through the using of knowledge visualization techniques. TD Wiki is already available for use and provides useful information that can be used when developing strategies for TD monitoring during the development of information systems

    Identification and Remediation of Self-Admitted Technical Debt in Issue Trackers

    Get PDF
    Technical debt refers to taking shortcuts to achieve short-term goals, which might negatively influence software maintenance in the long-term. There is increasing attention on technical debt that is admitted by developers in source code comments (termed as self-admitted technical debt or SATD). But SATD in issue trackers is relatively unexplored. We performed a case study, where we manually examined 500 issues from two open source projects (i.e. Hadoop and Camel), which contained 152 SATD items. We found that: 1) eight types of technical debt are identified in issues, namely architecture, build, code, defect, design, documentation, requirement, and test debt; 2) developers identify technical debt in issues in three different points in time, and a small part is identified by its creators; 3) the majority of technical debt is paid off, 4) mostly by those who identified it or created it; 5) the median time and average time to repay technical debt are 872.3 and 25.0 hours respectively.Comment: The 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA

    Ontological Methodologies for counselling intervention: do’a and zikr al-mā’thur corpus

    Get PDF
    يمكن اقتراح دعاء وذكر المأثور (دعاء أصيل وذكرى الله عز وجل) على المسلمين لمساعدتهم في التعامل مع التحديات أو القضايا في الحياة. تؤثر حالات الاستشارة على مشاعر الشخص. غالبًا ما يتم استخدام دعاء وذكر الماثور كتدخل استشاري. الا انه من سوء الحظ ، فإن دعاء وذكر المآثر الأصيلتين مشتتان في العديد من الموارد غير المرئية للمستخدمين ، وحقيقة أنه ليست كل الموارد عبر الإنترنت توفر وصولاً دقيقًا إلى دعاء وذكر المآثر للمستخدمين و دعاء المشكوك فيها حيث ذكر المآثر كثيرا ما يُنسب إلى النبي صلى الله عليه وسلم. الهدف من هذا البحث هو تطوير علم الوجود لغرض تقديم نتائج موثوقة لتقديم المشورة للحالات التي تحتاج إلى دعاء وذكر الماثور ذات الصلة. ركز هذا البحث على تقديم طريقة  تمكّن علم الوجود من دعم تقديم معلومات دقيقة للحالات التي يشرف عليها مستشارو المدارس الثانوية. طور هذا البحث الأنطولوجيا لدعاء وذكر الماثور لتقديم المشورة في بروتيجي. وتضمنت المنهجية التي تم تنفيذها في تطوير علم الوجود النماذج التي صممها فرنانديز لوبيز وآخرون ، وتونكيجيانوكيج ، وجوميز بيريز وآخرون ، وكريدر. تم التحقق من الأنطولوجيا والتحقق من صحتها وتقييمها من قبل خبيرين في مجال الموضوع. تم تصنيف معظم المفاهيم على أنها "متوافقة" والبعض على أنها "متوافقة جزئيًا". أنتجت الاستعلامات في سباركل إجابات لأسئلة الكفاءة. وأثبتت التعليقات من تقييم المستخدم أن النتائج المنفذة من علم الوجود "دعاء" و "ذكر المأثور" للاستشارة نجحت في تلبية متطلبات المستخدمين. يوصى البحث بضرورة ضمان استدامة الأنطولوجيا من خلال التقديم المستمر للقضايا الحقيقية من قبل المستشارين والأشخاص الذين لهم أدوار مماثلة لتحليل الاستعلام والنتائج. كما يجب على العلماء الموثوقين تقديم التوجيه للمصادر الجديرة بالثقة. تعتبر هذه المدخلات الأساسية ذات قيمة لإدارة المحتوى وتساهم في عدد قليل جدًا من أنطولوجيات المجال التي تقدم الدعم للأعمال المهنية. كما يوفر البحث إجراءات خطوة بخطوة لبناء الأنطولوجيا وتقييم التحصيل الإسلامي للتدخل الإرشادي.Do’a and Zikr al-Mā’thur (authentic supplications and remembrance of ALLAH ‘Azza wa Jalla) can be suggested to Muslims to help them deal with challenges or issues in life. Counselling cases affect a person’s feelings. Do’a and Zikr al-Mā’thur are often applied as a counselling intervention. Unfortunately, the authentic Do’a and Zikr al-Mā’thur are dispersed in many resources not visible to users, and the fact that not all online resources offer access to accurate Do’a and Zikr al-Mā’thur to users and the dubious Do’a and Zikr al-Mā’thur frequently credited to the Prophet (pbuh). The goal of this research is to develop an ontology for the purpose of providing credible results to counselling cases in need of relevant Do’a and Zikr Al- Ma’thur. This research focused on presenting how an ontology could support to provide accurate information to cases supervised by high school counsellors. This research developed the ontology for Do’a and Zikr al-Mā’thur for counselling in Protégé. The methodology implemented in the ontology development included the models designed by Fernandez-Lopez et al., Thunkijjanukij, Gomez-Perez et al., and Kreider. The ontology was verified, validated, and evaluated by two subject domain experts. Most concepts were rated as ‘Compliant’ and some as ‘Partially Compliant’. Queries in SPARQL produced answers to the competency questions. Feedbacks from the user assessment proved that the executed results from the Do’a and Zikr al-Mā’thur ontology for counselling succeeded in fulfilling the users’ requirement. It is recommended that the sustainability of the ontology should be secured through constant submission of real cases by counsellors and people with similar roles for query analysis and results. Credible scholars should provide direction to trustworthy sources. Such essential input is valuable for content management and contributes towards very few domain ontologies that deliver support to professional works. It also provides the step-by-step procedures to ontology construction and assessment for Islamic collection for counselling intervention

    Automatically learning patterns for self-admitted technical debt removal

    Get PDF
    Technical Debt (TD) expresses the need for improvements in a software system, e.g., to its source code or architecture. In certain circumstances, developers “self-admit” technical debt (SATD) in their source code comments. Previous studies investigate when SATD is admitted, and what changes developers perform to remove it. Building on these studies, we present a first step towards the automated recommendation of SATD removal strategies. By leveraging a curated dataset of SATD removal patterns, we build a multi-level classifier capable of recommending six SATD removal strategies, e.g., changing API calls, conditionals, method signatures, exception handling, return statements, or telling that a more complex change is needed. SARDELE (SAtd Removal using DEep LEarning) combines a convolutional neural network trained on embeddings extracted from the SATD comments with a recurrent neural network trained on embeddings extracted from the SATD-affected source code. Our evaluation reveals that SARDELE is able to predict the type of change to be applied with an average precision of ~55%, recall of ~57%, and AUC of 0.73, reaching up to 73% precision, 63% recall, and 0.74 AUC for certain categories such as changes to method calls. Overall, results suggest that SATD removal follows recurrent patterns and indicate the feasibility of supporting developers in this task with automated recommenders

    Self-Admitted Technical Debt - An Investigation from Farm to Table to Refactoring

    Get PDF
    Self-Admitted Technical Debt (SATD) is a metaphorical concept which describes the self-documented contribution of technical debt to a software project in the manner of source-code comments. SATD can linger in projects and degrade source-code quality, but its palpable visibility draws a peculiar sort of attention from developers. There is a need to understand the significance of engineering SATD within a software project, as these debts may have lurking repercussions. While the oft-performed action of refactoring may work against a generalized volume of source code degradation, there exists only slight evidence suggesting that the act of refactoring has a distinct impact on SATD. In fact, refactoring is better understood to convalesce the measurable quality of source code which may very well remain unimpressed by the preponderance of SATD instances. In observation of the cross-section of these two concepts, it would seem logical to presume some magnitude of correlation between refactorings and SATD removals. In this thesis, we will address the extent of such concurrence, while also seeking to develop a dependable tool to promote the empirical studies of SATD. Using this tool, we mined data from 5 open source Java projects, from which associations between SATD removals and refactoring actions were drawn to show that developers tend to refactor SATD-containing code differently than they do code elsewhere in their projects. We also concluded that design-related SATD is more likely to entail a refactoring than non-design SATD
    corecore