This week's book giveaway is in the General Computing forum.
We're giving away four copies of Emmy in the Key of Code and have Aimee Lucido on-line!
See this thread for details.
Win a copy of Emmy in the Key of Code this week in the General Computing forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Junilu Lacar
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Knute Snortum
  • Devaka Cooray
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Ron McLeod
  • Carey Brown
Bartenders:
  • Paweł Baczyński
  • Piet Souris
  • Vijitha Kumara

In a software project- Is Agile approach dependent on the technologies used in the project?

 
Mohamed Sanaulla
Bartender
Posts: 3225
34
IntelliJ IDE Oracle Spring Chrome Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Is Agile approach dependent on the Technologies being used in the development of the project? Some technologies might favor/provide easy support for following agile approach and might be hard to implement in others.
 
Jimmy Clark
Ranch Hand
Posts: 2187
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
No, it is not dependent upon technology. Agile is a methodology for creating technology, i.e. software.
 
Mohamed Sanaulla
Bartender
Posts: 3225
34
IntelliJ IDE Oracle Spring Chrome Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Jimmy Clark wrote:No, it is not dependent upon technology. Agile is a methodology for creating technology, i.e. software.



By technologies I meant- Programming language/ technology using which the software is built.
 
Tim Ottinger
author
Posts: 46
Python VI Editor Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Mohamed Sanaulla wrote:

Jimmy Clark wrote:No, it is not dependent upon technology. Agile is a methodology for creating technology, i.e. software.



By technologies I meant- Programming language/ technology using which the software is built.



No, it's not dependent on a stack. Values, principles, planning, iterating, teamwork, etc (most of what constitutes Agile) is completely independent. You could be agile in Assembly or Basic or Prolog or Whitespace if you wanted.

When it comes to the technical practices there are biases. Some languages have been built up to make agile work easier than others, though I've seen it done in languages you might not choose for the purpose.

There are advantages to using languages which already have acceptance test and unit test frameworks, but you can always build your own. I've seen them for C, C++, Python, Smalltalk, Java, C#, PHP, and even SQL.

There is additional advantage if refactoring editors are available (smalltalk, java, C#, others).

If the languages run quick build/test cycles it's easier to get the rhythm going, so php, smalltalk, java, python, ruby have advantages there.

People are doing TDD in functional programming languages these days. It's different there, but that's not too surprising.

Finally, there are frameworks and libraries that can complicate testing. If you have an ORM (as most of us do) then you might have trouble keeping the tests fast because of dependency on the database. It's troubling, but we do it all the time. I've seen rails programmers do a lot of work in cucumber without unit tests when their work is really configuring some rails component instead of writing new code. Django expects to stand up a blank database for running tests, instead of testing quickly without a database.



 
Jeff Langr
author
Posts: 799
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Great answer Tim.

Most of the development tools came out of OO shops. But as Tim indicates, support for both functional and procedural test-driven development exists. As far as other technical practices, metaphor and the four rules of simple design have a slight OO bent, but in concept they too can apply to any environment.
 
Mohamed Sanaulla
Bartender
Posts: 3225
34
IntelliJ IDE Oracle Spring Chrome Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Tim Ottinger wrote:
When it comes to the technical practices there are biases. Some languages have been built up to make agile work easier than others, though I've seen it done in languages you might not choose for the purpose.



This is what I wanted to know and there you got my thoughts right. Thanks Tim for the explanation. I got this question because I am trying/learning Play framework, where in the sample project they test as they develop. This surely can be done in frameworks like Ruby, Grails. So I thought the technical practices add some weight to the adoption of Agile approach.

 
No matter. Try again. Fail again. Fail better. This time, do it with this tiny ad:
Java file APIs (DOC, XLS, PDF, and many more)
https://products.aspose.com/total/java
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!