8,358 research outputs found

    Web development evolution: the assimilation of web engineering security

    Get PDF
    In today’s e-commerce environment, information is an incredibly valuable asset. Surveys indicate that companies are suffering staggering financial losses due to web security issues. Analyzing the underlying causes of these security breaches shows that a significant proportion of them are caused by straightforward design errors in systems and not by failures in security mechanisms. There is significant research into security mechanisms but there is little research into the integration of these into software design processes, even those processes specifically designed for Web Engineering. Security should be designed into the application development process upfront through an independent flexible methodology that contains customizable components

    Web development evolution: the assimilation of web engineering security

    Get PDF
    In today’s e-commerce environment, information is an incredibly valuable asset. Surveys indicate that companies are suffering staggering financial losses due to web security issues. Analyzing the underlying causes of these security breaches shows that a significant proportion of them are caused by straightforward design errors in systems and not by failures in security mechanisms. There is significant research into security mechanisms but there is little research into the integration of these into software design processes, even those processes specifically designed for Web Engineering. Security should be designed into the application development process upfront through an independent flexible methodology that contains customizable components

    Development of a framework to understand the factors that influence software productivity in agile teams

    Get PDF
    Productivity improvement in the software industry is one of the major challenges facing many software development companies in this century. Most companies have adopted agile methodologies in order to profit from the benefits claimed for them. Agile methodologies are characterised by frequent software delivery, short feedback loops, quicker response to change, and problem identification earlier in the development process. The agile approach has been recognised as paving a way for companies to acquire higher software productivity, delivering good-quality and cost-effective software, enabling software development companies to respond to business challenges with their demands for high quality, high performance and high development speed in delivering the final product. For companies that adopt agile methodologies, understanding the factors that influence their teams’ software development productivity is a challenging task for management and practitioners today. In this research, an analysis is presented that identifies productivity factors that affect agile teams. It is a study of agile methods to identify common agile practices and/or values that have impact on productivity, and describes suitable metrics that could be used to measure agile team productivity. A qualitative research approach was used, and the case study was chosen as the research strategy. Two South African companies that are located in two different provinces and that adopted agile methodologies in their software development, were selected for the case studies. Qualitative content analysis was used in the research to permit subjective interpretation of factors that influence agile team productivity, and to analyse to what extent these factors affected productivity. This research has shown that an understanding of the factors that influence an agile team’s productivity gives significant insight into the way agile teams work, motivates team members to work together, and leads to uniform metrics in tracking each team’s progress. The study indicates that tracking an agile team’s work and providing adequate tools needed to execute their tasks results in improving agile team productivity. It should be recognised that using metrics to measure performance in agile teams is helpful in creating a team’s culture and trust. In this study, it was found that the factors identified in both literature and case studies affected productivity in the two companies under study, both positively and negatively. The study also found that applying the correct metrics in assessing, analysing and reviewing an agile team’s performance is important when monitoring productivity. Successful software delivery is only possible if individuals are committed to their work, are provided with the necessary tools and have access to a stable working environment. In addition, individual factors such as knowledge, skills, abilities, personalities and experience should be considered when forming agile teams. Consideration of these factors will result in grouping people that are able to work together and achieve a common goal, which is important in improving productivity. A conceptual framework for agile team productivity was proposed. The discussion of the findings is presented in more detail in this research.School of ComputingM.Sc. (Computing

    Involving External Stakeholders in Project Courses

    Full text link
    Problem: The involvement of external stakeholders in capstone projects and project courses is desirable due to its potential positive effects on the students. Capstone projects particularly profit from the inclusion of an industrial partner to make the project relevant and help students acquire professional skills. In addition, an increasing push towards education that is aligned with industry and incorporates industrial partners can be observed. However, the involvement of external stakeholders in teaching moments can create friction and could, in the worst case, lead to frustration of all involved parties. Contribution: We developed a model that allows analysing the involvement of external stakeholders in university courses both in a retrospective fashion, to gain insights from past course instances, and in a constructive fashion, to plan the involvement of external stakeholders. Key Concepts: The conceptual model and the accompanying guideline guide the teachers in their analysis of stakeholder involvement. The model is comprised of several activities (define, execute, and evaluate the collaboration). The guideline provides questions that the teachers should answer for each of these activities. In the constructive use, the model allows teachers to define an action plan based on an analysis of potential stakeholders and the pedagogical objectives. In the retrospective use, the model allows teachers to identify issues that appeared during the project and their underlying causes. Drawing from ideas of the reflective practitioner, the model contains an emphasis on reflection and interpretation of the observations made by the teacher and other groups involved in the courses. Key Lessons: Applying the model retrospectively to a total of eight courses shows that it is possible to reveal hitherto implicit risks and assumptions and to gain a better insight into the interaction...Comment: Abstract shortened since arxiv.org limits length of abstracts. See paper/pdf for full abstract. Paper is forthcoming, accepted August 2017. Arxiv version 2 corrects misspelled author nam

    DevOps and its Philosophy : Education Matters!

    Get PDF
    DevOps processes comply with principles and offer practices with main objective to support efficiently the evolution of IT systems. To be efficient a DevOps process relies on a set of integrated tools. DevOps is among the first competencies together with Agile method required by the industry. As a new approach it is necessary to develop and offer to the academy and to the industry training programs to prepare our engineers in the best possible way. In this chapter we present the main aspects of the educational effort made in the recent years to educate to the concepts and values of the DevOps philosophy. This includes principles, practices, tools and architectures, primarily the microservices architectural style, which shares many aspects of DevOps approaches especially the modularity and flexibility which enables continuous change and delivery. Two experiences have been made, one at academic level as a master program course and the other, as an industrial training. Based on those two experiences, we provide a comparative analysis and some proposals in order to develop and improve DevOps education for the future

    DevOps and its Philosophy : Education Matters!

    Get PDF
    DevOps processes comply with principles and offer practices with main objective to support efficiently the evolution of IT systems. To be efficient a DevOps process relies on a set of integrated tools. DevOps is among the first competencies together with Agile method required by the industry. As a new approach it is necessary to develop and offer to the academy and to the industry training programs to prepare our engineers in the best possible way. In this chapter we present the main aspects of the educational effort made in the recent years to educate to the concepts and values of the DevOps philosophy. This includes principles, practices, tools and architectures, primarily the microservices architectural style, which shares many aspects of DevOps approaches especially the modularity and flexibility which enables continuous change and delivery. Two experiences have been made, one at academic level as a master program course and the other, as an industrial training. Based on those two experiences, we provide a comparative analysis and some proposals in order to develop and improve DevOps education for the future

    Prepare Students for Software Industry: A case study on an agile full stack project

    Get PDF
    Reducing the gap between Software Engineering education and the needs in the software industry is a goal for Academia. Advancement in terms of cutting-edge technical skills and good soft skills preparation is the desired goal to shorten the onboarding in the labour market. Generally, in computer science or computer engineering courses, separate subjects exist to teach requirements engineering, analysis and design, coding, or validation. However, integrating all these phases normally requires experience in developing a complete project. The approach presented in this paper has involved the staff of a software company in collaboration with the staff of an academic Institution and resulted in a student's involvement in a full-stack software development project. The student was involved in an agile team composed of teachers and Information Technology (IT) professionals. Scrum framework was followed, and the product was developed using a low-code development platform. Results show that this agile and full stack approach allows students to develop cutting-edge technical and non- technical skills. The paper presents the approach, the achieved results, some lessons learned and some guidelines for the future.info:eu-repo/semantics/publishedVersio
    • …
    corecore