Reuse and Improve

Instead of starting from scratch, programs that “reuse and improve” look for ways to adapt and enhance existing products, resources and approaches. Reuse means assessing what resources are currently available and using them as they are to meet program goals. Improve means modifying existing tools, products and resources to improve their overall quality, applicability and impact. Start by identifying relevant methods, standards, software platforms, technology tools and digital content that have already been tried and tested. You can learn about digital development tools that have been piloted or scaled through conferences, blogs, program evaluations and the digital development community. While an existing tool or approach may not exactly fit all your needs for reuse, consider improving and building on it, rather than creating something entirely new. The result is a tool that is now better and more reusable by all because of your improvements. Reusing and improving is not about designing shiny new objects or limiting a technology to internal use; it is about taking the work of the global development community further than any organization or program can do alone. Reusing and improving can also dramatically reduce the time needed for development and testing, and reduce your costs.

Explore this principle by: Core Tenets Project Lifecycle Featured Resources

Core Tenets

  • Identify the existing technology tools (local and global), data and frameworks being used by your target population, in your geography or in your sector. Evaluate how these could be reused, modified or extended for use in your program.
  • Develop modular, interoperable approaches instead of those that stand alone. Interoperability will ensure that you can adopt and build on components from others and that others can adopt and build on your tool in the future.
  • Collaborate with other digital development practitioners through technical working groups, communities of practice and other knowledge sharing events to become aware of existing tools and to build relationships that could lead to the future reuse and improvement of your tool.

Project Lifecycle

The following recommendations, tips and resources are drawn from the digital development community to give you options for applying this Principle during each phase of the project lifecycle. This guidance is not meant to be exhaustive, but rather suggests actions you can take to apply this Principle in your work. If you have other tips, resources or comments to add, please share them with the community at the Digital Principles Forum.

Analyze & Plan

You don’t have to build something new to be innovative. Innovation can also mean repurposing existing tools in a new way or adding additional features or functionality. Organizations that reuse and improve reframe how they think about innovation. When planning an initiative, first conduct a landscape analysis to see what existing (local) tools may fit the needs of your users within your ecosystem.
  • Identify technologies and resources — software code, products, content or data — that already exist and can be reused or improved upon for your program. Seek advice from stakeholders and other practitioners, and review resources like Kopernik’s Impact Tracker Technology catalog, NetHope’s Solutions Center, Google’s catalog of open source projects and the Digital Health Atlas.
  • Determine the availability and sustainability of resources needed to configure, operate, maintain and improve existing technologies during and after your program. If you are reusing an existing tool, other organizations may have already conducted similar assessments, and you can draw on their findings. Be sure to validate or calculate your own total cost of ownership.
  • Engage with open source and open standards communities. Many initiatives are not unique, as practitioners will have previously designed and tested tools aimed at solving similar challenges. Starting from scratch will waste time and resources that would be better used to make your initiative a success and will limit the long-term sustainability of your work. Identify practitioners and organizations that have tackled your problem in other countries. Is there an open source tool that has been implemented successfully in other countries? Use that as a starting point. Identify any existing components that you can reuse or adapt before undertaking any new development.
  • Assess the ease with which the technology can be adapted to your local context and needs. Consider carrying out a context analysis to understand the ecosystem and forming a user advisory group (UAG) to validate user needs.
  • Identify the benefits of reusing and improving. These benefits could include cost savings, quicker deployment and a clear path to scale based on the experience of other organizations. Past implementers may also be to provide you with training or lessons learned that can make your initiative run more smoothly. You also can benefit from users in country who are already familiar with the technology and who can help train and support new users. Share these benefits with your funder or other stakeholders to garner support for reuse.
  • Conduct tests and seek input from end users before selecting a technology. If you are uncertain about whether a tool will meet the needs of your users, put together a testing group and gather their feedback. This approach could also help you select between multiple tools. Test several existing tools before making a final decision. To facilitate this testing, you could put together a UAG consisting of representatives of your target population. For example, PATH’s BID Initiative formed a UAG at the beginning to support the design and identification of technology tools.
  • Analyze whether your organization’s culture presents any barriers to reusing and improving. Work with key decision makers to embrace a culture of open sharing and partnering with other organizations. Identify why your organization may have concerns about reusing tools or has chosen to create something new in the past. There may be underlying fear that the tools built by others won’t be high quality or won’t exactly meet your needs and that creating something internally is the only way to get the right solution. Catholic Relief Services’ Organizational Guide to ICT4D discusses how to be a change agent in your organization and lead these conversations.

Tips & Resources

Design & Develop

Once you have identified a technology, design and execute an approach for how it can be reused or improved for your context and program objectives.
  • Verify if the technology you want to use adheres to open standards. If the tool is open source, you are free to take the existing code and move forward with developing your desired improvements. If it is proprietary, you may still be able to get the improvements you want, but you will need to engage the product owners in design discussions and determine if they are interested in working with you to execute those improvements.
  • When developing your improvements, consider what features and inputs are necessary to ensure local ownership and sustainability. For example, the tool may currently support only certain languages or fonts and will need to be updated to before it can be expanded to countries using non-Latin scripts, such as Arabic.
  • Include time and adequate resources for improvements in your timeline and budget. If you are using an open source tool, ensure that staff have sufficient time and resources to participate in the relevant open source community, including contributing improvements back to the community. If you are using a proprietary tool, allow time to provide the product owners with feedback on how they can improve their tool.
  • Collaborate with other digital development practitioners to design improvements. Through these conversations, you may find common needs for added features and improvements. Collaboration can help encourage further reuse of the technology or identify cost-sharing opportunities. For example, to meet the data collection needs of their humanitarian response programming in crisis contexts, the Harvard Humanitarian Initiative built KoBoToolbox to improve upon the open source mobile data collection platform Open Data Kit. The Harvard Humanitarian Initiative continues to collaborate with other humanitarian response organizations to design important features that address emergent needs for rapid data access and analysis in crisis settings.
Plan for how to clearly document your changes and improvements. This includes having processes for documenting and sharing changes made to the software code of an open source tool. Clear documentation of changes is needed so that the code can be maintained and other developers can easily continue to develop the code.

Tips & Resources

  • Tip: As you design your approach and seek funding, aim to quantify the savings in areas such as software development costs and staff time that come with reusing and improving. Communicate these savings to your funder and other stakeholders who may need to approve your tool selection.
  • Resource: Open Source Software Development, OSS Watch.

Deploy & Implement

In the implementation phase, continue to look for resources that you can reuse or improve to increase the efficiency of your deployment.
  • Ask previous users of your tool for their training and deployment resources. This will save you time in developing materials and allow you to learn from challenges experienced during past deployments. Consider making any training materials you create available for reuse and adaptation under a Creative Commons license.
  • Actively participate in your technology’s online community. Open source tools such as Open Data Kit and OpenMRS have communities where you can ask questions and share tips.
  • Share your work with the digital development community. Participate in conferences, webinars or other events to discuss the successes and challenges of reusing or improving (you can also submit a case study on your work here). Any new software code, with full documentation, should be made available to the community. Additionally, any general improvements to a code base should be submitted to the original developers (or whoever maintains the code) to allow them to track changes being made. Look for opportunities to use your tool in future initiatives and to champion its use. Also make sure to share your successes or challenges with the original creators of the tool, so they can track the impact of their work.
  • Identify partners who can become new users of your technology and who will continue to contribute improvements. For example, RTI International actively engages other education organizations to use their Tangerine mobile data collection software, share challenges, beta test new versions and contribute improvements. (For more information, see the Tangerine case study).

Tips & Resources

  • Tip: Consider how to build a community around your technology. This can lay the foundation for future reuse and identify organizations who will contribute improvements. Open Source Guides provide tips on how to find users and a build a welcoming community around your tool.
  • Resource: Share your Work, Creative Commons.

Cross-cutting: M&E

Through your monitoring and evaluation activities, look at how successful the reused or improved technology was in your context and in reaching your program objectives. One measure of success is whether others can reuse and improve on what you have built.

Tips & Resources