Cell Phone Software Forum
| View previous topic :: View next topic |
| Author |
Message |
wbsurfver@yahoo.com Guest
|
Posted: Wed Apr 11, 2007 4:02 am Post subject: Agile/Iterative methodologies taught in Universities ? |
|
|
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
Is the waterfall methodology taught implicitly or is all this more
project management ? I took a software engineering class as an
undergrad which wasn't the best class at the time because of the
teacher maybe, but that was in the late 80's. |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Mark Woyna Guest
|
Posted: Wed Apr 11, 2007 8:31 pm Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
On Apr 10, 7:02 pm, "wbsurf...@yahoo.com" <wbsurf...@gmail.com> wrote:
| Quote: |
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
|
<soapbox>
Unfortunately, it appears that most CS programs still teach waterfall
as the
one and only process. What do you expect? What does computer science
have to do with software engineering? Do Physics Departments teach
Mechanical Engineering? Do Chemistry Departments teach Chemical
Engineering? I don't believe things are going to change until we
establish
independent Software Engineering Departments at the universities.
However,
don't hold your breath waiting for that to happen.
The vast majority of faculty in CS Departments have never worked in
the
software industry, and have never designed or written a line of
production
code in their life. Their career track typically follows the BS -> MS -
| Quote: |
PhD
(researcher) route, without any time in industry. Nine times out of |
ten, they've
never worked on a large project, and may not have firsthand experience
with
waterfall, never mind agile.
</soapbox>
| Quote: |
Is the waterfall methodology taught implicitly or is all this more
project management ? I took a software engineering class as an
undergrad which wasn't the best class at the time because of the
teacher maybe, but that was in the late 80's.
|
I had a single SW Engineering course as an undergraduate, and it was
taught by a newly minted PhD that has never written code other than
for his
thesis. How on earth does one get to teach software engineering
without
having been a practitioner at some point? Do you believe that surgery
is
taught at medical schools by doctors that have never been in an
operating
room?
I teach part-time in the MSCIS program at the Northwestern University
School of Continuing Studies, in addition to my day job as a software
engineer (20 years). I discuss agile (testing) in my Software Testing
course, and agile (Scrum, and XP) and iterative (RUP) development in
my Project Management and Software Development course. For
completeness,
I also cover traditional project management topics. While I'd love to
spend more time covering agile principles and practices, the reality
is
that the majority of the students work for a living, and their
employers
utilize waterfall and TPM, so I have to prepare them for that. :-(
Lastly, I utilize many elements of agile development in the capstone
project course. Students work in teams to develop a 3-tier system
over a period of two 4-week iterations. Each iteration focuses on a
handful of features/use cases/user stories, and results in a working
application. Students are required to gather minimal requirements,
design a little, code a little, test a little (acceptance and unit
tests),
and document a little. While documentation is required, it's fairly
lightweight, as the goal is working software (over comprehensive
documentation). Unit tests are mandatory, but I do not mandate TDD,
although I do encourage it.
Mark Woyna |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Andy Champ Guest
|
Posted: Thu Apr 12, 2007 12:53 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
wbsurfver@yahoo.com wrote:
| Quote: |
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
Is the waterfall methodology taught implicitly or is all this more
project management ? I took a software engineering class as an
undergrad which wasn't the best class at the time because of the
teacher maybe, but that was in the late 80's.
My son is studying CompSci at university now. |
They have touched Agile recently on a project. The outlines were given
to them, and then they were given a project to develop.
Of course, this has been run a few times now, so all the awkward
questions have been asked, and the spec. they have is unambiguous.
Yes, folks, they were told to use Agile methods on one of those few
occasions when a waterfall method was the correct choice.
I reckon the lecturer should have given them a woolly spec, and a month,
and then changed the spec. every week!
Andy |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Gabriel Claramunt Guest
|
Posted: Thu Apr 12, 2007 4:50 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
At my university, we had 1 year of software engineering (lectures the first
semester, a team (size>10) project the second )
When I did it (8 years ago ), it was based on Jacobson's OOSE (very
similar to RUP), currently half of the teams follow something like RUP and
the others follow XP.
Maybe they have more focus on process beacause is an engineering school, and
the degree is "Computer Engineer" (Software Engineer). We don't have a
"pure" CS course.
"wbsurfver@yahoo.com" <wbsurfver@gmail.com> wrote in message
news:1176249762.056178.182760@n76g2000hsh.googlegroups.com...
| Quote: |
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
Is the waterfall methodology taught implicitly or is all this more
project management ? I took a software engineering class as an
undergrad which wasn't the best class at the time because of the
teacher maybe, but that was in the late 80's.
|
|
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Alexei Polkhanov Guest
|
Posted: Thu Apr 12, 2007 5:31 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
On Apr 10, 5:02 pm, "wbsurf...@yahoo.com" <wbsurf...@gmail.com> wrote:
| Quote: |
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
|
"Agile" methodologies should not be thought in universities for same
reasons principles Shamanism is not being thought in medical schools.
And I hope it will stay this way. Saying "agile/iterative" is plain
wrong because this way you are implying that "agile" and "iterative"
are same or related. "agile" is just a flashy marketing term generally
applied to religion-alike methodologies (i.e XP, test-driven
development etc.). Such methodologies are so popular among software
developers who are lacking necessary education and as result failing
projects, going over budget and on lookout for "silver bullets" and
other kind of magic. It is amazing how many charlatanes are there who
managed to make themselves so popular among software developers! We
should at best ignore them and especially keep them away from
teaching in universities.
Iterations btw. always were and still are important part of classic
spiral development process. Please refer to "Software Engineering" by
Ian Sommerville or ISO 12207 standard for Software Acquisition
Process.
---
Alexei Polkhanov
Sr. Consultant/Software Systems Analyst
Tel: (604) 719-2515
E-mail: use...@monteaureus.com
http://www.monteaureus.com/ |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Gabriel Claramunt Guest
|
Posted: Thu Apr 12, 2007 6:25 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
How you dare?
Thou shall be flamed to death by hordes of eXtremos!
:-D
"Alexei Polkhanov" <apolkhanov@relic.com> wrote in message
news:1176341492.337508.165430@b75g2000hsg.googlegroups.com...
| Quote: |
On Apr 10, 5:02 pm, "wbsurf...@yahoo.com" <wbsurf...@gmail.com> wrote:
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
"Agile" methodologies should not be thought in universities for same
reasons principles Shamanism is not being thought in medical schools.
And I hope it will stay this way. Saying "agile/iterative" is plain
wrong because this way you are implying that "agile" and "iterative"
are same or related. "agile" is just a flashy marketing term generally
applied to religion-alike methodologies (i.e XP, test-driven
development etc.). Such methodologies are so popular among software
developers who are lacking necessary education and as result failing
projects, going over budget and on lookout for "silver bullets" and
other kind of magic. It is amazing how many charlatanes are there who
managed to make themselves so popular among software developers! We
should at best ignore them and especially keep them away from
teaching in universities.
Iterations btw. always were and still are important part of classic
spiral development process. Please refer to "Software Engineering" by
Ian Sommerville or ISO 12207 standard for Software Acquisition
Process.
---
Alexei Polkhanov
Sr. Consultant/Software Systems Analyst
Tel: (604) 719-2515
E-mail: use...@monteaureus.com
http://www.monteaureus.com/
|
|
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Phlip Guest
|
Posted: Thu Apr 12, 2007 7:48 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
Andy Champ wrote:
| Quote: |
Yes, folks, they were told to use Agile methods on one of those few
occasions when a waterfall method was the correct choice.
|
In what order should they do the requirements?
Waterfall is never the "correct choice". It's the admission of defeat - that
you can't change a design easily or deploy early and often.
--
Phlip
http://flea.sourceforge.net/PiglegToo_1.html |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Mark Woyna Guest
|
Posted: Thu Apr 12, 2007 7:28 pm Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
On Apr 11, 8:31 pm, "Alexei Polkhanov" <apolkha...@relic.com> wrote:
| Quote: |
On Apr 10, 5:02 pm, "wbsurf...@yahoo.com" <wbsurf...@gmail.com> wrote:
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
"Agile" methodologies should not be thought in universities for same
reasons principles Shamanism is not being thought in medical schools.
|
Agile is based heavily on the principles of lean manufacturing, which
is
certainly relevant to engineering studies. Are you suggesting that
lean
design and manufacturing not be taught as part of industrial
engineering
programs, as it's just another passing fad? Toyota would beg to
differ.
| Quote: |
And I hope it will stay this way. Saying "agile/iterative" is plain
wrong because this way you are implying that "agile" and "iterative"
are same or related. "agile" is just a flashy marketing term generally
applied to religion-alike methodologies (i.e XP, test-driven
development etc.).
|
Yes, "Agile" was selected as a catchy name to differentiate it from
the heavyweight methodologies that continue to fail our industry.
'Just
because it has a flashy name doesn't mean that it's not based on
sound principles, i.e. lean manufacturing. Many of us having been
utilizing "agile" practices for years. As far as I'm aware, nobody in
the agile
community claims that there's anything really new here. It's simply
the
combination of good practices that have been proven over the years.
| Quote: |
Such methodologies are so popular among software
developers who are lacking necessary education and as result failing
projects, going over budget and on lookout for "silver bullets" and
other kind of magic.
|
Yes, many of us in the agile community have experience with failing
projects. However, 9 times out of 10 they were managed using
traditional project management techniques. We simply realize that
it's insane to continue applying the same wrong process, and yet
expect different results. The statistics on failed projects hasn't
really
changed much in the past 20 years.
Magic? That's funny. Agile is hard work. Producing working software
that
satisfies our customers' highest priorities every 2 weeks, or 30 days,
is
tough. We don't get to hide behind a wall of requirements documents,
design documents, test plans, or an army of business analysts. We're
getting close with the business, which is what the business has been
asking for for years.
| Quote: |
It is amazing how many charlatanes are there who
managed to make themselves so popular among software developers! We
should at best ignore them and especially keep them away from
teaching in universities.
|
Well, the vast majority of universities teach waterfall, and the
majority of
projects continue to crash and burn. What does that say about the
value
of the universities' offerings?
In addition to teaching agile development, I also teach traditional
project
management. TPM has its place on the right kind of projects. One size
does not fit all. Unfortunately, the TPM crowd believes that their
size is
appropriate for all types of projects.
| Quote: |
Iterations btw. always were and still are important part of classic
spiral development process. Please refer to "Software Engineering" by
Ian Sommerville or ISO 12207 standard for Software Acquisition
Process.
|
Agreed. RUP was the latest process framework to emphasize IID.
However,
many in the agile community have seen more than our share of iterative
processes degenerate into heavyweight, document-driven, waterfall-ish
processes. Agile takes the opposite approach in that it starts with a
bare minimum process, and adds to it only when the team determines
that
a little more process is warranted. RUP requires one to tailor the
process
by removing or altering unnecessary artifacts/roles/activities.
Unfortunately,
this is seldom done, and the result is a very heavyweight process.
Mark Woyna
| Quote: |
---
Alexei Polkhanov
Sr. Consultant/Software Systems Analyst
Tel: (604) 719-2515
E-mail: use...@monteaureus.comhttp://www.monteaureus.com/ |
|
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
H. S. Lahman Guest
|
Posted: Thu Apr 12, 2007 8:06 pm Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
Responding to Wbsurfver...
| Quote: |
I had a look through UMass Lowell course descriptions for the comp
sci department and got nothing on Agile or Iterative. Are these things
often taught nowadays in software engineering classes or do people
expect they will be ?
|
Probably not in most schools. The agile approaches are software
development /processes/. With a few notable exceptions like
Carnegie-Mellon, most CS departments don't pay much attention to
processes. Instead they focus on design methodologies, programming, and
computing. (In my alma mater CS is still done in the EE department even
though the true EE majors are seriously outnumbered.)
| Quote: |
Is the waterfall methodology taught implicitly or is all this more
project management ? I took a software engineering class as an
undergrad which wasn't the best class at the time because of the
teacher maybe, but that was in the late 80's.
|
The more enlightened schools all teach IID nowadays, whether it is in an
agile wrapper or not.
However, I have to point out that there is no Waterfall Methodology per
se. All software development is done with waterfall development
processes. IID just breaks up a project into increments and then does
each increment as a small waterfall iteration. IOW, what has changed
over the years is the scale of the waterfalls. In the '60s there was one
waterfall for the entire project, which could be years long. Today
complete waterfall iterations in processes like TSP or XP are often
measured in days or a few weeks. (In the PSP a waterfall is executed
over code fragments that are typically << 200 LOC.)
*************
There is nothing wrong with me that could
not be cured by a capful of Drano.
H. S. Lahman
hsl@pathfindermda.com
Pathfinder Solutions
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
"Model-Based Translation: The Next Step in Agile Development". Email
info@pathfindermda.com for your copy.
Pathfinder is hiring:
http://www.pathfindermda.com/about_us/careers_pos3.php.
(888)OOA-PATH |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Andy Champ Guest
|
Posted: Thu Apr 12, 2007 11:43 pm Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
Phlip wrote:
| Quote: |
Andy Champ wrote:
Yes, folks, they were told to use Agile methods on one of those few
occasions when a waterfall method was the correct choice.
In what order should they do the requirements?
Waterfall is never the "correct choice". It's the admission of defeat - that
you can't change a design easily or deploy early and often.
|
They were given a spec. for a fixed design. No requirements capture.
IMHO no student will be seeing requirements capture for a good few years
after they've left uni. anyway, why would you be putting your new grads.
on such an important part of the process?
Andy |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Mark Woyna Guest
|
Posted: Fri Apr 13, 2007 1:38 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
On Apr 12, 2:43 pm, Andy Champ <no....@nospam.com> wrote:
| Quote: |
Phlip wrote:
Andy Champ wrote:
Yes, folks, they were told to use Agile methods on one of those few
occasions when a waterfall method was the correct choice.
In what order should they do the requirements?
Waterfall is never the "correct choice". It's the admission of defeat - that
you can't change a design easily or deploy early and often.
They were given a spec. for a fixed design. No requirements capture.
IMHO no student will be seeing requirements capture for a good few years
after they've left uni. anyway, why would you be putting your new grads.
on such an important part of the process?
Andy
|
Uh, so they can learn?
Dealing with ill-defined, and ever-changing requirements is at the
heart of the problem. Not exposing students to requirements
engineering techniques/issues in a software engineering program is
malpractice. Where are they supposed to learn it?
Agile development teams work closely with the customer/product owner
to define requirements, often in the form of (executable) acceptance
tests. New hires are part of the team. Therefore, they need the
skills.
Waterfall is based on the outdated idea that we can have a group of
seasoned "business analysts" capture the requirements, and then fling
them over the wall to a group of isolated developers. Statistics show
that this approach has a rather poor track record.
In my course, I give my students ill-defined requirements. 'Just
enough to get them going, but they have to ask questions to get the
details. Along the way, I often change my mind. Welcome to the real
world of software development.
Mark |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Phlip Guest
|
Posted: Fri Apr 13, 2007 3:16 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
Mark Woyna wrote:
| Quote: |
Dealing with ill-defined, and ever-changing requirements is at the
heart of the problem.
|
Even if the requirements don't change, iterative development prevents
a long blackout followed by nasty surprises. In terms of test driven
development, every step of featurizing and deploying is itself a test
of the current usability and design. And sorting features by business
priority is also a design technique, to help the most important code
get written first and tested the longest.
--
Phlip |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Alexei Polkhanov Guest
|
Posted: Fri Apr 13, 2007 4:30 am Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
| Quote: |
Agreed. RUP was the latest process framework to emphasize IID.
However,
many in the agile community have seen more than our share of iterative
processes degenerate into heavyweight, document-driven, waterfall-ish
processes. Agile takes the opposite approach in that it starts with a
bare minimum process, and adds to it only when the team determines
that
a little more process is warranted. RUP requires one to tailor the
process
by removing or altering unnecessary artifacts/roles/activities.
Unfortunately,
this is seldom done, and the result is a very heavyweight process.
Well and if you familiar with 12207 you know that there is a process |
for tailoring acquisition process for certain needs. For example there
is no need to perform system analysis if software is not part of
bigger system. Note that failure to follow defined process does not
mean that problem is in process itself.
If you need proof - you can easy obtain it yourself if you look for
process artifacts on your last project. Doe it have title with clearly
stated version? Do you have index and traceability matrix to design
documents, test plans and maintenance plan? Are all articles only
contain single requirement? Are they numbered? Is it clear where every
article originated from? Do all diagrams comply with notation (i.e.
class cardinality specified correctly etc.). Verify if every article
can be traced to article in test plan and allocated to entity
described in design document.
Another problem with "agile" processes is that they are simply not
VERIFIABLE processes. They live very little artifacts like
documentation and collected metrics so you cannot verify how closely
they have been followed or how effective they are at the end. In this
respect they more like a religion, because they just give you system
of beliefs not the well documented and traceable process. In order to
provide this traceability and visibility "HEAVYWEIGHT" processes were
created and there is no way around it.
Alexei. |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Anders Arnholm Guest
|
Posted: Fri Apr 13, 2007 1:20 pm Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
["Followup-To:" header set to comp.software.extreme-programming.]
Alexei Polkhanov <apolkhanov@relic.com> skriver:
| Quote: |
of beliefs not the well documented and traceable process. In order to
provide this traceability and visibility "HEAVYWEIGHT" processes were
created and there is no way around it.
|
The question is is the tracabuiklitry worth that it failes? And I have
never ever seen a project wheer the hevyweigt tracability have yet
traces and of the work that actually made the product work for the
customer in the end. That work is always made outside the planned
work, making the project even later. I have to many time been forces
to select between making the stuff tat are traced and the stuff that
is needed to get the project working again.
But there is not one solution that fits all problems, there never will
be, you have to have many tools in your sleve to get differebnt
thinghs working.
/ Balp
--
http://anders.arnholm.nu/ Keep on Balping |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
Vladimir Trushkin Guest
|
Posted: Sat Apr 14, 2007 12:31 pm Post subject: Re: Agile/Iterative methodologies taught in Universities ? |
|
|
On Apr 12, 6:48 am, "Phlip" <phlip...@yahoo.com> wrote:
| Quote: |
Andy Champ wrote:
Yes, folks, they were told to use Agile methods on one of those few
occasions when a waterfall method was the correct choice.
In what order should they do the requirements?
Waterfall is never the "correct choice". It's the admission of defeat - that
you can't change a design easily or deploy early and often.
--
Phlip
http://flea.sourceforge.net/PiglegToo_1.html
|
Waterfall in its pure form is no more relevant and is not used.
Iterative development has taken its place long ago. Please refer to
valid arguments.
----
Best Wishes,
Vladimir |
|
| Back to top |
|
 |
| |
Ads |
Advertising
Sponsor
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|

212 Attacks blocked
Powered by phpBB © 2001, 2005 phpBB Group
|