J'ai créé beaucoup de projets PHP dans le passé en me basant sur la méthodologie de développement rapide 'changez-le, téléchargez-le'.débutant à la gestion de projet php 'correcte'
Je commence un long projet (estimation de 6 à 8 mois) pour fournir une application web hébergée assez complète. Au cours des dernières semaines, j'ai cherché la meilleure façon de gérer ce projet (mon code actuel est très bien). L'application aura une version initiale, fournissant des fonctionnalités de base et une version supplémentaire offrant des fonctionnalités avancées. Je n'ai jamais utilisé SVN, Trac, le suivi des bogues, les serveurs de mise en scène ou les outils de déploiement, donc c'est tout nouveau pour moi. D'après ce que j'ai appris au cours de la semaine dernière, voici ce que je cherche à avoir.
4 x VPS avec 128 Mo de RAM (256 burstable) et 10 Go d'espace disque dur.
Configuré dans la configuration suivante
- de tools.ops.ourdomain.co.uk - serveur SVN hébergement, Trac, et le stockage sécurisé de fichiers pour le téléchargement et le DNS (où les serveurs de noms pour le point)
- development.ops.ourdomain.co.uk - environnement de développement pour travailler sur la version de tronc du logiciel. Dossier htdocs mis à jour automatiquement sur la validation SVN
- staging.ops.ourdomain.co.uk - où les 'versions potentielles' sont déployées pour les tests.
- production.ops.ourdomain.co.uk - serveur de production sur lequel les «versions finales» sont déployées.
Est-ce que cela a du sens? Dois-je déposer mon serveur de développement sur ma machine locale? Est-ce logique de mettre le DNS sur le serveur d'outils ou non? Deuxièmement, quelle est la meilleure méthodologie de développement pour un seul développeur? J'allais d'abord planifier toutes les fonctionnalités, par exemple "Authentifier un utilisateur", "Déconnecter un utilisateur", puis les créer en tant que tickets de trac. Le «comment» et le «où» pourraient ensuite être mis au point lorsque j'arriverai à la tâche en question. Serait-il plus logique de planifier toutes les méthodes de classe (et les fichiers généraux) et ensuite de créer des tickets pour celles-ci?
Merci d'avance.