Internet code search is quite popular research area. StackOverflow allows developers to ask and answer questions about code. Previous approach to search code on StackOverflow uses tf-idf method that based on number of occurrences of words to recommend source code. This method has the disadvantage that variable or method identifiers are considered as normal words, even though identifiers are often a combination of two or more words. For example, there is an identifier named "randomString". In that case, if we search using a keyword "random" the system probably will not recommend "randomString" because both words are different. Concept location can tackle this problem. Concept location has been used widely to obtain the correlation between code with a specific concepts or features. Previous research of concept location only focused on source code's comments, and relation among the objects within the source code.This research proposes a mechanism for finding code on StackOverflow uses Latent Dirichlet Allocation (LDA) using concept location in the preprocessing stage. Questions, answers, and code snippets about Java programming are downloaded from StackOverflow to a local repository. Corpuses are generated by extracting questions, answers and code snippets. Inferencing concept location from source code is created using LDA algorithm. Developers query concepts and then system will recommend source code based on the relevant concepts. The result of the experiment shows that the system is able to recommend source code with 48% average of precision and 58% average of recall.
Basis path testing is a method used to identify code defects. The determination of independent paths on basis path testing can be generated by using Genetic Algorithm. However, this method has a weakness. In example, the number of iterations can affect the emersion of basis path. When the iteration is low, it results in the incomplete path occurences. Conversely, if iteration is plentiful resulting to path occurences, after a certain iteration, unfortunately, the result does not change. This study aims to perform the optimization of Genetic Algorithm performance for independent path determination by determining how many iteration levels match the characteristics of the code. The characteristics of the code used include Node, Edge, VG, NBD, and LOC. Moreover, Naïve Bayes is a method used to predict the exact number of iterations based on 17 selected code data into training data, and 16 data into test data. The result of system accuracy test is able to predict the exact iteration of 93.75% from 16 test data. Time-test results show that the new system was able to complete an independent search path being faster 15% than the old system.
<span lang="EN">Basis test paths is a method that uses a graph contains nodes as a representation of codes and the lines as a sequence of code execution steps. Determination of basis test paths can be generated using a Genetic Algorithm, but the drawback was the number of iterations affect the possibility of visibility of the appropriate basis path. When the iteration is less, there is a possibility the paths do not appear all. Conversely, if the iteration is too much, all the paths have appeared in the middle of iteration. This research aims to optimize the performance of Genetic Algorithms for the generation of Basis Test Paths by determining how many iterations level corresponding to the characteristics of the code. Code metrics Node, Edge, VG, NBD, LOC were used as features to determine the number of iterations. J48 classifier was employed as a method to predict the number of iterations. There were 17 methods have selected as a data training, and 16 methods as a data test. The system was able to predict 84.5% of 58 basis paths. Efficiency test results also show that our system was able to seek Basis Paths 35% faster than the old system.</span>
In a basis path testing, there are independent paths that must be passed/tested at least once to make sure there are no errors in the code and ensure all pseudocode have implemented on the code. Previously, the independent path was generated using the Genetic Algorithm, but the number of iterations influenced the likelihood of the emergence of the corresponding the independent path. Besides, the pseudocode was also unable to be used directly since it must be implemented first, this makes finding an independent path longer because it has to implement the code. This research aims to find out how to find the independent path directly from pseudocode using a graph and how
Olahraga adalah aktivitas yang tidak terpisahkan dari kehidupan sehari-hari sebagian besar masyarakat karena dapat menjaga kesehatan tubuh. Salah satu jenis dari olahraga adalah olahraga Endurance (ketahanan). Olahraga ini di tiap tahunnya mengalami peningkatan jumlah atlet yang berpartisipasi. Saat perlombaan atau turnamen olahraga, selain latihan yang rutin, komposisi makanan yang tepat adalah salah satu faktor yang menunjang performa atlet agar menjadi lebih baik. Pada penelitian ini menggunakan metode PSO (Particle Swarm Optimization) untuk menentukan kombinasi bahan makanan untuk memenuhi kebutuhan gizi atlet olahraga endurance dalam sehari. Total bahan makanan yang digunakan sebanyak 125 bahan dan tiap makanan memiliki kandungan gizi berupa protein, lemak, dan karbohidrat. Untuk setiap partikel dalam metode PSO mengandung 14 bahan makanan dengan direpresentasikan nomor bahan makanan dari tabel database bahan makanan. Dari hasil pengujian parameter metode PSO pada penelitian ini diperoleh ukuran populasi terbaik sebesar 200 partikel, jumlah iterasi terbaik sebanyak 80, dan kombinasi nilai C1 dan C2 adalah 1 dan 1. Hasil dari uji coba studi kasus, dapat disimpulkan bahwa sistem dapat memberikan hasil rekomendasi menu makanan yang baik, yaitu yang masih dalam batas tolerasi ±10% selisih kecukupan kebutuhan gizi untuk atlet olahraga Endurance.
ABSTRAKFunction Point (FP) adalah metrik yang digunakan untuk mengukur kompleksitas perangkat lunak berdasarkan fungsi perangkat lunak tersebut. Perhitungan metrik FP dengan menggunakan desain DFD (Data Flow Diagram) dan ERD (Entity Relationship Diagram) masih dilakukan secara manual. Dengan perhitungan manual tersebut terdapat kesalahan sebesar 90% yang dilakukan oleh siswa yang belum lulus dalam mengidentifikasi logic file. Berdasarkan kekurangan tersebut, maka dibuatlah program yang otomatis menghitung FP dengan harapan mengurangi kesalahan perhitungan FP. Sistem perhitungan FP berdasarkan desain DFD dan ERD dibuat berbasis web dengan menggunakan framework Codeigniter. Sistem yang telah dibuat diuji dengan menggunakan white-box dan black-box testing. Teknik yang digunakan dalam pengujian yaitu, basis path testing, pengujian dataset, dan pengujian validasi. Dari pengujian tersebut didapatkan bahwa kebutuhan fungsional dan non-fungsional telah berjalan sesuai dengan yang diharapkan pada tahap analisis kebutuhan, dan aplikasi ini telah sesuai dengan perhitungan manual yang telah dibuat untuk menghitung nilai FP.Kata Kunci: DFD, ERD, framework Codeigniter, Function Point. ABSTRACTFunction Point is a metric that used for measure software complexity based on software functional. FP metric computation using DFD and ERD design have done manually. There are 90% error when identify logic file in FP metric computation manually by an undergraduate student. Based on that fact, so this research is about developing a system that can be use to count the FP metric, indeed to decreasing error in FP computation. Function Points counting system is count the FP from DFD and ERD design. This system is developed in web base using CodeIgniter Framework. The system that has been developed is tested using white-box and black-box testing. Technique that is used in testing are basis path testing, dataset testing, and validation testing. From that tests, we know that the functional and non functional process has been meet with the functional and non functional requirement and the result of FP count using this system has the same with the FP count manually.Keywords: Codeigniter framework, DFD, ERD, Function Point.
Pemodelan perangkat lunak merupakan salah satu tahapan penting dalam membuat rancangan perangkat lunak. Pemodelan dapat menjadi jembatan informasi dari sistem analis kepada tim pengembangan perangkat lunak dan pemangku kepentingan. Dalam Pengabdian kepada Masyarakat (PkM) ini kami akan mengadakan pelatihan pemodelan untuk meningkatkan pemahaman terhadap pemodelan perangkat lunak. Pada kegiatan PkM ini, kami merangkul mitra Sekolah Menengah Kejuruan (SMK) yang berasal dari SMK Negeri 2 Singosari dan SMK Negeri 6 Malang khususnya keminatan Rekayasa Perangkat Lunak. Kami melihat bahwa SMK merupakan salah satu instansi pencetak profesi pengembang perangkat lunak(developer). Penanaman fondasi awal yang benar dalam pengembang perangkat tentu dapat merubah mindset atau perspektif siswa dalam hal memahami proses pengembangan perangkat lunak. Oleh karena itu, kami memberikan pelatihan kepada guru dengan keminatan Rekayasa Perangkat Lunak melalui kegiatan pengabdian ini. Fokus kami memberikan pelatihan adalah agar guru mampu memahami konsep pemodelan secara tepat dan meneruskan pemahaman tersebut kepada para siswa pada saat pembelajaran di kelas. Software modelling is one of the important stages in making software design. Modelling can be an information connector from systems analysts to the software development team and stakeholders. In this community service, we will implement modelling training to improve our understanding of software modelling. In this community service activity, we engage Vocational High School (SMK) as a partner from SMK Negeri 2 Singosari and SMK Negeri 6 Malang, especially those interested in Software Engineering. We see that SMK is one of the professional software development agencies (developers). Planting the right initial foundation in software development can certainly change the mindset or perspective of students in terms of understanding the software development process. Therefore, we provide training to teachers interested in Software Engineering through this service activity. Our focus in providing training so that teachers can understand the concept of modelling appropriately and pass that understanding on to students during classroom learning.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.