Skip to content

Commit

Permalink
refs #148: The bulk of the info is there. Needs a double-check.
Browse files Browse the repository at this point in the history
  • Loading branch information
stickgrinder committed Oct 19, 2023
1 parent bc66893 commit 2f80c5d
Show file tree
Hide file tree
Showing 4 changed files with 116 additions and 3 deletions.
42 changes: 41 additions & 1 deletion content/resources/projectroles-acc-analyst.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,44 @@
Title: Ownsership - Analyst
Description: Ownerships of an Analyst on SparkFabrik's projects
Sort: 200
*/
*/

Analysts are great when it comes to mapping a domain, fathoming complexity and expressing it in a clear, rational, understandable form. Analysts may not always have a solution at hand but for sure they know when a need is fulfilled or a problem is solved. Analysts' skills make for great Product Owners.

Analysts are responsible for the functional analysis of products in progress on behalf of the customers. They define the requirements for its features and can contribute to the population of the work backlog. They are the individuals tasked with maintaining consistency between the product's functionalities and ensuring that the requirements are clear and well-described, ready to be worked on by the team.

They do not handle the technical direction of the project (thus, they do not evaluate individual implementations from a technical perspective) or the management of deadlines, budgets, and external priorities unrelated to the product.

## Caveats

The analyst must maintain continuous involvement with the client and the project, much like the [Project Manager](/resources/projectroles-acc-project-manager). They cannot be assigned on an on-call basis as they are the owner of client request analysis and need continuity and full visibility to perform effectively.

They must comprehensively analyze and manage client requests throughout the project's lifespan. This requires a sufficiently technical background to handle them independently and manage requirements even involving technical decisions, without necessarily making those decisions themselves.

## Ownership

* Analysis and definition of functional requirements
* Preliminary analysis during the pre-sale phase
* Quality assurance and smoke testing

## Practical tasks

* Contributes to pre-sale estimates
* Performs initial analysis and development of the functional technical document (with the [Project Manager](/resources/projectroles-acc-project-manager) and [Solution Architect](/resources/projectroles-acc-architect))
* Collaborates with the [Project Manager](/resources/projectroles-acc-project-manager) in drafting the project plan (roadmap)
* Leads functional requirements validation
* Definites the requirements (with the Client)
* Drafts the issues in terms of functionality description, acceptance criteria, and validation scenarios
* Maintains requirements documentation

## Concrete outputs

* Documents with pre-sale estimates
* Functional analysis documents (conceptual map, structure, etc.)
* Project backlog and requirement documentation
* Acceptance test cases

## Interactions

Please, visit the [Interactions between project roles](/organization/operations#interactions-between-project-roles) section.

38 changes: 37 additions & 1 deletion content/resources/projectroles-acc-architect.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,40 @@
Title: Ownsership - Architect
Description: Ownerships of an Architect on SparkFabrik's projects
Sort: 210
*/
*/

Architects describe the best possible solution to a framed problem. They are great decision makers, understand the long-term implications of technical choices, know how to quickly probe, understand and adapt and always grasp the big picture.

The Solution Architect serves as the technical leader for a product. They are responsible for defining the solution's architecture, its dependencies, and the services it encompasses. They actively participate in development alongside the rest of the team, encouraging each member to proactively address problems based on their seniority.

The Solution Architect defines strategies to ensure the quality of product implementation, starting with adherence to established best practices already in use within the company. They seek validation from the CTO if they believe it is necessary to evolve or introduce new practices. They participate in internal calls and those with the client when specialized technical input is necessary or preferred.

## Caveats

Large projects may need specialized software architects for different areas (say, frontend and backend). Nonetheless, a single Solution Architect should be designated for each project to ensure coordinated choices, adherence to UDoD, and alignment with non-functional requirements.

Small projects with limited technical complexity may not require a dedicated Solution Architect. In such cases, responsibilities can be delegated within the team, under the Team Leader's guidance.

## Ownership

* Technical architecture of the product
* Technical documentation of the product
* Technical quality of implementations and adherence to best practices
* Alignment of the technical solution with functional requirements
* Promotion of technical innovation within the team

## Practical tasks

* Coordinates and conducts pre-sale estimates
* Defines non-functional requirements (performance, security, operational costs, solution scalability, etc.)
* Defines the technical project architecture
* Drafts technical architecture documents and ADRs (Architecture Decision Records)
* Provides internal technical advisory
* Conducts (delegating at their discretion) technical reviews of work (code-reviews, etc)
* Ensures the establishment of DevOps practices

## Concrete outputs

* Technical documentation for project architecture and ADRs (Architecture Decision Records)
* Initial solution stub with the team
* Technical implementation
35 changes: 34 additions & 1 deletion content/resources/projectroles-acc-project-manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,37 @@
Title: Ownsership - Project Manager
Description: Ownerships of a Project Manager on SparkFabrik's projects
Sort: 230
*/
*/

Managers make things work. They coach, measure, plan ahead, warn and ultimately support people to give their best, removing obstacles, and improving their processes and procedures. In SparkFabrik people are never managed -- work is. So managers govern but never rule.

The Project Manager maintains an overview of the project's progress, ensuring that the roadmap is understood, followed, and evolved in collaboration with the Client, when new information arises during the project's execution.

They interact with the team as a coach and facilitator, by feat of their high-level perspective, working to eliminate impediments that could slow down productive processes or grind them to a halt. During crisis, if requested by the board or the team, they may need to enforce corrective actions, taking control of the project, taking an assertive stance, until ideal working conditions are restored.

The Project Manager is responsible for managing progress, budgets, and other key indicators, reporting any program deviations to the board and the client, and maintaining an analytical eye on processes to suggest corrective actions and improvements. In particular, the PM monitors the team to address any discrepancies from contractual obligations, whether they are shortfalls or overages, and realigns the team as necessary.

## Ownership

* Budget
* Timeline and deadlines
* Processes
* Contracts
* Roadmap / Milestones definition and maintenance

## Practical tasks

* Collaborates in the team's weekly planning (with [Analysts](/resources/projectroles-acc-analyst) and [Solution Architects](/resources/projectroles-acc-architect))
* Meetings agendas
* Project priorities negotiation
* Activity reporting (during retrospectives with [Analysts](/resources/projectroles-acc-analyst) and [Solution Architects](/resources/projectroles-acc-architect))
* Contractual project overseeing
* Facilitation of dialogue with Management and Client
* Keeping project documentation
* Billing management in coordination with the administration

## Concrete outputs

* Monthly reporting (internally and externally)
* Service Level Agreement (SLA) documentation
* Formalization of substantial deliveries
4 changes: 4 additions & 0 deletions content/resources/projectroles-acc-team-leader.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,7 @@ They ensure that the technical project documentation is kept complete and releva
* Technical documentation
* Reporting of team and business events operational decisions, including calls with customers and minutes of agreed actions
* Clear, updated and representative project board of the status of the activities

## Interactions

Please, visit the [Interactions between project roles](/organization/operations#interactions-between-project-roles) section.

0 comments on commit 2f80c5d

Please sign in to comment.