software development. xp, agile, etc
DESCRIPTION
That's what happen when you make presentation and you are really sick and tiredTRANSCRIPT
Software DevelopmentAgile, eXtreme Programming
and Software prototyping
Philipp RukinWeb-developer @ Empatika [email protected]
Agile
Agile || Principles
● Individuals and interactions over processes and tools
● Working software over comprehensive documentation
● Customer collaboration over contract negotiation
● Responding to change over following a plan
eXtreme Programming
eXtreme Programming
● Fine scale feedback
● Continuous process
● Shared understanding and simplicity
● Programmer welfare
XP || Pair programming
The driver writes code while the navigator reviews each line of code.
XP || CI, Refactoring and frequent releases
● CI - everyone works with the latest version of the product
● Refactoring - code only what you need today... if it is hard - refactor
● Frequent releases - satisfy your customer
XP || Shared understanding
● Everyone is responsible for all the code
● Everyone can explain how it all works (even customers)
● So everything should be simple!
XP || Criticism
● Small teams only (<12)
● Really good developers are needed
● Lack of documentation
● It is hard to develop estimates
● etc..
Software prototyping
SW Prototyping || Process
● Identify requirements
● Develop
● Review
● Enhance or throw away
SW Prototyping || Advantages
● Early determination of requirements → reduced time and cost of development
● Increased user involvement → the product will satisfy user desires
SW Prototyping || Disadvantages
● User confusion
● Developer overattachment
● Excessive development
● Insufficient analysis
SW Prototyping || Our prototypes
SW Prototyping || Our prototypes
Summary
● There are a lot of methodologies
● It is hard to implement them for large teams
● They work great for small teams
● Different methodologies are suitable for different projects