product development basics for software

Post on 13-Apr-2017

177 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

PRODUCT DEVELOPMENT(for a Software Machine)

10.000FT

THE DREAMING TREE

Product Releases

Product Principles Manifesto

Product OpportunitiesRoadmap

Product Minor Releases

Mission

Strategy

Objectives

Intermissions

Updates

PRODUCT TOP DOWN FLOW

Product OpportunitiesRoadmap

Product PrinciplesManifesto

Strategic Product PlanningRoadmap

Product discovery

MANIFEST!

1.000 Manifestos: http://www.1000manifestos.com/list

PRODUCT MANIFESTO

• Publicly declares the product's principles, beliefs and intentions

• Inspires the final customer, internal team and product’s own functionalities

• Prioritizes the product main elements, thus helping to identify and separate essential from incidental; strategic from tactical

• Clearly states why the product exists

The Product Manifesto by SVPG

MANIFESTS

• The Internet is an integral part of modern life–a key component in education, communication, collaboration, business, entertainment and society as a whole.

• The Internet is a global public resource that must remain open and accessible.

• The Internet should enrich the lives of individual human beings.• Individuals’ security on the Internet is fundamental and cannot be

treated as optional.• Individuals must have the ability to shape their own experiences on

the Internet.• The effectiveness of the Internet as a public resource depends upon

interoperability (protocols, data formats, content), innovation and decentralized participation worldwide.

• Free and open source software promotes the development of the Internet as a public resource.

• Transparent community-based processes promote participation, accountability, and trust.

• Commercial involvement in the development of the Internet brings many benefits; a balance between commercial goals and public benefit is critical.

• Magnifying the public benefit aspects of the Internet is an important goal, worthy of time, attention and commitment.

• Focus on the user and all else will follow.• It’s best to do one thing really, really well.• Fast is better than slow.• Democracy on the web works.• You don’t need to be at your desk to need an

answer.• You can make money without doing evil.• There’s always more information out there.• The need for information crosses all borders.• You can be serious without a suit.• Great just isn’t good enough.

PRODUCT OPPORTUNITIES

How your products and services will deliver value to the defined customer segment(s) by creating gains and/or

relieving their pains

PRODUCT PLANNINGDefine the problem you are trying to solve for users, the business opportunities that exist to solve the problems, and the core competencies that will help you make the solution a success

Problem - Solution frame Persona Customer Journey Map

Requirements Gathering

PRODUCT PLANNING – REQUIREMENTS GATHERING

A requirement is simply a short statement of the problem

Suggested format:

[Persona] has [problem] with [frequency]

Product Requirements

Product managers explore the problem, not the solution at this stage. Design team understands the context of the problem.

PRODUCT PLANNING – REQUIREMENTS GATHERING

Benchmark for well-written requirements: 

• Is there a clear definition of the user(s)?

• Do I understand their problem / what they are trying to achieve?

• Do I have supporting documentation that provides the context about the persona and their problems so that I clearly understand how to design a solution to their problem?

PRODUCT PLANNING – REQUIREMENTS GATHERING

Requirements vs. Specifications

Requirement: short statement of the problem

Specification: how to solve the problem

PRODUCT OPPORTUNITIES – ROADMAPA plan of action for how a product or solution evolves over time.

It’s a communication tool that helps communicate where you are, where you are heading and how you expect to get there. Roadmaps should detail a high-level product vision and highlight basic prioritization for everyone in your organization, and customers too. 

Understand customer needs and pain points

Understand competitive

environment – what they do well, what they

don’t

Prioritization

Stra

tegi

c al

ignm

ent

Retu

rn o

n in

vest

men

t

Abilit

y to

ex

ecut

e Prioritized roadmap

PRODUCT OPPORTUNITIES – ROADMAP

Best practices:1. Identify key stakeholders2. Prepare list of questions, tailor per different group of

stakeholders3. Gather requirements and expectations (vision!)4. Prepare a matrix of questions and answers5. Convert answers into key takeaways6. Cost them and probably split into 3 sets: short (within 6

months), middle (6-12 months), long term 12+ months7. Score each of the key points8. Prioritize

PRODUCT PLANNING – REQUIREMENTS GATHERING

If you are using AGILE (you should be): "as a 'role,' I want to 'perform an activity,' so that I can 'achieve a goal’”

+ acceptance criteria*

PRODUCT PLANNING - NEEDS vs. FEATURES

PRODUCT PLANNING - NEEDS vs. FEATURES

PRODUCT DISCOVERY - BRAINSTORMING

Tech filter starts hereIdeation Prioritization

PRODUCT DISCOVERY – FLOW AND WIREFRAMEFlow charting and wire framing

Start Functional Specifications: “A functional specification describes how a product will work entirely from the user’s perspective. It doesn’t care how the thing is implemented. It talks about features. It specifies screens, menus, dialogs, and so on.”

PRODUCT EXECUTION – FUNCTIONAL SPECSHigh fidelity mockups that

incorporate visual design to implement intended

solutions

Sample: http://www.joelonsoftware.com/articles/WhatTimeIsIt.html

Detailed flowcharts from user's perspective. With features

descriptions along with screens, menus, dialogs, and

error specifications.

PRODUCT EXECUTION – TECHNICAL SPECS

Must read: http://c2.com/cgi/wiki?TechnicalSpecification

A technical specification describe the internal implementation of the program.

It talks about software architecture, data structures, relational database models, choice of programming languages and tools, algorithms, etc.

Good technical specification can be as simples as Functional Specifications that follow a particular SoftwareArchitecture that has been chosen to guide the solution.Generally you have to decide things like: • Communication protocols, availability, SLAs etc.• Management structure, reporting structure, budgets, conflict

resolution• Source code control, bug tracking, builds, testing, release

policies, etc.• Software methodology, coding standards, languages, OSs, etc.• Frameworks, message passing, logging, which libraries to use,

etc.• Resource management, memory management, etc.• System startup, configuration, monitoring, licensing,

contingency, backup, etc.• Application architecture• …..

FROM PLANNING TO EXECUTION – ZOOM OUT

THE PRODUCT MANAGER

AKA: PRODUCT CEO

For product managers to succeed, there needs to be an executive mandate and company-wide understanding that even though

everyone gets a voice, product decisions ultimately reside with product managers.

Making It Right: Product Management For A Startup World - http://amzn.to/1TPlDyX

PRODUCT DEVELOPMENT PROCESS OVERVIEW

Product Planning

Product Execution

Product Discovery

Astella is a Latin root that originated the words atelier and estaleiro (shipyard); a

place where great heroes are made, through science and art.

AGILE OVERVIEW

Discover

Design

Develop

Test

Busin

ess

Requ

irem

ents

Tech

nica

lDe

sign

Codi

ngTe

sting

Clie

nt O

kLa

unch

WATERFALL METHOD TEMPLATE

DiscoverDes

ignDevelop

Test

Test

Discover

Design

DevelopTe

st

Test

Discover

Design

Develop

Test

Test

AGILE METHODOLOGY LOOP

http://agilevideos.com/videos/why-agile-methods-business-value-roi/

Manifesto for Agile Software Development

We are uncovering better ways of developingsoftware by doing it and helping others do it.

Through this work we have come to value:

Individuals and interactions over processes and toolsWorking software over comprehensive documentation

Customer collaboration over contract negotiationResponding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Twelve Principles of Agile Software

15-30days

24hours

Product BacklogSample text

Sprint BacklogSample text

Sprint

Daily ScrumSample textSample textSample text

Working increment of the product

SCRUM PROCESS

Deliverable

…………..

1 2 3 n

ConfirmationBasket Delivery details

Existing customer

New customer

GOAL: TO BUY THE ITEMS IN MY BASKET

Add product to basket

List of selected items and quantities

Edit basket

Selectcheckout

option

Login

Enter name and email address

Enter address

Select save name and address

Add new name and address

New or existing Payment

Enter credit card details

NotesSeveral existing customers find it easier to checkout as a new customer as they don’t remember their username and password and find managing address fiddly. We should aim to make this much simply with the next release and enhance the process for repeat customers.

Confirm

SCRUM TASK BOARD TEMPLATE Company name

Stories To Do In Progress Testing Done

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text.

This is a sample text. Replace it with your own.

This is a sample text.

This is a sample text.

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

This is a sample text. Replace it with your own text.

KANBAN POWERPOINT TEMPLATECompany name

BACKLOG SELECTED DONEDEVELOPMENT

ONGOING DONE

TESTING

ONGOING DONE

DEPLOYMENT

ABC

DEF

GHI

JKL

MNO

PQR

STU

VWX

XYZ

T1

XYZ

T2

ALE

T3T4 XYZ

T1

XYZ

T2

ALE

T6T7

MKO

S5

UJN

S9

TGB

S1

YHN

S2

EDC

S6S7

PQR

STU

GHI

ASF

S6S7

RTG

S6S7

ASD

WER

IKL

ZXC

CVB

BNM

DFG

HJK

http://www.cognizant.com/InsightsWhitepapers/Kanban-as-a-Tool-in-the-Agile-Toolbox.pdf

The formula is: D = V * T

It reads as: DONE Features = Velocity multiplied by Time

http://agilefromthegroundup.blogspot.it/2009/09/done-features-equals-velocity.html

Astella is a Latin root that originated the words atelier and estaleiro (shipyard); a

place where great heroes are made, through science and art.

top related