Proposed start date: January 17, 2022
Current project management tools we've explored require a lot of effort (for devs) to input data, and then fail to make that data transparent across teams. This is demotivating for all teams involved and makes it hard to
We need a way to get data about what people are doing, and display how that fits into short term planning, as well as long term goals and timelines.
It's critical that:
Input–-for devs and project managers–-is minimal, fast, as much as possible, automated via integration with our tools, and output is quick to load and creates good visability for and among all teams, stakeholders, and users. Devs should be able to view the basics from withing their development environment (in the shell)
Currently we need to have Gitlab and Github data aggregated in this tool. Other platforms might be included in the future.
For a dev, the tool should open to a clean, fast loading, and responsive 'dashboard'.
What devs should see (aka KPIs):
Mockup of how the above elements could be laid out:
Design for visual workload meter:
For developers it's important that the essence of the report is available through their coding env. A summary in text and simple ASCII charts would allow for this.
Similar to a dev, a team should have all the same metrics available to view. It should also be possible to message a team via an internal
For project managers and for interested devs: the project level view.
This should be a dashboard showing a cumulative view of each dev's bandwidth, timelines, and dependencies.
[TODO] mockup what dev and PM views could look like
[TODO] think about how to handle FUTURE issues so they are not oblivion
Feedback needed: this is for linking cross-team issues. Does it sound like the right approach? And if it is, is it adequate or are there other features you'd want to see for cross-team work?
We need a functional and secure place to store:
We can integrate HackMD, or use our own generic markdown editor.
Gitlab groups issues several different ways, then provides different charts/search terms based on the grouping option you used. They can't be used interchangably, nor is there a way to convert to another grouping option if you picked the wrong one.
These are the groups:
Group | Features | Note |
---|---|---|
Milestones | burndown | Milestones are lower price-tier Epics |
Epics | roadmap, timeline | Ultimate feature. Epics are trees; they can contain other epics |
Labels | group issues (and epics) in boards | |
'related to' | list |
Epics (premium feature) are also trees (an epic can contain another epics).
In our solution all of these groups should be the same data structure. Viewing a burndown, roadmap, timeline, board, or list for a group of issues should be a secondary choice that can be configured.
a useable dashboard makes issue boards redundant
Issue boards are a useful idea: filter the issues you want, and place them manually, like on a physical corkboard.
Gitlab implementation makes them pretty un-useable. Sorting can't be done automatically as an alternative, and filtering is limited (can't combine more than one user in a column, other random glitches).
This could be a killer feature, or a total dud, depending on UX. Show dependencies with lines, and groups with (color code? circles?) It would be something like a mind map, but across people and teams.
when would you use it? anytime you're feeling a bit at a loss for structure. When you want to see the landscape view in order to know what milestones to create, where you need more people, or what to prioritize. This feature needs more user testing and feedback than the rest, but if it's easy to use and intuitive enough, it could be incredible.
[TODO] critical: mockup what a good implementation could look like / examples
Other than monthly calls and written summaries, how can we represent the priority of different sub-projects?
A lot of live post-it-note 'algorithms' for this exist. Suggestion: Let people vote.
Pop up new projects on the board (constraint) and if someone is interested in it, let them rank:
If no one votes, it goes on the grooming list, which is what we work through at the weekly meeting.
NOTE: time / effort | Importantace / (tractable=certainty+ease/cost/ease/effort) / Neglectedness (will it happen without bothering with it, or will it get forgotten?)
Feedback would be great to get, also data and iterative user testing are particularly key in order to make this feature both effective and simple to use
MR reviews
No one knows an MR needs review (unless the owner is very proactive).
Current solution:
Ideal solution:
Help
Who can help with X issue?
Current solution:
Ideal solution:
There will always be a need for human-to-human work here, but the following can help:
Gitlab does not allow easy OR and AND selection.
Works:
SELECT issues WHERE assignee = 'John'
Does not work:
SELECT issues WHERE assignee = 'John' OR 'JANE'
does not. You can hack it by adding users in the URL. This should not be necessary.
There are other hiccups in Gitlab search, but it amounts to: implement the basics of SQL
In Gitlab you must know the issue ID number to make a reference to a related issue, to link an issue or MR in a comment, or to link a merge request to an issue. This means you have to open a new window or tab, search for the issue, then copy the ID back into the reference field.
In our tool, wherever a reference is possible, the same fully functional search should be available.
This tool should be a minimal layer on top of whatever tool we use for issues and version control.
What would changelog integration look like?
Cross-team is covered in dependencies; is there anything else which should be added to make this what you imagined?
people/teams should be able to BE blockers, and search "issues blocked by" person/team
Bandwidth can be determined by this
teams should also have 'dev' pages
assign to a team as well as a person, etc.
message a team
This is part of prototyping / UX, so I'll leave it as a goal without details for now:
GA
Didier (other managers)
Thomas Haessle
tech leads
ambassador of developers
With Locastic as our development team, the following will be our budget and associated milestones.
20 to 40 hours | 1,200.00 to 2,400.00 EUR
With Locastic, Client and other required participants
The purpose of the workshop is to work together finding the main problems and needs.
From Locastic: 1 project manager, 1 designer.
Product: Document with conclusions from the workshop that
serve as a basis for further development. (Goals, purpose,
problems, main features…)
30 to 40 hours | 1,800.00 to 2,400.00EUR
After the workshop and setting up the project, we move to the research and analysis phase of the existing data we collected. Research methods lead to a better understanding of the problem area, scope and opportunity areas for meeting user’s needs.
From Locastic: 2 designers (full time)
Methods: quantitative research, qualitative user interviews
40 to 60 hours | 3,600.00 to 4,800.00 EUR
Create a low-fi/high fi wireframe with functional prototype to test and plan all possibilities and features for the end users. Wireframes are rough sketches of the user's interface which give a better insight in features, system, technology as well as
usability and business opportunities.
Wireframes are mandatory for each project because they reduce time, and predict errors in design and development. For each problem we solve in the wireframe phase we reduce development time for roughly 80%.
20 to 30 hours | 1,200.00 to 1,800.00 EUR
After wireframing, it's mandatory to do a prototype to test the flow with the real user. Prototype as well allows us to precisely estimate all screens and time of development.
The prototype user testing has two versions:
After the user testing designers redesign the current flow by users feedback. If necessary, round two of testing will be done.
110 to 170 hours | 6,600.00 to 10,200.00 EUR
Total with 10% discount welcome discount:
110 to 170 hours | 5.940.00 to 9,180.00 EUR
### Integrated voice chat/meeting/availability?~
Perhaps based on what's open/active in gitlab ? but it must be light and fast and not require downloading another tool (this was the biggest obstical to using Tandem)
Slack Huddles probably replaces this.
how to deal with many small tasks. Group? but this would be a long ongoing forever bar
how to deal with comment tasks on merge requests
color per project(?)
task weight needs to be distinct from length (maybe color?)
range of start/end