My Agile stack
After 18 months of working on my first and largest project, I've come to realize the flaws in my approach. Lack of methodology, project outline, and proper planning led to a stalled solution. Reflecting on this journey, I've learned valuable lessons, primarily on what not to do. However, today, I am focused on pulling myself out of this rabbit hole.
What is Agile?
Agile is more than a methodology; it's a philosophy that offers a practical approach to handling ever-changing business requirements. It advocates for breaking down tasks into smaller, manageable chunks, implementing solutions iteratively through sprints, and adapting to evolving needs.
The Agile process involves six key steps: Plan → Design → Develop → Test → Deploy → Review.
Applying Agile:
-
Plan
- Outline:
- Problem Statement
- Requirements
- Objectives
- Architecture
- Design Decisions
- Testing Plan
- Error Handling
- Algorithms and Logic
- User Flow
- User Story
- Develop User Story
- Outline Proposed Solution:
- Resource Estimation (Time, Personnel, etc.)
- Prioritization Framework
- Outline:
-
Design
- Figma:
- Sketch
- Low-Fi
- High-Fi
- Prototype
- Postman:
- Create API Directory and Requests
- Write Documentations
- Code:
- Interface Design/Data Modeling
- Figma:
-
Develop
- Code:
- Implement the Design
- Implement the APIs
- Code:
-
Test
- Automation of:
- Unit Testing
- End to End Testing
- Automation of:
-
Deployment
- Implementation of CICD Pipeline
-
Review
- Internal Review and Feedback
- Stakeholder Review and Feedback
- User Review and Feedback
Plan
Design
Start with a clear idea, identify the problem, and define use cases.
- Map Out User Flow
- Wire-framing:
- Key Objectives
- Layout
- Design System:
- Colors
- Fonts
- Spaces
- Icons
- Components
- Tools:
- Check Color and Font with Realtime Color
- Check Font Type-scale
- Design Principles:
- Visual Hierarchy
- Contrast
- Balance
- Consistency
- Simplicity
- Feedback