Search results for: IES software
4789 A Software Product Engineering Process for Commercial Success in Start-Up and Cases
Authors: Javed Ahsan
Abstract:
Software engineers strive for technical sophistication with a dream of finding commercial success in their start-up business. But they may find their much technically sophisticated software products failing in industry in competition with lesser sophisticated products. This is because of not maintaining a clear focus on complimenting and leading commercial success through technical sophistication. This can be achieved through a software engineering specific product development process suggested in this paper. This process is about evolving a software product through specific phases and iterations until commercial triumph falls on software engineer’s feet.Keywords: software, product, engineering, commercialization, start-up, competitiveness, industry
Procedia PDF Downloads 3584788 Review of Transportation Modeling Software
Authors: Hassan M. Al-Ahmadi, Hamad Bader Almobayedh
Abstract:
Planning for urban transportation is essential for developing effective and sustainable transportation networks that meet the needs of various communities. Advanced modeling software is required for effective transportation planning, management, and optimization. This paper compares PTV VISUM, Aimsun, TransCAD, and Emme, four industry-leading software tools for transportation planning and modeling. Each software has strengths and limitations, and the project's needs, financial constraints, and level of technical expertise influence the choice of software. Transportation experts can design and improve urban transportation systems that are effective, sustainable, and meet the changing needs of their communities by utilizing these software tools.Keywords: PTV VISUM, Aimsun, TransCAD, transportation modeling software
Procedia PDF Downloads 344787 CompleX-Machine: An Automated Testing Tool Using X-Machine Theory
Authors: E. K. A. Ogunshile
Abstract:
This paper is aimed at creating an Automatic Java X-Machine testing tool for software development. The nature of software development is changing; thus, the type of software testing tools required is also changing. Software is growing increasingly complex and, in part due to commercial impetus for faster software releases with new features and value, increasingly in danger of containing faults. These faults can incur huge cost for software development organisations and users; Cambridge Judge Business School’s research estimated the cost of software bugs to the global economy is $312 billion. Beyond the cost, faster software development methodologies and increasing expectations on developers to become testers is driving demand for faster, automated, and effective tools to prevent potential faults as early as possible in the software development lifecycle. Using X-Machine theory, this paper will explore a new tool to address software complexity, changing expectations on developers, faster development pressures and methodologies, with a view to reducing the huge cost of fixing software bugs.Keywords: conformance testing, finite state machine, software testing, x-machine
Procedia PDF Downloads 2714786 Defect Management Life Cycle Process for Software Quality Improvement
Authors: Aedah Abd Rahman, Nurdatillah Hasim
Abstract:
Software quality issues require special attention especially in view of the demands of quality software product to meet customer satisfaction. Software development projects in most organisations need proper defect management process in order to produce high quality software product and reduce the number of defects. The research question of this study is how to produce high quality software and reducing the number of defects. Therefore, the objective of this paper is to provide a framework for managing software defects by following defined life cycle processes. The methodology starts by reviewing defects, defect models, best practices and standards. A framework for defect management life cycle is proposed. The major contribution of this study is to define a defect management road map in software development. The adoption of an effective defect management process helps to achieve the ultimate goal of producing high quality software products and contributes towards continuous software process improvement.Keywords: defects, defect management, life cycle process, software quality
Procedia PDF Downloads 3084785 Working Mode and Key Technology of Thermal Vacuum Test Software for Spacecraft Test
Authors: Zhang Lei, Zhan Haiyang, Gu Miao
Abstract:
A universal software platform is developed for improving the defects in the practical one. This software platform has distinct advantages in modularization, information management, and the interfaces. Several technologies such as computer technology, virtualization technology, network technology, etc. are combined together in this software platform, and four working modes are introduced in this article including single mode, distributed mode, cloud mode, and the centralized mode. The application area of the software platform is extended through the switch between these working modes. The software platform can arrange the thermal vacuum test process automatically. This function can improve the reliability of thermal vacuum test.Keywords: software platform, thermal vacuum test, control and measurement, work mode
Procedia PDF Downloads 4184784 Software Development and Team Diversity
Authors: J. Congalton, K. Logan, B. Crump
Abstract:
Software is a critical aspect of modern life. However it is costly to develop and industry initiatives have focused on reducing costs and improving the productivity. Increasing, software is being developed in teams, and with greater globalization and migration, the teams are becoming more ethnically diverse. This study investigated whether diversity in terms of ethnicity impacted on the productivity of software development. Project managers of software development teams were interviewed. The study found that while some issues did exist due to language problems, when project managers created an environment of trust and friendliness, diversity made a positive contribution to productivity.Keywords: diversity, project management, software development, team work
Procedia PDF Downloads 3744783 Refactoring Object Oriented Software through Community Detection Using Evolutionary Computation
Authors: R. Nagarani
Abstract:
An intrinsic property of software in a real-world environment is its need to evolve, which is usually accompanied by the increase of software complexity and deterioration of software quality, making software maintenance a tough problem. Refactoring is regarded as an effective way to address this problem. Many refactoring approaches at the method and class level have been proposed. But the extent of research on software refactoring at the package level is less. This work presents a novel approach to refactor the package structures of object oriented software using genetic algorithm based community detection. It uses software networks to represent classes and their dependencies. It uses a constrained community detection algorithm to obtain the optimized community structures in software networks, which also correspond to the optimized package structures. It finally provides a list of classes as refactoring candidates by comparing the optimized package structures with the real package structures.Keywords: community detection, complex network, genetic algorithm, package, refactoring
Procedia PDF Downloads 4214782 [Keynote Talk]: Software Reliability Assessment and Fault Tolerance: Issues and Challenges
Authors: T. Gayen
Abstract:
Although, there are several software reliability models existing today there does not exist any versatile model even today which can be used for the reliability assessment of software. Complex software has a large number of states (unlike the hardware) so it becomes practically difficult to completely test the software. Irrespective of the amount of testing one does, sometimes it becomes extremely difficult to assure that the final software product is fault free. The Black Box Software Reliability models are found be quite uncertain for the reliability assessment of various systems. As mission critical applications need to be highly reliable and since it is not always possible to ensure the development of highly reliable system. Hence, in order to achieve fault-free operation of software one develops some mechanism to handle faults remaining in the system even after the development. Although, several such techniques are currently in use to achieve fault tolerance, yet these mechanisms may not always be very suitable for various systems. Hence, this discussion is focused on analyzing the issues and challenges faced with the existing techniques for reliability assessment and fault tolerance of various software systems.Keywords: black box, fault tolerance, failure, software reliability
Procedia PDF Downloads 4284781 Visualizing Class Metrics and Object Calls for Software Systems
Authors: Mohammad Alnabhan, Awni Hammouri, Mustafa Hammad, Anas Al-Badareen, Omamah Al-Thnebat
Abstract:
Software visualization is one of the main techniques used to simplify the presentation of software systems and enhance their understandability. It is used to present the software system in a visual manner using simple, clear and meaningful symbols. This study proposes a new 2D software visualization approach. In this approach, each class is represented by rectangle, the name of the class placed above the rectangle, the size of class (Line of Code) represented by the height of the rectangle. The methods and the attributes are represented by circles and triangles respectively. The relationships among classes correspond to arrows. The proposed visualization approach was evaluated in terms of applicability and efficiency. Results have confirmed successful implementation of the proposed approach, and its ability to provide a simple and effective graphical presentation of extracted software components and properties.Keywords: software visualization, software metrics, calling relationships, 2D graphs
Procedia PDF Downloads 2074780 Intelligent Software Architecture and Automatic Re-Architecting Based on Machine Learning
Authors: Gebremeskel Hagos Gebremedhin, Feng Chong, Heyan Huang
Abstract:
Software system is the combination of architecture and organized components to accomplish a specific function or set of functions. A good software architecture facilitates application system development, promotes achievement of functional requirements, and supports system reconfiguration. We describe three studies demonstrating the utility of our architecture in the subdomain of mobile office robots and identify software engineering principles embodied in the architecture. The main aim of this paper is to analyze prove architecture design and automatic re-architecting using machine learning. Intelligence software architecture and automatic re-architecting process is reorganizing in to more suitable one of the software organizational structure system using the user access dataset for creating relationship among the components of the system. The 3-step approach of data mining was used to analyze effective recovery, transformation and implantation with the use of clustering algorithm. Therefore, automatic re-architecting without changing the source code is possible to solve the software complexity problem and system software reuse.Keywords: intelligence, software architecture, re-architecting, software reuse, High level design
Procedia PDF Downloads 1234779 FreGsd: A Framework for Golbal Software Requirement Engineering
Authors: Alsahli Abdulaziz Abdullah, Hameed Ullah Khan
Abstract:
Software development nowadays is more and more using global ways of development instead of normal development enviroment where development occur in one location. This paper is a aimed to propose a Requirement Engineering framework to support Global Software Development environment with regards to all requirment engineering activities from elicitation to fially magning requirment change. Global software enviroment is more and more gaining better reputation in software developmet with better quality is resulting from developing in this eviroment yet with lower cost.However, failure rate developing in this enviroment is high due to inapproprate requirment development and managment.This paper will add to the software engineering development envrioments discipline and many developers in GSD will benefit from it.Keywords: global software development environment, GSD, requirement engineering, FreGsd, computer engineering
Procedia PDF Downloads 5534778 Designing a Tool for Software Maintenance
Authors: Amir Ngah, Masita Abdul Jalil, Zailani Abdullah
Abstract:
The aim of software maintenance is to maintain the software system in accordance with advancement in software and hardware technology. One of the early works on software maintenance is to extract information at higher level of abstraction. In this paper, we present the process of how to design an information extraction tool for software maintenance. The tool can extract the basic information from old program such as about variables, based classes, derived classes, objects of classes, and functions. The tool have two main part; the lexical analyzer module that can read the input file character by character, and the searching module which is user can get the basic information from existing program. We implemented this tool for a patterned sub-C++ language as an input file.Keywords: extraction tool, software maintenance, reverse engineering, C++
Procedia PDF Downloads 4964777 Requirement Engineering Within Open Source Software Development: A Case Study
Authors: Kars Beek, Remco Groeneveld, Sjaak Brinkkemper
Abstract:
Although there is much literature available on requirement documentation in traditional software development, few studies have been conducted about this topic in open source software development. While open-source software development is becoming more important, the software development processes are often not as structured as corporate software development processes. Papers show that communities, creating open-source software, often lack structure and documentation. However, most recent studies about this topic are often ten or more years old. Therefore, this research has been conducted to determine if the lack of structure and documentation in requirement engineering is currently still the situation in these communities. Three open-source products have been chosen as subjects for conducting this research. The data for this research was gathered based on interviews, observations, and analyses of feature proposals and issue tracking tools. In this paper, we present a comparison and an analysis of the different methods used for requirements documentation to understand the current practices of requirements documentation in open source software development.Keywords: case study, open source software, open source software development, requirement elicitation, requirement engineering
Procedia PDF Downloads 1084776 Computer Software for Calculating Electron Mobility of Semiconductors Compounds; Case Study for N-Gan
Authors: Emad A. Ahmed
Abstract:
Computer software to calculate electron mobility with respect to different scattering mechanism has been developed. This software is adopted completely Graphical User Interface (GUI) technique and its interface has been designed by Microsoft Visual Basic 6.0. As a case study the electron mobility of n-GaN was performed using this software. The behaviour of the mobility for n-GaN due to elastic scattering processes and its relation to temperature and doping concentration were discussed. The results agree with other available theoretical and experimental data.Keywords: electron mobility, relaxation time, GaN, scattering, computer software, computation physics
Procedia PDF Downloads 6754775 Modeling Metrics for Monitoring Software Project Performance Based on the GQM Model
Authors: Mariayee Doraisamy, Suhaimi bin Ibrahim, Mohd Naz’ri Mahrin
Abstract:
There are several methods to monitor software projects and the objective for monitoring is to ensure that the software projects are developed and delivered successfully. A performance measurement is a method that is closely associated with monitoring and it can be scrutinized by looking at two important attributes which are efficiency and effectiveness both of which are factors that are important for the success of a software project. Consequently, a successful steering is achieved by monitoring and controlling a software project via the performance measurement criteria and metrics. Hence, this paper is aimed at identifying the performance measurement criteria and the metrics for monitoring the performance of a software project by using the Goal Question Metrics (GQM) approach. The GQM approach is utilized to ensure that the identified metrics are reliable and useful. These identified metrics are useful guidelines for project managers to monitor the performance of their software projects.Keywords: component, software project performance, goal question metrics, performance measurement criteria, metrics
Procedia PDF Downloads 3594774 Evolving Software Assessment and Certification Models 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: software quality, quality assurance, software certification model, software assessment
Procedia PDF Downloads 5274773 Operational Software Maturity: An Aerospace Industry Analysis
Authors: Raúl González Muñoz, Essam Shehab, Martin Weinitzke, Chris Fowler, Paul Baguley
Abstract:
Software applications have become crucial to the aerospace industry, providing a wide range of functionalities and capabilities used during the design, manufacturing and support of aircraft. However, as this criticality increases, so too does the risk for business operations when facing a software failure. Hence, there is a need for new methodologies to be developed to support aerospace companies in effectively managing their software portfolios, avoiding the hazards of business disruption and additional costs. This paper aims to provide a definition of operational software maturity, and how this can be used to assess software operational behaviour, as well as a view on the different aspects that drive software maturity within the aerospace industry. The key research question addressed is, how can operational software maturity monitoring assist the aerospace industry in effectively managing large software portfolios? This question has been addressed by conducting an in depth review of current literature, by working closely with aerospace professionals and by running an industry case study within a major aircraft manufacturer. The results are a software maturity model composed of a set of drivers and a prototype tool used for the testing and validation of the research findings. By utilising these methodologies to assess the operational maturity of software applications in aerospace, benefits in maintenance activities and operations disruption avoidance have been observed, supporting business cases for system improvement.Keywords: aerospace, software lifecycle, software maintenance, software maturity
Procedia PDF Downloads 3284772 Strategies to Improve Learning and Teaching of Software Packages Among Undergraduate Students
Authors: Sara Moridpour
Abstract:
Engineering students need to learn different software packages to meet the emerging industry needs. Face-to-face lectures provide an interactive environment for learning software packages. However, COVID changed expectations of face-to-face learning and teaching. It is essential to enhance the interaction among students and teachers in online and virtual learning and teaching of software packages. The proposed study introduces strategies for teaching engineering software packages in online and hybrid environments and evaluates students’ skills by an authentic assignment.Keywords: teaching software packages, authentic assessment., engineering, undergraduate students
Procedia PDF Downloads 1444771 Software Reliability Prediction Model Analysis
Authors: Lela Mirtskhulava, Mariam Khunjgurua, Nino Lomineishvili, Koba Bakuria
Abstract:
Software reliability prediction gives a great opportunity to measure the software failure rate at any point throughout system test. A software reliability prediction model provides with the technique for improving reliability. Software reliability is very important factor for estimating overall system reliability, which depends on the individual component reliabilities. It differs from hardware reliability in that it reflects the design perfection. Main reason of software reliability problems is high complexity of software. Various approaches can be used to improve the reliability of software. We focus on software reliability model in this article, assuming that there is a time redundancy, the value of which (the number of repeated transmission of basic blocks) can be an optimization parameter. We consider given mathematical model in the assumption that in the system may occur not only irreversible failures, but also a failure that can be taken as self-repairing failures that significantly affect the reliability and accuracy of information transfer. Main task of the given paper is to find a time distribution function (DF) of instructions sequence transmission, which consists of random number of basic blocks. We consider the system software unreliable; the time between adjacent failures has exponential distribution.Keywords: exponential distribution, conditional mean time to failure, distribution function, mathematical model, software reliability
Procedia PDF Downloads 4674770 A Review on Factors Influencing Implementation of Secure Software Development Practices
Authors: Sri Lakshmi Kanniah, Mohd Naz’ri Mahrin
Abstract:
More and more businesses and services are depending on software to run their daily operations and business services. At the same time, cyber-attacks are becoming more covert and sophisticated, posing threats to software. Vulnerabilities exist in the software due to the lack of security practices during the phases of software development. Implementation of secure software development practices can improve the resistance to attacks. Many methods, models and standards for secure software development have been developed. However, despite the efforts, they still come up against difficulties in their deployment and the processes are not institutionalized. There is a set of factors that influence the successful deployment of secure software development processes. In this study, the methodology and results from a systematic literature review of factors influencing the implementation of secure software development practices is described. A total of 44 primary studies were analysed as a result of the systematic review. As a result of the study, a list of twenty factors has been identified. Some of factors that affect implementation of secure software development practices are: Involvement of the security expert, integration between security and development team, developer’s skill and expertise, development time and communication between stakeholders. The factors were further classified into four categories which are institutional context, people and action, project content and system development process. The results obtained show that it is important to take into account organizational, technical and people issues in order to implement secure software development initiatives.Keywords: secure software development, software development, software security, systematic literature review
Procedia PDF Downloads 3814769 Determining the Most Efficient Test Available in Software Testing
Authors: Qasim Zafar, Matthew Anderson, Esteban Garcia, Steven Drager
Abstract:
Software failures can present an enormous detriment to people's lives and cost millions of dollars to repair when they are unexpectedly encountered in the wild. Despite a significant portion of the software development lifecycle and resources are dedicated to testing, software failures are a relatively frequent occurrence. Nevertheless, the evaluation of testing effectiveness remains at the forefront of ensuring high-quality software and software metrics play a critical role in providing valuable insights into quantifiable objectives to assess the level of assurance and confidence in the system. As the selection of appropriate metrics can be an arduous process, the goal of this paper is to shed light on the significance of software metrics by examining a range of testing techniques and metrics as well as identifying key areas for improvement. Additionally, through this investigation, readers will gain a deeper understanding of how metrics can help to drive informed decision-making on delivering high-quality software and facilitate continuous improvement in testing practices.Keywords: software testing, software metrics, testing effectiveness, black box testing, random testing, adaptive random testing, combinatorial testing, fuzz testing, equivalence partition, boundary value analysis, white box testing
Procedia PDF Downloads 914768 Development of Configuration Software of Space Environment Simulator Control System Based on Linux
Authors: Zhan Haiyang, Zhang Lei, Ning Juan
Abstract:
This paper presents a configuration software solution in Linux, which is used for the control of space environment simulator. After introducing the structure and basic principle, it is said that the developing of QT software frame and the dynamic data exchanging between PLC and computer. The OPC driver in Linux is also developed. This driver realizes many-to-many communication between hardware devices and SCADA software. Moreover, an algorithm named “Scan PRI” is put forward. This algorithm is much more optimizable and efficient compared with "Scan in sequence" in Windows. This software has been used in practical project. It has a good control effect and can achieve the expected goal.Keywords: Linux OS, configuration software, OPC Server driver, MYSQL database
Procedia PDF Downloads 2924767 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 3984766 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 6164765 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 4964764 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 4364763 Evolving Application Design and Development Engineering: Bridging the Gap Between Software Architecture and User-Centric Solutions in Modern Digital Ecosystems
Authors: Ouaabbou Noureddine
Abstract:
Application design and development engineering represents a critical intersection between software engineering principles and user-centric design methodologies. This area meets the growing demand for professionals who can design, develop and deploy sophisticated software applications while ensuring optimal user experience. The curriculum encompasses basic programming concepts, database management, systems architecture, UI/UX design principles, and software testing methodologies. Students gain hands-on experience through real-world projects that reflect real-world software development cycles, from initial needs analysis to final deployment. This program prepares graduates for roles in software development, application architecture, and technical project management in response to the growing complexity of modern software applications and the evolving needs of the digital economy.Keywords: software engineering, application development, user experience, system architecture, software design methodologies
Procedia PDF Downloads 54762 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 4184761 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 3634760 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 491