It depends on what you consider a developer.
If a user has publish rights to an app he/she can create new sheets and stories and publish these so they show up in the Community section. Those users do not need access to the QMC. An admin could then promote these sheets to base sheets by duplicating the app and republishing it replacing the original.
If you have several users that need to make changes to the script, base sheets and stories or the master items then they'll have to coordinate who gets to work on the app when. Those users do need access to the QMC.
If you have a lot of developers working on a lot of qlik sense apps together you could consider using a tool like Platform Manager.
thanks Gysbert! yes i meant the second scenario that you described - when two developers work on the same project and hence need to access scripts, sheets etc. Currently with QlikView, they still need to coordinate work but at least they get access to the same QVW. I am trying to figure out how it works with Sense. Would you mind to describe a workflow in this case? Let's say developer1 created a new sense dashboard which is not published yet. Then his teammate (developer2) needs to make some changes to the scripts.
Does it involve export / import by QMC admin? In our organization, developers do not have direct access to QMC and we have a dedicated admin. Is there an easier way without involving QMC import/export?
Thanks for mentioning Platform Manager - I will check it out.
I wonder if two developers working on one application tend to work on logically different aspects of that application.
That is the case in our company.
Basically one developer make a changes in application model and other do visualisations.
In QlikView that mean that first one make changes in script and metadata: expressions, formulas, labels and comments for expressions. Both script and metadata ara edited externally in decent text editor with some syntax support. So that developer may work without direct access to QlikView application (that application being opened by second developer, that do visualisation part of work). Changes in externally managed scripts and metadata go to application by reload (initiated by second developer)
I hope to migrate that infrastructure to Qlik Sense too. External scripts are supported by Qlik Sense by default, for metadata part we should create tool for import of master items measures into Qlik Sense application.
Thanks for involving me into this.
Ideally Qlik Sense needs a check-in/ check-out mechanism for multi-developer environment. However, Qlik Sense does not have that (I'm not sure which BI tools have that anyway ?). QlikView theoratically has that option (Integration with tools like TFS or GitHub etc) but I do not think it is practical either.
So, what you can do in Qlik Sense:
- Users can create their own sheets and they can be published to the stream. These are called approved sheets. Approved sheets can be made public sheet via PostgreSQL database update only as far as I know.
- If you are a Content Admin in Hub and QMC, you can have the full control over all the apps (seeing the script, making changes, publishing from QMC etc).
Using these capabilities, you can have more than one developer in theory but still you need to sync with your peer developers manually before publishing the apps, which I believe is not ideal .
Does it involve export / import by QMC admin?
Not necessarily. The admin can change ownership of an app to a developer. The developer can then duplicate the app and modify it. The admin can later publish the document. Or the developer can publish the app if you give him/her the right to publish apps to a certain stream.
If two developers need to modify the same app then the admin will need to change ownership from one developer to the other so the latter can modify the app in turn.
In the process outlined above the developers don't need access to the QMC. But an admin is needed to change ownership of the app every time another developer needs to work on the app.
The alternative is that the developers work in Qlik Sense Desktop and simply mail each other the app when the other needs to work on it. After all the work is done and the app is finished the admin can import the app and publish it. The drawback is that you need to keep track of other resources used in the app like images and extensions and make sure those arrive on the Qlik Sense Server together with the finished app.
thanks for the options, Gysbert. Cannot say I am happy with them for reasons you outlined above but at least I know how you guys are doing it.
The thing is our organization's policy prohibits publishing of apps or changing security settings by developers and looks like they would have to work with admin either way to see each other code and help each other (which means more work for admin).
I submitted a ticket to Qlik BTW, asking if there is a way for Developer 2 to duplicate an app created by Developer 1 without asking QMC admin (or without giving them access to QMC) and they came back with this that gave me a hope it will be addressed in future:
There currently is not a way for Developer 2 to duplicate any apps that they do not own in the Hub. This has been logged as an improvement and the folks in R&D are working on it.