Agile (EL)

From Systems analysis Wiki
Jump to navigation Jump to search

Ευέλικτη μεθοδολογία ανάπτυξης — γενικός όρος για μια σειρά προσεγγίσεων και πρακτικών που βασίζονται στις αξίες του Manifesto ευέλικτης ανάπτυξης λογισμικού και στις 12 αρχές που το διέπουν. Στις ευέλικτες μεθοδολογίες ανήκουν, μεταξύ άλλων, το extreme programming, το DSDM, το Scrum, το FDD, το BDD και άλλες.

Στις «ευέλικτες» μεθόδους ανήκουν, ειδικότερα, το XP, το DSDM, το Scrum, το FDD, το BDD.

Η πλειονότητα των «ευέλικτων» μεθόδων στοχεύει στην ελαχιστοποίηση των κινδύνων μέσω της διαίρεσης του χρόνου ανάπτυξης σε επαναλήψεις (περιόδους) — χρονικά διαστήματα σχετικά μικρής διάρκειας. Μια επανάληψη διαρκεί συνήθως δύο έως τρεις εβδομάδες, μοιάζει με ένα έργο λογισμικού σε μικρογραφία και περιλαμβάνει τις ακόλουθες εργασίες που είναι απαραίτητες για την επίτευξη μιας μικρής προόδου στη λειτουργικότητα: σχεδιασμός, ανάλυση απαιτήσεων, σχεδίαση, προγραμματισμός, δοκιμές και τεκμηρίωση. Συνήθως μία επανάληψη δεν αρκεί για την κυκλοφορία νέας έκδοσης του λογισμικού, αλλά εννοείται ότι στο τέλος της επανάληψης η νέα έκδοση του λογισμικού είναι έτοιμη προς κυκλοφορία. Στο τέλος κάθε επανάληψης η ομάδα επαναξιολογεί τις προτεραιότητες ανάπτυξης.

Οι «ευέλικτες» μέθοδοι στηρίζονται στην επικοινωνία πρόσωπο με πρόσωπο. Οι περισσότεροι εργάζονται στο ίδιο γραφείο, που μερικές φορές ονομάζεται bullpen. Στο γραφείο εργάζεται τουλάχιστον ο «πελάτης» (product owner) — ο εντολέας ανάπτυξης λογισμικού ή ο εκπρόσωπός του, ο οποίος καθορίζει τις απαιτήσεις για το λογισμικό. Τον ρόλο του «πελάτη» μπορεί να επιτελεί ο διευθυντής έργου, ο επιχειρησιακός αναλυτής ή ο ίδιος ο πελάτης. Στο γραφείο μπορεί επίσης να εργάζονται δοκιμαστές, σχεδιαστές διεπαφής, τεχνικοί συγγραφείς και διευθυντές.

Οι μετρικές των «ευέλικτων» μεθόδων συνδέονται με τη λειτουργικότητα του παραγόμενου λογισμικού. Οι χρήστες «ευέλικτων» μεθόδων (σε σύγκριση με τους χρήστες άλλων μεθόδων) επικοινωνούν περισσότερο και γράφουν λιγότερη τεκμηρίωση, γι' αυτό θεωρούνται λιγότερο πειθαρχημένοι.