You are on page 1of 3

Disseny i programació orientats a objectes

Primers passos per al correcte desenvolupament del projecte


Desenvolupar un projecte de software en un equip de treball de 5 persones en un entorn guiat per
metodologies àgils no és senzill. Per aquest motiu, creiem que és important enfocar correctament l’inici del
projecte per tal d’evitar o prevenir problemes comuns detectats al llarg dels anys. És per això que us
recomanem seguir aquests 5 passos abans de començar a programar una sola línia de codi.

1. Lectura i comprensió del projecte

Sembla una tonteria, però comprendre correctament el projecte que heu decidit desenvolupar no és fàcil.
La metodologia docent que apliquem us assigna un mentor que tindria el rol de Product Owner dins els que
indica Scrum. Això significa que el vostre mentor és el client que us ha demanat desenvolupar el projecte.

Tot projecte de desenvolupament de software té la necessitat de prendre uns requeriments funcionals i no


funcionals per tal de determinar què ha de desenvolupar l’equip. Aquest requeriments, en els projectes de
l’assignatura, venen donats en forma d’enunciat. Molts cops els requeriments d’un projecte no són
complets o poden induir a confusió, ja que utilitzen el llenguatge natural com a mitjà de comunicació, és
per això que és important que pregunteu al vostre mentor tots aquells aspectes que no tingueu clar abans
de començar.

Assumir una funcionalitat o l’absència d’aquesta en un projecte i adonar-se'n a mig desenvolupament que
s’han entès malament els requeriments provocarà frustració per la sensació d’haver perdut el temps.
Eviteu-vos aquest problema assegurant amb el vostre mentor que heu entès correctament el que us
demana el projecte.

2. Gestionar històries d’usuari

Com ja s’ha mencionat, la metodologia de desenvolupament que apliquem en els projectes de l’assignatura
és Scrum. És cert que no apliquem Scrum al 100% donat que tampoc us ha explicat ningú com funciona,
però farem servir algunes eines d’aquesta metodologia de gestió de projectes per tal de guiar-vos i facilitar-
vos el desenvolupament del projecte.

El primer pas a seguir en Scrum és crear el Product Backlog o definició de les tasques a dur a terme per al
correcte desenvolupament del projecte. Aquests objectius o funcionalitats a desenvolupar es redacten en
el que es coneix com històries d’usuari (user stories). Les històries d’usuari normalment segueixen un
format bastant concret. Aquest és:

 Com a <actor> vull <objectiu> per tal d’aconseguir <benefici que aporta aquesta funcionalitat>

Per exemple: Com a usuari vull poder fer log-in per tal d’accedir a les funcionalitats d’un usuari registrat.

Les històries d’usuari poden arribar a ser molt més completes (valor de la història, estimació de temps, risc
associat, criteris d’acceptació, redactat per a Behaviour Driven Development, ...), però ara mateix amb una
frase que defineixi la funcionalitat en tindrem prou.

Respecte a les històries d’usuari, comentar que és important que intenteu definir històries que siguin el
més petites possible. Mirem l’exemple anterior:
1
 Com a usuari vull poder fer log-in per tal d’accedir a les funcionalitats d’un usuari autenticat.

Què significa fer log-in? Quines implicacions té? Què he de desenvolupar per aconseguir-ho? Com em
reparteixo les tasques per implementar-ho?

Segurament aquest no és un bon exemple d’història d’usuari (de fet és el que en Scrum es coneix com un
Epic). Anem a intentar dividir aquest Epic en històries.

 Com a usuari vull poder veure una pantalla de log-in per tal d’accedir com a usuari registrat.
 Com a sistema vull poder comprovar si les dades de log-in introduïdes per un usuari son correctes
per tal de saber si cal consultar la base de dades.
 Com a sistema vull poder comunicar les dades de login d’un usuari a la base de dades per tal de
comprovar si aquest usuari existeix i pot accedir com a usuari registrat.
 Com a sistema vull poder mostrar un missatge a l’usuari per tal d’informar-lo de que les dades son
correctes o incorrectes.
 Com a sistema vull poder canviar de pantalla per tal que l’usuari pugui accedir a funcionalitats
d’usuari registrat.

Millor! Segurament ara sí que podem repartir les tasques entre els diferents membres del grup i tothom té
clar què ha de desenvolupar per aconseguir finalitzar la seva història.

3. Diagrama de classes

Un cop tenim pensades i escrites totes les històries d’usuari, toca començar a dissenyar el nostre sistema.
Quines classes tindrem? Com es relacionaran entre sí? Quin son els elements imprescindibles que han de
tenir?

En aquest primer disseny, volem representar l’estructura general del sistema. Ja tindrem temps més
endavant de detallar quins atributs té la nostra classe i discutir si el saldo del compte corrent d’un usuari ha
de ser un float o un double o un String. Ara l’important és identificar els elements que tindrà el nostre
sistema i representar-los per tal de poder veure quines necessitats tenim. Un bon disseny inicial ens
permetrà desenvolupar el projecte de forma molt més àgil, ja que les decisions importants ja estaran
preses.

Aquest diagrama l’hauríeu d’intentar pensar entre tots. És el codi que desenvolupareu, de forma que tots
hi hauríeu d’estar d’acord i entendre el perquè de les decisions preses.

Un cop acabat el disseny, consensueu-lo amb el vostre mentor, potser se us ha escapat algun detall
important i l’experiència del mentor us pot ajudar a identificar problemes, colls d’ampolla, alt acoblament
d’objectes, ...

4. Mockups de la UI

Ara que ja teniu l’estructura general del sistema, és moment de dissenyar la UI.

Les vostres aplicacions tindran una interfície gràfica d’usuari que haureu d’implementar. Com serà
aquesta? On estarà el botó de log-in? Els camps de text estaran centrats?

2
Disseny i programació orientats a objectes
Si comenceu a picar codi a la valenta sense tenir un dibuix o esquema de què voleu fer, el producte final
serà de dubtosa qualitat i a més a més tardareu el doble del que teníeu previst.

Un mockup és un dibuix esquemàtic dels elements que tindrà la vostra UI. Aquest dibuix pot ser tan senzill
com un dibuix fet a mà en un tovalló de paper del bar o un disseny amb Illustrator utilitzant imatges reals
d’un estoc de fotografies. Utilitzeu les eines que creieu més adients i amb les que us sentiu més còmodes.

5. Disseny de la base de dades

El vostre projecte tindrà una base de dades que haureu d’utilitzar per emmagatzemar informació. Abans de
començar a treballar en el projecte, pareu-vos a pensar:

 Quina informació necessitaré guardar a la base de dades?


 Com estructuraré aquesta informació?
 Com es relacionarà aquesta informació entre si?
 Quines funcionalitats necessitaran utilitzar la base de dades?
 Quin mètodes oferiré per tal que les diferents classes del projecte puguin treballar amb la base de
dades?

De nou, el vostre grup disposa d’un mentor que us pot validar si aquest disseny és correcte o si flaqueja en
algun punt.

You might also like