Win a copy of Machine Learning with R: Expert techniques for predictive modeling this week in the Artificial Intelligence and Machine Learning 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
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Ron McLeod
  • Stephan van Hulst
  • Tim Moores
  • Tim Holloway
  • Carey Brown
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Ganesh Patekar

in which process I am in? waterfall or Agile?

 
Ranch Hand
Posts: 77
Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am a team member who reads well defined specs and get tasks assigned from a boss and starts development/coding straight away.

Then there is my own testing, and then two levels of testing before I send my deliverables for deployment to production. there are occasional team meetings frequency of which depends on the boss under whom i work. Whenever necessary I am able to query the users/clients regarding any questions that arise out in the middle.

I am hearing this term Agile only recently. is it a recent hit in software development process just like bootstrap/jquery libraries suddenly boomed into popularity?

or I have been left out of the world for so long for not knowing it?

I think i have to learn Agile to stay relevant to the IT industry.
 
Marshal
Posts: 14070
234
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Agile as we know it today has been around for a while and I suppose it was formally started back in February 2001 with the signing of the Agile Manifesto. There were, however, multiple efforts to improve on traditional software development way before that. Many people have declared that Agile has crossed the Rubicon, i.e., gone past the tipping point and gained widespread acceptance and that may be true in some organizations but I think there's still a ways to go in the industry. I do a lot of interviews and the majority of the people I talk to have little to no experience in Agile. I need to see more than a 1 in 20 hit rate on people on the market (in the US Midwest) who have good experience in Agile before I'm convinced that Agile really has grown up and matured. That said, you absolutely should learn about Agile and how to do it properly; our profession needs it.
 
Author
Posts: 81
6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Mohamed --

It sounds like you're working on a team that follows a waterfall (or, at least, a waterfall-like) process. I'm actually really happy to hear the questions that you're asking, because they're exactly the questions that we answer in Learning Agile. I hope you get a chance to read it -- if you do, I would very much like to hear what you think of it.

Here's a little more information to address your specific questions and comments, and hopefully help you sort things out a bit.

I am a team member who reads well defined specs and get tasks assigned from a boss and starts development/coding straight away.



When you're following a waterfall process, each project typically goes through a set of sequential stages or phases (eg. planning, requirements, development, testing, deployment). Typically, different teams are responsible for different phases. The reason that it sounds like you're following a waterfall process is that you're following a spec that was already completed before you got to it, and you're assigned tasks that are probably part of a project plan. The spec was probably created during an earlier requirements phase, and the tasks were probably divided up during a planning phase.

One way that agile differs from waterfall is that the development team is heavily involved in deciding what gets built, how the project is planned, and who does what tasks. You still have a boss, but he generally trusts the team to divide the work. But that trust must be earned by having everyone on the team take a much more active interest in the people you're building software for, and what's important and valuable to them.

Then there is my own testing, and then two levels of testing before I send my deliverables for deployment to production. there are occasional team meetings frequency of which depends on the boss under whom i work. Whenever necessary I am able to query the users/clients regarding any questions that arise out in the middle.



This is also typical of a waterfall team. The developers do their unit testing, decide their work is done, and then pass their code on to a testing team to do their own testing. The developers and testers don't usually work together -- in fact, it's very common for developers to talk about passing their work "over the wall" to the testing team.

Another way that agile differs from waterfall is that the developers are highly involved in quality--and the testers are highly involved early in the project, in the planning and even in development (if they can). Everyone is much more interested in each others' work, and can give a lot of feedback to each other.

I am hearing this term Agile only recently. is it a recent hit in software development process just like bootstrap/jquery libraries suddenly boomed into popularity?

or I have been left out of the world for so long for not knowing it?



The term "agile" was coined in 2001, and has been getting more and more popular over the last decade. It has a lot of staying power because many agile teams report extremely good results, and are able to get past serious problems that have plagued their projects for years.

As an aside, the reason that bootstrap and jquery have gotten so popular is because they make certain things about web development much, much easier -- just like agile has made running projects much, much easier for many teams.

I think i have to learn Agile to stay relevant to the IT industry.



In my personal opinion, this is true. It is also why Jenny and I dedicated so much time and effort to making agile as easy to learn as possible in our book.
 
Junilu Lacar
Marshal
Posts: 14070
234
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Andrew Stellman wrote: -- just like agile has made running projects much, much easier for many teams.


I like to see agile as making things less difficult rather than easier. What's the difference between "less difficult" and "easier"? Software development is inherently difficult, no matter what you do. Some of the things we do on projects make it even more difficult. Agile tries to eliminate those things so that we can focus our efforts on the difficult things that matter, not the difficult things that get in our way. It's kind of like saying 120 degrees is not as hot as 150 degrees. Sure, technically 120 is cooler than 150 but realistically it's still hot; it's just not as hot. I think that's something you have to keep in mind, too. Agile doesn't solve many of the problems we have in software development but it makes those problems more apparent and it gives us a way to address those problems more effectively.
 
I found a beautiful pie. And a 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!