This document discusses mentoring newcomers in open source projects. It introduces the challenges of measuring socio-technical balance and how the initial project environment impacts developers' learning trajectories. Specifically, it examines how the relative sociality of a project at the time a developer joins affects their future participation and success. The goal is to better understand training and learning strategies to improve developer capabilities and project success.
This document discusses integrating user-centered design (UCD) and software engineering (SE) processes. It proposes combining the strengths of both approaches by using a single artifact, like a storyboard, to focus on client requirements, design the user interface, and shorten test cycles. The authors describe their experience developing a hospital administration software using an integrated UCD-SE process that employed a storyboard to capture requirements and verify functionality throughout development. They argue this approach can develop software faster while continually aligning with user needs.
BARRIERS SURROUNDING KNOWLEDGE TRANSFER IN NON-COLLOCATED SOFTWARE ARCHITECTU...IJASCSE
This document summarizes a study on the barriers surrounding knowledge transfer in non-collocated software architecture development. The study conducted interviews with 30 experts from software companies in Malaysia. The interviews aimed to identify the external conditions that inhibit effective knowledge transfer between remotely located teams. The most commonly cited conditions were physical distance between teams, differences in team capabilities and experiences, and a lack of time. The study takes a perspective of looking at these conditions not just as barriers, but also as hidden opportunities to improve team capabilities through knowledge transfer.
This document summarizes a student project from the IETI "Simona Duque" in Marinilla, Colombia. The project aims to investigate how climate change has influenced emerging crop pests and to implement natural agricultural methods to combat these pests. The project will identify common crop pests, test natural pest control methods, and conduct field trips to observe pest damage. If successful, the project could benefit farmers through higher crop yields and quality while protecting the environment. The project is scheduled to take 5 months and involve teachers and institutions like SENA.
One XP Experience: Introducing Agile (XP) Software Development into a Culture...David Leip
The document discusses introducing agile (XP) software development practices into a large corporate environment that traditionally used waterfall methodologies. It describes training the multidisciplinary team, which includes programmers, information architects, visual designers, and others. While the developers were willing to try XP, integrating it posed challenges due to the diverse skills, distributed teams, and need for close collaboration. The initial experience found it difficult to identify a clear "customer" representative, and some XP practices like test-first development did not transfer naturally to all disciplines. Overall, the experience highlighted interactions between organizational culture, agile methodology, and the need for changes on both fronts to fully realize the benefits of an agile approach.
An Exploratory Study of Usability Practice from User-Centered Design View: M...Ruby Kuo
The document summarizes an exploratory study on usability practice from a user-centered design perspective in Taiwan's internet industry. Through in-depth interviews with 14 professionals, the study found:
1) Usability knowledge and skills were generally lacking, with most learning through experience rather than formal training.
2) Design methods were typically linear rather than iterative as recommended by user-centered design. Deadlines often took priority over usability.
3) While usability testing and prototyping were acknowledged as helpful, they were seldom used due to schedule and budget constraints. Users tended to be involved primarily to satisfy business goals rather than design goals.
Timothy Howarth is an experienced senior project architect and team manager with over 20 years of experience in architecture. He has expertise in hospitality, healthcare, corporate, and science/technology building projects both domestically and internationally. He is skilled in all phases of design and construction project management.
The document discusses applying collaborative technologies to software development. It outlines the contents, which include introducing collaboration, discussing problems with non-collaborative work, and describing the proposed collaborative application's attributes and capabilities. The document aims to design an architecture that enables easy collaboration between distributed software engineers to reduce costs and improve productivity.
John Fouts has over 10 years of experience in user experience design, managing large projects with teams of 20+ people. He currently works as the Director of Experience Design at Kaneva, a social networking company, where he oversees user interface design, animation, and 3D art direction. Previously he held roles at IQ Interactive as Vice President of Operations and Lead Information Architect.
This document discusses integrating user-centered design (UCD) and software engineering (SE) processes. It proposes combining the strengths of both approaches by using a single artifact, like a storyboard, to focus on client requirements, design the user interface, and shorten test cycles. The authors describe their experience developing a hospital administration software using an integrated UCD-SE process that employed a storyboard to capture requirements and verify functionality throughout development. They argue this approach can develop software faster while continually aligning with user needs.
BARRIERS SURROUNDING KNOWLEDGE TRANSFER IN NON-COLLOCATED SOFTWARE ARCHITECTU...IJASCSE
This document summarizes a study on the barriers surrounding knowledge transfer in non-collocated software architecture development. The study conducted interviews with 30 experts from software companies in Malaysia. The interviews aimed to identify the external conditions that inhibit effective knowledge transfer between remotely located teams. The most commonly cited conditions were physical distance between teams, differences in team capabilities and experiences, and a lack of time. The study takes a perspective of looking at these conditions not just as barriers, but also as hidden opportunities to improve team capabilities through knowledge transfer.
This document summarizes a student project from the IETI "Simona Duque" in Marinilla, Colombia. The project aims to investigate how climate change has influenced emerging crop pests and to implement natural agricultural methods to combat these pests. The project will identify common crop pests, test natural pest control methods, and conduct field trips to observe pest damage. If successful, the project could benefit farmers through higher crop yields and quality while protecting the environment. The project is scheduled to take 5 months and involve teachers and institutions like SENA.
One XP Experience: Introducing Agile (XP) Software Development into a Culture...David Leip
The document discusses introducing agile (XP) software development practices into a large corporate environment that traditionally used waterfall methodologies. It describes training the multidisciplinary team, which includes programmers, information architects, visual designers, and others. While the developers were willing to try XP, integrating it posed challenges due to the diverse skills, distributed teams, and need for close collaboration. The initial experience found it difficult to identify a clear "customer" representative, and some XP practices like test-first development did not transfer naturally to all disciplines. Overall, the experience highlighted interactions between organizational culture, agile methodology, and the need for changes on both fronts to fully realize the benefits of an agile approach.
An Exploratory Study of Usability Practice from User-Centered Design View: M...Ruby Kuo
The document summarizes an exploratory study on usability practice from a user-centered design perspective in Taiwan's internet industry. Through in-depth interviews with 14 professionals, the study found:
1) Usability knowledge and skills were generally lacking, with most learning through experience rather than formal training.
2) Design methods were typically linear rather than iterative as recommended by user-centered design. Deadlines often took priority over usability.
3) While usability testing and prototyping were acknowledged as helpful, they were seldom used due to schedule and budget constraints. Users tended to be involved primarily to satisfy business goals rather than design goals.
Timothy Howarth is an experienced senior project architect and team manager with over 20 years of experience in architecture. He has expertise in hospitality, healthcare, corporate, and science/technology building projects both domestically and internationally. He is skilled in all phases of design and construction project management.
The document discusses applying collaborative technologies to software development. It outlines the contents, which include introducing collaboration, discussing problems with non-collaborative work, and describing the proposed collaborative application's attributes and capabilities. The document aims to design an architecture that enables easy collaboration between distributed software engineers to reduce costs and improve productivity.
John Fouts has over 10 years of experience in user experience design, managing large projects with teams of 20+ people. He currently works as the Director of Experience Design at Kaneva, a social networking company, where he oversees user interface design, animation, and 3D art direction. Previously he held roles at IQ Interactive as Vice President of Operations and Lead Information Architect.
The document discusses the various roles and responsibilities of a software developer. It outlines the contribution possibilities for developers, such as providing optimal solutions, clarifying requirements gaps, contributing to solution architecture, and creating reusable code assets. It also describes capacity development possibilities, like learning new technologies, contributing to communities of practice, gaining exposure to processes, and developing time management skills. Finally, it maps out several career pathways for developers, including project management, technical leadership, quality assurance, business analysis, and entrepreneurship. The key takeaway is that software developers have many avenues for professional growth beyond just writing code.
This 3-page project report summarizes a design project for a social networking service called SoSoCo targeted towards the elderly population in Hong Kong. The project was sponsored by ASTRI and conducted by a team of 3 students from Hong Kong Polytechnic University. The report describes background research conducted including field observations, interviews and a card sorting exercise to understand the needs of elderly users. It then outlines the design process including developing interaction models, scenarios and prototypes to explore a composable computing approach. The final section reflects on the project outcomes.
This chapter discusses strategic planning for end-user information systems (EUIS) and innovation. It emphasizes that effective use of EUIS must be carefully planned and managed. Two models that describe how technological innovations are adopted by organizations are presented. The chapter also discusses how technology can be used to restructure business processes and gain competitive advantage. Finally, it provides guidelines for developing an EUIS strategic plan and explains why strategic planning is important for achieving widespread benefits from new technologies.
This document provides an overview of a final year project to develop a social networking website called FriendBook. It includes an introduction describing the purpose and functionality of the system. The document then covers various aspects of developing the project such as conducting a feasibility study, literature review on social networking concepts, research methods used, analysis and design of the system, implementation details, testing procedures, and a critical evaluation of the project. Diagrams are provided to illustrate the system design including use cases, activity diagrams, sequence diagrams, class diagrams, and database design. The project aims to combine useful features from various social networking sites and provide additional capabilities not currently available.
This document outlines a project proposal to design and build an ergonomic hydraulic chair. The proposal is presented in 5 phases: 1) background research on chair design and ergonomics, 2) formulating the project goals and design, 3) conducting user surveys and market research, 4) analyzing the data to design and build a prototype, 5) presenting and evaluating the final project. If funded, the project would be carried out by students over 3 months to address issues with traditional chair designs and create a comfortable option for disabled users.
This document provides information about a 5-day training seminar on project management titled "Project Management for Results". The seminar will be held from October 4-8, 2010 in Arlington, VA and offers 35 PDUs and 30 CPE credits. Over the 5 days, participants will learn about project initiation, planning, execution, closing, tracking projects, using earned value management tools, understanding the project life cycle, developing a work breakdown structure, and other project management skills and methodologies according to the PMBOK. The seminar is aimed at project managers, program managers, procurement managers, IT specialists, and others involved in project management. Attending the seminar will help professionals bring projects from initiation to execution,
Embrace Project Report: Hospital Project for Ethnic MinorityJackson Choi
The document summarizes research conducted on improving medical experiences for ethnic minority patients at Pok Oi Hospital. It found that language barriers, cultural differences, and lack of understanding of the healthcare system caused stress, frustration and a sense of discrimination for these patients. Current solutions provided interpreters and educational materials, but communication issues persisted. The project aims to design solutions that overcome language barriers and effectively convey healthcare information to ethnic minority patients.
This document discusses lessons that can be learned from open source software projects and applied to commercial software development. It summarizes that open source projects typically have:
1) Core teams of 15 or fewer people who contribute the majority of code changes and enhancements.
2) Extensive informal communication between developers, through mailing lists and chat sites, which aids coordination.
3) Improved customer support due to many users providing help and feedback.
The document recommends commercial projects emulate open source practices like increasing interaction between developers, whether co-located or distributed, and between developers and users.
Personal dashboards for individual learning and project awareness in social s...Wolfgang Reinhardt
The document discusses the concept and implementation of personal dashboards within the eCopSoft collaborative development environment. It aims to enhance awareness, learning, and coordination for developers working on multiple projects. There are three types of dashboards proposed: 1) a community dashboard, 2) a project dashboard, and 3) a my-eCopSoft dashboard for individual users. The dashboards will combine and display data from different eCopSoft tools and projects through customizable "pods". This will provide developers with an integrated view of their work across multiple teams and contexts.
Analysis of the coverage of sustainability aspects in the pmbokGilbert Silvius
The summary analyzes how the Project Management Body of Knowledge (PMBOK) Guide version 4 addresses sustainability aspects in key areas of project management. It finds that while some economic benefits are mentioned, there is a lack of explicit recognition of social and environmental impacts, stakeholders, success criteria, and risks. It also notes few considerations for sustainable procurement, reporting, team management, and organizational learning. Overall, it concludes the PMBOK Guide fails to fully integrate sustainability perspectives across the various aspects of project management covered.
KnowBench is a knowledge management system integrated into the Eclipse IDE that aims to support software developers during the development process. It does this by capturing knowledge and experience generated during development and facilitating reuse of this knowledge. KnowBench uses ontologies and semantic web technologies to semantically annotate and link different types of knowledge artifacts, like source code, documentation, and tool data. This enables developers to efficiently search for and reuse relevant knowledge to help solve problems and improve software quality.
Managing knowledge, both explicit (objective) and tacit (personal), is the key to software development. In Agile projects, management is facilitated by cross-functional, rather than role-based, teams, and daily Scrum meetings, retrospectives, pair programming and rotation and release iteration.
The document summarizes a presentation on software process methodology and findings from related research. It discusses common misconceptions about software processes, questions about process and practice, and the research methodology used. The methodology included questionnaires, user stories, and a Plus/Minus/Interesting analysis of project management practices. Key findings included a need for improved estimation, scheduling, and risk tracking. Salient suggestions for success focused on life cycle selection, estimation, monitoring, measurement, knowledge sharing, and ensuring domain expertise. The overall goal was to identify basic process improvements that could help small to medium organizations.
The document provides an agenda for a two-day conference organized by the Project Management Institute Pearl City Chapter (PMIPCC). Day 1 focuses on the inaugural ceremony and includes addresses on the importance of project management, the chapter's history, and strategies for advancing the field. Day 2 covers challenges in large projects, the role of project management in socioeconomic development, lessons from challenging projects, and the evolution of Program Management Offices. The agenda outlines 10 sessions over the two days addressing topics across multiple industries with speakers from academia, government, and the private sector. PMI credential holders can earn PDUs for attending.
This document discusses human factors and ergonomics in software, hardware, and workplace design. It covers types of software interfaces like command-based, menu-based, and icon-based interfaces. It also discusses principles of user interface design, screen layout, and performance support systems. For hardware, it examines monitor, keyboard and mouse design. It analyzes workplace design including office layout models, workstation design, and behavioral concerns like territoriality and socialization. The goal is to apply knowledge of human physical and cognitive abilities to optimize people's interaction with technology and their work environment.
This document discusses the potentials and challenges of recommendation systems for software engineering. It covers:
1. There is a large need for recommendation systems to address the main challenges in software projects, such as daily changes, information overload, distributed development, and high competition.
2. Some initial research systems have shown promising early results but have limitations in the types of scenarios and contexts they support.
3. Future recommendation systems should support both knowledge consumers and providers during development and collaboration tasks.
4. Major research challenges include better modeling, representing, contextualizing and sharing knowledge in software engineering projects.
This 3-day training event focuses on project management for results using proven methodologies. Over the course of the training, participants will:
1) Learn the latest project management methodologies according to PMBOK including initiation, planning, execution, and closing projects.
2) Master key project management skills like stakeholder engagement, requirements definition, scheduling, budgeting, and performance measurement.
3) Earn 35 PDUs and 30 CPE credits upon completion.
The training is intended for project managers, program managers, procurement staff, and others seeking to improve their project delivery skills and prepare for PMP certification. Attendees will learn techniques to define projects, develop schedules and budgets, measure
Easy Bites: Lean Start-Up in Developing CountriesOliver Koch
Easy Bites is an internet startup that provides location-based food delivery services to the local Kurdish community. It follows lean and agile principles, with a build-measure-learn orientation and focus on validated learning. The document outlines Easy Bites' agile development approach, mobile aspects, quality assurance processes, and business model details such as key activities, partnerships, customer segments, and revenue streams.
The document discusses the various roles and responsibilities of a software developer. It outlines the contribution possibilities for developers, such as providing optimal solutions, clarifying requirements gaps, contributing to solution architecture, and creating reusable code assets. It also describes capacity development possibilities, like learning new technologies, contributing to communities of practice, gaining exposure to processes, and developing time management skills. Finally, it maps out several career pathways for developers, including project management, technical leadership, quality assurance, business analysis, and entrepreneurship. The key takeaway is that software developers have many avenues for professional growth beyond just writing code.
This 3-page project report summarizes a design project for a social networking service called SoSoCo targeted towards the elderly population in Hong Kong. The project was sponsored by ASTRI and conducted by a team of 3 students from Hong Kong Polytechnic University. The report describes background research conducted including field observations, interviews and a card sorting exercise to understand the needs of elderly users. It then outlines the design process including developing interaction models, scenarios and prototypes to explore a composable computing approach. The final section reflects on the project outcomes.
This chapter discusses strategic planning for end-user information systems (EUIS) and innovation. It emphasizes that effective use of EUIS must be carefully planned and managed. Two models that describe how technological innovations are adopted by organizations are presented. The chapter also discusses how technology can be used to restructure business processes and gain competitive advantage. Finally, it provides guidelines for developing an EUIS strategic plan and explains why strategic planning is important for achieving widespread benefits from new technologies.
This document provides an overview of a final year project to develop a social networking website called FriendBook. It includes an introduction describing the purpose and functionality of the system. The document then covers various aspects of developing the project such as conducting a feasibility study, literature review on social networking concepts, research methods used, analysis and design of the system, implementation details, testing procedures, and a critical evaluation of the project. Diagrams are provided to illustrate the system design including use cases, activity diagrams, sequence diagrams, class diagrams, and database design. The project aims to combine useful features from various social networking sites and provide additional capabilities not currently available.
This document outlines a project proposal to design and build an ergonomic hydraulic chair. The proposal is presented in 5 phases: 1) background research on chair design and ergonomics, 2) formulating the project goals and design, 3) conducting user surveys and market research, 4) analyzing the data to design and build a prototype, 5) presenting and evaluating the final project. If funded, the project would be carried out by students over 3 months to address issues with traditional chair designs and create a comfortable option for disabled users.
This document provides information about a 5-day training seminar on project management titled "Project Management for Results". The seminar will be held from October 4-8, 2010 in Arlington, VA and offers 35 PDUs and 30 CPE credits. Over the 5 days, participants will learn about project initiation, planning, execution, closing, tracking projects, using earned value management tools, understanding the project life cycle, developing a work breakdown structure, and other project management skills and methodologies according to the PMBOK. The seminar is aimed at project managers, program managers, procurement managers, IT specialists, and others involved in project management. Attending the seminar will help professionals bring projects from initiation to execution,
Embrace Project Report: Hospital Project for Ethnic MinorityJackson Choi
The document summarizes research conducted on improving medical experiences for ethnic minority patients at Pok Oi Hospital. It found that language barriers, cultural differences, and lack of understanding of the healthcare system caused stress, frustration and a sense of discrimination for these patients. Current solutions provided interpreters and educational materials, but communication issues persisted. The project aims to design solutions that overcome language barriers and effectively convey healthcare information to ethnic minority patients.
This document discusses lessons that can be learned from open source software projects and applied to commercial software development. It summarizes that open source projects typically have:
1) Core teams of 15 or fewer people who contribute the majority of code changes and enhancements.
2) Extensive informal communication between developers, through mailing lists and chat sites, which aids coordination.
3) Improved customer support due to many users providing help and feedback.
The document recommends commercial projects emulate open source practices like increasing interaction between developers, whether co-located or distributed, and between developers and users.
Personal dashboards for individual learning and project awareness in social s...Wolfgang Reinhardt
The document discusses the concept and implementation of personal dashboards within the eCopSoft collaborative development environment. It aims to enhance awareness, learning, and coordination for developers working on multiple projects. There are three types of dashboards proposed: 1) a community dashboard, 2) a project dashboard, and 3) a my-eCopSoft dashboard for individual users. The dashboards will combine and display data from different eCopSoft tools and projects through customizable "pods". This will provide developers with an integrated view of their work across multiple teams and contexts.
Analysis of the coverage of sustainability aspects in the pmbokGilbert Silvius
The summary analyzes how the Project Management Body of Knowledge (PMBOK) Guide version 4 addresses sustainability aspects in key areas of project management. It finds that while some economic benefits are mentioned, there is a lack of explicit recognition of social and environmental impacts, stakeholders, success criteria, and risks. It also notes few considerations for sustainable procurement, reporting, team management, and organizational learning. Overall, it concludes the PMBOK Guide fails to fully integrate sustainability perspectives across the various aspects of project management covered.
KnowBench is a knowledge management system integrated into the Eclipse IDE that aims to support software developers during the development process. It does this by capturing knowledge and experience generated during development and facilitating reuse of this knowledge. KnowBench uses ontologies and semantic web technologies to semantically annotate and link different types of knowledge artifacts, like source code, documentation, and tool data. This enables developers to efficiently search for and reuse relevant knowledge to help solve problems and improve software quality.
Managing knowledge, both explicit (objective) and tacit (personal), is the key to software development. In Agile projects, management is facilitated by cross-functional, rather than role-based, teams, and daily Scrum meetings, retrospectives, pair programming and rotation and release iteration.
The document summarizes a presentation on software process methodology and findings from related research. It discusses common misconceptions about software processes, questions about process and practice, and the research methodology used. The methodology included questionnaires, user stories, and a Plus/Minus/Interesting analysis of project management practices. Key findings included a need for improved estimation, scheduling, and risk tracking. Salient suggestions for success focused on life cycle selection, estimation, monitoring, measurement, knowledge sharing, and ensuring domain expertise. The overall goal was to identify basic process improvements that could help small to medium organizations.
The document provides an agenda for a two-day conference organized by the Project Management Institute Pearl City Chapter (PMIPCC). Day 1 focuses on the inaugural ceremony and includes addresses on the importance of project management, the chapter's history, and strategies for advancing the field. Day 2 covers challenges in large projects, the role of project management in socioeconomic development, lessons from challenging projects, and the evolution of Program Management Offices. The agenda outlines 10 sessions over the two days addressing topics across multiple industries with speakers from academia, government, and the private sector. PMI credential holders can earn PDUs for attending.
This document discusses human factors and ergonomics in software, hardware, and workplace design. It covers types of software interfaces like command-based, menu-based, and icon-based interfaces. It also discusses principles of user interface design, screen layout, and performance support systems. For hardware, it examines monitor, keyboard and mouse design. It analyzes workplace design including office layout models, workstation design, and behavioral concerns like territoriality and socialization. The goal is to apply knowledge of human physical and cognitive abilities to optimize people's interaction with technology and their work environment.
This document discusses the potentials and challenges of recommendation systems for software engineering. It covers:
1. There is a large need for recommendation systems to address the main challenges in software projects, such as daily changes, information overload, distributed development, and high competition.
2. Some initial research systems have shown promising early results but have limitations in the types of scenarios and contexts they support.
3. Future recommendation systems should support both knowledge consumers and providers during development and collaboration tasks.
4. Major research challenges include better modeling, representing, contextualizing and sharing knowledge in software engineering projects.
This 3-day training event focuses on project management for results using proven methodologies. Over the course of the training, participants will:
1) Learn the latest project management methodologies according to PMBOK including initiation, planning, execution, and closing projects.
2) Master key project management skills like stakeholder engagement, requirements definition, scheduling, budgeting, and performance measurement.
3) Earn 35 PDUs and 30 CPE credits upon completion.
The training is intended for project managers, program managers, procurement staff, and others seeking to improve their project delivery skills and prepare for PMP certification. Attendees will learn techniques to define projects, develop schedules and budgets, measure
Easy Bites: Lean Start-Up in Developing CountriesOliver Koch
Easy Bites is an internet startup that provides location-based food delivery services to the local Kurdish community. It follows lean and agile principles, with a build-measure-learn orientation and focus on validated learning. The document outlines Easy Bites' agile development approach, mobile aspects, quality assurance processes, and business model details such as key activities, partnerships, customer segments, and revenue streams.
The document discusses India's growing internet usage. It notes that India ranks 3rd in terms of number of internet users, with 120 million users in 2012 growing to an estimated 300 million by 2015. 70 million Indians currently access the internet via mobile devices. The document outlines Google's mission to expand internet access in India by making it more accessible, relevant and sustainable. It discusses how internet and mobile usage has grown exponentially in India in recent years.
Este documento contiene las notas de una clase de español. La clase incluyó actividades interactivas para identificar diferentes tipos de tiendas y productos que se pueden comprar en ellas. Los estudiantes aprendieron cómo decir y entender diferentes tipos de tiendas y productos en español, y cómo describir sus compras normales y comparar sus compras actuales con las del pasado.
The document discusses principles for effective grading and reporting of student progress. It emphasizes that grading should provide clarity, reflect growth over time, and recognize performance above expectations. Grades should be based on specific skills and content rather than comparisons to peers. The reporting system uses ratings of "still emerging," "meeting," and "exceeding" expectations rather than numbers. Family conferences involve students sharing work with families to discuss strengths and challenges. The goal is a holistic understanding of the student's learning experience.
This document summarizes the tasks completed for a 3D modeling unit. It outlines creating a project charter, light bot model, schedule, production log, mood board with images of robotic sidekicks, design pack describing a character's personality and skills, drawings of the character from multiple angles to aid the 3D design, and finally using modeling software to create the 3D character. The summary concludes that while some parts were difficult, the final 3D character design was successful overall.
The document provides a review of BD|ER '13 with sections on what worked well, what didn't work well, NEP and AR, local support groups, and plans for improvement. Some key highlights include the story teller, new structure, and culture working well while P Box and member retention faced challenges. Goals include raising funds through alumni interaction, support groups, and external opportunities to achieve a 20 lakh target.
The document outlines the vision, mission, achievements and areas for improvement for the Internal Management (IM) department of AIESEC Hyderabad. The vision is to develop global leaders through communication and co-creation. The mission is to make AIESEC Hyderabad process-oriented rather than people-oriented and focus on members' integrated development experiences. Key achievements included establishing the first IM department, an IM policy, newsletters. Areas for improvement included increasing synergy, consistent work culture and IM awareness.
The document discusses several key limitations of 3D graphics including polygon count, file size, and rendering times. A high polygon count means more complex geometry but results in larger file sizes that require more processing power. Rendering is the process of generating an image from a 3D model by using a rendering program and graphics processing unit. Real-time rendering is needed for interactivity in video games and aims for 15-30 frames per second, while non-real time rendering can take much longer but enables higher image quality for animated films and videos.
This document discusses lateral thinking and provides examples of how it can be applied. Lateral thinking involves thinking creatively and unconventionally to solve problems by viewing them from different perspectives. It gives examples of how Einstein, Da Vinci, and Archimedes used lateral thinking to make breakthrough discoveries. The document encourages asking open-ended what-if questions to stimulate lateral thinking and explains that lateral thinking is important for advancing fields like science and medicine through creativity and new ideas.
The document provides vocabulary for discussing meals, foods, drinks, and dining experiences in Spanish. It lists foods and beverages that are commonly eaten for breakfast, lunch, tea, and dinner. It also includes questions about meal times, ordering and paying at restaurants, and discussing recent meals. Numbers from 1 to 1000 are presented. Tips for finding the right word when using a dictionary are given to avoid mistakes between similar words.
Milkround+ allows users to save job searches with customized filters for industry, location, salary and other criteria. Saved searches can then be quickly accessed from any page when logged into a Milkround+ account. Users define their search filters, name the search, and click "Save my search" to store it for future easy access directly from their account status bar without needing to re-enter search criteria.
Quarto incontro del Progetto TAG in provincia di Arezzo: una guida ad un uso consapevole di Facebook e Twitter.
Privacy, impostazioni, termini e buoni consigli per utilizzare al meglio i social network.
http://grechi.it
This document contains summaries of different SONA presentations. It includes statistics on internship placements and projections for various AIESEC locations in India. Inferences are drawn about growth trends, contributions to national targets, and factors affecting performance like capitalization of alumni networks, sales and delivery management, and sustainability of talent and finances. The document emphasizes drawing inferences from statistics and learning from the detailed SONA reports.
Este documento presenta los objetivos de una lección sobre dietas saludables. Los objetivos incluyen comprender cuándo alguien tiene una dieta saludable o no saludable, describir los hábitos alimenticios propios y ser capaz de hacer resoluciones para tener una dieta saludable. El documento también incluye actividades como completar frases sobre frecuencia alimenticia, escuchar respuestas sobre una prueba de dieta saludable y describir la propia dieta.
This document provides information on several summer promotion tour packages in Vietnam between May 1st and September 30th, 2013.
The first package is a 3 day, 2 night tour of Ho Chi Minh City for $121 per person. It includes accommodation, meals, transportation and sightseeing activities in and around Ho Chi Minh City.
The second package is a 4 day, 3 night tour of Ho Chi Minh City and the Mekong Delta for $214 per person. It includes accommodation, meals, transportation and sightseeing in both Ho Chi Minh City and the Mekong Delta region.
The third and most comprehensive package is a 7 day, 6 night "Best of Vietnam" tour for
Do the Software Architects get the Needed Support for the job They Perform?Kresimir Popovic
In this paper, we report on two year case study
research in a software development organization which
includes more than 20 architects of different social profile,
knowledge and time zone locations. During that time, we built
up understanding on how to support software architects in
knowledge codification (converting human expertise to
organized, categorized, indexed, easily accessible knowledge in
a knowledge base form available for the organizational
members). By following an action research cycle, we first
diagnosed the architecting process of this organization and
proposed solutions for identified problems. The revelations
gained over the past two years have resulted in creation of a
theoretical instruction framework of what software architects
do and what support they need.
The document discusses important concepts for effective software project management including focusing on people, product, process, and project. It emphasizes that defining project scope and establishing clear objectives at the beginning of a project are critical first steps. Finally, it outlines factors for selecting an appropriate software development process model and adapting it to the specific project.
It is impossible to separate the human factors from software engineering expertise during
software development, because software is developed by people and for people. The intangible
nature of software has made it a difficult product to successfully create, and an examination of
the many reasons for major software system failures show that the reasons for failures
eventually come down to human issues. Software developers, immersed as they are in the
technological aspect of the product, can quickly learn lessons from technological failures and
readily come up with solutions to avoid them in the future, yet they do not learn lessons from
human aspects in software engineering. Dealing with human errors is much more difficult for
developers and often this aspect is overlooked in the evaluation process as developers move on
to issues that they are more comfortable solving. A major reason for this oversight is that
software psychology (the softer side) has not developed as extensively
This document discusses tools and techniques for managing projects that encounter problems and become "red" or off-track. It provides two case studies of implementing Oracle ERP projects and discusses lessons learned. The objectives are to familiarize audiences with readily available tools to get projects back on schedule, such as enhanced communication, examining the "triple constraints," breaking projects into smaller phases, and reanalyzing and mitigating risks. Keywords include risk identification/mitigation and early warning signs of project issues.
Using Evolutionary Prototypes To Formalize Product RequirementsArnold Rudorfer
Boundary objects are artifacts that facilitate
communication and interaction between people or groups
functioning in different domains. Software engineers, user
interface designers and usability specialists have different
domain knowledge, different terminologies, and shared
terms with different, distinct meanings. Boundary objects
can help assist the process of designing software by
providing a common interface for communication between
professionals in different domains. The Software
Engineering department and User Interface Design Center
at Siemens Corporate Research used an evolutionary
prototype as a boundary object to help elicit product
requirements from their client, Siemens Medical Solutions.
This enhanced communication with the client and between
groups at SCR. This paper describes how the evolutionary
prototype functioned as a boundary object and how it
allowed software engineering processes and humancomputer
interaction methods to proceed concurrently
without the need for well-defined interaction points.
Paper presented at EDUCON 2012 (April), talking about an experience of using social network, web2.0, microblogging and virtual worlds in the teaching of programming techniques.
Social networks, microblogging, virtual worlds, and Web 2.0 in the teaching o...Gonçalo Cruz Matos
This document describes a trial conducted to incorporate social networks, microblogging, and virtual worlds into the teaching of programming techniques for software engineering. Students were assigned a course project requiring them to engage with online programming communities. The goal was for students to find motivation from interacting with expert programmers and having to thoroughly explain their solutions. Key aspects of the trial included assigning identically structured but differently instantiated problems to groups, using a wiki for collaboration, and providing non-programming examples to guide students. Results showed that while most groups engaged only briefly, a few were able to sustain involvement throughout the project phases by contributing regularly to the wiki.
This training document provides an overview of a 5-day training on essentials of e-government ICT project management. The training aims to improve leadership, management, and technical practices for ICT project performance, methodology, planning, implementation, control, and evaluation. It covers topics such as project management competencies, standards, methodology, analytical tools, and technology support. The schedule outlines presentations, walkthroughs, activities and demonstrations across each of the 5 days on these subjects.
This document outlines guidelines for computer engineering thesis projects at a university. It provides objectives for thesis projects, including applying skills and theories learned in class and developing communication skills. It also describes acceptable topics like security, automation, and infrastructure design. Basic and applied research projects are defined, and requirements like a concept paper and alignment with research thrusts are explained.
The document discusses concepts related to software project scheduling, including:
- Software project scheduling involves distributing estimated effort across the planned project duration by allocating effort to specific tasks.
- There are two perspectives on software scheduling - either working within a prescribed end date or setting the end date based on the software team's estimates.
- Basic principles of software scheduling include compartmentalizing tasks, determining dependencies, allocating time estimates, validating effort, and defining responsibilities, outcomes, and milestones.
- Tracking project schedules involves comparing actual progress to planned schedules through status meetings, reviews, and milestone completions.
User Centred Requirements Processes in MATURE: The Big PictureAndreas Schmidt
Presentation at the MATURE Workshop on User Centred Requirements Processes for E-Learning and Knowledge Management – A European-Wide Perspective, London, July 2009
The document discusses the need for a new model of software development based on creative collaboration rather than traditional outsourcing. It outlines the characteristics of high-performance teams, including talent, commitment to mastery, autonomy, and a shared vision. These principles have helped Ci&T transform from an outsourcing provider to a "partner player" that delivers innovative solutions through a culture of engagement, entrepreneurial spirit, and Lean thinking.
Crafting Infrastructures. Requirements, scenarios and evaluation in the SPICE...Luca Galli
This document discusses user-centered design (UCD) methods for evaluating infrastructure technologies in large, collaborative research and development projects. It first reviews challenges of applying UCD in these contexts, such as the indirect interaction with end-users and complex multi-organizational dynamics. It then describes how the SPICE project developed scenarios, requirements, and conducted focus group evaluations for its infrastructure platform. Key activities included detailed requirements analysis, iterative development of use cases and scenarios informed by architectural and business/legal work, and two rounds of focus groups to evaluate designs at the beginning and end of the project. The document concludes by reflecting on lessons for applying craft-inspired collaborative styles of UCD work to infrastructure evaluation.
This document discusses the importance for a project manager to have expertise in the subject area of the project they are managing. It argues that subject area expertise allows the project manager to (1) most effectively utilize resources, (2) adapt to problems and constraints, and (3) communicate current and future issues with credibility to stakeholders. It provides an example of how a lack of subject expertise can lead to poor decisions and potentially dangerous outcomes. In conclusion, the document states that subject area knowledge is highly important for project managers, especially in technical fields, to successfully complete projects.
This document discusses scheduling, monitoring, and controlling software projects. It covers defining project activities and estimating their durations, identifying dependencies between activities, and sequencing activities. It also discusses iterative project scheduling, defining what "done" means for tasks, using milestones and control points, collecting progress information, and the importance of measurement for monitoring projects. The overall focus is on planning projects, tracking progress against the plan, and taking corrective actions when needed.
Knowledge management systems life cycleRaymond Koh
1) The document discusses the differences between conventional system life cycles and knowledge management system (KMS) life cycles.
2) It outlines the steps in a KMS life cycle including evaluating existing infrastructure, capturing knowledge, designing a blueprint, testing and implementing the system.
3) Key aspects of building a successful KMS include forming a knowledgeable team, gaining support from experts, and using a knowledge developer to architect the system and facilitate knowledge capture and transfer.
Maliheh (Mali) Izadi, PhD, Andrea Di Sorbo, and Sebastiano Panichella co-chaired the 3rd Intl. Workshop on NL-based Software Engineering
April 20 2024, Lisbon, Portugal.
Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...Sebastiano Panichella
Timo Blattner, Christian Birchler, Timo Kehrer, Sebastiano Panichella: Diversity-guided Search Exploration for Self-driving Cars Test Generation through Frenet Space Encoding. Intl. Workshop on Search-Based and Fuzz Testing (SBFT). 2024
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSebastiano Panichella
Nicolas Erni, Al-Ameen, Mohammed, Christian Birchler, Pouria Derakhshanfar, Stephan Lukasczyk, Sebastiano Panichella: SBFT Tool Competition 2024 -- Python Test Case Generation Track 17th International Workshop on Search-Based and Fuzz Testing
SBFT Tool Competition 2024 - CPS-UAV Test Case Generation TrackSebastiano Panichella
Sajad Khatiri, Prasun Saurabh, Timothy Zimmermann, Charith Munasinghe, Christian Birchler, Sebastiano Panichella: SBFT Tool Competition 2024 - CPS-UAV Test Case Generation Track 17th International Workshop on Search-Based and Fuzz Testing
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSebastiano Panichella
Sajad Khatiri, Sebastiano Panichella, Paolo Tonella: Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist. International Conference on Software Engineering. 2024
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective ...Sebastiano Panichella
Lecture entitled "Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective Test Generation and Selection" at the International Summer School
on Search- and Machine Learning-based Software Engineering
June 22-24, 2022 - Córdoba, Spain
Sebastiano Panichella and Christian Birchler
COSMOS:
DevOps for Complex Cyber-physical Systems
Sebastiano Panichella
Zurich University of Applied Sciences (ZHAW)
Workshop on Adaptive CPSoS (WASOS) 2023
Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...Sebastiano Panichella
Keynote presentation </b>at ICST (AIST workshop) entitled "Testing and Development Challenges for Complex Cyber-Physical Systems: Insights from the COSMOS H2020 Project"
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...Sebastiano Panichella
Presentation at 16th IEEE International Conference on Software
Testing, Verification and Validation (ICST): An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical Systems. Journal of Systems & Software (JSS).
Automated Identification and Qualitative Characterization of Safety Concerns ...Sebastiano Panichella
Presentation at the IEEE/ACM International Conference on
Automated Software Engineering (ASE 2023):
“Automated Identification and Qualitative Characterization of Safety Concerns
Reported in UAV Software Platforms” -
Transactions on Software Engineering and Methodology
This document provides information about the NL-based Software Engineering (NLBSE) '23 workshop to be held on May 20th, 2023. The workshop will have two keynote speakers, two paper presentation sessions, a tool competition, and will be held in a hybrid format with both in-person and remote participation. It outlines the schedule, participating speakers and chairs, instructions for remote participants, and plans for recording and publishing the workshop proceedings.
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...Sebastiano Panichella
This document proposes a method called SURREALIST to generate realistic simulated test cases for unmanned aerial vehicles (UAVs) using real flight logs. It aims to address limitations of field testing such as lack of reproducibility and limited test scenarios. SURREALIST works in two steps: 1) It systematically replicates real flights in simulation by finding optimal drone and environment configurations that minimize differences between real and simulated flight trajectories. 2) It generates new challenging test cases by manipulating drone and environment configurations according to a difficulty measure, such as violating safety distances to obstacles. The approach is evaluated on examples of replicating and modifying an existing flight to evaluate its ability to find bugs. SURREALIST aims to generate tests that can discover non
Exposed! A case study on the vulnerability-proneness of Google Play AppsSebastiano Panichella
This study analyzed the vulnerability levels of 1000 mobile apps from Google Play across 23 categories. The key findings were:
1) Medical apps had significantly fewer vulnerabilities than other categories like Finance and Shopping.
2) An app's vulnerability level did not affect its rating, but apps with more downloads tended to have higher vulnerability levels.
3) Contextual information like app description, metadata, and static code features could predict an app's vulnerability level with over 75% accuracy, with market data providing complementary insights to code analysis. Addressing app security is important as users may not be aware of risks when installing apps.
Search-based Software Testing (SBST) '22
Workshop Co-Chairs:
Giovani Guizzo
UNIVERSITY COLLEGE LONDON, UNITED KINGDOM
Sebastiano Panichella
ZURICH UNIVERSITY OF APPLIED SCIENCE, SWITZERLAND
Competition Co-Chairs:
Alessio Gambi
UNIVERSITY OF PASSAU, GERMANY
Gunel Jahangirova
UNIVERSITÀ DELLA SVIZZERA ITALIANA, SWITZERLAND
Vincenzo Riccio
UNIVERSITÀ DELLA SVIZZERA ITALIANA, SWITZERLAND
Fiorella Zampetti
UNIVERSITY OF SANNIO, ITALY
Website Chair:
Rebecca Moussa
UNIVERSITY COLLEGE LONDON, UNITED KINGDOM
Program Committee:
Nazareno Aguirre, Universidad Nacional de Río Cuarto - CONICET, Argentina
Aldeida Aleti, Monash University, Australia
Giuliano Antoniol, Ecole Polytechnique de Montréal, Canada
Kate Bowers, Oakland University, USA
Jose Campos, University of Washington, USA
Thelma E. Colanzi, State University of Maringá, Brazil
Byron DeVries, Grand Valley State University, USA
Gordon Fraser, University of Passau, Germany
Erik Fredericks, Oakland University, USA
Gregory Gay, Chalmers and the University of Gothenburg, Sweden
Alessandra Gorla, IMDEA Software Institute, Spain
Gregory Kapfhammer, Allegheny College, USA
Yiling Lou, Peking University, China
Mitchell Olsthoorn, Delft University of Technology, Netherlands
Justyna Petke, University College London, UK
Silvia R. Vergilio, Universidade Federal do Paraná, Brazil
Simone do Rocio Senger de Souza, University of São Paulo, Brazil
Thomas Vogel, Humboldt-Universität zu Berlin, Germany
Jie Zhang, University College London, UK
Tool Competition
Introduction
NLP-based approaches and tools have been proposed to improve the efficiency of software engineers, processes, and products, by automatically processing natural language artifacts (issues, emails, commits, etc.).
We believe that the availability of accurate tools is becoming increasingly necessary to improve Software Engineering (SE) processes. One important process is issue management and prioritization where developers have to understand, classify, prioritize, assign, etc. incoming issues reported by end-users and developers.
This year, we are pleased to announce the first edition of the NLBSE’22 tool competition on issue report classification, an important task in issue management and prioritization.
For the competition, we provide a dataset encompassing more than 800k labeled issue reports (as bugs, enhancements, and questions) extracted from real open-source projects. You are invited to leverage this dataset for evaluating your classification approaches and compare the achieved results against a proposed baseline approach (based on FastText).
Competition overview
We created a Colab notebook with detailed information about the competition (provided data, baseline approach, paper submission, paper format, etc.).
If you want to participate, you must:
Train and tune a multi-label multi-class classifier using the provided training set. The classifier should assign one label to an issue.
Evaluate your classifier on the provided test set
Write a paper (4 pages max.) describing:
The architecture and details of the classifier
The procedure used to pre-process the data
The procedure used to tune the classifier on the training set
The results of your classifier on the test set
Additional info.: provide a link to your code/tool with proper documentation on how to run it
Submit the paper by emailing the tool competition organizers (see below)
Submissions will be evaluated and accepted based on correctness and reproducibility, defined by the following criteria:
Clarity and detail of the paper content
Availability of the code/tool, released as open-source
Correct training/tuning/evaluation of your code/tool on the provided data
Clarity of the code documentation
The accepted submissions will be published at the workshop proceedings.
The submissions will be ranked based on the F1 score achieved by the proposed classifiers on the test set, as indicated in the papers.
The submission with the highest F1 score will be the winner of the competition.
How to participate?
Email your paper to Oscar Chaparro (oscarch@wm.edu) and Rafael Kallis (rk@rafaelkallis.com) by the submission deadline.
4. Previous Work
Zhou and Mockus, ICSE 2011
Does the Initial Environment Impact the Future of
Developers?
Low
Minghui Zhou Audris Mockus
School of Electronics Engineering and Computer Avaya Labs Research
Science, Peking University 233 Mt Airy Rd, Basking Ridge, NJ
Key Laboratory of High Confidence Software audris@avaya.com
Technologies, Ministry of Education
Beijing 100871, China
zhmh@pku.edu.cn
ABSTRACT
Software developers need to develop technical and social skills to
be successful in large projects. We model the relative sociality of
a developer as a ratio between the size of her communication net-
work and the number of tasks she participates in. We obtain both
measures from the problem tracking systems. We use her work-
according to an expert developer 1 . One possibility suggested by
a software project manager, is that many developers tend to fo-
cus on the modules they are familiar with, and rarely communicate
outside their narrow circle of colleagues to gain expertise in other
areas. The software engineering literature has investigated the im-
portant role of social and communication aspects in a developer’s
work. They might impact developer productivity (Cataldo et al [2])
sociability
flow peer network to represent her social learning, and the issues
she has worked on to represent her technical learning. Using three and they might affect software quality (Cataldo et al [3]). Further-
open source and three traditional projects we investigate how the more, cognitive scientists have argued that interacting with partners
project environment reflected by the sociality measure at the time is significantly better than learning alone [5]. In other words, the
a developer joins, affects her future participation. We find: a) the developers need both technical and social skills to be capable of
probability that a new developer will become one of long-term and solving critical tasks, though that might present two contradicting
productive developers is highest when the project sociality is low; or at least competing learning goals.
b) times of high sociality are associated with a higher intensity of On the other hand, there may be obstacles for the developers to
new contributors joining the project; c) there are significant dif- achieve socio-technical balance, even when they have a strong mo-
ferences between the social learning trajectories of the developers tivation to cultivate their social and technical trajectories, because
who join in low and in high sociality environments; d) the open the project environment, in particular, the environment at the time
source and commercial projects exhibit different nature in the rela- a developers joins (i.e., the initial environment for the developer),
tionship between developer’s tenure and the project’s environment may have a significant impact on the individual. For example, in
at the time she joins. These findings point out the importance of many offshoring projects, the developers in the offshore location
the initial environment in determining the future of the developers were considered to be incompetent to implement new feature de-
and may lead to better training and learning strategies in software velopment in legacy projects: “I don’t know if people are “climb-
organizations. ing up” (moving from defect fixing to new development) in this
site,” because “initially nobody could get trained by experienced
Categories and Subject Descriptors mentors”, according to an outsourcing manager. Therefore, “the
D.2.8 [Software Engineering]: Metrics—process metrics; D.2.9 offshore team really needs time working with onshore developers
[Software Engineering]: Management—productivity to gain mature practices,” according to the same manager.
General Terms This anecdotal evidence sparked our interest to investigate how
Be/er
the initial environment may impact the developers’ learning trajec-
Measurement, Performance, Human Factors tories, in particular, the achievement of social and technical bal-
Keywords ance. Improving this process may help understand how to increase
Socio-technical balance, initial environment, relative sociality, learn- the number of developers capable of solving critical tasks, to im-
ing trajectory prove the developers’ training, and to facilitate the project’s suc-
cess.
1. INTRODUCTION We have to overcome two challenges to proceed with this inves-
tigation. First, we need to measure the socio-technical balance, sec-
training
The most critical tasks in software projects require “expertise ond, we need to determine how the initial environment affects the
across multiple areas”, however, “there are few staff to choose from” trajectories of developers. In addition to the challenges of measur-
ing the social and technical achievement in general, we also need to
derive these measures from commonly available project data, such
Permission to make digital or hard copies of all or part of this work for as version control system and problem tracking system. Such data
Permission to make digitalisor hard copies of fee provided that copies are
personal or classroom use granted without all or part of this work for are difficult to obtain and even more difficult to interpret. For ex-
personal or classroom use is granted without fee provided and that copies
not made or distributed for profit or commercial advantage that copies are
not made or distributed for profit or commercial advantage and that copies ample, Cataldo et al. [4] compared an MR-induced logical depen-
bear this notice and the full citation on the first page. To copy otherwise, to
bear this notice and the full citation on the first page. To copy otherwise, to dency graph on source code files with a graph induced by instant
republish, to post on servers or to redistribute to lists, requires prior specific
republish, to post on servers or to redistribute to lists, requires prior specific
permission and/or a fee.
permission and/or a fee. 1
ICSE’11,May 21-28 2011, Waikiki, Honolulu , HI, USA
ICSE11, May 21–28, 2011, Waikiki, Honolulu, HI, USA The quotes, including the latter ones, are obtained from the inter-
Copyright 2011 ACM 978-1-4503-0445-0/11/05 ...$10.00
Copyright 2011 ACM 978-1-4503-0445-0/11/05 ...$10.00. views conducted in our former work [20].
271
5. Previous Work
Dagenais et al., ICSE 2010
Moving into a New Software Project Landscape
Barthélémy Dagenais†∗ Harold Ossher‡ , Rachel K. E. Bellamy‡ , Martin P. Robillard† ,
,
Jacqueline P. de Vries‡
School of Computer Science† IBM T.J. Watson Research Center‡
McGill University P.O. Box 704
Montréal, QC, Canada Yorktown Heights, NY 10598
{bart,martin}@cs.mcgill.ca {ossher,rachel,devries}@us.ibm.com
ABSTRACT cess of learning about a project, and how that process unfolds over
When developers join a software development project, they find time. From the perspective of someone helping newcomers set-
themselves in a project landscape, and they must become familiar tle in, the landscape metaphor reveals the need to show them the
with the various landscape features. To better understand the nature commonly-traversed routes, to help them learn to interpret aspects
of project landscapes and the integration process, with a view to im- of the landscape unique to the project, and to introduce them to the
proving the experience of both newcomers and the people responsi- customs of the people who inhabit the landscape. It also suggests
ble for orienting them, we performed a grounded theory study with that if the community wants to be welcoming to newcomers, they
18 newcomers across 18 projects. We identified the main features need to be tolerant of cultural faux-pas, be sensitive to mis-steps
that characterize a project landscape, together with key orientation caused by a newcomer’s lack of understanding, take the time to
aids and obstacles, and we theorize that there are three primary understand why newcomers get lost in their landscape, add readily-
factors that impact the integration experience of newcomers: early interpretable signposts and move them as things change. Such sign-
experimentation, internalizing structures and cultures, and progress posts are especially important at cross-roads—places with choices
validation. where others have tended to get lost. Identifying what counts as a
cross-roads and what characterizes the parts of a project that need
Categories and Subject Descriptors signposts can be aided by studies such as that presented here.
D.2.9 [Software Engineering]: Management Specifically, we were interested in answering three main research
questions: what are the key, prominent features in a project land-
General Terms scape, what orientation obstacles do new team members face, and
Human Factors what orientation aids can be provided? We interviewed 18 develop-
ers and team leaders across 18 projects at IBM during the last year
1. INTRODUCTION to answer these questions.
Software developers working on a project effectively inhabit a Following these interviews, we theorized that there are three
project landscape. They are familiar with its features, such as the main factors that impact how newcomers settle into a project land-
product architecture, the team communication strategies and the de- scape: early experimentation, internalizing structures and cultures,
velopment process, and they know the shortcuts and the commonly- and progress validation. We also identified the landscape features
traveled paths. Newcomers are explorers who must orient them- that newcomers learned while moving into new project landscapes
Mentoring
selves within an unfamiliar landscape. As they gain experience, and we observed how the features facilitated or hindered the new-
they eventually settle in and create their own places within the comers’ integration. When we presented the results of our study to
landscape. Like explorers of the natural landscape, they encounter seven of the participants, they all agreed that the factors accurately
many obstacles, such as culture shock or getting lost without help. represented their experiences as newcomers and that application of
We conducted a qualitative study to better understand what proj- our findings would have eased their integration.
ect landscapes look like and how newcomers explore them. Think- In the past, studies on project integration have been performed
ing of a project as a landscape, and integration of newcomers as with new employees joining their first software development proj-
the process of settling into that landscape, changes what we per- ects [2, 15]. Because these studies were performed with junior and
project
newcomers
ceive to be important and helps us see new ways of aiding new- recently-hired developers, many of the difficulties they encountered
comers. From a newcomer’s perspective, it emphasizes the pro- related to the newness of the corporate culture and the difference
∗ between academic and industrial environments. We were interested
This research was conducted while the author was working at the in understanding specifically the project landscape, independently
IBM T.J. Watson Research Center.
of the circumstances related to the first-time transition of personnel
into an industry environment. To this end, we focused this study
on developers with varying degrees of experience in the field and
highly
desirable
Permission to make digital or hard copies of all or part of this work for within their company who were joining on-going projects in the
personal or classroom use is granted without fee provided that copies are company. We reported preliminary results at a workshop [6].
not made or distributed for profit or commercial advantage and that copies The contributions of this paper include a theory, grounded in em-
bear this notice and the full citation on the first page. To copy otherwise, to pirical data, of how newcomers integrate into a project landscape,
republish, to post on servers or to redistribute to lists, requires prior specific and a characterization of project landscapes as seen by newcomers.
permission and/or a fee.
The landscape features identified are well known; the contribution
ICSE ’10, May 2-8 2010, Cape Town, South Africa
Copyright 2010 ACM 978-1-60558-719-6/10/05 ...$10.00. in this area is the empirical evidence of their impact on integration.
275
6. Characteristics of a Good Mentor
enough
exper;se
about
the
topic
of
interest
for
the
newcomer…
enough
ability
to
help
other
people…
8. Our Contribution
YODA
(Young and newcOmer Developer Assistant)
Approach for Mentors Identification
in Open Source Projects
9. YODA: Two phases
1) Identify Mentors 2) Recommend
in Past Project Mentors
History
What factors can be
used to identify
mentors?
S VN
?
GIT
C VS
10. RQ1: Identifying mentors in past
project history
Similar
problem:
What factors can be used Iden;fying
advisors
in
to identify mentors? academic
collabora;ons
ArnetMiner
(http://arnetminer.org):
popular search engine for
academic
researchers in computer
science
identifies relations between
students and advisors
11. How does ArnetMiner work?
Ranks
pairs
of
researchers
according
to
four
factors:
f1 they
published
many
papers
together
f2 advisor
published
more
than
the
student
f3 advisor
older
than
the
student
f4 student
published
her
first
paper(s)
with
the
advisor
13. Heuristics to identify mentors
F1: Exchanged emails
Is the mentor of
Jim IF Alice
F1
Time When Alice joins
the project
14. Heuristics to identify mentors
F2: overall amount of emails
Is the mentor of
Jim IF Alice
F1
15. Heuristics to identify mentors
F2: overall amount of emails
Is the mentor of F2
Jim IF Alice
F1
F2 >
16. Heuristics to identify mentors
F2: overall amount of emails
Is the mentor of F2
Jim IF Alice
F1
F2 > >
17. Heuristics to identify mentors
F3: age in the project
Is the mentor of
Jim IF Alice
F1
F2 > Time
18. Heuristics to identify mentors
F3: age in the project
Is the mentor of
F3
Jim IF Alice
F1
F2 > Time
F3
19. Heuristics to identify mentors
F4: newcomer “early” emails
Is the mentor of
Jim IF Alice
F1
F2 > Time
F3
F4
-‐
1st
20. Heuristics to identify mentors
F4: newcomer “early” emails
Is the mentor of
Jim IF Alice
F1
F2 > Time First emails by Alice
F3 in the project
F4
-‐
1st
21. Heuristics to identify mentors
F5:
Commits
Is the mentor of
Jim IF Alice
F1
F2 > Time
F3
F4
-‐
1st
22. Heuristics to identify mentors
F5:
Commits
Is the mentor of
F5
Jim IF Alice
F1
F2 > Time When Alice joins
F3 the project
F4
-‐
1st
F5
28. Recommending Mentors
Past
mentors Inspired to the
work on Bug
Triaging by J.
Anvik et al.,
TOSEM 2011
Time
29. Recommending Mentors
Past
mentors Inspired to the
work on Bug
Triaging by J.
Anvik et al.,
TOSEM 2011
Time t0
Alice
30. Recommending Mentors
Past
mentors Inspired to the
work on Bug
Triaging by J.
Anvik et al.,
TOSEM 2011
Time t0
Alice
31. Recommending Mentors
Past
mentors Inspired to the
work on Bug
Triaging by J.
Anvik et al.,
TOSEM 2011
Time t0
Alice
32. Recommending Mentors
Past
mentors Inspired to the
work on Bug
Triaging by J.
Anvik et al.,
TOSEM 2011
Time t0
Alice
33. Recommending Mentors
Past
mentors Inspired to the
work on Bug
Triaging by J.
Anvik et al.,
TOSEM 2011
Time t0
Alice
DICE
SIMILARITY
34. Empirical Study
Goal: analyze data from mailing lists and versioning
systems
Purpose: investigating which factors can be used to
identify mentors
Quality focus: recommend mentors in software
projects
Context: mailing lists and versioning systems of five
software projects:
• Apache, FreeBSD, PostgreSQL, Python and Samba
35. Context
Split into a training set and a test set
Apache FreeBSD PostgreSQL Python Samba
Period
08/2001-03/2002 11/1998-02/2000 10/1998-05/2001 05/2000-05/2001 04/1998-09/2000
(Training set)
Period
04/2002-12/2008 03/2000-10/2008 06/2001-03/2008 06/2001-12/2008 10/2000-12/2008
(Test set)
# of Mentors
(Training set)
19 65 10 28 17
# of
Newcomers 13 33 8 32 33
(Training set)
# of
Newcomers 13 33 7 31 33
(Test set)
36. Research Questions
RQ1 RQ2
How can we To what extent would
identify mentors it be possible to
from the past recommend mentors
history of a to newcomers joining
software project? a software project?
?
37. RQ1: How can we identify mentors from the
past history of a software project?
Pair Score
2.5
2.5
1.5 F1
1.5
F2 >
F3
1.0 F4
-‐
1st
F5
1.0
38. RQ1: How can we identify mentors from the
past history of a software project?
Pair Score
2.5
2.5
Manually
1.5 ✔ validated F1
1.5
F2 >
F3
1.0 F4
-‐
1st
F5
1.0
39. RQ1: How can we identify mentors from
the past history of a software project?
100%#
90%#
Possible
80%#
Configurations
70%#
f1
Precision)
60%#
50%#
F1
40%#
30%# F2 >
20%#
F3
10%#
0%# F4
-‐
1st
18# 19# 20# 21# 22# 23# 24#
Number)of)newcomer0mentor)pairs) F5
40. RQ1: How can we identify mentors from
the past history of a software project?
100%#
90%#
Possible
80%#
Configurations
70%#
f1
+f2+
f3
Precision)
60%#
50%#
F1
40%#
30%# F2 >
20%#
F3
10%#
0%# F4
-‐
1st
18# 19# 20# 21# 22# 23# 24#
Number)of)newcomer0mentor)pairs) F5
41. RQ1: How can we identify mentors from
the past history of a software project?
100%#
90%#
Possible
80%#
Configurations
70%#
f1
+f2+
f4
Precision)
60%#
50%#
F1
40%#
30%# F2 >
20%#
F3
10%#
0%# F4
-‐
1st
18# 19# 20# 21# 22# 23# 24#
Number)of)newcomer0mentor)pairs) F5
42. RQ1: How can we identify mentors from
the past history of a software project?
100%#
90%#
Possible
80%#
Configurations
70%#
f5
Precision)
60%#
50%#
F1
40%#
30%# F2 >
20%#
F3
10%#
0%# F4
-‐
1st
18# 19# 20# 21# 22# 23# 24#
Number)of)newcomer0mentor)pairs) F5 (Baseline)
43. RQ1: How can we identify mentors from
the past history of a software project?
100%# Apache 100%# PostgreSQL
90%# 90%#
80%# 80%#
70%# 70%#
Precision)
Precision)
60%# 60%#
50%# 50%#
40%# 40%#
30%# 30%#
20%# 20%#
10%# 10%#
0%# 0%#
18# 19# 20# 21# 22# 23# 24# 12# 14# 16# 18# 20# 22#
Number)of)newcomer0mentor)pairs) Number)of)newcomer0mentor)pairs)
f1 f1
+f2+
f3 f1
+f2+
f4 f5
(Baseline)
F1 F2 > F3 F4
–
1st
F5
44. RQ1: How can we identify mentors from
the past history of a software project?
100%# Apache 100%# PostgreSQL
90%# 90%#
80%# 80%#
70%# 70%#
Precision)
Precision)
60%# 60%#
50%# 50%#
40%# 40%#
30%# 30%#
20%# 20%#
10%# 10%#
0%# 0%#
18# 19# 20# 21# 22# 23# 24# 12# 14# 16# 18# 20# 22#
Number)of)newcomer0mentor)pairs) Number)of)newcomer0mentor)pairs)
f1 f1
+f2+
f3 f1
+f2+
f4 f5
(Baseline)
F1 F2 > F3 F4
–
1st
F5
45. RQ1: How can we identify mentors from
the past history of a software project?
100%#
90%# Python 100%#
90%#
FreeBSD
80%# 80%#
70%# 70%#
Precision)
Precision)
60%# 60%#
50%# 50%#
40%# 40%#
30%# 30%#
20%# 20%#
10%# 10%#
0%# 0%#
24# 26# 28# 30# 32# 34# 36# 38# 40# 42# 44# 46# 48# 23# 25# 27# 29# 31# 33# 35# 37# 39# 41#
Number)of)newcomer0mentor)pairs) Number)of)newcomer0mentor)pairs)
100%#
90%#
80%#
70%#
Precision)
60%#
50%#
40%#
30%#
20%# Samba
10%#
0%#
30# 32# 34# 36# 38# 40# 42#
Number)of)newcomer0mentor)pairs)
46. RQ1: How can we identify mentors from
the past history of a software project?
100%#
90%# Python 100%#
90%#
FreeBSD
80%# 80%#
70%#
Useful factors for mentor identification 70%#
Precision)
Precision)
60%# 60%#
50%# 50%#
40%# 40%#
30%# 30%#
20%# 20%#
10%# 10%#
F1
0%# 0%#
>
24# 26# 28# 30# 32# 34# 36# 38# 40# 42# 44# 46# 48# 23# 25# 27# 29# 31# 33# 35# 37# 39# 41#
f1
Number)of)newcomer0mentor)pairs) F2
Number)of)newcomer0mentor)pairs)
100%#
0.5*f1
+
0.25*f2
+
0.25*f3
90%# F3
80%#
0.5*f1
+
0.25*f2
+
0.25*f4
70%#
Precision)
60%# F4
-‐
1st
50%#
40%#
30%#
20%# Samba F5
10%#
0%#
30# 32# 34# 36# 38# 40# 42#
Number)of)newcomer0mentor)pairs)
47. RQ2: To what extent would it be possible to
recommend mentors to newcomers joining a
software project?
Top$1$$ Top$2$
110%$
100%$ 100%$
100%$ 94%$
90%$ 85%$
81%$ 82%$
80%$ 77%$
Precision
70%$ 64%$
60%$
50%$
40%$
30%$
30%$ 24%$
20%$
10%$
0%$
Apache$ FreeBSD$ PostgreSQL$ Python$ Samba$
48. RQ2: To what extent would it be possible to
recommend mentors to newcomers joining a
software project?
Top$1$$ Top$2$
110%$
100%$ 100%$
100%$ 94%$
90%$ 85%$
81%$ 82%$
80%$ 77%$
Precision
70%$ 64%$
60%$
50%$
40%$
30%$
30%$ 24%$
20%$
10%$
0%$
Apache$ FreeBSD$ PostgreSQL$ Python$ Samba$
49. RQ2: To what extent would it be possible to
recommend mentors to newcomers joining a
software project?
Top$1$$ Top$2$
110%$
100%$ 100%$
100%$ 94%$
90%$ 85%$
81%$ 82%$
80%$ 77%$
✔
Precision
70%$ 64%$
60%$ YODA makes it possible
50%$
to recommend mentors
40%$
30%$
30%$ 24%$
20%$
10%$
0%$
Apache$ FreeBSD$ PostgreSQL$ Python$ Samba$
60. Perceived importance of mentoring
0%$
Useless#at#all# 0%$
Not#important# 0%$ a
Is very important that
0%$
mentor shares knowledge
with a mentee… 11%$
Neutral# 45%$
56%$
Important# 36%$
33%$
Very#important# 18%$
0%# 10%# 20%# 30%# 40%# 50%# 60%#
Effect#of#mentor# Effect#on#newcomer#
61. What makes a good mentor
Others# 0%$
Project#knowledge# 38%$
Communica4on#skills# 42%$
Experience# 19%$
0%# 20%# 40%# 60%#
62. What makes a good mentor
Others# 0%$
My first mentor
had a very strong and
Project#knowledge#
technical background 38%$
Communica4on#skills# 42%$
Experience# 19%$
0%# 20%# 40%# 60%#