This document introduces cooperation principles in software development. It discusses the evolution of software engineering from isolated teams using centralized tools to distributed organizations employing internet-based tools. Cooperation in software development involves distributed teams collaborating across locations using shared resources and decentralized decision making. Challenges to cooperation include communication, knowledge sharing, coordination, and linguistic issues across different levels from teams to countries. Key areas for cooperation are procedural, modeling, and technological aspects across the software development life cycle from requirements to deployment. Successful cooperation requires open communication, shared tools, and involvement across all software product aspects.
Programmer Productivity Enhancement Through Controlled Natural Language Inputijseajournal
We have created CABERNET, a Controlled Nature Language (CNL) based approach to program creation. CABERNET allows programmers to use a simple outline-based syntax. This allows increased programmer efficiency and syntax flexibility. CNLs have successfully been used for writing requirements documents. We propose taking this approach well beyond this to fully functional programs. Through the use of heuristics and inference to analyze and determine the programmer’s intent we are able to create fully functional mobile applications. The goal is for programs to be aligned with the way that the humans think rather than the way computers process information. Through the use of templates a CABERNET application can be processed to run on multiple run time environments. Because processing of a CABERNET program file results in native application program performance is maintained.
This document contains questions and answers about software engineering topics. It discusses definitions of software engineering, elements of computer-based systems, factors to consider in system modeling, what a system engineering model accomplishes, frameworks, roles of components in software architecture, differences between methods/tools/procedures, stakeholders, real-time systems, distributed systems, software characteristics, categories of software, challenges in software, definitions of software process and activities, work breakdown structures, issues discussed in project closure, process frameworks, generic framework activities, stakeholders, differences between process models, reasons for waterfall model failures, drawbacks of RAD models, disadvantages of classic lifecycles, task regions in spiral models, objectives of win-win spiral models, effectiveness
Modeling a Global Software Development Project as a Complex Socio-Technical S...Ilia Bider
Presentation at the 10th IEEE International Conference on Global Software Engineering (ICGSE 2015)
Pre-proceedings available at:http://bit.ly/1MBpxWY
Any global software development project needs to deal with distances – geographical, cultural, time zone, etc. – between the groups of developers engaged in the project. To successfully manage the risks caused by such distances, there is a need to explicate and present the distances in a form suitable for manual or semi-automatic analysis, the goal of which is to detect potential risks and find ways of mitigating them. The paper presents a technique of modeling a global software development project suitable for such analysis. The project is modeled as a complex socio-technical system that consists of functional components connected with each other through output-input relationships. The components do not coincide with the organizational units of the project and can be distributed through the geographical and organizational landscape of the project. The modeling technique helps to explicate and represent various kinds of distances between the functional components to determine which of them constitute risk factors. The technique was developed during two case studies, of which the second is used for presenting and demonstrating the new modeling technique in the paper.
Ramkrishna U. Pal has over 16 years of experience in new product development from understanding customer needs to manufacturing launch. He specializes in sensor development for applications like accelerometers, gyroscopes, and inertial measurement units. He has led teams of over 50 engineers in developing proof of concepts for IoT and delivering complex sensor projects. Currently he is an Engineering Manager at Honeywell where he is responsible for on-time delivery of new product introduction projects.
The document discusses some of the promises and perils of mining software repositories like Git and GitHub for research purposes. It notes that while these sources contain rich data on software development, there are also challenges to consider. For example, decentralized version control systems like Git allow private collaboration that may be missed. And most GitHub projects are personal and inactive, while it is also used for storage and hosting. The document recommends researchers approach these data sources carefully and provides lessons on how to properly analyze and interpret the data from repositories like Git and GitHub.
This document provides an introduction to software architecture. It discusses how software engineers have long employed architectures without realizing it and how architecture addresses issues identified by researchers. It differentiates between accidental difficulties that have been solved through advances like programming languages and essential difficulties like complexity, conformity, changeability and intangibility that cannot be fully solved. It uses an analogy to building architecture to illustrate key parallels and roles. Examples of the World Wide Web and Unix architectures are provided to demonstrate architecture in action.
This document introduces cooperation principles in software development. It discusses the evolution of software engineering from isolated teams using centralized tools to distributed organizations employing internet-based tools. Cooperation in software development involves distributed teams collaborating across locations using shared resources and decentralized decision making. Challenges to cooperation include communication, knowledge sharing, coordination, and linguistic issues across different levels from teams to countries. Key areas for cooperation are procedural, modeling, and technological aspects across the software development life cycle from requirements to deployment. Successful cooperation requires open communication, shared tools, and involvement across all software product aspects.
Programmer Productivity Enhancement Through Controlled Natural Language Inputijseajournal
We have created CABERNET, a Controlled Nature Language (CNL) based approach to program creation. CABERNET allows programmers to use a simple outline-based syntax. This allows increased programmer efficiency and syntax flexibility. CNLs have successfully been used for writing requirements documents. We propose taking this approach well beyond this to fully functional programs. Through the use of heuristics and inference to analyze and determine the programmer’s intent we are able to create fully functional mobile applications. The goal is for programs to be aligned with the way that the humans think rather than the way computers process information. Through the use of templates a CABERNET application can be processed to run on multiple run time environments. Because processing of a CABERNET program file results in native application program performance is maintained.
This document contains questions and answers about software engineering topics. It discusses definitions of software engineering, elements of computer-based systems, factors to consider in system modeling, what a system engineering model accomplishes, frameworks, roles of components in software architecture, differences between methods/tools/procedures, stakeholders, real-time systems, distributed systems, software characteristics, categories of software, challenges in software, definitions of software process and activities, work breakdown structures, issues discussed in project closure, process frameworks, generic framework activities, stakeholders, differences between process models, reasons for waterfall model failures, drawbacks of RAD models, disadvantages of classic lifecycles, task regions in spiral models, objectives of win-win spiral models, effectiveness
Modeling a Global Software Development Project as a Complex Socio-Technical S...Ilia Bider
Presentation at the 10th IEEE International Conference on Global Software Engineering (ICGSE 2015)
Pre-proceedings available at:http://bit.ly/1MBpxWY
Any global software development project needs to deal with distances – geographical, cultural, time zone, etc. – between the groups of developers engaged in the project. To successfully manage the risks caused by such distances, there is a need to explicate and present the distances in a form suitable for manual or semi-automatic analysis, the goal of which is to detect potential risks and find ways of mitigating them. The paper presents a technique of modeling a global software development project suitable for such analysis. The project is modeled as a complex socio-technical system that consists of functional components connected with each other through output-input relationships. The components do not coincide with the organizational units of the project and can be distributed through the geographical and organizational landscape of the project. The modeling technique helps to explicate and represent various kinds of distances between the functional components to determine which of them constitute risk factors. The technique was developed during two case studies, of which the second is used for presenting and demonstrating the new modeling technique in the paper.
Ramkrishna U. Pal has over 16 years of experience in new product development from understanding customer needs to manufacturing launch. He specializes in sensor development for applications like accelerometers, gyroscopes, and inertial measurement units. He has led teams of over 50 engineers in developing proof of concepts for IoT and delivering complex sensor projects. Currently he is an Engineering Manager at Honeywell where he is responsible for on-time delivery of new product introduction projects.
The document discusses some of the promises and perils of mining software repositories like Git and GitHub for research purposes. It notes that while these sources contain rich data on software development, there are also challenges to consider. For example, decentralized version control systems like Git allow private collaboration that may be missed. And most GitHub projects are personal and inactive, while it is also used for storage and hosting. The document recommends researchers approach these data sources carefully and provides lessons on how to properly analyze and interpret the data from repositories like Git and GitHub.
This document provides an introduction to software architecture. It discusses how software engineers have long employed architectures without realizing it and how architecture addresses issues identified by researchers. It differentiates between accidental difficulties that have been solved through advances like programming languages and essential difficulties like complexity, conformity, changeability and intangibility that cannot be fully solved. It uses an analogy to building architecture to illustrate key parallels and roles. Examples of the World Wide Web and Unix architectures are provided to demonstrate architecture in action.
Brian Wood has over 15 years of experience in user experience design, human-computer interaction, and technical training. He currently works as a Senior User Experience Analyst at the Federal Reserve Bank, where he leads user research, usability testing, and analysis to improve digital products. Previously, he held roles at the Navy and Marine Corps focusing on interface design and human factors engineering. Wood also has experience developing websites, multimedia content, and providing IT support. He is pursuing a Master's degree in Human-Computer Interaction from DePaul University with a 4.0 GPA.
The Executive Master in Project Management with Microsoft (EMPM) is an 18-month, online master's program offered by the Universidad de Valencia that focuses on developing project management skills. The program aims to (1) teach students to manage their time and organize projects; (2) train students to reconstruct projects using international project management standards; and (3) prepare students to obtain professional certifications in project management from organizations like PMI and IPMA. The EMPM program uses a blended learning approach with online courses, collaborative software, and five face-to-face seminars. Upon completing the program, students will earn a master's degree from the Universidad de Valencia and several Microsoft and project management certifications.
The document discusses Project Communications Management as defined in PMBOK 10.0. It includes three key processes: Plan Communications Management, Manage Communications, and Monitor Communications. These processes fall within the Planning, Executing, and Monitoring & Controlling process groups. The document also covers concepts, trends, tailoring considerations, and considerations for agile environments.
Innovation Labs create global interoperability. They are physical spaces that allow for collaboration among private sector, academia and civil society. The labs profiled in this guide allow UNICEF to convene dynamic, new partners around specific local issues—and, importantly, allow the solutions that are created to go to global scale. The lab in Kosovo works with technology created in Prishtina, in Kampala, and elsewhere, and adapts it to the needs of a young, determined population. The lab in Uganda connects academia from the US, Europe, and Kampala, and creates system change at a national scale. The CCORE lab in Zimbabwe takes best practices from the world of operational research and applies them to pressing programmatic issues. These are just the beginning.
This document gives you the information you need to create your own lab. This could be a UNICEF lab—or could simply be a space of creativity that is aimed at solving significant global problems through the application of dedicated local resources.
There is no ego in the concept of a lab. Pioneers like the iHub in Nairobi, INSTEDD in South East Asia, the Global Pulse in Jakarta, and Un Techo para mi Pais in Chile show the demand for methodologies of openness, collaboration, and experimentation.
The document is structured to give a sense of what a lab contains, to provide the specific, operational steps needed to get a lab up and running, to provide a few examples of existing labs, and finally to provide the technical documents (terms of reference, partnership agreements, etc.) that you can adapt for your own use. Most importantly, it is designed to be extended.
This is the first version of this Do-It-Yourself Guide—and we invite you to submit your lab structures, your documents and your knowledge to the project so that future versions can grow, learn, and build. You can submit your input to both innovateforchildren@unicef.org and to the UNICEF Innovation blog at: http://unicefstories.org/submit/
Designing for knowledge maturing: from knowledge driven software to supportin...Andreas Schmidt
Software engineering has been transformed in recent years by understanding the interaction with customers and the target context as an ongoing learning process. Responsiveness to change and user-centered design have been the consequences. In a similar way, knowledge and ontology engineering are undergoing fundamental changes to acknowledge the fact that they are part of a collective knowledge maturing process. We explore three examples: (i) social media based competence management in career guidance, (ii) ontology-centered reflection in multi-professional environments in palliative care, and (iii) aligning individual mindlines in pratice networks of General Practitioners. Based on these, we extract four levels of designing for knowledge maturing and associated technical implementations. This shows that future technology support should especially target facilitation of self-organized, but tool-mediated knowledge development processes, where, e.g., workplace learning analytics can play a prominent role
Beyond DevOps: Finding Value through RequirementsGail Murphy
DevOps practices have enabled faster delivery of software features. However, there remains a gap in consistently tracking how features connect to customer and organizational value. Requirements engineering needs to play a key role in identifying and linking features to value, as well as tracking value delivery and reassessing features over time. This will allow organizations to focus on delivering value rather than just features through their software development processes.
An Enhanced Wiki For Requirements EngineeringJim Jimenez
This document presents a rationale and design for an enhanced Wiki system to support requirements engineering activities. It aims to address issues with current approaches by fostering collaboration, enforcing best practices, and integrating with other project management tools. The key aspects of the proposed Wiki system include: a conceptual model with concepts like namespaces, pages, and relations; dynamic attributes to capture metadata about requirements; fine-grained access control; and templates to promote reuse and best practices. The system is designed to integrate tightly with the existing ProjectIT tools and platform to provide a collaborative requirements engineering solution.
Filippo Lanubile: Social Software as Key Enabler of Collaborative Development Environments.
Keynote speech at the 5th International Workshop on Social Software Engineering (SSE 2013), August 18, 2013, Saint Petersburg, Russia, colocated with ESEC/FSE 2013
WEB 2.0 allows for increased collaboration and sharing of information between users. It provides a global platform for users to create their own applications and access services online that were previously only available on desktop computers. Some key aspects of WEB 2.0 include reusable services and data accessible from all connected devices, consumption and remixing of user-generated data, and rich interactive user interfaces that encourage participation. Virtual office applications within this framework allow for real-time collaboration on documents and provide online storage and access to work from any computer connected to the internet.
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.
The document describes a Semantic Wiki system called SoWiSE that was developed to help software developers collaborate more effectively. SoWiSE combines Wiki and Semantic Web technologies to allow developers to tag and search software documentation based on ontologies. It was built as an Eclipse plugin to integrate with the developer's IDE. SoWiSE enhances an existing Wiki plugin for Eclipse called EclipseWiki by adding semantic search capabilities and customizations for software development tasks.
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.
Coaching material about strategic use of ICT and Communication Tools.pdfBrodoto
This document provides coaching material on strategic use of information and communication technologies (ICT) and social media tools for social entrepreneurs. It is divided into three modules. Module I discusses ICT tools for optimizing daily work, including project management, internal communication, external communication, collaboration, educational/presentation, and video/graphic editing tools. Module II focuses on using social media strategically on platforms like Facebook and Instagram. Module III presents impact tools for social enterprises regarding business, impact measurement, networking, and cooperation. The document aims to equip social entrepreneurs with digital skills and strategies to improve their operations and outreach.
Introduction to digital literacy for adult education esolNell Eckersley
This document introduces a four-part series on developing digital literacy skills for ESOL students and teachers. The series will explore important technology skills needed for career and education success and ways to integrate practice of these skills into ESOL instruction. Participants will learn tools and methods, develop integration plans, get coaching, and share experiences. The four parts cover introduction to digital literacy, integrating computer-based testing skills, coaching and support, and a final knowledge sharing session.
Interaction Room - Creating Space for Developments (Software Projects)adesso Turkey
The Interaction Room serves several purposes:
1) The focus on mission-critical aspects
2) Identification and elimination of risks associated with intuitive visualization methods at an early stage
3) Improving teamwork and the establishment of joint project responsibility between the IT and specialist departments.
The Interaction Room makes the relationships between processes, data and the application environment transparent and creates the basis for efficient decision-making processes. It is a method which steers the interest of those involved in the project’s progress and contributes to ensuring that all participants continuously work on the vision of the software that is being developed. The Interaction Room is not a theoretical concept but has proven itself in the business environment, as can be seen in successful projects in which the Interaction Room has already been used effectively.
Quantitative And Qualitative Evaluation Of F/Oss Volunteer Participation In D...ijseajournal
- A small core team is typically surrounded by a larger community of volunteers participating in defect reporting and resolution for open source projects.
- Defect reporting is widely dispersed and mostly contributed by occasional external volunteers, while defect resolution is more concentrated among regular contributors mainly from the core team.
- On average, 91% of volunteers only contribute once, twice or thrice by reporting defects, while a small percentage are regular contributors. Anonymous volunteers also make up about 30% of defect reports on average.
Supporting distributed software development through context awareness on soft...Rafael Vivian
The document proposes the DiSEN-CollaborAR approach to address the challenges of context awareness for software artifacts during distributed software development. It aims to provide awareness elements, represent contextual information about artifacts through an ontology, establish traceability links among artifacts, and present contexts visually. The approach was implemented in a prototype called ACAS integrated with version control and UML modeling tools. Future work includes incorporating more information sources and identifying collaboration patterns.
The document summarizes a research paper that proposes a framework for integrating human-computer interaction (HCI) processes into distributed software development. It begins by discussing how HCI and software development have traditionally evolved independently. It then presents a proposed HCI process framework that includes four phases made up of analysis, design, implementation, and evaluation activities. Each activity involves specific methods, skills, and deliverables. The framework is meant to facilitate communication between HCI and development teams. The document also analyzes gaps between HCI and distributed development approaches and priorities. It argues that integrating the two fields could help deliver higher quality products that better meet users' needs.
Copy of GDSC23 - Speaker Presentation Template.pptx_20230829_075717_0000.pptxSipraMohanty11
The GDSC Infosession held on August 28th, 2023, was a dynamic and informative event that provided attendees with a comprehensive overview of the club's initiatives and activities for the upcoming year. Hosted by Abhipsha Dash, the GDSC Lead, the session was structured to give participants a clear understanding of the various domains and opportunities within the club.
The event commenced with a speech from the faculty advisor, who highlighted the significance of technological advancements and the role of GDSC in fostering innovation and learning among students. The advisor's address set the tone for the rest of the session, emphasizing the importance of collaborative learning and skill development.
One of the highlights of the event was the introduction of the core team members. Each member was introduced along with their respective roles and responsibilities. This step was essential in acquainting attendees with the individuals who would be leading various aspects of GDSC's operations.
A pivotal part of the infosession was the introduction of different domains that GDSC would be focusing on throughout the year. The domains covered a wide array of topics, catering to the diverse interests of the students. These domains included:
AI/ML (Artificial Intelligence/Machine Learning): Abhipsha Dash, the GDSC Lead, took the stage to shed light on the potential of AI and ML technologies. She emphasized the growing significance of these domains in various industries and gave attendees a glimpse into the exciting projects and workshops GDSC would be organizing.
App Development:Pratik Ranjan Sahu and Anirudh Parida took the opportunity to discuss the world of app development. They shared insights into the mobile app landscape and highlighted the tools and platforms that would be covered in the upcoming workshops.
Web Development: Swapneel Das delved into the realm of web development, outlining the key programming languages and frameworks that participants could expect to explore through GDSC's initiatives. Attendees were introduced to the evolving landscape of web technologies.
Designing and Management:Sipra Mohanty touched upon the essential aspects of designing and management in the tech industry. She highlighted the role of user-centric design and efficient project management in creating successful tech products.
Cloud Computing: Sanchita Sahay provided an insightful overview of cloud computing, discussing its benefits and applications. Her presentation aimed to demystify cloud technology and encourage students to delve into this dynamic domain.
The session also introduced attendees to the concept of Cloud Jams, fostering a sense of collaboration and practical learning. Cloud Jams would serve as platforms for students to experiment and gain hands-on experience with cloud technologies.
In conclusion, the GDSC Infosession on August 28th, 2023, proved to be an insightful and engaging event.
The document discusses tools that can be used to take projects beyond PowerPoint, including blogs, vlogs, podcasts, screen casts, Second Life, and video conferencing. It explores collaborating tools like Skype and Oovoo, publishing platforms like websites and YouTube, and design software like Sweet Home 3D. Educators are encouraged to consider how these types of tools can be incorporated into projects for launching, collaboration, or final products. Reflection is requested on tools that could be used, challenges of enabling access, and next steps for adoption.
Social media based dissemination strategies for Erarmus project managersWeb2LLP
This document summarizes a presentation about improving internet strategies and maximizing social media presence for Erasmus LLP projects. The presentation discusses:
- Familiarizing project managers with basics of a digital dissemination strategy using social media
- Sharing tips on using social media like Instagram, Twitter, and YouTube for dissemination
- Addressing common problems project teams face in using social media, like lack of skills, resources, and multilingual challenges
- Providing resources developed by the Web2LLP project like handbooks, videos, and tutorials to help project teams improve their social media strategies.
Brian Wood has over 15 years of experience in user experience design, human-computer interaction, and technical training. He currently works as a Senior User Experience Analyst at the Federal Reserve Bank, where he leads user research, usability testing, and analysis to improve digital products. Previously, he held roles at the Navy and Marine Corps focusing on interface design and human factors engineering. Wood also has experience developing websites, multimedia content, and providing IT support. He is pursuing a Master's degree in Human-Computer Interaction from DePaul University with a 4.0 GPA.
The Executive Master in Project Management with Microsoft (EMPM) is an 18-month, online master's program offered by the Universidad de Valencia that focuses on developing project management skills. The program aims to (1) teach students to manage their time and organize projects; (2) train students to reconstruct projects using international project management standards; and (3) prepare students to obtain professional certifications in project management from organizations like PMI and IPMA. The EMPM program uses a blended learning approach with online courses, collaborative software, and five face-to-face seminars. Upon completing the program, students will earn a master's degree from the Universidad de Valencia and several Microsoft and project management certifications.
The document discusses Project Communications Management as defined in PMBOK 10.0. It includes three key processes: Plan Communications Management, Manage Communications, and Monitor Communications. These processes fall within the Planning, Executing, and Monitoring & Controlling process groups. The document also covers concepts, trends, tailoring considerations, and considerations for agile environments.
Innovation Labs create global interoperability. They are physical spaces that allow for collaboration among private sector, academia and civil society. The labs profiled in this guide allow UNICEF to convene dynamic, new partners around specific local issues—and, importantly, allow the solutions that are created to go to global scale. The lab in Kosovo works with technology created in Prishtina, in Kampala, and elsewhere, and adapts it to the needs of a young, determined population. The lab in Uganda connects academia from the US, Europe, and Kampala, and creates system change at a national scale. The CCORE lab in Zimbabwe takes best practices from the world of operational research and applies them to pressing programmatic issues. These are just the beginning.
This document gives you the information you need to create your own lab. This could be a UNICEF lab—or could simply be a space of creativity that is aimed at solving significant global problems through the application of dedicated local resources.
There is no ego in the concept of a lab. Pioneers like the iHub in Nairobi, INSTEDD in South East Asia, the Global Pulse in Jakarta, and Un Techo para mi Pais in Chile show the demand for methodologies of openness, collaboration, and experimentation.
The document is structured to give a sense of what a lab contains, to provide the specific, operational steps needed to get a lab up and running, to provide a few examples of existing labs, and finally to provide the technical documents (terms of reference, partnership agreements, etc.) that you can adapt for your own use. Most importantly, it is designed to be extended.
This is the first version of this Do-It-Yourself Guide—and we invite you to submit your lab structures, your documents and your knowledge to the project so that future versions can grow, learn, and build. You can submit your input to both innovateforchildren@unicef.org and to the UNICEF Innovation blog at: http://unicefstories.org/submit/
Designing for knowledge maturing: from knowledge driven software to supportin...Andreas Schmidt
Software engineering has been transformed in recent years by understanding the interaction with customers and the target context as an ongoing learning process. Responsiveness to change and user-centered design have been the consequences. In a similar way, knowledge and ontology engineering are undergoing fundamental changes to acknowledge the fact that they are part of a collective knowledge maturing process. We explore three examples: (i) social media based competence management in career guidance, (ii) ontology-centered reflection in multi-professional environments in palliative care, and (iii) aligning individual mindlines in pratice networks of General Practitioners. Based on these, we extract four levels of designing for knowledge maturing and associated technical implementations. This shows that future technology support should especially target facilitation of self-organized, but tool-mediated knowledge development processes, where, e.g., workplace learning analytics can play a prominent role
Beyond DevOps: Finding Value through RequirementsGail Murphy
DevOps practices have enabled faster delivery of software features. However, there remains a gap in consistently tracking how features connect to customer and organizational value. Requirements engineering needs to play a key role in identifying and linking features to value, as well as tracking value delivery and reassessing features over time. This will allow organizations to focus on delivering value rather than just features through their software development processes.
An Enhanced Wiki For Requirements EngineeringJim Jimenez
This document presents a rationale and design for an enhanced Wiki system to support requirements engineering activities. It aims to address issues with current approaches by fostering collaboration, enforcing best practices, and integrating with other project management tools. The key aspects of the proposed Wiki system include: a conceptual model with concepts like namespaces, pages, and relations; dynamic attributes to capture metadata about requirements; fine-grained access control; and templates to promote reuse and best practices. The system is designed to integrate tightly with the existing ProjectIT tools and platform to provide a collaborative requirements engineering solution.
Filippo Lanubile: Social Software as Key Enabler of Collaborative Development Environments.
Keynote speech at the 5th International Workshop on Social Software Engineering (SSE 2013), August 18, 2013, Saint Petersburg, Russia, colocated with ESEC/FSE 2013
WEB 2.0 allows for increased collaboration and sharing of information between users. It provides a global platform for users to create their own applications and access services online that were previously only available on desktop computers. Some key aspects of WEB 2.0 include reusable services and data accessible from all connected devices, consumption and remixing of user-generated data, and rich interactive user interfaces that encourage participation. Virtual office applications within this framework allow for real-time collaboration on documents and provide online storage and access to work from any computer connected to the internet.
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.
The document describes a Semantic Wiki system called SoWiSE that was developed to help software developers collaborate more effectively. SoWiSE combines Wiki and Semantic Web technologies to allow developers to tag and search software documentation based on ontologies. It was built as an Eclipse plugin to integrate with the developer's IDE. SoWiSE enhances an existing Wiki plugin for Eclipse called EclipseWiki by adding semantic search capabilities and customizations for software development tasks.
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.
Coaching material about strategic use of ICT and Communication Tools.pdfBrodoto
This document provides coaching material on strategic use of information and communication technologies (ICT) and social media tools for social entrepreneurs. It is divided into three modules. Module I discusses ICT tools for optimizing daily work, including project management, internal communication, external communication, collaboration, educational/presentation, and video/graphic editing tools. Module II focuses on using social media strategically on platforms like Facebook and Instagram. Module III presents impact tools for social enterprises regarding business, impact measurement, networking, and cooperation. The document aims to equip social entrepreneurs with digital skills and strategies to improve their operations and outreach.
Introduction to digital literacy for adult education esolNell Eckersley
This document introduces a four-part series on developing digital literacy skills for ESOL students and teachers. The series will explore important technology skills needed for career and education success and ways to integrate practice of these skills into ESOL instruction. Participants will learn tools and methods, develop integration plans, get coaching, and share experiences. The four parts cover introduction to digital literacy, integrating computer-based testing skills, coaching and support, and a final knowledge sharing session.
Interaction Room - Creating Space for Developments (Software Projects)adesso Turkey
The Interaction Room serves several purposes:
1) The focus on mission-critical aspects
2) Identification and elimination of risks associated with intuitive visualization methods at an early stage
3) Improving teamwork and the establishment of joint project responsibility between the IT and specialist departments.
The Interaction Room makes the relationships between processes, data and the application environment transparent and creates the basis for efficient decision-making processes. It is a method which steers the interest of those involved in the project’s progress and contributes to ensuring that all participants continuously work on the vision of the software that is being developed. The Interaction Room is not a theoretical concept but has proven itself in the business environment, as can be seen in successful projects in which the Interaction Room has already been used effectively.
Quantitative And Qualitative Evaluation Of F/Oss Volunteer Participation In D...ijseajournal
- A small core team is typically surrounded by a larger community of volunteers participating in defect reporting and resolution for open source projects.
- Defect reporting is widely dispersed and mostly contributed by occasional external volunteers, while defect resolution is more concentrated among regular contributors mainly from the core team.
- On average, 91% of volunteers only contribute once, twice or thrice by reporting defects, while a small percentage are regular contributors. Anonymous volunteers also make up about 30% of defect reports on average.
Supporting distributed software development through context awareness on soft...Rafael Vivian
The document proposes the DiSEN-CollaborAR approach to address the challenges of context awareness for software artifacts during distributed software development. It aims to provide awareness elements, represent contextual information about artifacts through an ontology, establish traceability links among artifacts, and present contexts visually. The approach was implemented in a prototype called ACAS integrated with version control and UML modeling tools. Future work includes incorporating more information sources and identifying collaboration patterns.
The document summarizes a research paper that proposes a framework for integrating human-computer interaction (HCI) processes into distributed software development. It begins by discussing how HCI and software development have traditionally evolved independently. It then presents a proposed HCI process framework that includes four phases made up of analysis, design, implementation, and evaluation activities. Each activity involves specific methods, skills, and deliverables. The framework is meant to facilitate communication between HCI and development teams. The document also analyzes gaps between HCI and distributed development approaches and priorities. It argues that integrating the two fields could help deliver higher quality products that better meet users' needs.
Copy of GDSC23 - Speaker Presentation Template.pptx_20230829_075717_0000.pptxSipraMohanty11
The GDSC Infosession held on August 28th, 2023, was a dynamic and informative event that provided attendees with a comprehensive overview of the club's initiatives and activities for the upcoming year. Hosted by Abhipsha Dash, the GDSC Lead, the session was structured to give participants a clear understanding of the various domains and opportunities within the club.
The event commenced with a speech from the faculty advisor, who highlighted the significance of technological advancements and the role of GDSC in fostering innovation and learning among students. The advisor's address set the tone for the rest of the session, emphasizing the importance of collaborative learning and skill development.
One of the highlights of the event was the introduction of the core team members. Each member was introduced along with their respective roles and responsibilities. This step was essential in acquainting attendees with the individuals who would be leading various aspects of GDSC's operations.
A pivotal part of the infosession was the introduction of different domains that GDSC would be focusing on throughout the year. The domains covered a wide array of topics, catering to the diverse interests of the students. These domains included:
AI/ML (Artificial Intelligence/Machine Learning): Abhipsha Dash, the GDSC Lead, took the stage to shed light on the potential of AI and ML technologies. She emphasized the growing significance of these domains in various industries and gave attendees a glimpse into the exciting projects and workshops GDSC would be organizing.
App Development:Pratik Ranjan Sahu and Anirudh Parida took the opportunity to discuss the world of app development. They shared insights into the mobile app landscape and highlighted the tools and platforms that would be covered in the upcoming workshops.
Web Development: Swapneel Das delved into the realm of web development, outlining the key programming languages and frameworks that participants could expect to explore through GDSC's initiatives. Attendees were introduced to the evolving landscape of web technologies.
Designing and Management:Sipra Mohanty touched upon the essential aspects of designing and management in the tech industry. She highlighted the role of user-centric design and efficient project management in creating successful tech products.
Cloud Computing: Sanchita Sahay provided an insightful overview of cloud computing, discussing its benefits and applications. Her presentation aimed to demystify cloud technology and encourage students to delve into this dynamic domain.
The session also introduced attendees to the concept of Cloud Jams, fostering a sense of collaboration and practical learning. Cloud Jams would serve as platforms for students to experiment and gain hands-on experience with cloud technologies.
In conclusion, the GDSC Infosession on August 28th, 2023, proved to be an insightful and engaging event.
The document discusses tools that can be used to take projects beyond PowerPoint, including blogs, vlogs, podcasts, screen casts, Second Life, and video conferencing. It explores collaborating tools like Skype and Oovoo, publishing platforms like websites and YouTube, and design software like Sweet Home 3D. Educators are encouraged to consider how these types of tools can be incorporated into projects for launching, collaboration, or final products. Reflection is requested on tools that could be used, challenges of enabling access, and next steps for adoption.
Social media based dissemination strategies for Erarmus project managersWeb2LLP
This document summarizes a presentation about improving internet strategies and maximizing social media presence for Erasmus LLP projects. The presentation discusses:
- Familiarizing project managers with basics of a digital dissemination strategy using social media
- Sharing tips on using social media like Instagram, Twitter, and YouTube for dissemination
- Addressing common problems project teams face in using social media, like lack of skills, resources, and multilingual challenges
- Providing resources developed by the Web2LLP project like handbooks, videos, and tutorials to help project teams improve their social media strategies.
ANALYSIS OF DEVELOPMENT COOPERATION WITH SHARED AUTHORING ENVIRONMENT IN ACAD...IJITE
Team work is an important training element of future software engineers. However, the evaluation of the
performance of collaboration among individuals is very subjective. Meanwhile, how to effectively
promote the collaboration in an academic setting is an even more challenging task. The lack of a common
standard or method for the assessment is a practical issue in software engineering projects. With the
rapid development of shared authoring environments, such as Wiki, more and more educational
institutions are studying the adaptability of such kind of collaborative platforms. In order to study the
applicability of adopting wiki-based shared authoring environments in software engineering education,
we have proposed three major research questions. By solving these problems, we try to answer some of
the most important questions in adopting shared authoring platforms in academic settings.
This document summarizes a research project that explored using mobile web 2.0 technologies to support learning in tertiary education. The project investigated how wireless mobile devices could be integrated into courses to facilitate collaboration, communication, and social constructivist learning. Data was collected through surveys of students and lecturers before and after trials of the mobile technologies. Key findings included that the technologies increased student engagement and reflection, supported learning anywhere and anytime, and facilitated changes to more collaborative pedagogical approaches, though proper support structures for students and lecturers were important. The project demonstrated the potential of mobile technologies to enhance learning but also surfaced challenges around access and support.
In this document we describe the challenges introduced to the project by the geographically distributed nature of the project partners and our approach to ensuring an efficient development methodology based on “agile” principles. We propose the use of DevOps to support incremental software releases and ongoing requirements updates, and show, using examples from the GRAVITATE platform development, how this is being implemented.
Social media based dissemination strategies for Erarmus project managersWeb2Learn
This document discusses strategies for improving internet and social media strategies for Erasmus LLP projects. It provides an overview of a training session that will familiarize project managers with developing a digital dissemination strategy using social media. The training will cover the basics of social media, tips for using different tools in dissemination plans, and addressing common problems projects face. It also summarizes findings from research on how LLP projects currently use the internet and social media, identifying a need to focus on engagement over just information sharing. The document provides examples of various social media tools and networking strategies projects can implement in their plans.
How Low Code Platforms Can Empower Students To Build Apps.pdfAshutosh Kalbande
In today’s digital age, app development has become an essential skill set,
opening up opportunities for creativity, problem-solving, and innovation.
However, traditional app development often requires extensive coding
knowledge, which can be intimidating and time-consuming for students who
are just starting their journey into programming. This is where Low-code
platforms come into play, revolutionizing student learning and app building.
Low-code platforms provide a visual development environment that
simplifies app development by reducing the need for manual coding. These
platforms offer intuitive drag-and-drop interfaces, pre-built components, and
ready-to-use templates, enabling students to create functional applications
without deep programming expertise. Accessibility and ease of use make
these advanced and robust platforms an empowering tool for students
regardless of their coding background.
Low-Code Platform Empowering Students
In several ways, the tool enables students to unleash their creativity. Utilizing
the technology, they can easily turn their ideas into tangible applications.
Here are some key benefits:
Accessibility:
It breaks down entry barriers by eliminating extensive coding knowledge.
Students with limited programming knowledge can dive into app
development without stress.
Rapid Prototyping:
Low code tools allow students to quickly create prototypes and minimum
viable products (MVPs) for their app ideas. This iterative development process
fosters experimentation and encourages students to refine their concepts
based on user feedback.
Visual Development:
With intuitive drag-and-drop interfaces, students can visually design
beautiful app interfaces and arrange components without writing complex
code. This visual approach makes the development process more engaging
and understandable, especially for visual learners.
Problem-Solving and Logical Thinking:
Developing an application without having to code encourages students to
think critically and solve problems by breaking them down into smaller
components. They can focus on the app’s functionality and user experience,
honing their logical thinking skills.
Collaboration and Teamwork:
The platform facilitates collaborative app development. Students can work
together on projects, sharing components, ideas, and knowledge, fostering
teamwork and enhancing communication skills.
Conclusion:
Low-code platforms have emerged as powerful tools for students to build
apps. By providing an accessible and user-friendly development
environment, these platforms enable students to bring their app ideas to life
without getting bogged down by complex coding requirements.
Whether they are learning programming concepts for the first time or
expanding their existing skills, low-code platforms offer a practical and
engaging way for students to develop their creativity, problem-solving
abilities, and collaboration skills. In app development, low-code platforms
have truly
Similar to Introduction to the cooperation principles in software development - Part II (20)
Este documento presenta una conferencia sobre la gestión científico-tecnológica y el intercambio de resultados profesionales. La conferencia discute el análisis bibliométrico de la información científico-tecnológica, incluyendo las leyes e indicadores que rigen este tipo de información. También cubre herramientas para la socialización y el intercambio de información científico-técnica. El objetivo es ilustrar el análisis de esta información para favorecer el desarrollo de hab
El documento trata sobre el software y el hardware como parte de las soluciones informáticas. Explica que el hardware son los componentes físicos de una computadora como la tarjeta madre, procesador, memoria RAM, etc. Mientras que el software son las instrucciones computacionales que hacen posible el procesamiento de datos. También clasifica el hardware según su ubicación como interno o externo, y por su funcionalidad como entrada, procesamiento, almacenamiento o salida. Por último, discute las unidades de medida como gigabytes que son necesarias para instalar software
Este documento presenta una introducción al software y hardware como parte de las soluciones informáticas. Explica que el software es el conjunto de órdenes y programas que hacen posible la ejecución de funciones por los dispositivos electrónicos, mientras que el hardware son los componentes físicos. Además, clasifica el software en sistemas operativos, aplicaciones y utilitarios, y distingue entre software propietario y libre según el grado de libertad para los usuarios. Finalmente, propone algunas preguntas para analizar aspectos de los sistem
Este documento presenta una introducción a las ciencias de la computación. Explica los objetivos de la conferencia, que son describir la evolución histórica y el desarrollo de las ciencias de la computación a partir de sus paradigmas y perspectivas. También presenta un sumario de los temas que se abordarán, incluyendo los paradigmas, perspectivas de análisis y principales figuras asociadas con la evolución de la informática.
Este documento presenta una conferencia sobre infotecnología y ofimática en la era digital. Explica conceptos como infotecnología, ofimática e ingeniería en la era digital. También describe las etapas del trabajo académico y profesional e incluye la socialización científica y normas bibliográficas.
El documento resume la historia de las ciencias de la computación en Cuba. Explica que en Cuba se crearon las primeras computadoras como la CID-201 en la década de 1960 y se establecieron las primeras carreras y facultades relacionadas con la computación en las décadas siguientes. También se crearon instituciones importantes como el Centro de Investigaciones Digitales, el Ministerio de la Informática y las Comunicaciones y la Universidad de las Ciencias Informáticas para impulsar el desarrollo de la informática en el país.
This document discusses the future of education and the role of artificial intelligence. It outlines several challenges for future education, including promoting lifelong learning and enhancing the relationship between schools and society. It also discusses challenges for trainers in adopting virtual identities and open, collaborative teaching methods supported by technology. The document then examines Cuba's current education system, noting strengths like government support but also limitations like a focus on face-to-face learning. It proposes moving toward an "f-university" model using the A-D-O-M-U framework to make institutions more accessible, dispensable, open, mobile, and ubiquitous through technology. Finally, it suggests ways AI could enhance this approach, such as using learning analytics and natural language processing
More from Prof. Dr. Febe Angel Ciudad Ricardo (14)
Using recycled concrete aggregates (RCA) for pavements is crucial to achieving sustainability. Implementing RCA for new pavement can minimize carbon footprint, conserve natural resources, reduce harmful emissions, and lower life cycle costs. Compared to natural aggregate (NA), RCA pavement has fewer comprehensive studies and sustainability assessments.
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELgerogepatton
As digital technology becomes more deeply embedded in power systems, protecting the communication
networks of Smart Grids (SG) has emerged as a critical concern. Distributed Network Protocol 3 (DNP3)
represents a multi-tiered application layer protocol extensively utilized in Supervisory Control and Data
Acquisition (SCADA)-based smart grids to facilitate real-time data gathering and control functionalities.
Robust Intrusion Detection Systems (IDS) are necessary for early threat detection and mitigation because
of the interconnection of these networks, which makes them vulnerable to a variety of cyberattacks. To
solve this issue, this paper develops a hybrid Deep Learning (DL) model specifically designed for intrusion
detection in smart grids. The proposed approach is a combination of the Convolutional Neural Network
(CNN) and the Long-Short-Term Memory algorithms (LSTM). We employed a recent intrusion detection
dataset (DNP3), which focuses on unauthorized commands and Denial of Service (DoS) cyberattacks, to
train and test our model. The results of our experiments show that our CNN-LSTM method is much better
at finding smart grid intrusions than other deep learning algorithms used for classification. In addition,
our proposed approach improves accuracy, precision, recall, and F1 score, achieving a high detection
accuracy rate of 99.50%.
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTjpsjournal1
The rivalry between prominent international actors for dominance over Central Asia's hydrocarbon
reserves and the ancient silk trade route, along with China's diplomatic endeavours in the area, has been
referred to as the "New Great Game." This research centres on the power struggle, considering
geopolitical, geostrategic, and geoeconomic variables. Topics including trade, political hegemony, oil
politics, and conventional and nontraditional security are all explored and explained by the researcher.
Using Mackinder's Heartland, Spykman Rimland, and Hegemonic Stability theories, examines China's role
in Central Asia. This study adheres to the empirical epistemological method and has taken care of
objectivity. This study analyze primary and secondary research documents critically to elaborate role of
china’s geo economic outreach in central Asian countries and its future prospect. China is thriving in trade,
pipeline politics, and winning states, according to this study, thanks to important instruments like the
Shanghai Cooperation Organisation and the Belt and Road Economic Initiative. According to this study,
China is seeing significant success in commerce, pipeline politics, and gaining influence on other
governments. This success may be attributed to the effective utilisation of key tools such as the Shanghai
Cooperation Organisation and the Belt and Road Economic Initiative.
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSIJNSA Journal
The smart irrigation system represents an innovative approach to optimize water usage in agricultural and landscaping practices. The integration of cutting-edge technologies, including sensors, actuators, and data analysis, empowers this system to provide accurate monitoring and control of irrigation processes by leveraging real-time environmental conditions. The main objective of a smart irrigation system is to optimize water efficiency, minimize expenses, and foster the adoption of sustainable water management methods. This paper conducts a systematic risk assessment by exploring the key components/assets and their functionalities in the smart irrigation system. The crucial role of sensors in gathering data on soil moisture, weather patterns, and plant well-being is emphasized in this system. These sensors enable intelligent decision-making in irrigation scheduling and water distribution, leading to enhanced water efficiency and sustainable water management practices. Actuators enable automated control of irrigation devices, ensuring precise and targeted water delivery to plants. Additionally, the paper addresses the potential threat and vulnerabilities associated with smart irrigation systems. It discusses limitations of the system, such as power constraints and computational capabilities, and calculates the potential security risks. The paper suggests possible risk treatment methods for effective secure system operation. In conclusion, the paper emphasizes the significant benefits of implementing smart irrigation systems, including improved water conservation, increased crop yield, and reduced environmental impact. Additionally, based on the security analysis conducted, the paper recommends the implementation of countermeasures and security approaches to address vulnerabilities and ensure the integrity and reliability of the system. By incorporating these measures, smart irrigation technology can revolutionize water management practices in agriculture, promoting sustainability, resource efficiency, and safeguarding against potential security threats.
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024Sinan KOZAK
Sinan from the Delivery Hero mobile infrastructure engineering team shares a deep dive into performance acceleration with Gradle build cache optimizations. Sinan shares their journey into solving complex build-cache problems that affect Gradle builds. By understanding the challenges and solutions found in our journey, we aim to demonstrate the possibilities for faster builds. The case study reveals how overlapping outputs and cache misconfigurations led to significant increases in build times, especially as the project scaled up with numerous modules using Paparazzi tests. The journey from diagnosing to defeating cache issues offers invaluable lessons on maintaining cache integrity without sacrificing functionality.
Using recycled concrete aggregates (RCA) for pavements is crucial to achieving sustainability. Implementing RCA for new pavement can minimize carbon footprint, conserve natural resources, reduce harmful emissions, and lower life cycle costs. Compared to natural aggregate (NA), RCA pavement has fewer comprehensive studies and sustainability assessments.
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...IJECEIAES
Medical image analysis has witnessed significant advancements with deep learning techniques. In the domain of brain tumor segmentation, the ability to
precisely delineate tumor boundaries from magnetic resonance imaging (MRI)
scans holds profound implications for diagnosis. This study presents an ensemble convolutional neural network (CNN) with transfer learning, integrating
the state-of-the-art Deeplabv3+ architecture with the ResNet18 backbone. The
model is rigorously trained and evaluated, exhibiting remarkable performance
metrics, including an impressive global accuracy of 99.286%, a high-class accuracy of 82.191%, a mean intersection over union (IoU) of 79.900%, a weighted
IoU of 98.620%, and a Boundary F1 (BF) score of 83.303%. Notably, a detailed comparative analysis with existing methods showcases the superiority of
our proposed model. These findings underscore the model’s competence in precise brain tumor localization, underscoring its potential to revolutionize medical
image analysis and enhance healthcare outcomes. This research paves the way
for future exploration and optimization of advanced CNN models in medical
imaging, emphasizing addressing false positives and resource efficiency.
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...University of Maribor
Slides from talk presenting:
Aleš Zamuda: Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapter and Networking.
Presentation at IcETRAN 2024 session:
"Inter-Society Networking Panel GRSS/MTT-S/CIS
Panel Session: Promoting Connection and Cooperation"
IEEE Slovenia GRSS
IEEE Serbia and Montenegro MTT-S
IEEE Slovenia CIS
11TH INTERNATIONAL CONFERENCE ON ELECTRICAL, ELECTRONIC AND COMPUTING ENGINEERING
3-6 June 2024, Niš, Serbia
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
Introduction to the cooperation principles in software development - Part II
1. Introduction to the cooperation
principles in software development
Part II
Prof. Dr. Febe Angel Ciudad-Ricardo
fciudad@uci.cu
University of Informatics Sciences (UCI), Havana, Cuba
May 10th
, 2021
2. Content
● Summary of Part I
● Tools for cooperation/collaboration in SE
● Relationships of cooperation/collaboration in SE
with others computer science movements and
fields
● Future work in ELINF project SE philosophy
● Conclusions?
2
5. Levels of cooperation/collaboration in SD
5
Team
Company
Coun-
try ● Organizational
● Temporal
● Socio-cultural
● Cognitive & educational
● Geographical
● Political
● Economical
6. Levels of challenges for
cooperation/collaboration in SD
6
• Interpersonal conflicts,
• Cultural background,
• Version control,
• Lack of cooperation, task
allocation and collaboration
● Politics and policies,
● Reduced transparency,
● Understanding of
requirements rationale,
● Team cohesiveness,
● Lack of informal contacts and
textual information,
● Integration,
● Diverse terminologies,
● Time overlap, and
● Different engineering
approaches
1. Communication,
2. Knowledge sharing and transfer,
3. Coordination,
4. Linguistic issues,
5. Project and process management,
6. Tool management,
7. Software architecture, and
8. Hardware configuration
CRITICAL
CHALLENGES
WRAPPING
CHALLENGES
7. Areas for cooperation/collaboration in SE
7
business
models
approaches
methods
methodologies
conceptions
patterns architectures
designs
development
storage
verification
& validation
releasing
TECHNO-
LOGICAL
MODELLING
PROCE-
DURAL
8. Tools for cooperation/collaboration in SD
8
Collaborative
Development
Environment (CDE)
Communi-
cations
Tools
Web 2.0
Apps
Build
Tools
Trackers
Modelers
Knowledge
Centers
Lanubile, F.; Ebert, C.;
Prikladnicki, R. & Vizcaíno, A.
(2010). Collaboration Tools for
Global Software Engineering,
IEEE Software, 27 (2), 52-55.
ISSN: 1937-4194. DOI:
10.1109/MS.2010.39
Versión
-Control
System
9. Tools for cooperation/collaboration in SD
9
Collaborative
Development
Environment (CDE)
Communi-
Cations
Tools
Versión
-Control
System
Web 2.0
Apps
Build
Tools
Trackers
Modelers
Knowledge
Centers
Version-control systems is a
category of software tools that
records changes made to a file
or set of files over time by
keeping a track of modifications
done to the code, so that we can
recover specific versions later
back in time.
This category of software tool
helps the developer team to
efficiently communicate and
manage(track) all the changes
that have been made to the
source code along with the
information like who made and
what change has been made.
10. Tools for cooperation/collaboration in SD
10
Collaborative
Development
Environment (CDE)
Communi-
cations
Tools
Versión
-Control
System
Web 2.0
Apps
Build
Tools Modelers
Knowledge
Centers
Trackers
Trackers are a category of
software tools used to manage
issues (or “tickets”)
such as defects, changes, or
requests for support from the
developers and/or the users
communities; and the tracking
function centers reside on a
database that all team members
and users can access through
the Web.
11. Tools for cooperation/collaboration in SD
11
Collaborative
Development
Environment (CDE)
Communi-
cations
Tools
Versión
-Control
System
Web 2.0
Apps
Modelers
Knowledge
Centers
Trackers
Build
Tools
Build tools is another category
of software tools that let projects
maintain remote repositories
and create and schedule
workflows. The workflows
facilitate continuous integration
for executing scripts, compiling
binaries, invoking test
frameworks, deploying to
production systems, and
sending email notifications to
developers. A Web-based
dashboard shows the status of
current and past builds.
12. Tools for cooperation/collaboration in SD
12
Collaborative
Development
Environment (CDE)
Communi-
Cations
Tools
Versión
-Control
System
Web 2.0
Apps Knowledge
Centers
Trackers
Build
Tools Modelers
Modelers (part of the CASE
tools) is another category of
software tools that let the
project team members do
model-based collaboration.
This category distinguishes
collaborative SE from other
more general cooperation
activities where we share
only files and not content.
This kind of tool help
developers create formal or
semiformal software artifacts,
including visual Unified
Modeling Language (UML)
models and customized
software processes.
13. Tools for cooperation/collaboration in SD
13
Build
Tools
Collaborative
Development
Environment (CDE)
Communi-
cations
Tools
Versión
-Control
System
Web 2.0
Apps
Trackers
Modelers
Knowledge
Centers
Knowledge Centers is a Content Management System
(CMS) for sharing explicit and tacit knowledge on the
Web. This kind of software tool makes every project
team member be able to access any knowledge
resource shared by her/his colleagues to learn and
increase skills and capabilities. Knowledge Centers
also support trainings and the evaluation of how every
team member growth for new and more complex
tasks.
14. Tools for cooperation/collaboration in SD
14
Collaborative
Development
Environment (CDE)
Versión
-Control
System
Web 2.0
Apps
Trackers
Build
Tools Modelers
Knowledge
Centers
Communi-
cations
Tools
Communication Tools is a very big group of software tools
used by project team members during their SE tasks for
synchronous and asynchronous communication to help them
keep updated about the project execution and product
development.
This category is not exclusive of the SE field, but belongs to a
wider spectrum of social and occupational dynamics needed
for strengthening the cohesion and relationships of the project
team.
Within this group of tools we may find: email, chat, blog,
videoconferencing, voice over IP, instant messaging, online
edition, etc.
15. Tools for cooperation/collaboration in SD
15
Collaborative
Development
Environment (CDE)
Versión
-Control
System
Trackers
Build
Tools Modelers
Knowledge
Centers
Communi-
Cations
Tools
Web 2.0
Apps
Web 2.0 Applications is also a very big group of software tools
used by project team members during their SE tasks for direct
user contributions, rich interactions, and community building. This
way these tools are a valuable form to increase the informal
communication exchange among team members, and for creating
and maintaining group communication and documentation.
This category is not also a exclusive one of the SE field, but
belongs to a broader group of tools needed for strengthening the
online collaboration among the team members.
Within this group of tools we may find: wiki, blog, professional
networks, collaborative tagging systems, etc.
16. 16
Lanubile, F.; Ebert, C.; Prikladnicki, R. & Vizcaíno, A. (2010:54). Collaboration Tools for Global
Software Engineering, IEEE Software, 27 (2), 52-55. ISSN: 1937-4194. DOI: 10.1109/MS.2010.39
18. Cooperation/collaboration in SD and others
computer science movements & fields
18
● Participating in a
community
● Transparency for easier
troubles solutions
● Open standards source
code
● Decentralization
● Shared tools and
resources
● Openness
● Global
19. Cooperation/collaboration in SD and others
computer science movements & fields
19
● Participating in a
community
● Transparency for easier
troubles solutions
● Open standards source
code
● Decentralization
● Shared tools and
resources
● Openness
● Global
● Encourage collaboration
environments
● Shared responsibility
● Promote continuos
improvement
● Computerize (almost)
everything
● Embrace failure and learn
from it
● Merge team and
experience
20. 20
Questier, F. (2021). Free Libre Open Source Software Development – Part II. April 2021 ELINF
Webinars. http://www.slideshare.net/Frederik_Questier
Future work in ELINF project SE philosophy
21. 21
Questier, F. (2021). Free Libre Open Source Software Development – Part II. April 2021 ELINF
Webinars. http://www.slideshare.net/Frederik_Questier
Future work in ELINF project SE philosophy
22. 22
Questier, F. (2021). Free Libre Open Source Software Development – Part II. April 2021 ELINF
Webinars. http://www.slideshare.net/Frederik_Questier
Future work in ELINF project SE philosophy
23. Levels of cooperation/collaboration in SD
(ELINF specific context)
23
Team
Partner
Universities
Project
● Organizational
● Temporal
● Socio-cultural
● Cognitive & educational
● Geographical
● Political
● Economical
1. Communication,
2. Knowledge sharing and transfer,
3. Coordination,
4. Linguistic issues,
5. Project and process management,
6. Tool management,
7. Software architecture, and
8. Hardware configuration
CRITICAL
CHALLENGES
24. Conclusions?
24
● Current SE practices have adopted a large number of
principles from openness philosophy in the SD.
● Collaboration/cooperation in SD brings benefits to enjoy,
but also challenges to fight and risks to mitigate.
● The project is a context for learning and sharing, rather
than a place to hide and compete.
● Tools are for collaborating and save time, effort, storage,
risks, faults.
● Changes in procedures, need changes in mindset and
behaviors.
25. Introduction to the cooperation
principles in software development
Part II
Prof. Dr. Febe Angel Ciudad-Ricardo
fciudad@uci.cu
University of Informatics Sciences (UCI), Havana, Cuba
May 10th
, 2021