SlideShare una empresa de Scribd logo
1 de 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/

Más contenido relacionado

Último

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Último (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

Destacado

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
 

Destacado (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/