647 research outputs found

    Rethinking Productivity in Software Engineering

    Get PDF
    Get the most out of this foundational reference and improve the productivity of your software teams. This open access book collects the wisdom of the 2017 "Dagstuhl" seminar on productivity in software engineering, a meeting of community leaders, who came together with the goal of rethinking traditional definitions and measures of productivity. The results of their work, Rethinking Productivity in Software Engineering, includes chapters covering definitions and core concepts related to productivity, guidelines for measuring productivity in specific contexts, best practices and pitfalls, and theories and open questions on productivity. You'll benefit from the many short chapters, each offering a focused discussion on one aspect of productivity in software engineering. Readers in many fields and industries will benefit from their collected work. Developers wanting to improve their personal productivity, will learn effective strategies for overcoming common issues that interfere with progress. Organizations thinking about building internal programs for measuring productivity of programmers and teams will learn best practices from industry and researchers in measuring productivity. And researchers can leverage the conceptual frameworks and rich body of literature in the book to effectively pursue new research directions. What You'll Learn Review the definitions and dimensions of software productivity See how time management is having the opposite of the intended effect Develop valuable dashboards Understand the impact of sensors on productivity Avoid software development waste Work with human-centered methods to measure productivity Look at the intersection of neuroscience and productivity Manage interruptions and context-switching Who Book Is For Industry developers and those responsible for seminar-style courses that include a segment on software developer productivity. Chapters are written for a generalist audience, without excessive use of technical terminology. ; Collects the wisdom of software engineering thought leaders in a form digestible for any developer Shares hard-won best practices and pitfalls to avoid An up to date look at current practices in software engineering productivit

    Rethinking Productivity in Software Engineering

    Get PDF
    Get the most out of this foundational reference and improve the productivity of your software teams. This open access book collects the wisdom of the 2017 "Dagstuhl" seminar on productivity in software engineering, a meeting of community leaders, who came together with the goal of rethinking traditional definitions and measures of productivity. The results of their work, Rethinking Productivity in Software Engineering, includes chapters covering definitions and core concepts related to productivity, guidelines for measuring productivity in specific contexts, best practices and pitfalls, and theories and open questions on productivity. You'll benefit from the many short chapters, each offering a focused discussion on one aspect of productivity in software engineering. Readers in many fields and industries will benefit from their collected work. Developers wanting to improve their personal productivity, will learn effective strategies for overcoming common issues that interfere with progress. Organizations thinking about building internal programs for measuring productivity of programmers and teams will learn best practices from industry and researchers in measuring productivity. And researchers can leverage the conceptual frameworks and rich body of literature in the book to effectively pursue new research directions. What You'll Learn Review the definitions and dimensions of software productivity See how time management is having the opposite of the intended effect Develop valuable dashboards Understand the impact of sensors on productivity Avoid software development waste Work with human-centered methods to measure productivity Look at the intersection of neuroscience and productivity Manage interruptions and context-switching Who Book Is For Industry developers and those responsible for seminar-style courses that include a segment on software developer productivity. Chapters are written for a generalist audience, without excessive use of technical terminology. ; Collects the wisdom of software engineering thought leaders in a form digestible for any developer Shares hard-won best practices and pitfalls to avoid An up to date look at current practices in software engineering productivit

    AI-Generated Fashion Designs: Who or What Owns the Goods?

    Get PDF
    As artificial intelligence (“AI”) becomes an increasingly prevalent tool in a plethora of industries in today’s society, analyzing the potential legal implications attached to AI-generated works is becoming more popular. One of the industries impacted by AI is fashion. AI tools and devices are currently being used in the fashion industry to create fashion models, fabric designs, and clothing. An AI device’s ability to generate fashion designs raises the question of who will own the copyrights of the fashion designs. Will it be the fashion designer who hires or contracts with the AI device programmer? Will it be the programmer? Or will it be the AI device itself? Designers invest a lot of talent, time, and finances into designing and creating each article of clothing and accessory it releases to the public; yet, under the current copyright standards, designers will not likely be considered the authors of their creations. Ultimately, this Note makes policy proposals for future copyright legislation within the United States, particularly recommending that AI-generated and AI-assisted designs be copyrightable and owned by the designers who purchase the AI device

    Software Innovation:Eight work-style heuristics for creative system developers

    Get PDF

    DECISION MAKING SUPPORT THROUGH A KNOWLEDGE MANAGEMENT FRAMEWORK FOR COMPLEX IT SYSTEMS DEVELOPMENT PROJECTS IN THE KINGDOM OF SAUDI ARABIA

    Get PDF
    Recent research reveals a narrow, rational model of problem- solving and decision-making in complex IT systems development projects. This creates problems that are identified in the thesis. The aim of this study is to develop a novel decision-making framework to support the decision-making process of managers of complex IT systems development projects by focusing on knowledge management frameworks. The objectives for the research were determined through a critical review of the existing research on decision-making in IT projects, primarily to discover how project managers’ decision-making can be supported through project-specific knowledge management. A qualitative research approach was then designed to investigate the phenomenon in its context by conducting in-depth semi-structured interviews. This study used qualitative data, through expert participants’ observations and opinions on IT systems development, particularly by understanding project management issues. The expert participants expressed their experiences through in-depth interviews. The collected data was then analysed using the thematic analysis technique and the findings were used to develop the IT Systems Development Decision-Making Support Framework. The Framework was then validated through focus group interviews. The main contribution of this research is based on the application of knowledge creation and knowledge management theories to decision-making frameworks for IT systems projects through the IT Systems Development Decision-Making Support Framework. The Framework is expected to enable decision evaluation and project-specific knowledge generation and sharing in IT systems development projects. This is vital for the type of contextual knowledge required for project-specific knowledge creation and management. Since IT systems development projects tend to be unique and their development process is complex, it is contended that an effective novel approach for modelling the expert decision-making process and assessing the defined model through project-specific knowledge activities is essential. This approach should help to deal with high level of complexity that is normally found in IT systems development projects

    Helping developers to help each other: a technique to facilitate understanding among professional software developers.

    Get PDF
    Much of a professional software developer’s work involves amending or extending pre-existing software; creating new software from scratch represents only a small proportion of their time. Even in a brand new project they still need to make sense of work others have done in the emerging software system. This research addresses how developers are helped or hindered in their own daily tasks by the actions of their peers. The literature commonly focuses on a specific aspect of the work such as code comprehension or the processes by which a project is run. This research instead takes a holistic view that considers all the activities involved in the job, but from a single uniting perspective: rather than conventional measures such as coding errors or delivery timescales, the criterion here is how a developer personally experiences their own productivity to be affected by their peers. The research used one-to-one interviews to identify common behaviours that help or hinder fellow software developers. Experienced software developers discussed team- friendly (and otherwise) behaviours across the breadth of their typical workplace tasks. The key themes to emerge from this qualitative data make a contribution to the understanding of software development by giving a comprehensive, developer’s- eye view of behaviours that help or hinder them across the whole range of tasks that fill their days. These themes laid the foundation for a practical application of the research. Techniques which had proved engaging and useful in the interviews were adapted into a continuing professional development workshop designed to encourage team discussion on issues of local resonance, selected by participants from those which the interviews had shown to be important. The topics resonated in a way which reinforces the validity of the interview findings. Participants enthusiastically identified useful actions for their own teams and would recommend the workshop to others. They also saw potential for future development into different workplace scenarios. The workshop is just one application of the understanding contributed by the research. The principles of good practice from the human perspective that have been identified also offer an empirical foundation that could be of practical use in appraisals, recruitment and any other scenario which requires an understanding of software developers not just as computer programmers but as people

    Human and social aspects of software development for complex organisations: an online ethnography of software developers

    Get PDF
    This thesis addresses the problem of human and social issues that affect software development. It is situated within the field of Information Systems and focuses on the processes of software production used within complex organisational processes: particularly decision-making, collaboration and workflow. Human and social issues are problems and situations caused by the members of the target organisations, software developers, and the dynamics of their working and social interactions.The objective of this thesis is to identify these human and social issues and see how they affect software developers' work. The methodological approach adopted here, is designed from the interpretive point of view. This study takes the perspective of software developers as they possess practical knowledge of complex business settings and current software development practices. Online ethnography is the chosen method that allows this investigation access to virtual communities in which software developers work and exchange experiences. The design of this thesis is as follows:1. Online data is collected which reflect software developers' beliefs about their work and their target organisations.2. Data categories are created which show a picture of the current state of affairs in software development.3. An interpretive theory building strategy is used to create a model of software development based on data categories.The final outcome of this thesis is developed as a complement to Orlikowski's (2000) structurational model of enactment of technologies-in-practice and takes the form of a descriptive, theory based model. This model contributes to the deeper understanding of software development issues. It presents human and social issues that affect the production of software within three different contexts: software development environment, software development practices and complex business organisations. The model generated in this thesis also suggests that software developers' perceptions of human and social issues in complex business organisations are influenced by the developers' background knowledge and experience
    • …
    corecore