Programs have different definitions in traditional project management and in product management as in SAFe.
The traditional definition of a program is:
'A program is a group of related projects managed in a coordinated manner to obtain benefits not available from managing them individually. Program management is the application of knowledge, skills, tools and techniques to meet program requirements. Organisations with mature program management are far more successful than those without it, according to our research.' - PMI
In the case of SAFe we refer to a Program Backlog and an Agile Release Train (ART):
'The Program Backlog is the holding area for upcoming Features, which are intended to address user needs and deliver business benefits for a single Agile Release Train (ART). It also contains the enabler features necessary to build the Architectural Runway' - SAFe (Scaled Agile Framework®)
'The Agile Release Train (ART) is a long-lived team of Agile teams, which, along with other stakeholders, incrementally develops, delivers, and where applicable operates, one or more solutions in a value stream' - SAFe (Scaled Agile Framework®)
Organising data into Programs
Programs can be used in a variety of ways to organise data available in Jira. There are two basic principles which apply to a concept of a Program:
There is no limit on the number of Programs maintained using the app.
There is no limit to how many given objects (Tasks, Projects, Epics, Subtask, etc.) a Program can uphold.
A common use case incorporating the above is a setup, in which teams have their own Programs, with a low-level view and Edit permissions. For instance: Shareholders and Team Leaders may have an access to a separate Program, which pulls in tasks of all Teams.
A Program can be used to manage a Project, Program or Portfolio so to save time you can create different Programs serving a different purpose.