Develop and manage openly licensed software

Guidance for those who develop software for public administration and want to release it under an open license properly.

Why develop under an open license

Developing free software in PA means making the code understandable, maintainable, and reusable by other entities. A well-done release facilitates reuse, reduces duplication, and helps improve software quality and collaboration among administrations.

How to proceed

These steps help you publish and manage openly licensed software.

  1. 1

    Before publishing: quick check

    Before making a project public, make sure that at least these essentials are in place:

    • the code contains no sensitive data, credentials or confidential information;
    • a clear and consistent open license is indicated;
    • the repository includes a README with project scope and minimum instructions;
    • major dependencies are declared;
    • it is clear who maintains the software and how to contact them;
    • a channel is available for reports or requests (issues);
    • contribution methods are stated, also in a simple way;
    • the project is understandable even to those who have not developed it.

  2. 2

    When you publish: what not to forget

    Publication is not just a technical act. It serves to make the project findable and reusable. Follow these directions:

    • publish the code on a code hosting platform;
    • add the files and metadata necessary for understanding the project;
    • make the software visible through the channels provided for PA.

  3. 3

    After release: managing the project over time

    Once published, the software enters its life cycle. Simple but consistent management also makes a difference. Follow these guidelines:

    • set realistic expectations on maintenance and support;
    • organize issue and request management;
    • adopt a clear versioning strategy;
    • automate testing and monitoring when possible.

Continued exploration

Read more

For detailed procedures, practical examples, and complete directions, see the chapter "For Software Developers" included in the Guide to Developing and Managing Free Software on Docs Italia.

Last update: