Diferència entre revisions de la pàgina «Especificacions: cooperativa de consum»
Línia 39: | Línia 39: | ||
== Especificacions funcionals == | == Especificacions funcionals == | ||
− | + | # Especificacions per als clients: | |
− | # Han de poder connectar-se i identificar-se, amb un o diversos sistemes oberts com OAuth (facebook), Google Accounts o OpenID. Si no queda més remei es pot fer amb comptes propis però es vol evitar el manteniment d'usuaris i contrasenyes. | + | ## Han de poder connectar-se i '''identificar-se, amb un o diversos sistemes oberts''' com OAuth (facebook), Google Accounts o OpenID. Si no queda més remei es pot fer amb comptes propis però es vol evitar el manteniment d'usuaris i contrasenyes. |
− | # Cada '''comanda''' ha de mostrar diverses '''entrades'''. | + | ## Cada '''comanda''' ha de mostrar diverses '''entrades'''. |
− | # Cada '''entrada''' tindrà un '''producte''' (IDproducte) i la quantatitat (que depenent del producte seran per kg, manats, unitats, etc.). | + | ## Cada '''entrada''' tindrà un '''producte''' (IDproducte) i la quantatitat (que depenent del producte seran per kg, manats, unitats, etc.). |
− | # Han de poder triar la '''setmana d'entrega del producte''' (menú desplegable o ''combo box''). El '''dia de la setmana d'entrega''' (dilluns, dimarts, etc.) ve predeterminat per gestor. | + | ## Han de poder triar la '''setmana d'entrega del producte''' (menú desplegable o ''combo box''). El '''dia de la setmana d'entrega''' (dilluns, dimarts, etc.) ve predeterminat per gestor. |
− | ## Per defecte apareixerà l'entrega per la setmana següent. | + | ### Per defecte apareixerà l'entrega per la setmana següent. |
− | ## El desplegable mostrarà com a opcions les properes 4 setmanes. | + | ### El desplegable mostrarà com a opcions les properes 4 setmanes. |
− | # Ha de tenir la opció d'afegir '''productes en stock''' (no sota comanda) però han de figurar en una categoria a part. | + | ## Ha de tenir la opció d'afegir '''productes en stock''' (no sota comanda) però han de figurar en una categoria a part. |
− | # El client ha de veure una '''estimació del cost''' de la seva comanda dinàmicament a mesura que afegeix els productes (dividits entre productes sota comanda i en stock). | + | ## El client ha de veure una '''estimació del cost''' de la seva comanda dinàmicament a mesura que afegeix els productes (dividits entre productes sota comanda i en stock). |
− | # El client finalment validarà i blocarà la seva comanda. | + | ## El client finalment validarà i blocarà la seva comanda. |
− | ## Si el client vol modificar la comanda haurà de desblocar-la, i només pot fer-ho des del ''dia d'entrega'' fins el '''dia de tancament''' (dia de la setmana en què es tanca la comanda i s'efectua la petició als proveïdors). | + | ### Si el client vol modificar la comanda haurà de desblocar-la, i només pot fer-ho des del ''dia d'entrega'' fins el '''dia de tancament''' (dia de la setmana en què es tanca la comanda i s'efectua la petició als proveïdors). |
− | ## Inicialment el dia d'entrega és dimarts i el '''dia de tancament''' serà divendres migdia, per poder notificar els productors abans del cap de setmana). | + | ### Inicialment el dia d'entrega és dimarts i el '''dia de tancament''' serà divendres migdia, per poder notificar els productors abans del cap de setmana). |
− | # Cada client només pot fer una comanda per setmana (* a revisar). | + | ## Cada client només pot fer una comanda per setmana (* a revisar). |
− | # | + | ## |
− | + | # Especificacions per als gestors: | |
− | + | ## Han de poder donar d'alta i baixa usuaris basant-se en el sistema triat d'autenticació (OAuth, Google, OpenID, comptes de l'aplicació, etc.). | |
− | + | ## Ha de poder triar-se el dia i hora d'entrega de productes de la cooperativa (en principi dimarts a les 6, ja que els socis arriben a les 7:30). Això afecta als proveïdors (entrega de productes) i als clients (dia de recollida de comanda). | |
− | + | ## Email proveïdors. | |
− | + | ## Control de stock. | |
− | + | ## Avisos. | |
− | + | # Especificacions comunes: | |
− | + | ## Visualització ''responsive'' per dispositius estàndard i mòbils (PC, smartphone, tablet). | |
− | + | ## Disseny i usabilitat... | |
<br> | <br> |
Revisió del 10:03, 25 set 2013
Una cooperativa de consum responsable de Manresa necessita una aplicació per gestionar les seves comandes des d'internet. Ens demana que li fem l'aplicació i comencem per anar descobrint com funcionen i redactant les especificacions per facilitar la implementació i desplegament de l'aplicació.
Contingut
El client: Què és una cooperativa de consum?
El nostre client, la cooperativa "La Pera" es dedica a autogestionar la compra de productes que han de complir amb diversos requisits:
- Agricultura i ramaderia ecològica
- Producte de proximitat
- Respecte al medi ambient
- Comerç just
Cada dimarts tots els socis passen de 7:30 a 9:30 pel local i:
- Recullen la comanda de producte fresc (fruita, verdura, pasta fresca, pa, ous, formatges, etc.) que han fet la setmana anterior.
- Afegeixien el producte de stock que vulguin (muesli, arròs, cus-cus, farina, xocolata, etc.).
- Paguen
- Realitzen comanda per la setmana següent.
És en aquesta gestió de realitzar la comanda que el nostre client ens demana l'aplicació per facilitar que la gent la pugui fer per internet i per què faciliti la gestió amb els proveïdors.
Els socis s'organitzen en comissions de treball per realitzar les diverses tasques que cal fer per mantenir en funcionament la cooperativa:
- Compres: visita i compra als productors locals.
- Econòmiques: gestionen els cobraments de quotes, la caixa i el pagament als proveïdors.
- Internes: organitzen els torns de caixes (repartir el producte fresc encarregat la setmana anterior) i els torns de neteja.
- Infraestructures: realitzen el manteniment del local i logística (tuppers, envasos, etc.)
- Externes: comuniació amb altres cooperatives, fires, esdeveniments, difusió, etc.
Com es pot veure, el soci és una persona activa que ha de realitzar diverses tasques per beneficiar-se de la gestió de productes pels que es vetlla que sigui de consum responsable (requisits abans esmentats).
Intentem redactar unes especificacions per realitzar l'aplicació que els resolgui gestionar les comandes per internet.
L'aplicació
Tenim diverses facetes o cares de l'aplicació:
- Client de la cooperativa (front-end): realitza comanda setmanalment abans del (configurabe) divendres migdia.
- Gestor dels productes (back-end): posa preus, realitza comanda al proveïdor (informe per cadascun d'ells), imprimeix extractes per cada caixa (client de la cooperativa), etc.
Ambdós s'han d'identificar (autentificació) conrrectament per poder entrar a l'aplicació.
Especificacions funcionals
- Especificacions per als clients:
- Han de poder connectar-se i identificar-se, amb un o diversos sistemes oberts com OAuth (facebook), Google Accounts o OpenID. Si no queda més remei es pot fer amb comptes propis però es vol evitar el manteniment d'usuaris i contrasenyes.
- Cada comanda ha de mostrar diverses entrades.
- Cada entrada tindrà un producte (IDproducte) i la quantatitat (que depenent del producte seran per kg, manats, unitats, etc.).
- Han de poder triar la setmana d'entrega del producte (menú desplegable o combo box). El dia de la setmana d'entrega (dilluns, dimarts, etc.) ve predeterminat per gestor.
- Per defecte apareixerà l'entrega per la setmana següent.
- El desplegable mostrarà com a opcions les properes 4 setmanes.
- Ha de tenir la opció d'afegir productes en stock (no sota comanda) però han de figurar en una categoria a part.
- El client ha de veure una estimació del cost de la seva comanda dinàmicament a mesura que afegeix els productes (dividits entre productes sota comanda i en stock).
- El client finalment validarà i blocarà la seva comanda.
- Si el client vol modificar la comanda haurà de desblocar-la, i només pot fer-ho des del dia d'entrega fins el dia de tancament (dia de la setmana en què es tanca la comanda i s'efectua la petició als proveïdors).
- Inicialment el dia d'entrega és dimarts i el dia de tancament serà divendres migdia, per poder notificar els productors abans del cap de setmana).
- Cada client només pot fer una comanda per setmana (* a revisar).
- Especificacions per als gestors:
- Han de poder donar d'alta i baixa usuaris basant-se en el sistema triat d'autenticació (OAuth, Google, OpenID, comptes de l'aplicació, etc.).
- Ha de poder triar-se el dia i hora d'entrega de productes de la cooperativa (en principi dimarts a les 6, ja que els socis arriben a les 7:30). Això afecta als proveïdors (entrega de productes) i als clients (dia de recollida de comanda).
- Email proveïdors.
- Control de stock.
- Avisos.
- Especificacions comunes:
- Visualització responsive per dispositius estàndard i mòbils (PC, smartphone, tablet).
- Disseny i usabilitat...
Especificacions no-funcionals
L'aplicació es realitzarà:
- En llenguatge Python.
- Amb el framework Pyramid.
- Sobre la plataforma de desplegament de Google App Engine (GAE). És la opció més econòmica.