SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Agile Design & Development
with Clickframes
Jonathan Abbett · William Crawford
Informatics Solutions Group · Children’s Hospital Boston
May 26, 2009
 Background
 Show & Tell: Clickframes
 Agile & UX
 Show & Tell: AppSpecXML
Evolution of a “design process” for
research software development
In the beginning…
(and largely still pretty much true)
Throw-away prototypes
• Vivid, realistic
• Time-consuming, resistant to change, dangerous
Use cases
• Good at defining business process details
• Low user experience value
• Hard to map text to a mental model
Product requirements
• De-risks the business types, provides traceability
• No one reads them, fewer understand them, never get updated
Wireframes/Mockups
• Vivid, easy to create and modify
• No clear definition of interactivity
David · The Young Investigator
David has advanced from the post-doc stage to a
fellowship position at a Harvard-affiliated
hospital. While much of his work is still under the
direction of his lab’s primary investigator, he has
begun applying for his own funding, including
NIH K grants. Despite Harvard’s size and
resources, he feels isolated, but is willing to do
the legwork to find new collaborators that he
knows are out there. His lab lacks a grants
manager, so the application process gets pretty
overwhelming, especially with frequently
changing NIH rules.
Motivations
 The Science. David is passionate about his research
and enjoys the intellectual satisfaction he finds in his
work, even though there’s no way to predict when
he’ll have the breakthrough which gets him noticed
by his peers.
 Getting a faculty promotion. To remain in his field
long term, David must achieve a tenured faculty
position. He recognizes the role that data collection,
publications, and grants play in his career progress.
Behaviors
 Takes control of his work. David’s research is highly self-directed, and he knows he’s
responsible for his own success. David takes the “lead quarterback” role on collaborative
grant efforts.
 Looks out for networking opportunities. David attends a monthly meeting of young
researchers to learn about new research at the hospital and network with other
investigators like him.
 Willing to try new things. While social networking isn’t in David’s blood, he’s willing to
trying a new technology a few times if it offers relief from the difficulties of collaborative
research.
 How to find Dr. Right?Potential collaborators abound, but it’s hard for David to know who
will be reliable, honest, and available from generic lists of researchers.
 Lack of great examples or instructions. Research faculty are often unwilling to share old
applications and budgets that can be used as templates or examples of proper writing
style. Though he can find reference materials, they’re not filtered down enough to be
immediately useful.
 Grant matchmaking. David wonders, “Which grants from which agencies are most
appropriate for me? Are R03s worth the time? Why choose an R21 over an R01?”
Children’sHospital Boston·InformaticsSolutionsGroup
Age: 36
Affiliation: BIDMC
Field: Biosciences
Level: Junior Researcher
Degrees: MD, PhD
Obstacles
Comprehend
application
requirements
Frequently
140 pages of
specs
Too many kinds
of grants
NIH materials
Sponsored
projects office
Old grants from
colleagues
Grants
administrator
Identify potential
collaborators
Reach out to
collaborators
Don’t know
enough people
Can’t find right
people
No response
Delayed
response
Not enough time
Personal
network
Mentors
Publications
E-mail
Need
connections
Phone
In-person visits
Occasionally Occasionally
Tasks
Frequency
Issues
Support
Find Grants
Grant
Search Results
Grant Details
Find
Collaborators
Contact List
Collaborator
Search Results
Skill Finder
Offers
Skill Finder
Wanted
Hal Helms’s “Wireframes”
 Popularized in ColdFusion/FuseBox
community in 2001
 Simple web-based prototype
– Page description
– List of links to possible destinations
 Easy to understand
 Cheap and easy to build
 Great for remote review
 Can be created with customers
 Just engaging enough to generate feedback
 Not too detailed = no distractions
 Clearly not production software
 Confusing name
 Insufficient detail limits planning
 ColdFusion-centric tools
 Difficult to maintain for large sites
 Still no great transition to development!
Clickframes
 Form Inputs
 Actions & Outcomes
 Global Navigation
 General Functional Requirements
Clickframes in a Wiki
Demo 1
Agile & Interaction Design
Agile, briefly
 Rapid iterations
 Focus on demonstrable software
 Self-organizing, cross functional teams
Integrating Agile
 Support the feedback loops
 Design artifacts as scrum targets
Concept
Design
Build
Deploy
Test
David · The Young Investigator
David has advanced from the post-doc stage to a
fellowship position at a Harvard-affiliated
hospital. While much of his work is still under the
direction of his lab’s primary investigator, he has
begun applying for his own funding, including
NIH K grants. Despite Harvard’s size and
resources, he feels isolated, but is willing to do
the legwork to find new collaborators that he
knows are out there. His lab lacks a grants
manager, so the application process gets pretty
overwhelming, especially with frequently
changing NIH rules.
Motivations
 The Science. David is passionate about his research
and enjoys the intellectual satisfaction he finds in his
work, even though there’s no way to predict when
he’ll have the breakthrough which gets him noticed
by his peers.
 Getting a faculty promotion. To remain in his field
long term, David must achieve a tenured faculty
position. He recognizes the role that data collection,
publications, and grants play in his career progress.
Behaviors
 Takes control of his work. David’s research is highly self-directed, and he knows he’s
responsible for his own success. David takes the “lead quarterback” role on collaborative
grant efforts.
 Looks out for networking opportunities. David attends a monthly meeting of young
researchers to learn about new research at the hospital and network with other
investigators like him.
 Willing to try new things. While social networking isn’t in David’s blood, he’s willing to
trying a new technology a few times if it offers relief from the difficulties of collaborative
research.
 How to find Dr. Right?Potential collaborators abound, but it’s hard for David to know who
will be reliable, honest, and available from generic lists of researchers.
 Lack of great examples or instructions. Research faculty are often unwilling to share old
applications and budgets that can be used as templates or examples of proper writing
style. Though he can find reference materials, they’re not filtered down enough to be
immediately useful.
 Grant matchmaking. David wonders, “Which grants from which agencies are most
appropriate for me? Are R03s worth the time? Why choose an R21 over an R01?”
Children’sHospital Boston·InformaticsSolutionsGroup
Age: 36
Affiliation: BIDMC
Field: Biosciences
Level: Junior Researcher
Degrees: MD, PhD
Obstacles
Comprehend
application
requirements
Frequently
140 pages of
specs
Too many kinds
of grants
NIH materials
Sponsored
projects office
Old grants from
colleagues
Grants
administrator
Identify potential
collaborators
Reach out to
collaborators
Don’t know
enough people
Can’t find right
people
No response
Delayed
response
Not enough time
Personal
network
Mentors
Publications
E-mail
Need
connections
Phone
In-person visits
Occasionally Occasionally
Tasks
Frequency
Issues
Support
Find Grants
Grant
Search Results
Grant Details
Find
Collaborators
Contact List
Collaborator
Search Results
Skill Finder
Offers
Skill Finder
Wanted
AppSpecXML
 An XML model for defining clickframes
 Pages become <page>s
 Links become < link>s
 Actions become <action>s
 Outcomes become <outcome>s
 General requirements become <fact>s
 Authentication
 Messages & Content
 Page Parameters
AppSpec
XML
Clickframes
HTML
Software
Requirements
Selenium
Test Suites
Development
Estimates
Enterprise
Java Code
Flow
Visualizations
Generating an application
with AppSpecXML
Demo 2
Basic project strucure
<appspec defaultPage="login">
<title>Issue Tracker</title>
<description>
The Issue Tracker allows a team to record their progress
on collaborative tasks.
</description>
...
</appspec>
A very simple page
<page id="createAccount">
<title>Create An Account</title>
<description>
This page shows the user an account creation form.
Login not required.
</description>
</page>
Links
<link>
<title>View Issue</title>
<pageRef>viewIssue</pageRef>
</link>
<link>
<title>Open search engine</title>
<href>http://www.google.com</href>
</link>
<page id="viewIssue">
Link sets
<linkSet id="global" global="true">
<title>Site Navigation</title>
<link>
<title>Home</title>
<pageRef>login</pageRef>
</link>
<link>
<title>Privacy Policy</title>
<pageRef>privacy</pageRef>
</link>
...
</linkSet> <page>
<linkSetRef id="authenticated" />
</page>
Page parameters
<page id="displayTicket">
...
<param type="text">
<title>Ticket ID</title>
<description>
The unique identifier of the problem ticket to be
displayed on this page.
</description>
</param>
</page>
http://hostname/application/displayTicket?ticketId=*****
<validation type="required“
description="Please enter a username." />
<validation type="required“
description="Please enter a password." />
<validation type="length(min=6)“
description="Password must be at least 6 characters." />
<validation type="required“
description="Please repeat your password." />
Data input and validation
<input type="text">
<title>Username</title>
</input>
<input type="password">
<title>Password</title>
</input>
<input type="password">
<title>Repeat Password</title>
</input>
Actions and outcomes
<action>
<title>Create account</title>
<outcome>
<title>Account created</title>
<description>
User's account has been successfully created.
</description>
<pageRef>login</pageRef>
<message>Your account has been created.</message>
</outcome>
<outcome negative="true"> ... </outcome>
<outcome negative="true"> ... </outcome>
</action>
The default outcome
<appspec>
<outcome>
<title>Default Error Outcome</title>
<description>
Should an unexpected operational error occur during
any transition, this outcome will define the
destination (i.e. error) page.
</description>
<pageRef>error</pageRef>
</outcome>
</appspec>
Authentication
<page id="viewIssue" login-required="true">
<security>
<loginPage>
<pageRef>login</pageRef>
<username>username</username>
<password>password</password>
<action>login</action>
<successfulOutcome>loginSuccessful</successfulOutcome>
<failedOutcome>loginFailed</failedOutcome>
</loginPage>
</security>
Facts
<page id="discussion">
...
<fact>
PAGE shall display discussion as a series of topics.
</fact>
<fact>
Each topic may have zero or more replies, in a single
thread.
</fact>
<fact>
Each topic or reply shall be labeled with the author's
name and the date of submission.
</fact>
</page>
Thanks!
www.clickframes.org
Jon Abbett
jonathan.abbett@childrens.harvard.edu
Will Crawford
william.crawford@childrens.harvard.edu
Photo credits
 Slide 3
Professor: http://www.flickr.com/photos/meneldur/10307644/
Developer: http://www.flickr.com/photos/chealion/619682250/
 Slide 4
Patient: http://www.flickr.com/photos/mkmabus/2910025091/
Capitol: http://www.flickr.com/photos/jcolman/542404143/
 Slide 9
Developer: http://www.flickr.com/photos/chealion/619012405/

Weitere ähnliche Inhalte

Kürzlich hochgeladen

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Empfohlen

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Empfohlen (20)

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 

Agile Design & Development with Clickframes

  • 1. Agile Design & Development with Clickframes Jonathan Abbett · William Crawford Informatics Solutions Group · Children’s Hospital Boston May 26, 2009
  • 2.  Background  Show & Tell: Clickframes  Agile & UX  Show & Tell: AppSpecXML
  • 3. Evolution of a “design process” for research software development
  • 4. In the beginning… (and largely still pretty much true)
  • 5.
  • 6. Throw-away prototypes • Vivid, realistic • Time-consuming, resistant to change, dangerous
  • 7. Use cases • Good at defining business process details • Low user experience value • Hard to map text to a mental model
  • 8. Product requirements • De-risks the business types, provides traceability • No one reads them, fewer understand them, never get updated
  • 9. Wireframes/Mockups • Vivid, easy to create and modify • No clear definition of interactivity
  • 10. David · The Young Investigator David has advanced from the post-doc stage to a fellowship position at a Harvard-affiliated hospital. While much of his work is still under the direction of his lab’s primary investigator, he has begun applying for his own funding, including NIH K grants. Despite Harvard’s size and resources, he feels isolated, but is willing to do the legwork to find new collaborators that he knows are out there. His lab lacks a grants manager, so the application process gets pretty overwhelming, especially with frequently changing NIH rules. Motivations  The Science. David is passionate about his research and enjoys the intellectual satisfaction he finds in his work, even though there’s no way to predict when he’ll have the breakthrough which gets him noticed by his peers.  Getting a faculty promotion. To remain in his field long term, David must achieve a tenured faculty position. He recognizes the role that data collection, publications, and grants play in his career progress. Behaviors  Takes control of his work. David’s research is highly self-directed, and he knows he’s responsible for his own success. David takes the “lead quarterback” role on collaborative grant efforts.  Looks out for networking opportunities. David attends a monthly meeting of young researchers to learn about new research at the hospital and network with other investigators like him.  Willing to try new things. While social networking isn’t in David’s blood, he’s willing to trying a new technology a few times if it offers relief from the difficulties of collaborative research.  How to find Dr. Right?Potential collaborators abound, but it’s hard for David to know who will be reliable, honest, and available from generic lists of researchers.  Lack of great examples or instructions. Research faculty are often unwilling to share old applications and budgets that can be used as templates or examples of proper writing style. Though he can find reference materials, they’re not filtered down enough to be immediately useful.  Grant matchmaking. David wonders, “Which grants from which agencies are most appropriate for me? Are R03s worth the time? Why choose an R21 over an R01?” Children’sHospital Boston·InformaticsSolutionsGroup Age: 36 Affiliation: BIDMC Field: Biosciences Level: Junior Researcher Degrees: MD, PhD Obstacles Comprehend application requirements Frequently 140 pages of specs Too many kinds of grants NIH materials Sponsored projects office Old grants from colleagues Grants administrator Identify potential collaborators Reach out to collaborators Don’t know enough people Can’t find right people No response Delayed response Not enough time Personal network Mentors Publications E-mail Need connections Phone In-person visits Occasionally Occasionally Tasks Frequency Issues Support Find Grants Grant Search Results Grant Details Find Collaborators Contact List Collaborator Search Results Skill Finder Offers Skill Finder Wanted
  • 11. Hal Helms’s “Wireframes”  Popularized in ColdFusion/FuseBox community in 2001  Simple web-based prototype – Page description – List of links to possible destinations
  • 12.
  • 13.  Easy to understand  Cheap and easy to build  Great for remote review  Can be created with customers  Just engaging enough to generate feedback  Not too detailed = no distractions  Clearly not production software
  • 14.  Confusing name  Insufficient detail limits planning  ColdFusion-centric tools  Difficult to maintain for large sites  Still no great transition to development!
  • 15. Clickframes  Form Inputs  Actions & Outcomes  Global Navigation  General Functional Requirements
  • 16.
  • 17.
  • 18. Clickframes in a Wiki Demo 1
  • 20. Agile, briefly  Rapid iterations  Focus on demonstrable software  Self-organizing, cross functional teams
  • 21. Integrating Agile  Support the feedback loops  Design artifacts as scrum targets Concept Design Build Deploy Test
  • 22. David · The Young Investigator David has advanced from the post-doc stage to a fellowship position at a Harvard-affiliated hospital. While much of his work is still under the direction of his lab’s primary investigator, he has begun applying for his own funding, including NIH K grants. Despite Harvard’s size and resources, he feels isolated, but is willing to do the legwork to find new collaborators that he knows are out there. His lab lacks a grants manager, so the application process gets pretty overwhelming, especially with frequently changing NIH rules. Motivations  The Science. David is passionate about his research and enjoys the intellectual satisfaction he finds in his work, even though there’s no way to predict when he’ll have the breakthrough which gets him noticed by his peers.  Getting a faculty promotion. To remain in his field long term, David must achieve a tenured faculty position. He recognizes the role that data collection, publications, and grants play in his career progress. Behaviors  Takes control of his work. David’s research is highly self-directed, and he knows he’s responsible for his own success. David takes the “lead quarterback” role on collaborative grant efforts.  Looks out for networking opportunities. David attends a monthly meeting of young researchers to learn about new research at the hospital and network with other investigators like him.  Willing to try new things. While social networking isn’t in David’s blood, he’s willing to trying a new technology a few times if it offers relief from the difficulties of collaborative research.  How to find Dr. Right?Potential collaborators abound, but it’s hard for David to know who will be reliable, honest, and available from generic lists of researchers.  Lack of great examples or instructions. Research faculty are often unwilling to share old applications and budgets that can be used as templates or examples of proper writing style. Though he can find reference materials, they’re not filtered down enough to be immediately useful.  Grant matchmaking. David wonders, “Which grants from which agencies are most appropriate for me? Are R03s worth the time? Why choose an R21 over an R01?” Children’sHospital Boston·InformaticsSolutionsGroup Age: 36 Affiliation: BIDMC Field: Biosciences Level: Junior Researcher Degrees: MD, PhD Obstacles Comprehend application requirements Frequently 140 pages of specs Too many kinds of grants NIH materials Sponsored projects office Old grants from colleagues Grants administrator Identify potential collaborators Reach out to collaborators Don’t know enough people Can’t find right people No response Delayed response Not enough time Personal network Mentors Publications E-mail Need connections Phone In-person visits Occasionally Occasionally Tasks Frequency Issues Support Find Grants Grant Search Results Grant Details Find Collaborators Contact List Collaborator Search Results Skill Finder Offers Skill Finder Wanted
  • 23. AppSpecXML  An XML model for defining clickframes  Pages become <page>s  Links become < link>s  Actions become <action>s  Outcomes become <outcome>s  General requirements become <fact>s
  • 24.  Authentication  Messages & Content  Page Parameters
  • 26. Generating an application with AppSpecXML Demo 2
  • 27. Basic project strucure <appspec defaultPage="login"> <title>Issue Tracker</title> <description> The Issue Tracker allows a team to record their progress on collaborative tasks. </description> ... </appspec>
  • 28. A very simple page <page id="createAccount"> <title>Create An Account</title> <description> This page shows the user an account creation form. Login not required. </description> </page>
  • 29. Links <link> <title>View Issue</title> <pageRef>viewIssue</pageRef> </link> <link> <title>Open search engine</title> <href>http://www.google.com</href> </link> <page id="viewIssue">
  • 30. Link sets <linkSet id="global" global="true"> <title>Site Navigation</title> <link> <title>Home</title> <pageRef>login</pageRef> </link> <link> <title>Privacy Policy</title> <pageRef>privacy</pageRef> </link> ... </linkSet> <page> <linkSetRef id="authenticated" /> </page>
  • 31. Page parameters <page id="displayTicket"> ... <param type="text"> <title>Ticket ID</title> <description> The unique identifier of the problem ticket to be displayed on this page. </description> </param> </page> http://hostname/application/displayTicket?ticketId=*****
  • 32. <validation type="required“ description="Please enter a username." /> <validation type="required“ description="Please enter a password." /> <validation type="length(min=6)“ description="Password must be at least 6 characters." /> <validation type="required“ description="Please repeat your password." /> Data input and validation <input type="text"> <title>Username</title> </input> <input type="password"> <title>Password</title> </input> <input type="password"> <title>Repeat Password</title> </input>
  • 33. Actions and outcomes <action> <title>Create account</title> <outcome> <title>Account created</title> <description> User's account has been successfully created. </description> <pageRef>login</pageRef> <message>Your account has been created.</message> </outcome> <outcome negative="true"> ... </outcome> <outcome negative="true"> ... </outcome> </action>
  • 34. The default outcome <appspec> <outcome> <title>Default Error Outcome</title> <description> Should an unexpected operational error occur during any transition, this outcome will define the destination (i.e. error) page. </description> <pageRef>error</pageRef> </outcome> </appspec>
  • 36. Facts <page id="discussion"> ... <fact> PAGE shall display discussion as a series of topics. </fact> <fact> Each topic may have zero or more replies, in a single thread. </fact> <fact> Each topic or reply shall be labeled with the author's name and the date of submission. </fact> </page>
  • 38. Photo credits  Slide 3 Professor: http://www.flickr.com/photos/meneldur/10307644/ Developer: http://www.flickr.com/photos/chealion/619682250/  Slide 4 Patient: http://www.flickr.com/photos/mkmabus/2910025091/ Capitol: http://www.flickr.com/photos/jcolman/542404143/  Slide 9 Developer: http://www.flickr.com/photos/chealion/619012405/