Préambule : j'ai mis des idées comme ca sans trop y réfléchir. N'hésite pas à modifier, compléter, préciser, etc...
Je propose aussi pour l'espace de travai d'utiliser chacun une typo bien distincte, de manière à retrouver rapidement les diverses interventions de chacun. comme tu peut le constater, j'utilise cette couleur, et pour les commentaires je les mets en italique.
j'ai uploadé un modèle de cahier des charges, pour l'instant seul le sommaire est rédigé, je vais plancher dessus 2 petites heures dans le train.
Si tu vois des modifs à apporter, n'hésite pas à modifier ce modèle, téléchargeable ici : http://deust-tsic.metawiki.com/doc
Autre question : As-tu déclaré le groupe à l'animateur et au tuteur ? Si ce n'est pas le cas je le ferai.
Phase 1 : rédaction du cahier des charges
Note des idées/contraintes- système d'authentification
- possibilité de modérer les annonces (=> différents niveaux d'accès)
- gestion des comptes utilisateur
- possibilité de mettre des anonces en "favoris"
-> est-ce bien nécessaire étant donné que le systeme d'authentification est réservé aux responsables de l'agence immobilière ?
- système de profil
- gestion des mots clés (catégorie, recherche, etc..)
- recherche multicritères (type de bien, d'annonce, surface, loyer, etc...)
- gestion des dates de publication & de fin d'annonce
- annonce
- texte, date
- objet joint (photo, vidéo, etc...)
- front end (ui)
1 bien immobilier = 1 annonce pour simplifier le travail
je vais commencer à réaliser un cahier des charges, que je te soumettrai rapidement pour voir si tu a d'autres idées.
Phase 2 : design de la base de données
utilisateur :
uid : int, id (p key)
level : int, niveau d'accès
name : text, nom
surname : text, prénom
password : text, mot de passe
mot clé :
kwid : int, id (p key)
fkwid : int, id du mot clé père (permet de faire des groupes de mots clés).
type : int (0= non visible, 1= visible, pas obligatoire, 2= visible, obligatoire)
value : int (0=pas d'entrée(,exclusif à la catégorie), 1= pas d'entrée (,non exclusif), 2=int, 3=text)
keyword: text
exemple pour les mot clés :
- ascenseur
- appartement
- location
- proche de la gare
- proche des commerces
- exclusivité
- etc...
registre :
rid : id de la correspondance (p key)
aid : id de l'annonce
kwid : id du mot clé
valeur (facultatif): text, valeur du mot clé
annonce :
aid : int, id (p key)
uid : id de l'utilisateur qui a soumis l'annonce
status : int, statut de l'annonce (proposée, validée, archivée, etc...)
title: text
content : text
announce_date : date
publish_date : date de publication (facultatif)
finish_date : date de fin de l'annonce (facultatif)
announce_type : text, valeurs (vente, location, saisonnier)
well_type : text, type de bien (maison, appartement, etc...)
=> en fait je pense que ce genre d'éléments est faisable via les mot clés, non ?
price : num, loyer
surface, num, superficie (en m2)
adress (caché) : text
code postal : int
ville
On peut aussi rajouter
nb de pièce, nb de chambre, étage, etc....
Phase 3 : architecture générale
On peut utiliser un éditeur de modèle UML pour faire l'architecture, non ?
définitions des outils (framework)
indentation & syntaxe :
deux tabulations pour l'indentation 2 tab par niveau ça fait pas un peu beaucoup ? oui excuse 1 suffira :)
nom de fonction : pas de majuscule, en anglais ok
pour le framework, on peut voir Copix (http://www.copix.org/index.php/wiki/copix), il parait que c'est pas mal. J'ai testé, c'est un peu dur à prendre en main (pas beaucoup de doc), mais assez puissant. OK pour Copix, on verra bien ce que ça donne
