Streams
IN THIS ARTICLE
A Stream is a group of roles that typically work together on common activities or deliverables. They are a simple, yet powerful concept in Estii that makes it easier to assign estimates to multiple roles, and track the total effort attributed to them.
Stream overview
Streams are common to all deals within a space. Access Streams from the main menu.
- A stream can represent a loaded resource, a team (or group of teams) or a common deliverable
- Streams contain allocations of resources, either directly through roles, or indirectly through other streams. The ratio (or scale) of these allocations determine how effort assigned to the stream is distributed across those resources
- Stream allocations can either be a shared resource (default) or dedicated resource for that stream.
- Streams can be allocated to features and overheads within a phase
- Streams can be added or removed from the scope of a phase (like features), and contribute to the calculated duration of the phase schedule
Add stream
To add a stream, click New stream to open a new stream window. Enter a name and assign some resources (see below)
Reorder streams
Streams can be reordered and moved between categories via drag and drop. The order of streams determines their display order elsewhere in the space (such as in autocomplete drop downs)
Allocating resources
A Stream contains resource allocations (either roles or other streams).
To assign a resource to a stream, click Assign resource and type or look-up the resource.
Each assigned resource requires an allocation.* The default allocation is 1 (100% of a full resource), however partial and multiple allocations are also supported
The units and price columns contain the sum of all resources within those allocations
Dedicated resources
By default, allocated roles are part of a shared resource pool within a deal. In some cases, streams might require seperate roles (e.g. an iOS developer that is distinct from an Android developer).
Rather than create duplicate roles in the rate card, you can use the dedicated toggle to make them unique to a stream.
You can blend dedicated and shared resources, like in the example below:
- The Solution Architect and Test Engineer are part of the shared resource pool
- The Developer is unique to this stream
Within the deal schedule, dedicated roles will be grouped under the stream name
Stream examples
Role-based allocations
- A loaded resource (such as 100% of a developer, plus 25% of a tester, plus 10% of a team lead)
- A blended rate containing a split of seniorities of the same resources (such as 60% of a senior designer and 40% of a mid-level designer)
- A multi-person feature squad with 6 developers, 2 testers, 1 designer, 1 product owner and 25% of an architect and 20% of a product writer
Stream-based allocations
Streams can contain allocations of other streams, enabling reuse of common streams or combining loaded resources (as in the previous examples).
Some other examples of stream based allocations:
- A partial dependency on another stream (such as a 25% allocation of a Support stream to a Squad)
- An alias for assigning multiple stream at once (such as a Mobile stream that contains 1 iOS stream, and 1 Android stream)
- A container for related packages or services (such as a Support stream that contains Bronze, Silver and Gold Support streams.
- A specialisation of a generic stream (such as an iPad and an iPhone stream, each containing one allocation of an iOS stream
Deleting streams
When you remove a stream, Estii first checks to see if it is currently referenced by any other streams.
If a stream is already in use, you will be prompted to choose one of the following options before it can be removed
- Map all references to another stream
- Remove all existing references
Import / export streams
You can import and export streams to CSV.
The import/export formats are identical, so you can use this feature to migrate streams between spaces.
CSV file format
The expected format is comma delimited csv with the following columns:
Column | Description | Notes |
---|---|---|
Name | Name of the stream | Required |
Resource | Name of an existing role (or stream) to allocate. | Required |
Allocation | The number of this resource to allocate (e.g. 1, 0.5 or 5) | Required. |
Dedicated | Flag to indicate if role is dedicated to this stream | Optional. Either 1 or 0 (defaults to 0) |
Example:
Name,Resource,Allocation,Dedicated
Web,Web Lead,0.25,0
Web,Web Developer,0.75,0
Web,QA Engineer,0.25,0
Backend,Backend Lead,0.3,0
Backend,Backend Developer,0.7,0
Backend,QA Engineer,0.25,0
iOS,iOS Lead,0.2,0
iOS,iOS Developer,0.8,0
iOS,QA Engineer,0.25,0
Android,Android Lead,0.2,0
Android,Android Developer,0.8,0
Android,QA Engineer,0.25,0
Design,Design Lead,1,0
Design,Designer,2,0
Design,Business Analyst,0.5,0
Mobile,iOS,1,1
Mobile,Android,1,1
Import streams
To import streams from another space, select Import streams and choose a CSV file.
The imported streams will appear immediately.
Export streams
To export all your streams to a CSV file, select Export streams from the ...
menu on the top right. The file will download immediately.
Using streams
Allocating streams to features and overheads
Streams can be allocated to features and overheads within a Phase.
Adding/removing streams from phase scope
Streams can be added and removed from scope, however their behaviour changes based on their contents:
- If a stream contains roles (or a combination of roles and streams), it will appear in the scope view
- If a stream only contains other streams, only the children will appear in the scope view. The parent stream is essentially an alias for estimation purposes
Updating streams on a deal
Deals store a versioned copy of roles, rate cards and streams that can be updated from the deal page.