Ivan Hawkes

Share Online:

Github Facebook

Project Development Quick Guide

A quick start guide designed to remind you of the steps needed to bring a project to completion. Some are optional, depending on the scope of the project.

Ideation

Come up with an idea. Write it down.

Conception

Work the idea over in your head. Think about what problem it solves and if it’s worth the time and cost to produce.

Design

Methodically write down all of the things you wish the project could do. You can ruthlessly cut this list down as the project progresses.

Requirements Specification

The requirement specification details what the user wants to achive, but does not concern itself with how this will be done.

- Gathering
- Documenting
    - User Stories
    - In and out of scope
    - Assumptions
- Sign off
- Acceptance Criteria

Functional Specification

The functional specification describes what you want from your software development.

- Features
- Functionality
- User experience

Technical Specification

The technical specification describes how you achieve your requirements.

- Timeline
- Standards
    - Internal
    - External
- Hardware
- Scaling
- Operating Environment
- Performance
- Database Schema
- Data Validation
- Software
    - OS
    - Runtime
    - Dependencies
- Server
    - Database DB
- Tools
- Third Party
    - Tools
    - SASS
    - Software
    - Consultation
- Business Logic
- Cost Analysis
- Security
- Privacy
- Accessibility
- Risk Analysis
- Metrics
- Roadmap
- Strategy
- Acceptance Criteria
- Project Outline
- Work Units
- Monitoring
- Logging
- Alerts

Deployment Specification

- Deployment Plan
- Implementation Plan
    - Rollout
    - Rollback

Design Specification

The design specification lays out the rules for design.

- Colours
- Fonts
- Layout
- Wireframes
- Mobile concerns
- Web concerns
- UI states
- Error handling

Project Planning

- Goals
- Key Dates
- Major / Minor Milestones
- Task Prioritisation
- Refine the functional specification
- Create a Kanban board
    - Tasks
    - Subtasks
    - Priority
    - Dependencies
    - Allocated time
    - Recurring Tasks
- Acceptance criteria with testing criteria for every item

Testing

- Test Plan
    - Unit tests
    - Integrations tests

Integration

- Working with third parties

Staging

- Deployment to staging

Release to Production

- Deployment to release

Coding

- Scaffolding
- Burndown
    - Research
    - Write feature(s)
    - Check for correctness against the specifications
    - Document
    - Communicate
    - Update project plan
- Deploy to testing
- Deploy to staging
- Deploy to production

SEO

- Inform the stakeholders
- Product Launch
- Gather Usage Metrics
- Promote