# Methodology

## **Introduction**

This is the first time we will build a software product, but how do we start? Do we create a file in Visual Studio and write the first lines of code? Do we draw and write everything like in a building plan before start coding?

Build a software product doesn't require the same specification as a building, but you will have to make some questions before start coding, like:

1. What are the requirements?
2. What budget/time/resources do we have to do it?
3. How could be the product to give an answer to those requirements?

## Software development life cycle

### Waterfall model

{% embed url="https://en.wikipedia.org/wiki/Systems_development_life_cycle" %}

### Agile Methodologies

{% embed url="https://en.wikipedia.org/wiki/Agile_software_development" %}

### SCRUM

SCRUM is an Agile Methodology

{% embed url="https://en.wikipedia.org/wiki/Scrum_(software_development)" %}

![](https://4042228299-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRebciU3NcuLgsX3ijf%2F-MSX1YFKG1jG5ZchbKy2%2F-MSX27vFk4DcQgMoud7o%2Fimage.png?alt=media\&token=6f0fd2e9-b81d-4b1c-b15f-afd6602bbf45)

Actors:

* Product Owner:&#x20;
* Development Team:&#x20;
* Scrum Master:&#x20;

Items:

* Scrum Task Board:&#x20;
* Product Backlog:
* Sprint Backlog:

Meetings:

* Sprint Planning:
* Sprint Review
* Sprint Retrospective

## **Final Project Phases**

The main work phases are:

1. Requirements Analysis & Design
2. Planning
3. Development
4. Testing
5. Presentation

To these phases we will apply SCRUM

Actors:

* Product Owner: the client or the idea's owner
* Development Team: the developers
* Scrum Master: the instructor

Items:

* Scrum Task Board: we will use Trello
* Product Backlog: column with all functionalities we would like to have in our product
* Sprint Backlog: column with all functionalities we would like to finish during a Sprint

Meetings:

* Sprint Planning:
* Sprint Review
