Development Lifecycle: From Requirement to Release

Julie Meloni
Julie MeloniHead of Engineering and Applied Science at Improbable
DEVELOPMENT Lifecycle From Requirement to Release,[object Object],UX Update Meeting,[object Object],20 April 2011,[object Object],Julie Meloni,[object Object],Lead Technologist/Architect,[object Object],Online Library Environment, UVa Library,[object Object],jcmeloni@virginia.edu // @jcmeloni,[object Object]
Functional requirements define the functionality of the system, in terms of inputs, behaviors, outputs.,[object Object],What is the system supposed to accomplish?,[object Object],Functional requirements come from stakeholders (users), not (necessarily) developers.,[object Object],stakeholder request -> feature -> use case -> business rule,[object Object],Developers can/should/will help stakeholders work through functional requirements.,[object Object],Functional requirements should be written in a non-technical way.,[object Object],Functional Requirements,[object Object]
Example functionality: representation and manipulation of hierarchy,[object Object],Description: The GUI should allow users to view and interact with hierarchical structures representing the intellectual arrangement and the original arrangement of files and directories within ingested accessions. For each component level in the intellectual arrangement, the user interface should present associated digital assets and an interface to view and edit descriptive metadata elements. ,[object Object],Specific Components: collapse and expand record nodes for viewing (applies to both the original ingest and the intellectual arrangement), add new child record, add new sibling record, copy all or part of the existing structure to the intellectual arrangement, delete a record in intellectual arrangement.,[object Object],Example Functional Requirement,[object Object]
An epic is a long story that can be broken into smaller stories.,[object Object],It is a narrative; it describes interactions between people and a system,[object Object],WHO the actors are,[object Object],WHAT the actors are trying to accomplish,[object Object],The OUTPUT at the end,[object Object],Narrative should:,[object Object],Be chronological ,[object Object],Be complete (the who, what, AND the why),[object Object],NOT reference specific software or other tools,[object Object],NOT describe a user interface,[object Object],Writing USE CASES (or epics),[object Object]
Stories are the pieces of an epic that begin to get to the heart of the matter.,[object Object],Still written in non-technical language, but move toward a technical structure.,[object Object],Given/When/Then scenarios,[object Object],GIVEN the system is in a known state WHEN an action is performed THEN these outcomes should exist,[object Object],EXAMPLE:,[object Object],GIVEN one thing ,[object Object],AND an other thing ,[object Object],AND yet an other thing ,[object Object],WHEN I open my eyes ,[object Object],THEN I see something ,[object Object],But I don't see something else,[object Object],Writing stories,[object Object]
Scenario: User attempting to add an object,[object Object],GIVEN I am logged in ,[object Object],AND I have selected the “add” form,[object Object],AND I am attempting to upload a file,[object Object],WHEN I invoke the file upload button,[object Object],THEN validate file type on client side ,[object Object],AND return alert message if not valid,[object Object],AND continue if is valid,[object Object],THEN validate file type on server side,[object Object],AND return alert message if not valid,[object Object],AND finish process if is valid,[object Object],Actual example,[object Object]
Developers involved at the story level,[object Object],Writing stories,[object Object],Validating stories,[object Object],Throwing rocks at stories,[object Object],Getting at the real nitty-gritty of the task request,[object Object],Moving from story to actual code,[object Object],Stories written in step definitions become Ruby code,[object Object],Tests are part of this code,[object Object],Code is tested from the time it is written,[object Object],Writing code,[object Object]
So, the butterfly effect…,[object Object],When one change in a complex system has large effects elsewhere, through a sensitive dependence on initial conditions.,[object Object],Epics and stories do not have to be golden, but changes should be carefully considered,[object Object],Developers illuminate the potential effects of changes,[object Object],The cycle of epic, story, coding begins again,[object Object],This includes any story that touches the changed story,[object Object],Never stop communicating,[object Object]
We don’t ever think we’re finished when we release a product,[object Object],Each release has with a list of known issues and potential areas of improvement,[object Object],We go through the cycle of epic, story, coding/testing, user testing, story editing, coding/testing, (etc) again and again.,[object Object],Products are organic and grow upward and outward,[object Object],…but if you want to lop off part of that tree, expect there will be systematic changes ,[object Object],Developers are there to ensure the tree doesn’t fall on your house.,[object Object],releasing,[object Object]
1 of 9

Recommended

Developing and Deploying Open Source in the Library: Hydra, Blacklight, and B... by
Developing and Deploying Open Source in the Library: Hydra, Blacklight, and B...Developing and Deploying Open Source in the Library: Hydra, Blacklight, and B...
Developing and Deploying Open Source in the Library: Hydra, Blacklight, and B...Julie Meloni
1.8K views37 slides
Class 4 by
Class 4Class 4
Class 4Miguel Mastarreno Macías
193 views4 slides
Solid principles, Design Patterns, and Domain Driven Design by
Solid principles, Design Patterns, and Domain Driven DesignSolid principles, Design Patterns, and Domain Driven Design
Solid principles, Design Patterns, and Domain Driven DesignIrwansyah Irwansyah
2.6K views50 slides
Java Design Patterns Tutorial | Edureka by
Java Design Patterns Tutorial | EdurekaJava Design Patterns Tutorial | Edureka
Java Design Patterns Tutorial | EdurekaEdureka!
1.3K views45 slides
Design pattern and their application by
Design pattern and their applicationDesign pattern and their application
Design pattern and their applicationHiệp Tiến
894 views31 slides
Introduction to Core Java Programming by
Introduction to Core Java ProgrammingIntroduction to Core Java Programming
Introduction to Core Java ProgrammingRaveendra R
109 views13 slides

More Related Content

Similar to Development Lifecycle: From Requirement to Release

SOA - Architecture and Design by
SOA - Architecture and DesignSOA - Architecture and Design
SOA - Architecture and DesignMuthu Kumar
783 views44 slides
Design patterns for fun & profit - CoderCruise 2018 by
Design patterns for fun & profit - CoderCruise 2018Design patterns for fun & profit - CoderCruise 2018
Design patterns for fun & profit - CoderCruise 2018David Litvak Bruno
40 views29 slides
Jeet ooad unit-2 by
Jeet ooad unit-2Jeet ooad unit-2
Jeet ooad unit-2Jitendra s Rathore
2.3K views43 slides
Go f designpatterns 130116024923-phpapp02 by
Go f designpatterns 130116024923-phpapp02Go f designpatterns 130116024923-phpapp02
Go f designpatterns 130116024923-phpapp02Jagath Bandara Senanayaka
260 views30 slides
@lis agent communication, ontologies, protocols, semantic web 2003 by
@lis   agent communication, ontologies, protocols, semantic web 2003@lis   agent communication, ontologies, protocols, semantic web 2003
@lis agent communication, ontologies, protocols, semantic web 2003Luigi Ceccaroni
451 views25 slides
Placement management system by
Placement management systemPlacement management system
Placement management systemSurya Teja
11K views26 slides

Similar to Development Lifecycle: From Requirement to Release(20)

SOA - Architecture and Design by Muthu Kumar
SOA - Architecture and DesignSOA - Architecture and Design
SOA - Architecture and Design
Muthu Kumar783 views
Design patterns for fun & profit - CoderCruise 2018 by David Litvak Bruno
Design patterns for fun & profit - CoderCruise 2018Design patterns for fun & profit - CoderCruise 2018
Design patterns for fun & profit - CoderCruise 2018
@lis agent communication, ontologies, protocols, semantic web 2003 by Luigi Ceccaroni
@lis   agent communication, ontologies, protocols, semantic web 2003@lis   agent communication, ontologies, protocols, semantic web 2003
@lis agent communication, ontologies, protocols, semantic web 2003
Luigi Ceccaroni451 views
Placement management system by Surya Teja
Placement management systemPlacement management system
Placement management system
Surya Teja11K views
CodeCamp general info by Tomi Juhola
CodeCamp general infoCodeCamp general info
CodeCamp general info
Tomi Juhola625 views
Object oriented software engineering by Varsha Ajith
Object oriented software engineeringObject oriented software engineering
Object oriented software engineering
Varsha Ajith254 views
User stories — how to cook a cat? by Vladimir Tarasov
User stories — how to cook a cat?User stories — how to cook a cat?
User stories — how to cook a cat?
Vladimir Tarasov3.6K views
Typescript design patterns applied to sharepoint framework - Sharepoint Satur... by Luis Valencia
Typescript design patterns applied to sharepoint framework - Sharepoint Satur...Typescript design patterns applied to sharepoint framework - Sharepoint Satur...
Typescript design patterns applied to sharepoint framework - Sharepoint Satur...
Luis Valencia603 views
Life cycle of user story: Outside-in agile product management & testing, or... by Ravi Tadwalkar
Life cycle of user story: Outside-in agile product management & testing, or...Life cycle of user story: Outside-in agile product management & testing, or...
Life cycle of user story: Outside-in agile product management & testing, or...
Ravi Tadwalkar5.3K views
2.business object repository by Ajay Kumar ☁
2.business object repository2.business object repository
2.business object repository
Ajay Kumar ☁2.3K views
Non-functional requirements by Rohela Raouf
Non-functional requirements Non-functional requirements
Non-functional requirements
Rohela Raouf4.3K views
Jump start to OOP, OOAD, and Design Pattern by Nishith Shukla
Jump start to OOP, OOAD, and Design PatternJump start to OOP, OOAD, and Design Pattern
Jump start to OOP, OOAD, and Design Pattern
Nishith Shukla9.8K views
Jump Start To Ooad And Design Patterns by Lalit Kale
Jump Start To Ooad And Design PatternsJump Start To Ooad And Design Patterns
Jump Start To Ooad And Design Patterns
Lalit Kale1.2K views
Think components. March 2017 by Ivan Babak
Think components. March 2017Think components. March 2017
Think components. March 2017
Ivan Babak1.7K views

More from Julie Meloni

Everything I learned about a diverse workforce in tech, I learned…in the gove... by
Everything I learned about a diverse workforce in tech, I learned…in the gove...Everything I learned about a diverse workforce in tech, I learned…in the gove...
Everything I learned about a diverse workforce in tech, I learned…in the gove...Julie Meloni
89 views8 slides
Speaking 'Development Language' (Or, how to get your hands dirty with technic... by
Speaking 'Development Language' (Or, how to get your hands dirty with technic...Speaking 'Development Language' (Or, how to get your hands dirty with technic...
Speaking 'Development Language' (Or, how to get your hands dirty with technic...Julie Meloni
2.8K views49 slides
Learning About JavaScript (…and its little buddy, JQuery!) by
Learning About JavaScript (…and its little buddy, JQuery!)Learning About JavaScript (…and its little buddy, JQuery!)
Learning About JavaScript (…and its little buddy, JQuery!)Julie Meloni
5K views34 slides
Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit... by
Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit...Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit...
Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit...Julie Meloni
911 views24 slides
Everyone's a Coder Now: Reading and Writing Technical Code by
Everyone's a Coder Now: Reading and Writing Technical CodeEveryone's a Coder Now: Reading and Writing Technical Code
Everyone's a Coder Now: Reading and Writing Technical CodeJulie Meloni
892 views14 slides
Community, Cohesion, and Commitment by
Community, Cohesion, and CommitmentCommunity, Cohesion, and Commitment
Community, Cohesion, and CommitmentJulie Meloni
1.1K views19 slides

More from Julie Meloni(12)

Everything I learned about a diverse workforce in tech, I learned…in the gove... by Julie Meloni
Everything I learned about a diverse workforce in tech, I learned…in the gove...Everything I learned about a diverse workforce in tech, I learned…in the gove...
Everything I learned about a diverse workforce in tech, I learned…in the gove...
Julie Meloni89 views
Speaking 'Development Language' (Or, how to get your hands dirty with technic... by Julie Meloni
Speaking 'Development Language' (Or, how to get your hands dirty with technic...Speaking 'Development Language' (Or, how to get your hands dirty with technic...
Speaking 'Development Language' (Or, how to get your hands dirty with technic...
Julie Meloni2.8K views
Learning About JavaScript (…and its little buddy, JQuery!) by Julie Meloni
Learning About JavaScript (…and its little buddy, JQuery!)Learning About JavaScript (…and its little buddy, JQuery!)
Learning About JavaScript (…and its little buddy, JQuery!)
Julie Meloni5K views
Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit... by Julie Meloni
Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit...Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit...
Libra: An Unmediated, Self-Deposit, Institutional Repository at the Universit...
Julie Meloni911 views
Everyone's a Coder Now: Reading and Writing Technical Code by Julie Meloni
Everyone's a Coder Now: Reading and Writing Technical CodeEveryone's a Coder Now: Reading and Writing Technical Code
Everyone's a Coder Now: Reading and Writing Technical Code
Julie Meloni892 views
Community, Cohesion, and Commitment by Julie Meloni
Community, Cohesion, and CommitmentCommunity, Cohesion, and Commitment
Community, Cohesion, and Commitment
Julie Meloni1.1K views
Residential Learning Communities and Common Reading Programs by Julie Meloni
Residential Learning Communities and Common Reading ProgramsResidential Learning Communities and Common Reading Programs
Residential Learning Communities and Common Reading Programs
Julie Meloni398 views
Introduction to Programming (well, kind of.) by Julie Meloni
Introduction to Programming (well, kind of.)Introduction to Programming (well, kind of.)
Introduction to Programming (well, kind of.)
Julie Meloni6.6K views
Managing Your (DH) Project: Setting the Foundation for Working Collaborativel... by Julie Meloni
Managing Your (DH) Project: Setting the Foundation for Working Collaborativel...Managing Your (DH) Project: Setting the Foundation for Working Collaborativel...
Managing Your (DH) Project: Setting the Foundation for Working Collaborativel...
Julie Meloni781 views
Entering the Conversation by Julie Meloni
Entering the ConversationEntering the Conversation
Entering the Conversation
Julie Meloni8.5K views
Mavericks: The Ultra-Collaborative Composition Classroom by Julie Meloni
Mavericks: The Ultra-Collaborative Composition ClassroomMavericks: The Ultra-Collaborative Composition Classroom
Mavericks: The Ultra-Collaborative Composition Classroom
Julie Meloni1K views

Recently uploaded

Choosing the Right Flutter App Development Company by
Choosing the Right Flutter App Development CompanyChoosing the Right Flutter App Development Company
Choosing the Right Flutter App Development CompanyFicode Technologies
13 views9 slides
AIM102-S_Cognizant_CognizantCognitive by
AIM102-S_Cognizant_CognizantCognitiveAIM102-S_Cognizant_CognizantCognitive
AIM102-S_Cognizant_CognizantCognitivePhilipBasford
21 views36 slides
The Power of Generative AI in Accelerating No Code Adoption.pdf by
The Power of Generative AI in Accelerating No Code Adoption.pdfThe Power of Generative AI in Accelerating No Code Adoption.pdf
The Power of Generative AI in Accelerating No Code Adoption.pdfSaeed Al Dhaheri
39 views18 slides
"Surviving highload with Node.js", Andrii Shumada by
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
58 views29 slides
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...ShapeBlue
199 views20 slides
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell by
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
"Node.js vs workers — A comparison of two JavaScript runtimes", James M SnellFwdays
14 views30 slides

Recently uploaded(20)

AIM102-S_Cognizant_CognizantCognitive by PhilipBasford
AIM102-S_Cognizant_CognizantCognitiveAIM102-S_Cognizant_CognizantCognitive
AIM102-S_Cognizant_CognizantCognitive
PhilipBasford21 views
The Power of Generative AI in Accelerating No Code Adoption.pdf by Saeed Al Dhaheri
The Power of Generative AI in Accelerating No Code Adoption.pdfThe Power of Generative AI in Accelerating No Code Adoption.pdf
The Power of Generative AI in Accelerating No Code Adoption.pdf
Saeed Al Dhaheri39 views
"Surviving highload with Node.js", Andrii Shumada by Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays58 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue199 views
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell by Fwdays
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
Fwdays14 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE84 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash162 views
Innovation & Entrepreneurship strategies in Dairy Industry by PervaizDar1
Innovation & Entrepreneurship strategies in Dairy IndustryInnovation & Entrepreneurship strategies in Dairy Industry
Innovation & Entrepreneurship strategies in Dairy Industry
PervaizDar135 views
"Package management in monorepos", Zoltan Kochan by Fwdays
"Package management in monorepos", Zoltan Kochan"Package management in monorepos", Zoltan Kochan
"Package management in monorepos", Zoltan Kochan
Fwdays34 views
Bronack Skills - Risk Management and SRE v1.0 12-3-2023.pdf by ThomasBronack
Bronack Skills - Risk Management and SRE v1.0 12-3-2023.pdfBronack Skills - Risk Management and SRE v1.0 12-3-2023.pdf
Bronack Skills - Risk Management and SRE v1.0 12-3-2023.pdf
ThomasBronack31 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays36 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu437 views
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by BookNet Canada
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
BookNet Canada44 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...

Development Lifecycle: From Requirement to Release

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.