Search results for: sticky software
4796 Towards a Goal-Question-Metric Based Approach to Assess Social Sustainability of Software Systems
Authors: Rahma Amri, Narjès Bellamine Ben Saoud
Abstract:
Sustainable development or sustainability is one of the most urgent issues in actual debate in almost domains. Particularly the significant way the software pervades our live should make it in the center of sustainability concerns. The social aspects of sustainability haven’t been well studied in the context of software systems and still immature research field that needs more interest among researchers’ community. This paper presents a Goal-Question-Metric based approach to assess social sustainability of software systems. The approach is based on a generic social sustainability model taken from Social sciences.Keywords: software assessment approach, social sustainability, goal-question-metric paradigm, software project metrics
Procedia PDF Downloads 3954795 A Comparative Analysis of Zotero and Mendeley Reference Management Software
Authors: Sujit K. Basak
Abstract:
This paper presents a comparison of the reference management software between Zotero and Mendeley and the results were drawn by comparing the two software’s. The novelty of this paper is the comparative analysis of the software and it has shown that Mendeley can import more information from the Google Scholar for the researchers. This finding can help to know researchers to use the reference management software.Keywords: analysis, comparative analysis, zotero, researchers, Mendeley
Procedia PDF Downloads 6134794 D6tions: A Serious Game to Learn Software Engineering Process and Design
Authors: Hector G. Perez-Gonzalez, Miriam Vazquez-Escalante, Sandra E. Nava-Muñoz, Francisco E. Martinez-Perez, Alberto S. Nunez-Varela
Abstract:
The software engineering teaching process has been the subject of many studies. To improve this process, researchers have proposed merely illustrative techniques in the classroom, such as topic presentations and dynamics between students on one side or attempts to involve students in real projects with companies and institutions to bring them to a real software development problem on the other hand. Simulators and serious games have been used as auxiliary tools to introduce students to topics that are too abstract when these are presented in the traditional way. Most of these tools cover a limited area of the huge software engineering scope. To address this problem, we have developed D6tions, an educational serious game that simulates the software engineering process and is designed to experiment the different stages a software engineer (playing roles as project leader or as a developer or designer) goes through, while participating in a software project. We describe previous approaches to this problem, how D6tions was designed, its rules, directions, and the results we obtained of the use of this game involving undergraduate students playing the game.Keywords: serious games, software engineering, software engineering education, software engineering teaching process
Procedia PDF Downloads 4934793 User-Driven Product Line Engineering for Assembling Large Families of Software
Authors: Zhaopeng Xuan, Yuan Bian, C. Cailleaux, Jing Qin, S. Traore
Abstract:
Traditional software engineering allows engineers to propose to their clients multiple specialized software distributions assembled from a shared set of software assets. The management of these assets however requires a trade-off between client satisfaction and software engineering process. Clients have more and more difficult to find a distribution or components based on their needs from all of distributed repositories. This paper proposes a software engineering for a user-driven software product line in which engineers define a feature model but users drive the actual software distribution on demand. This approach makes the user become final actor as a release manager in software engineering process, increasing user product satisfaction and simplifying user operations to find required components. In addition, it provides a way for engineers to manage and assembly large software families. As a proof of concept, a user-driven software product line is implemented for eclipse, an integrated development environment. An eclipse feature model is defined, which is exposed to users on a cloud-based built platform from which clients can download individualized Eclipse distributions.Keywords: software product line, model-driven development, reverse engineering and refactoring, agile method
Procedia PDF Downloads 4334792 Object-Oriented Program Comprehension by Identification of Software Components and Their Connexions
Authors: Abdelhak-Djamel Seriai, Selim Kebir, Allaoua Chaoui
Abstract:
During the last decades, object oriented program- ming has been massively used to build large-scale systems. However, evolution and maintenance of such systems become a laborious task because of the lack of object oriented programming to offer a precise view of the functional building blocks of the system. This lack is caused by the fine granularity of classes and objects. In this paper, we use a post object-oriented technology namely software components, to propose an approach based on the identification of the functional building blocks of an object oriented system by analyzing its source code. These functional blocks are specified as software components and the result is a multi-layer component based software architecture.Keywords: software comprehension, software component, object oriented, software architecture, reverse engineering
Procedia PDF Downloads 4134791 An Orphan Software Engineering Course: Supportive Ways toward a True Software Engineer
Authors: Haya Sammana
Abstract:
A well-defined curricula must be adopted to meet the increasing complexity and diversity in the software applications. In reality, some IT majors such as computer science and computer engineering receive the software engineering education in a single course which is considered as a big challenged for the instructors and universities. Also, it requires students to gain the most of practical experiences that simulate the real work in software companies. Furthermore, we have noticed that there is no consensus on how, when and what to teach in that introductory course to gain the practical experiences that are required by the software companies. Because all of software engineering disciplines will not fit in just one course, so the course needs reasonable choices in selecting its topics. This arises an important question which is an essential one to ask: Is this course has the ability to formulate a true software engineer that meets the needs of industry? This question arises a big challenge in selecting the appropriate topics. So answering this question is very important for the next undergraduate students. During teaching this course in the curricula, the feedbacks from an undergraduate students and the keynotes of the annual meeting for an advisory committee from industrial side provide a probable answer for the proposed question: it is impossible to build a true software engineer who possesses all the essential elements of software engineering education such teamwork, communications skills, project management skills and contemporary industrial practice from one course and it is impossible to have a one course covering all software engineering topics. Besides the used teaching approach, the author proposes an implemented three supportive ways aiming for mitigating the expected risks and increasing the opportunity to build a true software engineer.Keywords: software engineering course, software engineering education, software experience, supportive approach
Procedia PDF Downloads 3604790 Software Assessment Using Ant Colony Optimization Algorithm
Authors: Saad M. Darwish
Abstract:
Recently, software quality issues have come to be seen as important subject as we see an enormous growth of agencies involved in software industries. However,these agencies cannot guarantee the quality of their products, thus leaving users in uncertainties. Software certification is the extension of quality by means that quality needs to be measured prior to certification granting process. This research participates in solving the problem of software assessment by proposing a model for assessment and certification of software product that uses a fuzzy inference engine to integrate both of process–driven and application-driven quality assurance strategies. The key idea of the on hand model is to improve the compactness and the interpretability of the model’s fuzzy rules via employing an ant colony optimization algorithm (ACO), which tries to find good rules description by dint of compound rules initially expressed with traditional single rules. The model has been tested by case study and the results have demonstrated feasibility and practicability of the model in a real environment.Keywords: optimization technique, quality assurance, software certification model, software assessment
Procedia PDF Downloads 4874789 Biotechnology Approach: A Tool of Enhancement of Sticky Mucilage of Pulicaria Incisa (Medicinal Plant) for Wounds Treatment
Authors: Djamila Chabane, Asma Rouane, Karim Arab
Abstract:
Depending of the chemical substances responsible for the pharmacological effects, a future therapeutic drug might be produced by extraction from whole plants or by callus initiated from some parts. The optimized callus culture protocols now offer the possibility to use cell culture techniques for vegetative propagation and open minds for further studies on secondary metabolites and drug establishment. In Algerian traditional medicine, Pulicaria incisa (Asteraceae) is used in the treatment of daily troubles (stomachache, headhache., cold, sore throat and rheumatic arthralgia). Field findings revealed that many healers use some fresh parts (leaves, flowers) of this plant to treat skin wounds. This study aims to evaluate the healing efficiency of artisanal cream prepared from sticky mucilage isolated from calluses on dermal wounds of animal models. Callus cultures were initiated from reproductive explants (young inflorescences) excised from adult plants and transferred to a MS basal medium supplemented with growth regulators and maintained under dark for for months. Many calluses types were obtained with various color and aspect (friable, compact). Several subcultures of calli were performed to enhance the mucilage accumulation. After extraction, the mucilage extracts were tested on animal models as follows. The wound healing potential was studied by causing dermal wounds (1 cm diameter) at the dorsolumbar part of Rattus norvegicus; different samples of the cream were applied after hair removal on three rats each, including two controls (one treated by Vaseline and one without any treatment), two experimental groups (experimental group 1, treated with a reference ointment "Madecassol® and experimental group 2 treated by callus mucilage cream for a period of seventeen days. The evolution of the healing activity was estimated by calculating the percentage reduction of the area wounds treated by all compounds tested compared to the controls by using AutoCAD software. The percentage of healing effect of the cream prepared from callus mucilage was (99.79%) compared to that of Madecassol® (99.76%). For the treatment time, the significant healing activity was observed after 17 days compared to that of the reference pharmaceutical products without any wound infection. The healing effect of Madecassol® is more effective because it stimulates and regulates the production of collagen, a fibrous matrix essential for wound healing. Mucilage extracts also showed a high capacity to heal the skin without any infection. According to this pharmacological activity, we suggest to use calluses produced by in vitro culture to producing new compounds for the skin care and treatment.Keywords: calluses, Pulicaria incisa, mucilage, Wounds
Procedia PDF Downloads 1294788 A Multi-Release Software Reliability Growth Models Incorporating Imperfect Debugging and Change-Point under the Simulated Testing Environment and Software Release Time
Authors: Sujit Kumar Pradhan, Anil Kumar, Vijay Kumar
Abstract:
The testing process of the software during the software development time is a crucial step as it makes the software more efficient and dependable. To estimate software’s reliability through the mean value function, many software reliability growth models (SRGMs) were developed under the assumption that operating and testing environments are the same. Practically, it is not true because when the software works in a natural field environment, the reliability of the software differs. This article discussed an SRGM comprising change-point and imperfect debugging in a simulated testing environment. Later on, we extended it in a multi-release direction. Initially, the software was released to the market with few features. According to the market’s demand, the software company upgraded the current version by adding new features as time passed. Therefore, we have proposed a generalized multi-release SRGM where change-point and imperfect debugging concepts have been addressed in a simulated testing environment. The failure-increasing rate concept has been adopted to determine the change point for each software release. Based on nine goodness-of-fit criteria, the proposed model is validated on two real datasets. The results demonstrate that the proposed model fits the datasets better. We have also discussed the optimal release time of the software through a cost model by assuming that the testing and debugging costs are time-dependent.Keywords: software reliability growth models, non-homogeneous Poisson process, multi-release software, mean value function, change-point, environmental factors
Procedia PDF Downloads 744787 Selecting the Best Software Product Using Analytic Hierarchy Process and Fuzzy-Analytic Hierarchy Process Modules
Authors: Anas Hourani, Batool Ahmad
Abstract:
Software applications play an important role inside any institute. They are employed to manage all processes and store entities-related data in the computer. Therefore, choosing the right software product that meets institute requirements is not an easy decision in view of considering multiple criteria, different points of views, and many standards. As a case study, Mutah University, located in Jordan, is in essential need of customized software, and several companies presented their software products which are very similar in quality. In this regard, an analytic hierarchy process (AHP) and a fuzzy analytic hierarchy process (Fuzzy-AHP) models are proposed in this research to identify the most suitable and best-fit software product that meets the institute requirements. The results indicate that both modules are able to help the decision-makers to make a decision, especially in complex decision problems.Keywords: analytic hierarchy process, decision modeling, fuzzy analytic hierarchy process, software product
Procedia PDF Downloads 3924786 A Case Study on Evaluating and Selecting Soil /Pipeline Interaction Analysis Software for the Oil and Gas Industry
Authors: Abdinasir Mohamed, Ashraf El-Hamalawi, Steven Yeomans, Matthew Frost, Andy Connell
Abstract:
The evaluation and selection of appropriate software solutions to meet with an organisation’s inherent business requirements can be a problematic software engineering process that if done incorrectly can have a significant, costly and adverse effect on the business and its processes. The aim of this paper is to show the process and evaluation criteria followed to select the right engineering solution for the identified business requirement. The research adopted an action research method within an organisation in the oil and gas industry, which required a solution suitable for conducting stress analysis for soil-pipeline interaction analysis (SPIA). Through the use of the presented software selection and evaluation approach, to capture and measure key requirements, it was possible to determine a suitable software for the organisation. This paper investigates methodologies for selecting software packages, software evaluation techniques, and software evaluation criteria in evaluating software packages before providing an explanation of the developed methodology adopted. The key findings of the study are: (1) that there is a need to create a framework for software selection methodologies, (2) there are no universal selection criteria in the engineering industry, and (3) there is a need to validate the findings by creating an application based on the evaluation technique and evaluation criteria for selecting software packages for the engineering industry. The findings of the study are offered to support organisations in the oil and gas sector improve software selection methodologies for SPIA.Keywords: software evaluation, end user programs, soil pipeline analysis, software selection
Procedia PDF Downloads 1924785 CMMI Key Process Areas and FDD Practices
Authors: Rituraj Deka, Nomi Baruah
Abstract:
The development of information technology during the past few years resulted in designing of more and more complex software. The outsourcing of software development makes a higher requirement for the management of software development project. Various software enterprises follow various paths in their pursuit of excellence, applying various principles, methods and techniques along the way. The new research is proving that CMMI and Agile methodologies can benefit from using both methods within organizations with the potential to dramatically improve business performance. The paper describes a mapping between CMMI key process areas (KPAs) and Feature-Driven Development (FDD) communication perspective, so as to increase the understanding of how improvements can be made in the software development process.Keywords: Agile, CMMI, FDD, KPAs
Procedia PDF Downloads 4594784 Scope of Virtualization
Authors: Pavneet Kaur, Palak Sharma
Abstract:
Virtualization is a term that basically describe creation of virtual version of something like operating system, network, etc. Virtualization is a technology which is in use from 1970, but with new developments and inventions, it is now useful in education, software development etc. This paper will describe basic introduction of virtualization, along with its various categories. It will also describe use of virtualization in software engineering, its various benefits and shortcomings.Keywords: virtualization, hardware, software, os
Procedia PDF Downloads 3694783 Analyzing Software Testing Phase in Agile Project Management: The Case of Jordan
Authors: Ghaleb Y. Abbasi, Satanay Alhiary
Abstract:
This paper focused on software testing phase of activities, types, techniques, teams and methods under agile project management (APM) in the Jordanian software industry. The effect of using agile principles and practices on testing process in software development life cycle (SDLC) was analyzed in order to create full view of the agile testing aspects such as phases, levels, types, methods, team and customers. Qualitative and quantitative research methods were utilized to cover earlier literature and collect data via web survey and short interviews in Jordanian software companies. Results indicated that agile testing had positive influence on quality of product, team performance, and customer satisfaction with a rate above 80%. APM is a powerful practice of moving software project forward in current markets with a rate above 51% by early involvement of testing activities in development.Keywords: agile project management, software development life cycle, agile methods, agile testing, software testing
Procedia PDF Downloads 4564782 Oil Producing Wells Using a Technique of Gas Lift on Prosper Software
Authors: Nikhil Yadav, Shubham Verma
Abstract:
Gas lift is a common technique used to optimize oil production in wells. Prosper software is a powerful tool for modeling and optimizing gas lift systems in oil wells. This review paper examines the effectiveness of Prosper software in optimizing gas lift systems in oil-producing wells. The literature review identified several studies that demonstrated the use of Prosper software to adjust injection rate, depth, and valve characteristics to optimize gas lift system performance. The results showed that Prosper software can significantly improve production rates and reduce operating costs in oil-producing wells. However, the accuracy of the model depends on the accuracy of the input data, and the cost of Prosper software can be high. Therefore, further research is needed to improve the accuracy of the model and evaluate the cost-effectiveness of using Prosper software in gas lift system optimizationKeywords: gas lift, prosper software, injection rate, operating costs, oil-producing wells
Procedia PDF Downloads 894781 Software Evolution Based Activity Diagrams
Authors: Zine-Eddine Bouras, Abdelouaheb Talai
Abstract:
During the last two decades, the software evolution community has intensively tackled the software merging issue whose main objective is to merge in a consistent way different versions of software in order to obtain a new version. Well-established approaches, mainly based on the dependence analysis techniques, have been used to bring suitable solutions. These approaches concern the source code or software architectures. However, these solutions are more expensive due to the complexity and size. In this paper, we overcome this problem by operating at a high level of abstraction. The objective of this paper is to investigate the software merging at the level of UML activity diagrams, which is a new interesting issue. Its purpose is to merge activity diagrams instead of source code. The proposed approach, based on dependence analysis techniques, is illustrated through an appropriate case study.Keywords: activity diagram, activity diagram slicing, dependency analysis, software merging
Procedia PDF Downloads 3304780 Quality and Coverage Assessment in Software Integration Based On Mutation Testing
Authors: Iyad Alazzam, Kenneth Magel, Izzat Alsmadi
Abstract:
The different activities and approaches in software testing try to find the most possible number of errors or failures with the least amount of possible effort. Mutation is a testing approach that is used to discover possible errors in tested applications. This is accomplished through changing one aspect of the software from its original and writes test cases to detect such change or mutation. In this paper, we present a mutation approach for testing software components integration aspects. Several mutation operations related to components integration are described and evaluated. A test case study of several open source code projects is collected. Proposed mutation operators are applied and evaluated. Results showed some insights and information that can help testing activities in detecting errors and improving coverage.Keywords: software testing, integration testing, mutation, coverage, software design
Procedia PDF Downloads 4274779 Improving Learning and Teaching of Software Packages among Engineering Students
Authors: Sara Moridpour
Abstract:
To meet emerging industry needs, engineering students must learn different software packages and enhance their computational skills. Traditionally, face-to-face is selected as the preferred approach to teaching software packages. Face-to-face tutorials and workshops provide an interactive environment for learning software packages where the students can communicate with the teacher and interact with other students, evaluate their skills, and receive feedback. However, COVID-19 significantly limited face-to-face learning and teaching activities at universities. Worldwide lockdowns and the shift to online and remote learning and teaching provided the opportunity to introduce different strategies to enhance the interaction among students and teachers in online and virtual environments and improve the learning and teaching of software packages in online and blended teaching methods. This paper introduces a blended strategy to teach engineering software packages to undergraduate students. This article evaluates the effectiveness of the proposed blended learning and teaching strategy in students’ learning by comparing the impact of face-to-face, online and the proposed blended environments on students’ software skills. The paper evaluates the students’ software skills and their software learning through an authentic assignment. According to the results, the proposed blended teaching strategy successfully improves the software learning experience among undergraduate engineering students.Keywords: teaching software packages, undergraduate students, blended learning and teaching, authentic assessment
Procedia PDF Downloads 1154778 A Survey of Baseband Architecture for Software Defined Radio
Authors: M. A. Fodha, H. Benfradj, A. Ghazel
Abstract:
This paper is a survey of recent works that proposes a baseband processor architecture for software defined radio. A classification of different approaches is proposed. The performance of each architecture is also discussed in order to clarify the suitable approaches that meet software-defined radio constraints.Keywords: multi-core architectures, reconfigurable architectures, software defined radio, baseband processor
Procedia PDF Downloads 4754777 Automated Detection of Related Software Changes by Probabilistic Neural Networks Model
Authors: Yuan Huang, Xiangping Chen, Xiaonan Luo
Abstract:
Current software are continuously updating. The change between two versions usually involves multiple program entities (e.g., packages, classes, methods, attributes) with multiple purposes (e.g., changed requirements, bug fixing). It is hard for developers to understand which changes are made for the same purpose. Whether two changes are related is not decided by the relationship between this two entities in the program. In this paper, we summarized 4 coupling rules(16 instances) and 4 state-combination types at the class, method and attribute levels for software change. Related Change Vector (RCV) are defined based on coupling rules and state-combination types, and applied to classify related software changes by using Probabilistic Neural Network during a software updating.Keywords: PNN, related change, state-combination, logical coupling, software entity
Procedia PDF Downloads 4374776 Code Refactoring Using Slice-Based Cohesion Metrics and AOP
Authors: Jagannath Singh, Durga Prasad Mohapatra
Abstract:
Software refactoring is very essential for maintaining the software quality. It is an usual practice that we first design the software and then go for coding. But after coding is completed, if the requirement changes slightly or our expected output is not achieved, then we change the codes. For each small code change, we cannot change the design. In course of time, due to these small changes made to the code, the software design decays. Software refactoring is used to restructure the code in order to improve the design and quality of the software. In this paper, we propose an approach for performing code refactoring. We use slice-based cohesion metrics to identify the target methods which requires refactoring. After identifying the target methods, we use program slicing to divide the target method into two parts. Finally, we have used the concepts of Aspects to adjust the code structure so that the external behaviour of the original module does not change.Keywords: software refactoring, program slicing, AOP, cohesion metrics, code restructure, AspectJ
Procedia PDF Downloads 5134775 User-Perceived Quality Factors for Certification Model of Web-Based System
Authors: Jamaiah H. Yahaya, Aziz Deraman, Abdul Razak Hamdan, Yusmadi Yah Jusoh
Abstract:
One of the most essential issues in software products is to maintain it relevancy to the dynamics of the user’s requirements and expectation. Many studies have been carried out in quality aspect of software products to overcome these problems. Previous software quality assessment models and metrics have been introduced with strengths and limitations. In order to enhance the assurance and buoyancy of the software products, certification models have been introduced and developed. From our previous experiences in certification exercises and case studies collaborating with several agencies in Malaysia, the requirements for user based software certification approach is identified and demanded. The emergence of social network applications, the new development approach such as agile method and other varieties of software in the market have led to the domination of users over the software. As software become more accessible to the public through internet applications, users are becoming more critical in the quality of the services provided by the software. There are several categories of users in web-based systems with different interests and perspectives. The classifications and metrics are identified through brain storming approach with includes researchers, users and experts in this area. The new paradigm in software quality assessment is the main focus in our research. This paper discusses the classifications of users in web-based software system assessment and their associated factors and metrics for quality measurement. The quality model is derived based on IEEE structure and FCM model. The developments are beneficial and valuable to overcome the constraints and improve the application of software certification model in future.Keywords: software certification model, user centric approach, software quality factors, metrics and measurements, web-based system
Procedia PDF Downloads 4054774 New Standardized Framework for Developing Mobile Applications (Based On Real Case Studies and CMMI)
Authors: Ammar Khader Almasri
Abstract:
The software processes play a vital role for delivering a high quality software system that meets the user’s needs. There are many software development models which are used by most system developers, which can be categorized into two categories (traditional and new methodologies). Mobile applications like other desktop applications need appropriate and well-working software development process. Nevertheless, mobile applications have different features which limit their performance and efficiency like application size, mobile hardware features. Moreover, this research aims to help developers in using a standardized model for developing mobile applications.Keywords: software development process, agile methods , moblile application development, traditional methods
Procedia PDF Downloads 3874773 Hybrid Approach for Software Defect Prediction Using Machine Learning with Optimization Technique
Authors: C. Manjula, Lilly Florence
Abstract:
Software technology is developing rapidly which leads to the growth of various industries. Now-a-days, software-based applications have been adopted widely for business purposes. For any software industry, development of reliable software is becoming a challenging task because a faulty software module may be harmful for the growth of industry and business. Hence there is a need to develop techniques which can be used for early prediction of software defects. Due to complexities in manual prediction, automated software defect prediction techniques have been introduced. These techniques are based on the pattern learning from the previous software versions and finding the defects in the current version. These techniques have attracted researchers due to their significant impact on industrial growth by identifying the bugs in software. Based on this, several researches have been carried out but achieving desirable defect prediction performance is still a challenging task. To address this issue, here we present a machine learning based hybrid technique for software defect prediction. First of all, Genetic Algorithm (GA) is presented where an improved fitness function is used for better optimization of features in data sets. Later, these features are processed through Decision Tree (DT) classification model. Finally, an experimental study is presented where results from the proposed GA-DT based hybrid approach is compared with those from the DT classification technique. The results show that the proposed hybrid approach achieves better classification accuracy.Keywords: decision tree, genetic algorithm, machine learning, software defect prediction
Procedia PDF Downloads 3294772 Assessing the Current State of Software Engineering and Information Technology in Ghana
Authors: David Yartel
Abstract:
Drawing on the current state of software engineering and information technology in Ghana, the study documents its significant contribution to the development of Ghanaian industries. The study focuses on the application of modern trends in technology and the barriers faced in the area of software engineering and information technology. A thorough analysis of a dozen of interviews with stakeholders in software engineering and information technology via interviews reveals how modern trends in software engineering pose challenges to the industry in Ghana. Results show that to meet the expectation of modern software engineering and information technology trends, stakeholders must have skilled professionals, adequate infrastructure, and enhanced support for technology startups. Again, individuals should be encouraged to pursue a career in software engineering and information technology, as it has the propensity to increase the efficiency and effectiveness of work-related activities. This study recommends that stakeholders in software engineering and technology industries should invest enough in training more professionals by collaborating with international institutions well-versed in the area by organizing frequent training and seminars. The government should also provide funding opportunities for small businesses in the technology sector to drive creativity and development in order to bring about growth and development.Keywords: software engineering, information technology, Ghana, development
Procedia PDF Downloads 944771 The Evaluation Model for the Quality of Software Based on Open Source Code
Authors: Li Donghong, Peng Fuyang, Yang Guanghua, Su Xiaoyan
Abstract:
Using open source code is a popular method of software development. How to evaluate the quality of software becomes more important. This paper introduces an evaluation model. The model evaluates the quality from four dimensions: technology, production, management, and development. Each dimension includes many indicators. The weight of indicator can be modified according to the purpose of evaluation. The paper also introduces a method of using the model. The evaluating result can provide good advice for evaluating or purchasing the software.Keywords: evaluation model, software quality, open source code, evaluation indicator
Procedia PDF Downloads 3904770 Extending the AOP Joinpoint Model for Memory and Type Safety
Authors: Amjad Nusayr
Abstract:
Software security is a general term used to any type of software architecture or model in which security aspects are incorporated in this architecture. These aspects are not part of the main logic of the underlying program. Software security can be achieved using a combination of approaches, including but not limited to secure software designs, third part component validation, and secure coding practices. Memory safety is one feature in software security where we ensure that any object in memory has a valid pointer or a reference with a valid type. Aspect-Oriented Programming (AOP) is a paradigm that is concerned with capturing the cross-cutting concerns in code development. AOP is generally used for common cross-cutting concerns like logging and DB transaction managing. In this paper, we introduce the concepts that enable AOP to be used for the purpose of memory and type safety. We also present ideas for extending AOP in software security practices.Keywords: aspect oriented programming, programming languages, software security, memory and type safety
Procedia PDF Downloads 1284769 Multilayer Neural Network and Fuzzy Logic Based Software Quality Prediction
Authors: Sadaf Sahar, Usman Qamar, Sadaf Ayaz
Abstract:
In the software development lifecycle, the quality prediction techniques hold a prime importance in order to minimize future design errors and expensive maintenance. There are many techniques proposed by various researchers, but with the increasing complexity of the software lifecycle model, it is crucial to develop a flexible system which can cater for the factors which in result have an impact on the quality of the end product. These factors include properties of the software development process and the product along with its operation conditions. In this paper, a neural network (perceptron) based software quality prediction technique is proposed. Using this technique, the stakeholders can predict the quality of the resulting software during the early phases of the lifecycle saving time and resources on future elimination of design errors and costly maintenance. This technique can be brought into practical use using successful training.Keywords: software quality, fuzzy logic, perception, prediction
Procedia PDF Downloads 3174768 Development of AUTOSAR Software Components of MDPS System
Authors: Jae-Woo Kim, Kyung-Joong Lee, Hyun-Sik Ahn
Abstract:
This paper describes the development of a Motor-Driven Power Steering (MDPS) system using Automotive Open System Architecture (AUTOSAR) methodology. The MDPS system is a new power steering technology for vehicles and it can enhance driver’s convenience and fuel efficiency. AUTOSAR defines common standards for the implementation of embedded automotive software. Some aspects of safety and timing requirements are analyzed. Through the AUTOSAR methodology, the embedded software becomes more flexible, reusable and maintainable than ever. Hence, we first design software components (SW-C) for MDPS control based on AUTOSAR and implement SW-Cs for MDPS control using authoring tool following AUTOSAR standards.Keywords: AUTOSAR, MDPS, simulink, software component
Procedia PDF Downloads 3504767 Cognitive Weighted Polymorphism Factor: A New Cognitive Complexity Metric
Authors: T. Francis Thamburaj, A. Aloysius
Abstract:
Polymorphism is one of the main pillars of the object-oriented paradigm. It induces hidden forms of class dependencies which may impact software quality, resulting in higher cost factor for comprehending, debugging, testing, and maintaining the software. In this paper, a new cognitive complexity metric called Cognitive Weighted Polymorphism Factor (CWPF) is proposed. Apart from the software structural complexity, it includes the cognitive complexity on the basis of type. The cognitive weights are calibrated based on 27 empirical studies with 120 persons. A case study and experimentation of the new software metric shows positive results. Further, a comparative study is made and the correlation test has proved that CWPF complexity metric is a better, more comprehensive, and more realistic indicator of the software complexity than Abreu’s Polymorphism Factor (PF) complexity metric.Keywords: cognitive complexity metric, object-oriented metrics, polymorphism factor, software metrics
Procedia PDF Downloads 459