405,480 research outputs found

    Quality Flaws: Issues and Challenges in Software Development

    Get PDF
    A statement “Prevention is better than cure” for illnesses in medical sciences also applies to the software development life cycle in terms of software defects. A defect is a deviation from actual functionality of the application in terms of the correctness and completeness of the specification of the customer requirements. Defective software fails to meet its customer requirements leading to the development of applications with poor quality. Quality is a top priority in every enterprise these days. Organizations struggle in a treadmill race to deliver quality software to stay ahead with new technology, deal with accumulated development backlogs, handle customer issues as software teams work as hard as they can make their organizations stay alive and competitive in the market place. Software companies face an immense pressure to virtually release a bug-free product or a software package. The culture of an organization is a critical success factor in the efforts of process improvement. The paper aims at assessing quality as a function for monitoring and measuring the strength of development processes and any successful application development enterprise requires an unambiguous understanding of customer expectation and maximizing participation of customers in the development activities thereby ensuring that people involved in development activities do the right thing and do the thing right for delivering high quality software. Keywords: Software development, process improvement, software defect, bug-free product, software packag

    DevOps and software quality : a systematic mapping

    Get PDF
    Quality pressure is one of the factors affecting processes for software development in its various stages. DevOps is one of the proposed solutions to such pressure. The primary focus of DevOps is to increase the deployment speed, frequency and quality. DevOps is a mixture of different developments and operations to its multitudinous ramifications in software development industries, DevOps have attracted the interest of many researchers. There are considerable literature surveys on this critical innovation in software development, yet, little attention has been given to DevOps impact on software quality. This research is aimed at analyzing the implications of DevOps features on software quality. DevOps can also be referred to a change in organization cultures aimed at removal of gaps between the development and operations of an organization. The adoption of DevOps in an organization provides many benefits including quality but also brings challenges to an organization. This study presents systematic mapping of the impact of DevOps on software quality. The results of this study provide a better understanding of DevOps on software quality for both professionals and researchers working in this area. The study shows research was mainly focused in automation, culture, continuous delivery, fast feedback of DevOps. There is need of further research in many areas of DevOps (for instance: measurement, development of metrics of different stages to assess its performance, culture, practices toward ensuring quality assurance, and quality factors such as usability, efficiency, software maintainability and portability). Keywords: DevOps, development, operations, software, software quality, automation, measurement, systematic mappingpublishedVersio

    Control System Design Philosophy for Effective Operations and Maintenance

    Full text link
    A well-designed control system facilitates the functions of machine operation, maintenance and development. In addition, the overall effectiveness of the control system can be greatly enhanced by providing reliable mechanisms for coordination and communication, ensuring that these functions work in concert. For good operability, the information presented to operators should be consistent, easy to understand and customizable. A maintainable system is segmented appropriately, allowing a broken element to be quickly identified and repaired while leaving the balance of the system available. In a research and development environment, the control system must meet the frequently changing requirements of a variety of customers. This means the system must be flexible enough to allow for ongoing modifications with minimal disruptions to operations. Beyond the hardware and software elements of the control system, appropriate workflow processes must be in place to maximize system uptime and allow people to work efficiently. Processes that provide automatic electronic communication ensure that information is not lost and reaches its destination in a timely fashion. This paper discusses how these control system design and quality issues have been applied at the Thomas Jefferson National Accelerator Facility.Comment: ICALEPCS 200

    Towards safer medical device software systems: Industry-wide learning from failures and the use of safety-cases to support process compliance

    Full text link
    © 2016 IEEE. Software safety is checked today in regulatory audits, which verify software development process compliance to regulatory requirements. Ensuring safety is a critical task in complex life-supporting systems and despite many existing ways of assuring it, unanticipated failure will always be possible. Checking process compliance to required standards ensures the quality of the processes by which software is developed but does not necessarily indicate the quality of the resultant software. Since medical device domain is facing an increasing amount of device recalls due to software failures, our goal is to explore the underlying reasons for this and suggest two improvements within this paper. First, we will introduce complicated and complex systems to illustrate why there will always be unforeseeable and unanticipated situations that could cause the failure of the entire system. We will then describe how medical device software systems are reviewed for compliance and safety today, highlighting the shortcomings in the current methods adopted in the medical device domain and suggest the use of systems thinking. We then propose two improvements to medical device software development where process compliance is supported by safety cases and industry-wide learning from experience

    The implications of deviating from software testing processes : a case study of a software development company in Cape Town, South Africa

    Get PDF
    Thesis (MTech (Business Information Systems))--Cape Peninsula University of Technology, 2017.Ensuring that predetermined quality standards are met is an issue which software development companies, and the software development industry at large, is having issues in attaining. The software testing process is an important process within the larger software development process, and is done to ensure that software functionality meets user requirements and software defects are detected and fixed prior to users receiving the developed software. Software testing processes have progressed to the point where there are formal processes, dedicated software testing resources and defect management software in use at software development organisations. The research determined implications that the case study software development organisation could face when deviating from software testing processes, with a focus on function performed by the software tester role. The analytical dimensions of duality of structure framework, based on Structuration Theory, was used as a lens to understand and interpret the socio-technical processes associated with software development processes at the case study organisation. Results include the identification of software testing processes, resources and tools, together with the formal software development processes and methodologies being used. Critical e-commerce website functionality and software development resource costs were identified. Tangible and intangible costs which arise due to software defects were also identified. Recommendations include the prioritisation of critical functionality for test execution for the organisation’s e-commerce website platform. The necessary risk management should also be undertaken in scenarios with time constraints on software testing, which balances risk with quality, features, budget and schedule. Numerous process improvements were recommended for the organisation, to assist in preventing deviations from prescribed testing processes. A guideline was developed as a research contribution to illustrate the relationships of the specific research areas and the impact on software project delivery

    Towards a serious game to teach ISO/IEC 12207 software lifecycle process: an interactive learning approach

    Get PDF
    ISO/IEC12207 training is a key element to provide an ability to software development organizations for selecting a set of required processes, measuring the performance of these processes, and continuously improving them. Traditionally, such training is either performed by an expert individual to the software quality management personnel most likely in form of a seminar in a classroom environment. This may also be given by a suitability qualified professional, such as a registered auditor. However, software requirements are usually subject to change, and therefore such training is not enough to teach the substantial details of the entire standard. This has led to increased reports of complications, which demotivates organization to use this standard. To improve the quality of training, a 3D serious game was proposed for the software practitioners. The preliminary idea here is that the game employs 3D office landscape to provide a realistic virtual environment ensuring that the training will be based on real word like situations. Before building a prototype for our serious game, we consulted five industrial experts whose works are related with ISO standards. To give these practitioners an opportunity to explore the conceptual design and raise some potential problems, the semi-structured interview method was used. Based on the suggestions of experts, dynamics and mechanics of the proposed game were updated. Taken together, initial results suggest that a serious game for teaching ISO/IEC 12207 should be useful for individuals who are interested to learn more about the standard

    A graph based process model measurement framework using scheduling theory

    Get PDF
    Software development processes, as a means of ensuring software quality and productivity, have been widely accepted within the software development community; software process modeling, on the other hand, continues to be a subject of interest in the research community. Even with organizations that have achieved higher SEI maturity levels, processes are by and large described in documents and reinforced as guidelines or laws governing software development activities. The lack of industry-wide adaptation of software process modeling as part of development activities can be attributed to two major reasons: lack of forecast power in the (software) process modeling and lack of integration mechanism for the described process to seamlessly interact with daily development activities. This dissertation describes a research through which a framework has been established where processes can be manipulated, measured, and dynamically modified by interacting with project management techniques and activities in an integrated process modeling environment, thus closing the gap between process modeling and software development. In this research, processes are described using directed graphs, similar to the techniques with CPM. This way, the graphs can be manipulated visually while the properties of the graphs-can be used to check their validity. The partial ordering and the precedence relationship of the tasks in the graphs are similar to the one studied in other researches [Delcambre94] [Mills96]. Measurements of the effectiveness of the processes are added in this research. These measurements provide bases for the judgment when manipulating the graphs to produce or modify a process. Software development can be considered as activities related to three sets: a set of tasks (τ), a set of resources (ρ), and a set of constraints (y). The process, P, is then a function of all the sets interacting with each other: P = {τ, ρ, y). The interactions of these sets can be described in terms of different machine models using scheduling theory. While trying to produce an optimal solution satisfying a set of prescribed conditions using the analytical method would lead to a practically non-feasible formulation, many heuristic algorithms in scheduling theory combined with manual manipulation of the tasks can help to produce a reasonable good process, the effectiveness of which is reflected through a set of measurement criteria, in particular, the make-span, the float, and the bottlenecks. Through an integrated process modeling environment, these measurements can be obtained in real time, thus providing a feedback loop during the process execution. This feedback loop is essential for risk management and control

    Development of a mapping system engineering approaches to classic product development processes of technical products: A work project of project management in product development

    Get PDF
    Project Work presented as the partial requirement for obtaining a Master's degree in Information Management, specialization in Information Systems and Technologies ManagementThe automotive industry faces the challenge of meeting customer requirements while ensuring technological advancements, fast and cost-effective development, and high-quality production. Information systems play a crucial role in efficiently designing internal processes and meeting customer demands. Personalized solutions are increasingly adopted to cater to individual preferences while maintaining up-to-date technology. Information systems are utilized to record and manage customer requirements, optimize production processes, control inventories, and facilitate effective communication between departments. Product data management (PDM) solutions are widely employed, with 77% of automotive companies implementing them. PDM encompasses the storage and management of data relevant to product development, supporting the entire product lifecycle. As product complexity grows, efficient management of product data becomes essential, along with the optimization of business processes to shorten development time and parallelize tasks. CAx coordination, involving computer-aided design (CAD), manufacturing (CAM), and engineering (CAE), ensures smooth communication and coordination across the product development process. PDM systems act as intermediaries between CAx coordination and enterprise resource planning systems, facilitating seamless integration of design and manufacturing processes. Leading providers of enterprise resource planning and CAD systems offer software solutions for product lifecycle management and PDM, enabling centralized and accessible product information, streamlining development and management processes
    corecore