-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Handling multi-stage contracting processes #440
Comments
Thanks a lot for the exhaustive overview. I don't have an opinion on the modeling options above (yet?), but please find below a few thoughts. Concerning:
This is crucial. What do do we really need for transparent publication, and what can we ignore? What definitely needs to be covered is what you need for submitting bids (i.e. the first round) and the results. What is between is a trade-off between more information for transparency and added complexity. In the EU, talking about multiple stage procedures, we do not really cover any of the intermediary steps - only the first stage and the result. (This could be phrased as an Option 0 above - we simply don't model this, because it's too complex.) I'm not sure how much should be covered in general, but for example in case of competitive dialogues, I don't think that modeling all the intermediate stages adds much. Concerning:
and
For example, a restricted procedure with five lots is modeled as a single process. However, an open procedure with a framework agreement and five competitive call offs is, I would argue, quite similar, but would be modeled as 6 processes. The similarities: in both instances we start with a stage of "selecting a limited number of candidates" (even though the criteria differ); followed by five instances of "companies compete on award criteria for a "real" contract"; and, in both cases, there can be the same or different companies in each lot/call-off. Essentially, to make a brave analogy, I would argue that competitive call-offs are like lots (for call-offs you compete for the delivery of one thing at five different times, for lots you compete for five different things at one time), and so should involve the same number of processes.
Concerning other agencies, in EU procurement legislation, there are two different approaches to contracts (and in particular framework agreements) awarded by central purchasing bodies (a type of purchase by another agency). One is that buyers use framework agreements etc. established by central purchasing bodies (CPBs). The other one is that a CPB buys something and then transfers it to other public buyers. In general, I would say the first option could be met by having the "buyer" section specified in the "contract" section (perhaps if it is different than the one in the buyer section). In other words, the procuringEntity runs the procedure, the Buyer is then per contract. For the second option, in the EU, this is generally not public procurement. They are simply contracts (?) between public bodies. Is this type of relationship in the scope of OCDS? Concerning:
If we are thinking long-term, this may change - e.g. contractor could be moved to the contract section, not award, as discussed in #249 Finally, to add a twist, we've discussed this whole issue with @isarosa and, in fact, the Portuguese BASE models two stage procedures, call-offs etc. as separate (parent-child) processes - possibly similarly to what you proposed originally. The main reason is that while planning and implementation stages are not applicable for both of these processes (and winner and value for the contract stage mean something a bit different), the majority of e-procurement stages are the same: eNotification, eAccess, eSubmission, eEvaluation, eAward, (partially Contract). Going more into the actual experience of BASE could help resolve this issue. (...perhaps both approaches can work, and it's mainly a question of which terminology is more intuitive - while ensuring consistency...) |
Relevant to EU forms. |
Relevant comments in #371 start from: #371 (comment) |
Note: eForms/eForms#251 (comment)
|
Related: #784 (comment) |
Summary regarding framework agreements with mini-competitionsThe OCDS 1.1 guidance models the establishment of the framework agreement as one procedure (one OCID) and each mini-competition as a new procedure (new OCID). However, mini-competitions are part of the same procedure as the establishment of the framework agreement, in EU law and elsewhere. We therefore need a solution that represents these under one OCID, to respect the definition of 'contracting process' #866. This issue (below) and issue #906 discuss specific proposals. Additional problems with the OCDS 1.1 guidance are that:
DiscussionResponding to the above, now that I'm looking at the EU forms yet again, I think:
I don't see a problem with option 2 (new block adjacent to
To clarify, the issue with the proposed model is that The issue is easily resolved if the definition of
This gives sufficient latitude to adjust semantics. The
This gives less latitude. However, these semantics are already widely ignored if interpreted strictly, such as for framework agreements. If
I have yet to see data about these rounds. For now, we can pursue @JachymHercher's option 0. In future, I don't see an issue with
Some contexts consider this scenario to be one contracting process, others consider it to be two. For OCDS to be consistent, we ought to choose one model. My preference is two. This is also consistent with the concept that
It seems consistent with the above to use the proposed ProposalMy recommendation would be to work on a proposal for a We would need to:
This proposal, in short, is like option 1 (changing @JachymHercher's 'brave analogy' between lots and call-offs seems appropriate: lots are the way to multiply components of a first stage. Having a |
Second Stage extension drafted here https://gitlab.com/dncp-opendata/ocds_secondStage_extension And some comments from discussions/retreats:
cc @jpmckinney |
@PaulBoroday The extension above is the proposal for OCDS 1.2 (i.e. backwards-compatible with OCDS 1.1). In short, it adds a |
Adding resources to review/consider: |
Hi @jpmckinney ! How it is now considering that we have secondStage in the EU extension with a bit different logic? |
The EU extension is just about describing the second-stage from the perspective of the first stage (e.g. min/max candidates): https://extensions.open-contracting.org/en/extensions/secondStageDescription/master/ The EU legislation / process doesn't describe the second-stage itself (the specific invitations to bid); it only announces the awards from any mini-competitions. The DNCP extension above is instead about modelling the second-stage itself (the invitations, the bidders, etc.). |
UNCITRAL glossary defines:
EBRD glossary lists:
|
The World Bank recently published a Guidebook for Setting-up and Operating Framework Agreements. From a quick scan, it mostly references familiar sources: the EU Directives, the UNCITRAL model law and The Law and Economics of Framework Agreements book. However, it contains seven country case-studies which may be of interest. |
This issue builds on the review comments in #371, and discussions with the technical team and implementers, to set out an approach for OCDS 1.1 for handling multi-stage contracting processes, and sets a direction towards 2.0.
Current situation
The concept of a contracting process is central to OCDS. By bringing together multiple releases of data and information related to a single contracting process, OCDS enables citizens, companies and governments to get a clearer view of contracting activities.
The standard defines a contracting process as:
Each contracting process is identified by an Open Contracting ID (
ocid
).The standard currently contains a single
tender
block, and then arrays of one or moreaward
andcontract
(and nested within contract,implementation
) blocks.This pattern, of a single
tender
block, was developed to avoid publication mistakes where tenders from different contracting processes could end up mixed together under the sameocid
.Limitations
The current model has major limitations in the case of contracting processes where multiple tender notices or solicitations are issued. This includes:
Initial proposal and review
In proposals for OCDS 1.1, we sought to address this by creating a
relatedProcess
block that could link two or more contracting processes. This would allow, for example, one contracting process to contain the pre-qualification tender, and award onto a shorlist, and a second, related process, to contain the invitation to qualified bidders and the final award of the contract.However, peer-review feedback noted that this breaks the idea of bringing together all information about a contracting process under a single
ocid
.The reviewer rejected the introduction of
relatedProcess
to deal with cases of frameworks, pre-qualification, competitive dialogue and other multi-stage processes.We agree with the reviewer that the handling of pre-qualification and other multi-stage processes requires attention.
We believe that
relatedProcess
still has a role in some forms of framework, particularly cases where one agency establishes the framework, and other agencies are then running their own independent contracting processes to buy from that framework.Alternative models and their implications
In this section we scope out alternative approaches to allow us to represent multi-stage contracting processes. This is guided by:
And based on a number of assumptions:
tender
block to advertise available opportunities;award
block to analyse firms in receipt of contracts, and the value of those contracts;tender
block, many applications will not be release-aware, and so will only look at the latest state of thetender
.tender
block of a contracting process to, at one time represent the 'qualification stage' of a process, and then at a later time, to change to represent the 'tender stage' of the process.Option (1): Convert tender into an array
Tender could become an array: possibly renamed to 'initiation' or 'solicitation', but using the same structure as the current
Tender
object. In this case:Tender
object in the array would have atype
to indicate whether it is a 'preQualification', 'tender' or some other solicitation as part of a single contracting process;Award
andBid
(where the bid extesion is used) would need to have atenderID
property in order to make it clear which tender they related to (e.g. to distinguish awarding a supplier a place on the shortlist, from awarding them the contract); orawards
), and 'qualification' block based onbids
would need to be introduced for qualified suppliers to be listedrelatedProcess
cross-reference would need to be able to point to specifictender.id
This approach would not be backwards compatible, and so would need to be included in version 2.0, rather than 1.1.
Option (2): Create a distinct property for qualification
An additional
qualification
property could be added parallel totender
re-using theTender
object to represent the pre-qualification call, withtender
then used for the call for proposals.This approach does not change the semantics or structure of existing properties, so could be included in 1.1.
It works for two-stage processes, but does not work for processes with more than two stages.
It means that applications will need to look in
qualification
as well astender
to find opportunities to communicate to users.The separate
qualification
object approach is taken in the PPP Implementation Profile of OCDS, although in this case, there is a lesser requirement that applications be able to advertise thequalification
opportunity - as PPPs are lower volume - and the use-cases for the PPP Implementation Profile do not cover advertising opportunities.Option (3): Re-use tender block for each stage
We would not change the schema, but would instead provide guidance that the
tender
object should be updated to reflect the most recent solicitation, wheter that was a qualification related notice, a tender, or a mini-competition.The history of past states would be available from the versionedRelease and by looking at past releases.
However, this approach would:
(a) Make it difficult to see all the stages of a contracting process at once;
(b) Risk creating a confused 'record' - as if the first qualification entry in a tender contains, for example, a set of items which are later removed from the full tender, and the subsequent tender does not 'null' these to remove them - the record will show a tender that included these items;
For this reason - we cannot recommend this option.
Related process for frameworks with competition
Based on the discussion in 310 we believe that it remains appropriate in some cases to have competitive call-offs from a framework modelled using separate contracting processes and
relatedProcess
.This is summarised in the table below:
tender/status
should be active for the lifetime of the dynamic purchasing system withtender/tenderPeriod
andtender/awardPeriod
reflecting that suppliers can join the DPS at any time. Multiple selective or limited processes to represent competitions between suppliers on the DPS for individual contracts, linked to the DPS via relatedProcess (see #371 ).In the event that option (1) above is adopted, it would be possible for the mini-competitions that form part of a framework to be represented as part of a single contracting process.
However, there are cases where this is not appropriate (for example, when the framework is set up by a national agency, and assigned a process identifier in their national systems; and the competitive call-offs are carried out by local agencies, given distincy process identifiers in the local systems): so a choice would need to be made about whether to allow competitive frameworks to be modelled in those two different ways, or to restrict modelling of competitive framework call offs to the
relatedProcess
model.Suggested actions
relatedProcess
codelist;Tender
objects, rather than a singletender
entry;relatedProcess
to specifically reference a tender.id;The text was updated successfully, but these errors were encountered: