I don't see RUP in your list
I'm weary about adding anything that specific to my list, as I'm using it to promotes myself and I've never followed any design process closely enough to make such a claim...I'm questioning whter to even include XP or Agile as there are some differences and things I don't agree with. Pair Programming for example, doesn't really apply to me as a single developer and any developers I work with will be remotely located (the direction I'm taking my business - as I feel it's advantages far outweigh disadvantages).
Instead of agile, I like to consider myself an Versatile developer
Thanks for that though, I had to Google RUP as i've never really paid attention, but atleast now I know what it is...I've always used a iterative approach to software development, not so much from experience but rather it's just how I've always done things...following something similar to XP...I've always developed the bare minimum nessecary, refactored as I found fit and consider it done. Yes I'm guilty of over engineering...but usually only in library/frameworks where time is not a factor. My background and heros of OOP have assisted in influecing my decision on writting atomic software classes/modules, etc...KISS to the max.
There's more - depends on whether a group/individual project. One of the best-best practices I've encountered in a group is Pair Programming.
Hmmm...I've always worked as an independant developer, so I've never applied it to my situations...I can see how it's useful but also see it being redundant...I realize proponents would say it works wonders and their experiences were nothing but positive...however (and perhaps I'm not right to argue - as I've never tried it) I would argue it's redundancy and cost of development out weigh it's benefits. And I see my business capitalizing on outsourcing, thus (considering current technologies anyways) making pair programming somewhat difficult.
If this is specific to a project - why Page and Front Controllers in same mention? M & V have other patterns - but I assume you already knew that....
signature:
It's specific to what I feel I can offer as a developer when hired as a contractor, etc...an over simplification...nothing "to" specific, for example I don't wish to include my experience in multiple langauges, etc as that will be assumed, but my focus is clearly mentioned being around PHP as a development language. I limited patterns to most common and ones I best understand, there is no point in mentioning all.
Whether 'Extreme Programming' or 'Agile development' are best practises is highly debateable.
Agreed, but...this is a general over-simplification, if anything to demonstrate familiararity with principles, practices, etc...
TDD as an actual tangible addition to software development process with clearly a defined purpose IMHO makes it a best practice, but is also a method or approach to writing better code. So by that definition is could fall under both don't you agree? To avoid redundancy I included it under best practices.
XP or Agile or any other process which isn't clearly defined is by definition difficult to group or categorize...IMO anyways...
Pair programming for example I would categorize as a best practice, but I think it's success is also highly subjective...something I personally can't see being implemented in my own business model.
I'm really mentioning them more for buzzword advertising...as I'm only moderately familiar with XP or Agile and currently stand somewhere between, yes there are some good points and others which I disgree with. I have to read up it more before I make a final decision, even then it's subject to change.
I prefer to look at the individual practices under each of XP and Agile... The entire group of practices are not always applicable.
Thats the reason I just generalized...as many don't apply to all situations...again I've got to read more about it before I can really disscuss this further...
I always considered XP to fit into the category of Agile development.
I'm of the same understanding
TDD certainly does
Again, personally I agree it falls under a best practice, but also it's an actual method which is obvious it will yield better results...this makes it difficult to categorize with including multiple times...
I'm not really sure what we should be looking at here. Are we even stretching as far as Business Process Analysis or purely looking at development
Everything I suppose, but more for the business perspective...although I'm looking for both...
Most folk usually hit the development side of each - but you're completely correct, we really shouldn't neglect the bits and bobs that happen before you even open an editor.
As both a developer and business enthusiast...I'm interested in both perspectives..
To me, XP, TDD, and Agile each encompass a number of best practice. For example, each implement incremental and iterative development to some extent. It's those fundamental best practices that interest me the most.
Admittedly TDD encompasses more than my understanding extends...but I can agree with that so far...
Cheers
