This link has been bookmarked by 168 people . It was first bookmarked on 02 Mar 2006, by Alexander Dodonov.
-
19 Feb 20
-
12 Mar 17
-
08 Sep 16
-
a view that these ideas had been stifled and not been treated seriously enough, particularly by people interested in software process.
-
undamental principles that united these methodologies
-
otable contrast from the assumptions of the established methodologies
-
he design of the system is cobbled together from many short term decisions
-
ong test ph
-
ase
-
l
-
making software development more predictable and more efficient
-
detailed
-
emphasis on planning inspired by other engineering disciplines
-
engineering
-
plan-driven methodologies
-
methodologies
-
not
-
l
-
terribly successful
-
ess noted for being popular
-
bureaucratic
-
whole pace of development slows down
-
reaction to the bureaucracy
-
ttempt a useful compromise between no process and too much process
-
ess document-oriented
-
ode-ori
-
key part of documentation is source code
-
e
-
c
-
nted:
-
- Agile methods are adaptive rather than predictive.
Lack of documentation is a symptom of two much deeper differences:
-
The agile methods, however, welcome change.
-
Agile methods are people-oriented rather than process-oriented.
-
Agile methods assert that no process will ever make up the skill of the development team, so the role of a process is to support the development team in their work.
-
Predictive versus Adaptive
-
Separation of Design and Construction
-
mphasis on planning before you build.
-
design decisions, such as how to deal with the load on a bridge, are made as the drawings are produced
-
drawings are then handed over to a different group
-
ssumed that the construction process will follow the drawings
-
d
-
rawings specify the pieces and how they need to be put together
-
asks that need to be done and what dependencies exist between these tasks.
-
reasonably predictable schedule and budget for construction
-
how the people doing the construction work should do their work.
-
Design which is difficult to predict and requires expensive and creative people, and construction which is easier to predict.
-
Once we have the design, we can plan the construction. Once we have the plan for the construction, we can then deal with construction in a much more predictable way.
-
e want a predictable schedule that can use people with lower skills. To do this we must separate design from construction. Therefore we need to figure out how to do the design for software so that the construction can be straightforward once the planning is done.
-
w
-
If we can make all the significant decisions using the UML, we can build a construction plan and then hand these designs off to coders as a construction activity.
-
The problem with a UML-like design is that it can look very good on paper, yet be seriously flawed when you actually have to program the thing.
-
Furthermore the key issues, such as the way forces play in the design, are amenable to mathematical analysis.
-
When you build a bridge, the cost of the design
-
effort is about 10% of the job, with the rest being construction.
-
only 15% of the project is code and unit test, an almost perfect reversal of the bridge building ratios.
-
- Creative processes are not easily planned, and so predictability may well be an impossible target.
- We should be very wary of the traditional engineering metaphor for building software. It's a different kind of activity and requires a different process
-
The Unpredictability of Requirements
-
Is Predictability Impossible?
-
Controlling an Unpredictable Process - Iterations
-
The Adaptive Customer
-
Putting People First
-
Plug-Compatible Programming Units
-
Managing a People Oriented Process
-
The Difficulty of Measurement
-
he Role of Business Leadership
-
T
-
The Self-Adaptive Process
-
Flavors of Agile Development
-
Agile Manifesto
-
XP (Extreme Programming)
-
Scrum
-
Crystal
-
Context Driven Testing
-
Lean Development
-
(Rational) Unified Process
-
Should you go agile?
-
-
12 Mar 16
-
03 Jan 16
-
29 Nov 15
-
11 May 15
-
17 Mar 15
-
05 Feb 15
-
30 Mar 14
-
06 Feb 14
-
25 Dec 13Jorge Gamba
A late change in requirements is a competitive advantage. #quote #agile http://t.co/v65xlss8B9
-
24 Oct 13
-
31 Dec 12
-
02 Jun 12
-
n fact the source code is a design document and that the construction phase is actually the use of the compiler and linker. Indeed anything that you can treat as construction can and should be automated
-
Instead you need a process that can give you control over an unpredictability. That's what adaptivity is all about
-
actively tune their process as they proceed with the project.
-
-
09 Oct 11
-
Engineering methodologies
-
There's so much stuff to do to follow the methodology that the whole pace of development slows down
-
agile methods have some significant changes in emphasis from engineering methods
-
Engineering methods tend to try to plan out a large part of the software process in great detail for a long span of time, this works well until things change. So their nature is to resist change
-
The goal of engineering methods is to define a process that will work well whoever happens to be using it
-
Agile methods assert that no process will ever make up the skill of the development team, so the role of a process is to support the development team in their work
-
anything that you can treat as construction can and should be automated
-
In software all the effort is design, and thus requires creative and talented people
-
Creative processes are not easily planned, and so predictability may well be an impossible target
-
-
27 Sep 11
-
11 Apr 11ghost-dog
In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landscape. In this essay I explore the reasons for agile methods, focusing not so much on their weight but on their adaptive nature and their people-first orientation.
development Fowler patterns methodology software design agile programming XP
-
22 Feb 11
-
09 Feb 11Trevor Brown
Fowler's take on agile versus traditional engineering-inspired software development process methodologies.
martinfowler fowler programming scrum methodologies process softwareengineering agile XP
-
26 Jan 11Blair Hickman
Agile development and iterative processes
-
Agile methods are adaptive rather than predictive.
-
ather than process-oriented.
-
gile methods are people-oriented r
-
So the approach for software engineering methodologies looks like this: we want a predictable schedule that can use people with lower skills. To do this we must separate design from construction. Therefore we need to figure out how to do the design for software so that the construction can be straightforward once the planning is done.
-
One of the big dangers is to pretend that you can follow a predictable process when you can't
-
People who work on methodology are not very good at identifying boundary conditions: the places where the methodology passes from appropriate to inappropriate
-
a process that can give you control over an unpredictability. That's what adaptivity is all about.
-
feedback mechanism
-
This leads to a style of planning where long term plans are very fluid, and the only stable plans are short term plans that are made for a single iteration. Iterative development gives you a firm foundation in
-
The usual agile approach is to fix time and price, and to allow the scope to vary in a controlled manner.
-
The problem with predictive processes is that project quality is measured by conformance to plan. This makes it difficult for people to signal when reality and the plan diverge.
-
iteration lengths
-
A good predictive project will go according to plan, a good agile project will build something different and better than the original plan foresaw.
-
One of the key features of agile methods is that they reject this assumption.
-
The agile community recognizes that the characteristics of software development are such that measurement based management leads to very high levels of measurement dysfunction. It's actually more efficient to use a delegatory style of management, which is the kind of approach that is at the center of the agilist viewpoint.
-
Scrum concentrates on the management aspects of software development, dividing development into thirty day iterations (called 'sprints') and applying closer monitoring and control with daily scrum meetings.
-
-
18 Jan 11
-
The problem with predictive processes is that project quality is measured by conformance to plan. This makes it difficult for people to signal when reality and the plan diverge. The common result is a big slip in the schedule late in the project. In an agile project there is a constant reworking of the plan with every iteration. If bad news is lurking it tends to come earlier, when there is still time to do something about it. Indeed this risk control is a key advantage of iterative development.
-
"A late change in requirements is a competitive advantage".
-
-
23 Dec 10
-
18 Oct 10
-
03 Oct 10
-
03 Jun 10
-
15 Mar 10
-
09 Mar 10
-
This allows the construction to be less skilled intellectually,
-
we want a predictable schedule that can use people with lower skills.
-
it can look very good on paper, yet be seriously flawed when you actually have to program the thing.
-
We should be very wary of the traditional engineering metaphor for building software
-
you need a process that can give you control over an unpredictability.
-
concentrates on the management aspects of software development
-
architecture centric
-
-
21 Feb 10
-
06 Jan 10
-
07 Jul 09
-
22 May 09
-
Such a plan can figure out the tasks that need to be done and what dependencies exist between these tasks. This allows for a reasonably predictable schedule and budget for construction. It also says in detail how the people doing the construction work should do their work. This allows the construction to be less skilled intellectually, although they are often very skilled manually.
-
Such a plan can figure out the tasks that need to be done and what dependencies exist between these tasks.
-
-
12 May 09
-
23 Mar 09
-
10 Mar 09
-
11 Feb 09
-
03 Feb 09
-
10 Oct 08
-
16 Sep 08
-
15 Aug 08
-
11 Jul 08
-
30 May 08
-
12 May 08
-
16 Apr 08
-
25 Mar 08
-
06 Mar 08
-
05 Mar 08
-
21 Feb 08
-
24 Jan 08
-
19 Dec 07
-
14 Aug 07
-
05 Aug 07
-
14 Jul 07
-
02 Jul 07Jimmy Vuccolo
Interesting article that tries to answer some questions about to do a better job with developing software.
business code coding development engineering extremeprogramming methodology management performance productivity programing projectmanagement for:pmdatpsu
-
12 Jun 07
-
10 May 07
-
08 May 07
-
01 May 07
-
21 Apr 07
-
08 Apr 07
-
26 Mar 07Francis Cook
Martin Fowler. He says stuff and writes it down.
agile article documentation history methodology development software programming process
-
22 Mar 07Patrick Scheuerer
In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landsc
-
17 Mar 07
-
13 Mar 07Brother Fantasma
From SE430 interesting articles about new Methodology for Software Engineering.
-
14 Feb 07
-
05 Jan 07
-
22 Nov 06Bjoern Stierand
The reasons for agile methods, with focus on their adaptive nature and their people-first orientation.
agile programming development software design study-st scrum
-
04 Nov 06
-
29 Oct 06
-
06 Oct 06
-
08 Sep 06
-
03 Sep 06
-
26 Aug 06
-
08 Aug 06
-
03 Aug 06
-
28 Jul 06
-
09 Jul 06
-
20 Jun 06
-
06 Jun 06
-
04 May 06
-
02 May 06
-
26 Apr 06
-
21 Apr 06Pascal Polleunus
In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landsca
-
16 Apr 06
-
06 Apr 06
-
14 Mar 06
-
01 Mar 06
-
24 Feb 06viniciusjl
In this essay I explore the reasons for agile methods, focusing not so much on their weight but on their adaptive nature and their people-first orientation.
-
14 Feb 06Sander van Zoest
In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landsca
agile programming Methodology development software design process fowler martin scrum XP crystal
-
12 Feb 06
-
28 Jan 06
-
23 Jan 06
-
06 Jan 06
-
29 Dec 05
-
21 Dec 05
-
25 Nov 05auxonne auxonne
In the past few years there's been a rapidly growing interest in agile (aka "lightweight") methodologies. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landscape. In this
-
14 Nov 05vikramsjn
This essay I explore reasons for agile methods, focusing not much on their weight but on their adaptive nature and their people-first orientation. Also give summary and references to processes in this school and factors that should influence your choice
agile development methodology software design process programming deliciousExport20110319
Page Comments
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.