DSPy a system for AI to Write Prompts and Do Fine Tuning
PM Connect - Agile Workshop
1. Patrick Masson
Chief Technology Officer
University of Massachusetts
Office of the President, UMassOnline
p e r f e c t i s t h e e n e m y o f g o o d
a g I l e i t e r a t i o n 0
Perfect Is The Enemy of Good by Patrick Masson is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
2. Why Agile?
...need for an alternative
to documentation driven,
heavyweight software
development processes...
Mike BeedleMike Beedle
Arie van BennekumArie van Bennekum
Alistair CockburnAlistair Cockburn
Ward CunninghamWard Cunningham
Martin FowlerMartin Fowler
Jim HighsmithJim Highsmith
Andrew HuntAndrew Hunt
Ron JeffriesRon Jeffries
Jon KernJon Kern
Brian MarickBrian Marick
Robert C. MartinRobert C. Martin
Ken SchwaberKen Schwaber
Jeff SutherlandJeff Sutherland
Dave ThomasDave Thomas
The Agile Manifesto, 2001The Agile Manifesto, 2001
4. Agile Manifesto
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
5. Agile Manifesto
Blah blah blabalah blah blah blah bablahblah
blahblah blah blah blah blah blah blah blah blah.
Blah blah blah blah blah blah blah blah:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Blahblah babalhbablablah blah blabalh blablahblah
Blahblahblah blah blah blah blahblah blah blah
Blah blah, blah blah blah blah blah blah blah blah
blah blah, blah blah blah blah blah blah blah blah.
I could basically reduce the
manifesto to the first 2 values…
Alistair Cockburn, alistair.cockburn.us
6. ...the ability to both create and respond to change in...the ability to both create and respond to change in
order to profit in a turbulent business environment.order to profit in a turbulent business environment.
Jim Highsmith,Jim Highsmith,
Agile Project Management, 2002Agile Project Management, 2002XP Investimentos
A g i l e i s . . .
7. ...an...an iterative and incrementaliterative and incremental (evolutionary) approach which is(evolutionary) approach which is
performed in aperformed in a highly collaborativehighly collaborative manner bymanner by self-organizing teamsself-organizing teams
withwith ""just enoughjust enough"" ceremony that produces high quality...ceremony that produces high quality...
Scot W. Amber,Scot W. Amber,
Agile Modeling, 2007Agile Modeling, 2007
A g i l e i s . . .
XP Investimentos
8. A g i l e i s . . .
close collaborationclose collaboration between the programmer team and businessbetween the programmer team and business
experts; face-to-face communication (as more efficient than writtenexperts; face-to-face communication (as more efficient than written
documentation);documentation); frequent deliveryfrequent delivery of new deployable business value;of new deployable business value;
tight,tight, self-organizing teamsself-organizing teams; and ways to craft the code and the team; and ways to craft the code and the team
such that the inevitable requirements churn was not a crisis.such that the inevitable requirements churn was not a crisis.
Agile Alliance, 2001Agile Alliance, 2001XP Investimentos
9. It is not possible
to exactly define
Agile Methods.
TheyThey promote practices and principlespromote practices and principles that reflect anthat reflect an
agile sensibility, lightness, communication, self-directedagile sensibility, lightness, communication, self-directed
teams, [actions] over documenting, and more.teams, [actions] over documenting, and more.
Craig Larman,Craig Larman,
Agile & Iterative Development, 2004Agile & Iterative Development, 2004
XP Investimentos
10. Planning vs. Principles, or, “front-loaded” to meet
organizational vision/requirements versus “just-in-time”
that recognizes continuous change.
Processes vs. Practices, or, conformity, consistency
enables continuity, predictability versus awareness,
acumen enables change, adaptation.
www.youtube.com/watch?v=7xMDIcsUMmA
11. Project Management Process
(I'm not picking on anyone)
● PMI's five process groups:
● Initiating
● Planning
● Executing
● Monitoring & Controlling
● Closing
● PMI's nine knowledge areas:
● Project Integration Management
● Project Scope Management
● Project Time Management
● Project Cost Management
● Project Quality Management
● Project Human Resources Management
● Project Communication Management
● Project Risk Management
● Project Procurement Management
12. Agile
Principles
Practices
Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software: minimal viable product.
Welcome changing requirements, even late in development. Agile
processes harness change for the customer's competitive
advantage: emergent design.
Deliver working software frequently, from a couple of weeks to a
couple of months, with a preference to the shorter timescale:
incremental and iterative development.
Business people and developers must work together daily
throughout the project: frequent testing.
Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get the job
done: bottom-up.
The most efficient and effective method of conveying information to
and within a development team is face-to-face conversation:
collaboration.
13. Agile
Principles
Practices
Working software is the primary measure of progress:
evidence based.
Agile processes promote sustainable development. The
sponsors, developers, and users should be able to maintain a
constant pace indefinitely: no heroes.
Continuous attention to excellence and good design
enhances agility: honesty and maturity.
Simplicity--the art of maximizing the amount of work not
done--is essential: just enough.
The best architectures, requirements, and designs emerge
from self-organizing teams: self-organization.
At regular intervals, the team reflects on how to become more
effective, then tunes and adjusts its behavior accordingly:
openness.
14. a f e w
c o n c e p t u a l e x a m p l e s...
15. Minimally Viable Product
As you can see, my young
apprentice, your friends have
failed.
Now witness the firepower of
this fully ARMED and
OPERATIONAL battle station!
AA Minimum Viable ProductMinimum Viable Product has just those featureshas just those features
that allow the product to be deployed, and no more.that allow the product to be deployed, and no more.
Supreme Chancellor Palpatine,
a.k.a. Darth Sidious
16. vs
Just
Enough
Just
In Case
Office v Wikipedia
Once an artifact fulfills its intended purpose then any more
investment in it is simply busy work. The secret is to learn
how to detect when you've reached the point of something
being just barely good enough and then to stop working on it.
Scott Ambler, Agile Modeling, 2007
17. Agile designs are emergent, they’re not defined up front. Your overall
system design will emerge over time, evolving to fulfill new requirements
and take advantage of new technologies as appropriate.
Although you will often do some initial architectural modeling at the very
beginning of a project during 'iteration 0' this will be just enough to get your
team going.
Scott Ambler, Agile Modeling, 2007
EMERGENCE
18. At the University of California at Irvine,
when they first built its campus, they just planted grass.
19. Then they waited a year and looked at
where people had made paths in the grass...
22. &
Incremental
Iterative
Development
“The Increment [i.e.
“sprint” in Scrum] adds
completely new features,
based on user stories,
hence expanding the
scope of the functionality
offered – that makes it
Incremental.
But each Increment is
also likely to refine
existing functionality –
that makes it iterative.
Steven Thomas,
Revisiting the Iterative Incremental Mona Lisa, 2012
23. There is hardly any one settling on the prairies who could not
produce lumber sufficient to build a small “shanty,” but is deterred
from doing so, for, he says, “I will be able in a few years”--remember
the corn-growing and pork-producing farmer of the West accumulates
fast when once started--”to build me a good, respectable house,
and I hate to waste material that will be nearly useless then.”
[Shown] is a simple cottage of only one room, which can be erected
at a trifling expense, even on the prairies where lumber is
high and scarce, and must be hauled a long distance.
Incremental
IterativeOur Homes and Their Adornments, 1883
24. Now we will suppose our humble farmer, at the end of one or two
years, has acquired means to enlarge his humble domicile. This he
can do, which consists of his first erection with a lean-to of one bed
room, a pantry and a wood-shed. [This] will make a very convenient
house for a small family.
Again we will suppose that, “the lapse of years has brought round
the time” when our friend wants to again enlarge his house. If he has
followed our former plans, he can do so as shown. This
consists of an upright part added to his former erections.
Incremental
IterativeOur Homes and Their Adornments, 1883
25. Incremental: in which the various parts of the system are developed
at different times or rates and integrated as they are completed.
Iterative: in which time is set aside to revise and improve parts of
the system
Allistair Cockburn, Incremental versus Iterative Development, 2007
26. Incremental: in which the various parts of the system are developed
at different times or rates and integrated as they are completed.
Iterative: in which time is set aside to revise and improve parts of
the system
Allistair Cockburn, Incremental versus Iterative Development, 2007
27. Self-organization
Self-organized: groups form through professional
or personal affinity;
Self-organizing: roles within groups are
determined by the members;
Self Directed: activities undertaken are defined by
the participants.
Jurgen Appelo, Management 3.0, 2011
28. Recommended Resources
(In Order of Appearance)
Thank You
Patrick Masson
pmasson@umassonline.net
Agile Project Management
James A. Highsmith, Addison Wesley Professional, 2010
Agile Modeling
By Scott Ambler, John Wiley & Sons. 2002
Agile and Iterative Development
By Craig Larman. Addison-Wesley Professional, 2003
Management 3.0
By Jurgen Appelo, Addison-Wesley Professional 2011