Professional Documents
Culture Documents
A People-centered approach to
Technology and Process
Class One: Software Development Process
12/07/21 10:36 PM
Slide 2
Who are you?
Your Name, Year, where from?
Recent school or job
What do you want out of this course?
Slide 3
Back in the old days …
Tools were crude, machines were
limited … short distance between
concept and implementation.
Applications were simple automations
of well-defined processes (like
bookkeeping).
Slide 4
But now …
Software is pervasive: “user” is just about
anyone or anything. Wide range of skills
needed to design and specify requirements.
New products are much more diverse, so
teams are more diverse.
Systems Development is not sterile … we
need a people-based model.
Slide 5
Work and Meta-work
Work is what we do to deliver elements of the
project: design, coding, testing, etc.
Meta-work, “work about the work”, is the
organization and management of the tasks and
deliverables to maximize the effectiveness of the
work itself.
Meta-Meta work: process definition … design of
the meta-work of all your projects (process and
procedures).
Slide 6
Systems Analysis and Product
Development Process (PDP)
Understanding the complete Product Development
Process is required to deliver the right product at the
right cost.
This course will teach Systems Analysis and Design
within the context of the Product Development
Process
Process modeling, data flow design, etc.
Other skills too: Project Management, Statistical
Analysis, Planning and Budgeting, …….
Process aligned to People and their Role
Slide 7
Product Development Process
Process through which a lot of people
contribute to the design, development,
validation, and roll-out of a technology
solution
So many people involved, so many agendas –
need to ensure clarity in every communication.
Formal understanding of roles and
responsibilities for the key people.
Expensive: retrograde motion kills.
Slide 8
Product Development Process
Applicable to all projects: not only “shrink-wrap”:
any technology deliverable needs a development
process.
Once understood, elements of the process can be
scaled & morphed.
“shrink-wrap” techniques can provide useful lessons for
web-based development
RAD, eXtreme … understand the waterfall, then get
more creative to fit the project
Core communication needs are the same, regardless
of platform and context.
Slide 9
PDP: The Waterfall
A million flavors, but all the same
Know why each deliverable is developed, and for
whom – lots of documents!
Author vs. audience
Size matters: the longer the document, the less
valuable (except Reference Docs)
Move toward standard templates for your organization --
Reduce cognitive friction in consuming documents
throughout the project cycle
Slide 10
PDP at Alibris
Discovery
Requirements
Specifications
Development Alpha
Beta
Integration
Launch Maintenance
Slide 11
PDP at Alibris
Why?
What?
For Whom?
How? When?
Can we do it?
Useful?
Does it align?
Pro? ROI
Slide 12
Discovery
Requirements
Specifications
PDP: Discovery
Development Alpha
Beta
Integration
Launch Maintenance
Slide 13
Discovery
Requirements
Specifications
PDP: Requirements
Development Alpha
Beta
Integration
Launch Maintenance
Slide 15
Good Prototype Examples
Develop user interface with dummy
functionality to get early feedback from
users.
Develop sample application to learn new
toolset & estimate productivity.
Build a sample interface between two entities
(business partners) to ensure interoperability
(connectivity and data flow)
Slide 16
PDP: More on Discovery
Requirements
Specifications
Development Alpha
Requirements
Beta
Integration
Launch Maintenance
Product Functionality
Platform & Compatibility
Servers, network bandwidth, connectivity, O/S,
etc.
Performance
Marketing and Sales
Channels, Pricing and Licensing
Maturity of product: SDK, integration points &
hooks
Product Support Requirements
Slide 17
Discovery
Requirements
Specifications
PDP: Specifications
Development Alpha
Beta
Integration
Launch Maintenance
Slide 18
Discovery
Requirements
Specifications
PDP: Development
Development Alpha
Beta
Integration
Launch Maintenance
Requirements
Specifications
Development Alpha
and Validation
Beta
Integration
Launch Maintenance
“What defects?”
QA can only measure quality, classify
issues, and alignment to requirements.
QA costs can match development costs.
Do not get cheap.
External integrations are always slower
than you expect.
Slide 20
PDP: Launch and Discovery
Requirements
Specifications
Development Alpha
Maintenance
Beta
Integration
Launch Maintenance
Slide 21
PDP: Working with Externals
(Suppliers, Partners, etc.)
Ensure process alignment:
nomenclature, roles, etc.
Develop formal and informal
communication channels
Write it down!
Whoever documents it, drives it.
Drive formal sign-off, int. & ext.
Demonstrate “good habits” early.
Slide 22
PDP: Outsourcing
Use process to delineate elements that
could be “broken out” to an external
team
Visual design and branding
Development / Testing
Need formal process wrapping to ensure
clean communication
Slide 23
Broadly Applicable & Flexible
Process must work for web site, shrink-
wrapped product, enterprise, or
embedded system.
Process should allow growth in
variability of design documents and
deliverables.
Process clarifies the purpose and
structure for any deliverable.
Slide 24
Questions? Discussion?
Slide 25