common problems of software development
TRANSCRIPT
Common Problems of Software Development
Aleksejs Truhans
10.05.2012 @ tsi.lv
Who's speaking?
Who? Programmer, student, teacher, administrator, father, analyst, project manager, team leader...
Where?citadele.lv, tsi.lv, nh.lv, javaguru.lv, agile-latvia.org
Contacts? @AleksejsTruhans, [email protected]
Things I haven't been taught in university
Unit tests
Version control
Issue tracking
Test driven development
Pair programming
=> javaguru.lv
Recent trends
Protecting personal data. And sharing them. Simultaneously
Mobile computing
Stop pushing features, start delighting users
Multiprocessor parallel computing
http://writerunboxed.com/2006/10/09/driving-the-deadline/
We work hard...
By Simon Baker, http://www.energizedwork.com/weblog/2007/11/xpday7-why-do-agile-projects-fail
yet we never know the future.
http://community.humanityhealing.net/group/toolsforshiftingperspective/forum/topics/is-what-you-see-real-change-your-perception-change-your-life
Our perception changes...
http://www.tnp.sg/picture/big-picture-week-12-finalist-5
People change...
http://vxside.deviantart.com/art/4-seasons-81436429
So does the environment.
simplicity
discipline
value
feedback
beyond rules and roles
On February 11-13, 2001, at The Lodge at Snowbird ski resort in the Wasatch mountains of Utah, seventeen representatives convened...
http://agilemanifesto.org/
We are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:
Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan
That is, while there is value in the items onthe right, we value the items on the left more.
http://www.scrollinondubs.com/2005/11/23/book-review-agile-software-development-by-alistair-cockburn/
Applicability
http://duncanpierce.org/node/163
Applicability
http://brucesmideastsoundbites.blogspot.com/2009/03/down-drain-pouring-money-down.html
Some of our work goes down the drain
Most of time it's almost ready
We lie to ourselves
Customers will understand
We will fix it in the next release
Efficiency deterioration
Continuous attention to technical excellence and good design
enhances agility.
Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant pace
indefinitely.
http://agilemanifesto.org/
More in Economics of Software Design by J.B.Rainsberger
http://jbrains.ca
http://www.youtube.com/watch?v=7HecgbghFTk
Individuals and interactions over processes and tools
Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get the job
done.
The best architectures, requirements, and designs emerge from
self-organizing teams.
http://agilemanifesto.org/
http://knolt.com/projectmanagementconstruction/
Responding to change over following a plan
Simplicity--the art of maximizing the amount of work not done--is
essential.
http://agilemanifesto.org/
http://lkb.lv/
Customer collaboration over contract negotiation
Our highest priority is to satisfy the customerthrough early and
continuous deliveryof valuable software.
Welcome changing requirements, even late in development. Agile
processes harness change for the customer's competitive
advantage.
http://agilemanifesto.org/
http://hypertonicreservoir.tumblr.com/
Business people and developers must work together daily
throughout the project.
Working software is the primary measure of progress.
http://agilemanifesto.org/
Deliver working software frequently, from a couple of weeks to a
couple of months, with a preference to the shorter timescale.
The most efficient and effective method of conveying information to
and within a development team is face-to-face conversation.
http://agilemanifesto.org/
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
http://agilemanifesto.org/
We
learn
analyze
invent
communicate
make decisions
http://praguestepchild.blogspot.com/2011/02/pride-of-workmanship.html
Professionalism...
http://simply-the-test.blogspot.com/2010/05/it-works-on-my-machine.html
Responsibility...
/http://uphilldowndale.files.wordpress.com/
http://www.flickr.com/photos/lululemonathletica/4207563765/
Focus...
More:
http://articles.jbrains.ca/GettingStartedWithGettingThingsDone.pdf
http://www.stevepavlina.com/blog/2005/06/self-discipline/
http://www.stevepavlina.com/blog/2007/05/33-rules-to-boost-your-productivity/
http://agilemanifesto.org/
Interested?
Watch the presentations:
http://agileee.org/2011/07/15/keynote-the-extreme-decade/
http://agileee.org/2011/07/14/keynote-effective-software-development-in-the-21st-century-the-new-face-of-software-engineering/
Read the books...