Sprint Planning
This ceremony marks the start of each sprint, which is a time-boxed iteration typically lasting 1-4 weeks. In Sprint Planning, the development team, Scrum Master, and Product Owner discuss the goals for the sprint and identify the user stories or backlog items to be worked on. The team estimates the effort required for each user story and determines how many can be completed in the sprint.
squinting and sprinting
While Agile does emphasize both planning and rapid development, the usual terms used are:
- Prioritization: This involves carefully selecting the most important features or user stories to work on first. This aligns with the idea of "squinting" - taking a focused look at what needs to be done.
- Iterations (Sprints): These are short, time-boxed periods (usually 1-4 weeks) where development happens in a fast-paced way. This aligns with the idea of "sprinting" - working quickly and efficiently.
So, while "squinting and sprinting" isn't an official term, it captures the essence of Agile's approach to software development: focusing on what matters most and then delivering it quickly in short cycles.

Prioritization
Prioritization is the process of selecting the most important features or user stories to work on first. This aligns with the idea of "squinting" - taking a focused look at what needs to be done.
| Level | Name | MoSCoW Equivalent | Definition |
|---|---|---|---|
| P1 | Critical | Must Have | The product is unusable or severely damaged without this. Requires immediate action. |
| P2 | High | Should Have | Important and adds significant value, but a workaround exists. Required for the next release. |
| P3 | Medium | Could Have | Desirable, non-essential feature or improvement. Adds minor value. To be included if time allows. |
| P4 | Low | Won't Have | Future-looking or very minor. Will be deferred for a later release or dropped entirely. |
Estimating Time & Complexity
Estimation is the process of predicting the most realistic amount of effort required to develop or maintain software based on incomplete and uncertain input
T-shirt sizes at first then Fibonacci numbers
For a new development team adopting Agile, the product manager (PM) or Scrum Master can implement a phased estimation strategy using T-shirt sizes initially, then transitioning to Fibonacci numbers. This approach builds team confidence, fosters collaboration, and refines estimation accuracy over time. Here's a clear, step-by-step explanation tailored for a new team:
Phase 1: Start with T-shirt Sizes
Why Use T-shirt Sizes?
- T-shirt sizing (e.g., XS, S, M, L, XL) is intuitive and less intimidating for teams new to Agile estimation. It focuses on relative effort and complexity without the pressure of precise numerical values.
- It encourages high-level discussions about tasks, helping the team understand the scope and align on relative effort.
How to Implement:
-
Introduce the Concept:
- Explain that T-shirt sizes represent rough estimates of effort, complexity, or risk for user stories or tasks (e.g., XS = very small, XL = very large).
- Emphasize that this is not about exact hours but about comparing tasks relative to each other.
-
Set Up Estimation Sessions:
- During sprint planning or backlog refinement, present user stories or tasks from the product backlog.
- Use a visual aid (e.g., a whiteboard or digital tool like Jira) to display T-shirt sizes.
-
Facilitate Estimation:
- Have the team discuss each user story briefly to understand its scope, dependencies, and potential challenges.
- Ask team members to individually assign a T-shirt size to the story, then reveal and discuss their choices (e.g., using Planning Poker cards or a digital tool).
- If estimates differ (e.g., some say M, others say L), discuss why. Focus on clarifying requirements or technical concerns to reach a consensus size.
-
Record and Use Estimates:
- Log the agreed-upon T-shirt size for each story in the backlog.
- Use these sizes to prioritize and plan sprints, ensuring a balanced workload (e.g., avoid overloading a sprint with too many XL stories).
-
Reflect and Learn:
- After the sprint, review how accurate the T-shirt size estimates were during sprint retrospectives. Discuss which stories took more or less effort than expected and why.
- This builds team intuition for estimating and prepares them for the next phase.
Duration for Phase 1:
- Use T-shirt sizing for 2-3 sprints (4-6 weeks for two-week sprints) to help the team get comfortable with relative estimation and Agile processes.
Phase 2: Transition to Fibonacci Numbers
Why Switch to Fibonacci Numbers?
- The Fibonacci sequence (e.g., 1, 2, 3, 5, 8, 13, 21) is commonly used in Agile (e.g., Scrum’s story points) because it reflects the increasing uncertainty of larger tasks. It forces teams to acknowledge that bigger tasks are harder to estimate precisely.
- It provides a more structured framework for estimation while maintaining the focus on relative effort rather than exact time.
How to Implement:
-
Educate the Team:
- Explain that Fibonacci numbers (or a modified sequence like 0, 1, 2, 3, 5, 8, 13, 21) will replace T-shirt sizes to provide more granularity while keeping estimates relative.
- Map T-shirt sizes to Fibonacci numbers to ease the transition (e.g., XS = 1, S = 2, M = 3 or 5, L = 8, XL = 13 or 21). Clarify that the exact mapping may vary based on team discussion.
- Highlight that story points account for effort, complexity, and risk, not just time.
-
Update Estimation Process:
- Continue using Planning Poker or a similar technique, but with Fibonacci numbers instead of T-shirt sizes.
- Encourage team discussions to align on story points, focusing on why a story might be a 5 versus an 8, for example. Use past sprints’ T-shirt size estimates as a reference to maintain consistency.
- For larger stories (e.g., estimated as 13 or 21), discuss whether they should be broken into smaller, more manageable stories to improve accuracy and delivery.
-
Track Velocity:
- After each sprint, calculate the team’s velocity (total story points completed). This helps the team understand their capacity and improves sprint planning.
- Share velocity trends during retrospectives to show progress and refine estimation accuracy.
-
Refine and Normalize:
- Over time, establish a baseline story (e.g., a simple task consistently estimated as 2 or 3 points) to anchor future estimates.
- Regularly revisit and refine the estimation process in retrospectives, addressing any challenges (e.g., consistent over- or underestimation).
When to Transition:
- Move to Fibonacci numbers after the team is comfortable with T-shirt sizing (typically after 2-3 sprints) and shows readiness for more precision. Look for signs like consistent T-shirt size estimates or fewer disagreements during estimation sessions.
Key Tips for the PM/Scrum Master
- Foster Collaboration: Ensure estimation is a team activity, not driven solely by the PM or senior developers. Encourage quieter team members to share their perspectives.
- Keep It Lightweight: Avoid overcomplicating early estimation sessions. Focus on discussion and learning rather than perfection.
- Use Tools: Leverage tools like Jira, Trello, or physical Planning Poker cards to make estimation engaging and visual.
- Be Patient: New teams may struggle with estimation initially. Use retrospectives to address concerns and improve over time.
- Avoid Time-Based Thinking: Reinforce that both T-shirt sizes and Fibonacci numbers are about relative effort, not hours or days, to prevent anchoring to time-based estimates.
Why This Phased Approach Works
- T-shirt Sizes First: Simplifies estimation for beginners, reduces pressure, and builds team confidence in discussing and comparing tasks.
- Fibonacci Later: Introduces more precision and aligns with Agile best practices (e.g., story points), enabling velocity tracking and better sprint planning.
- Gradual Learning: The phased approach respects the team’s learning curve, ensuring they master relative estimation before adopting a more structured system.
Estimating w/ Poker
LOE - Level of Effort
Estimating the level of effort (LOE) in software development is a common challenge, as it involves predicting the time, resources, and complexity of a project or task. While it's not an exact science, there are several approaches and techniques that can help you estimate LOE more effectively. Here are some steps you can follow:
Understand the Requirements
Begin by thoroughly understanding the project requirements. Review any available documentation, user stories, or specifications. If necessary, clarify ambiguities or uncertainties with the project stakeholders.
Break Down the Work
Divide the project into smaller, manageable tasks or user stories. The more granular the breakdown, the easier it will be to estimate the effort accurately. Use techniques like work breakdown structure (WBS) or story decomposition.
Analogous Estimation
Look for similar projects or tasks that have been completed in the past. Estimate the effort for the current project based on the historical data from those previous projects. This technique is called analogous estimation or comparative analysis.
Use Expert Judgment
Involve experienced team members or domain experts in the estimation process. Their expertise and insights can help you make more accurate estimates. Conduct discussions or workshops to gather their input.
Estimation Techniques
There are several estimation techniques you can consider:
-
Expert Opinion: Seek input from individual experts or the entire team to estimate the effort required for each task. This can be done using techniques like Planning Poker, where team members provide their estimates independently and then discuss and converge on a consensus.
-
Bottom-Up Estimation: Estimate the effort required for each small task individually, and then roll up the estimates to get an overall estimate for the project. This is often more accurate but can be time-consuming.
-
Parametric Estimation: Use historical data and statistical models to estimate effort based on project parameters such as lines of code, function points, or story points. This approach requires a reliable historical database and relevant metrics.
-
Three-Point Estimation: Instead of providing a single-point estimate, provide three estimates: optimistic, pessimistic, and most likely. This technique helps account for uncertainties and risks. You can use these estimates to calculate an average or apply techniques like PERT (Program Evaluation and Review Technique).
-
Consider Risk and Dependencies: Identify any potential risks or dependencies that may impact the effort estimation. Risks such as technical challenges, integration complexities, or external dependencies can significantly affect the LOE. Assess the impact of these factors and adjust your estimates accordingly.
-
Document and Track: Document your estimates and assumptions for future reference. Keep track of the actual effort spent on tasks and compare it with your estimates. This will help you refine your estimation process over time.
Remember, estimation is not an exact science, and there will always be uncertainties. Regularly review and update your estimates as the project progresses and new information becomes available. Communicate the estimated LOE and associated risks to the project stakeholders to manage expectations effectively.
Economic Sequencing
- Analyze social media insights from facebook page, competitors, industry standards
- Create calendar timeline of blog posts, with topics
- Prepare creative content for launch next week
- Interact with audience to drive engagements
- Iterate based on feedback
- Utilize Ad budget to spike posts
- Review results from campaign at end of month. Create case study
- Pitch web dev services
- pitch social media management services
As an experienced tech entrepreneur, founder, and CTO, I understand the importance of agile decision-making, decentralized decision-making, and delegation in fostering a dynamic and efficient work environment. Here's a description of the best approach to each of these aspects:
Strategic Considerations
- Organizational need
- Market demand
- Customer request (could be internal)
considerations for smaller teams
- Encourage documentation of decisions: Record key decisions and their rationale in a shared location.
- Hold regular knowledge-sharing sessions: Even informal presentations or discussions can be beneficial.
- Promote a culture of asking questions: Create an environment where it's safe to ask questions and seek help.
- Blameless culture: If someone makes a mistake, ensure that people learn and there is no blame.
- Blameless postmortems: Focus on systems and processes, not individuals. The goal is to understand why the incident occurred and how to prevent it from happening again.
- Establish an on-call rotation: Even small teams should have a process for handling production issues.
- Use a shared incident log: A simple document or spreadsheet can be sufficient for tracking incidents.
- Refactor incrementally: Improve code quality gradually rather than through massive, risky rewrites.
- Prioritize debt reduction: Focus on addressing debt in areas that are frequently changed or cause the most problems.
Sprints and Releases
- Discuss the needed features to address the goals.
- Discuss the details involved in each feature, and factors that can influence delivery. This would include the infrastructure required, risk, and external dependencies. Features with highest risk and highest value should be planned early in the release.
- Decide how much work you can commit to as a team, to finishing in each sprint. This is usually based on the team’s velocity in previous sprints. You should take into account existing work on infrastructure or tools, and known interruptions such as support work.
- List the stories and epics for the release in priority order with their size. An epic is a larger dev task broken down into several user stories.
- Add an iteration to the plan.
- Add stories to the iteration until it reaches the maximum capacity.
- Add more iterations until all user stories are covered, or remove lower priority user stories to adapt to the required time frame for the release.
- Share the plan and ask for feedback to get commitment from all team members, product owner and other stakeholders.
determine the minimal feature set needed for MVP
- in the use case study, there will be a super long wish list of features, many of which are not necessary for building out an MVP to prove a concept.