This document outlines the user experience (UX) design process at Atlassian from brainstorming to implementation and validation. It discusses the challenges of designing for multiple products and time zones. A 5-step process is presented: 1) braindump ideas to brief, 2) create wireframes from the brief, 3) design interfaces from wireframes, 4) implement designs within agile development, and 5) validate designs internally and with users. Continuous iteration and user feedback are emphasized. Communication during implementation and dealing with UI bugs are also addressed.
You'll learn:
- How to transition through through inspiration, ideation, and implementation with a global team
- How to turn “statements of intent” into prioritized user stories.
- How to increase team velocity without sacrificing usability
The Design Sprints are a 2-5 days process for answering critical business questions through design, prototyping, and testing ideas with customers.
In this keynote I present you the Google Venture Design Sprints Methodology.
Discover more to learn detail with google design sprint, great tools to maximize and validate your idea with lack of creativity and enhancing collaboration.
Building And Managing Successful Ux TeamsRod Farmer
Presentation to the ARK Online User Experience Conference. Provides an overview of how to build and manage successful User Experience teams through planning, leadership, and organisational influence. More specifically, this presentation argues that greater quality and org influence do NOT come through focusing on better research and design skills ...
Presentation given at the Ottawa Web Meetup in October 2015.
Many small creative services agencies and startups begin hiring the same way: the first employee is often a developer, the next is a designer, and operations quickly scale from there at a mile a minute. End-users sometimes get left at the wayside in the name of artistic vision, efficiency or even - egos.
So, how do you engrain UX best practices in a team that either doesn’t have the time, see the value, or possess the skill set to do so? It’s not always fast or easy, but it is always invaluable to the growth of your business.
We’ll walk through processes and integration of user-centric best practices, skill sets, and shaping priorities in a small agency. Whether you’re a developer, designer, manager or salesperson - you’ll learn why prioritizing UX in your team will breed your best work.
Get hands-on advice for rapid Agile prototyping in a product team.
You'll learn:
- How to determine the right depth and breadth for MVP prototypes.
- How to prioritize use cases for prototyping.
- How to elicit the right stakeholder and user feedback.
- How to correctly annotate prototypes for dev and QA.
User Story Mapping for Minimum Lovable Productsuxpin
You'll learn:
How to visualize user needs instead of product features
How to make better decisions when prioritizing a UX backlog
How to align sprints with UX strategy
You'll learn:
- How to transition through through inspiration, ideation, and implementation with a global team
- How to turn “statements of intent” into prioritized user stories.
- How to increase team velocity without sacrificing usability
The Design Sprints are a 2-5 days process for answering critical business questions through design, prototyping, and testing ideas with customers.
In this keynote I present you the Google Venture Design Sprints Methodology.
Discover more to learn detail with google design sprint, great tools to maximize and validate your idea with lack of creativity and enhancing collaboration.
Building And Managing Successful Ux TeamsRod Farmer
Presentation to the ARK Online User Experience Conference. Provides an overview of how to build and manage successful User Experience teams through planning, leadership, and organisational influence. More specifically, this presentation argues that greater quality and org influence do NOT come through focusing on better research and design skills ...
Presentation given at the Ottawa Web Meetup in October 2015.
Many small creative services agencies and startups begin hiring the same way: the first employee is often a developer, the next is a designer, and operations quickly scale from there at a mile a minute. End-users sometimes get left at the wayside in the name of artistic vision, efficiency or even - egos.
So, how do you engrain UX best practices in a team that either doesn’t have the time, see the value, or possess the skill set to do so? It’s not always fast or easy, but it is always invaluable to the growth of your business.
We’ll walk through processes and integration of user-centric best practices, skill sets, and shaping priorities in a small agency. Whether you’re a developer, designer, manager or salesperson - you’ll learn why prioritizing UX in your team will breed your best work.
Get hands-on advice for rapid Agile prototyping in a product team.
You'll learn:
- How to determine the right depth and breadth for MVP prototypes.
- How to prioritize use cases for prototyping.
- How to elicit the right stakeholder and user feedback.
- How to correctly annotate prototypes for dev and QA.
User Story Mapping for Minimum Lovable Productsuxpin
You'll learn:
How to visualize user needs instead of product features
How to make better decisions when prioritizing a UX backlog
How to align sprints with UX strategy
A Quick guide into a Lean UX process and how to engage with Users.
How to do products people love?
What are the steps you need to give to be a great Uxer?
Can User Experience be Lean?
What Methods and Processes can be used?
User Testing in a nutshell.
Imagine if designers conversed with you in a way that felt like object-oriented programming. Imagine if they handed off a design where, page after page, the objects you needed to code were edged in neon, so clearly defined they popped off the wireframe or comp. Imagine those objects were consistently presented; no one-off cases or guesswork required. Imagine you could take a design and almost create an ERD or rough out an API with it.
Well, good news. There’s no need to imagine it. It exists, and it’s called Object-Oriented UX (OOUX).
OOUX is a design methodology that helps us define usable, consistent products that naturally align with end users’ mental models. Similar to OOP, it asks us to define the objects in the real-world problem domain and design the information and relationships in each object before designing how the user might manipulate them. It's a powerful tool for any digital team, it's relatively easy to do, and it pays dividends fast.
Whether you are a developer, a designer, a content modeler, or someone who has influence over digital teams, OOUX offers a new and exciting option to add to your toolkit that will allow you to deliver better digital projects, quicker and more efficiently, and at a higher level of quality than ever before.
Presentation originally given at THAT Conference 2019
You'll learn:
- How to get buy-in from executives and stakeholders for user research
- How to choose lightweight yet effective research methods
- How to document your results to prove ROI
Storytelling: Selling a brilliant idea like a rock starRicardo Luiz
Storytelling in User Experience and in Projects.
The 5 Magic Steps to tell the story you need to sell a project, a solution or an idea.
How to understand what you need to do in order to engage like a rock star
Integrating User Centered Design with Agile DevelopmentJulia Borkenhagen
The Agile Manifesto emphasizes the importance of individuals and interactions over processes and tools, and that's precisely where the User Centered Design approach comes in. UCD always focuses on the users first, keeps them involved during the entire project and emphasizes the need for iterations and team collaboration.
Integrating Design and Development in Your WorkflowKarl Kaufmann
Integrating design into your workflow boosts team understanding and collaboration, minimizes costly changes, and delivers your client a product much more smoothly.
This webinar was presented by Rachida Amsaghrou for UXPA on Wednesday, June 3, 2020.
Product Inclusion consists in applying inclusion throughout the product lifecycle to enhance product features and user adoption.
Designing a product that fulfills the expectations of a wide range of users is no easy task. The workforce tasked with building inclusive products needs to reflect the diverse needs global users have, hence the importance of diversity in the workforce.
This diversity needs to be cross-functional and present at every stage of the product design and development. Another pre-requisite to product inclusion is Know Your Customer to build products that reflect what they need and want. This will help better segment the market and reach a wider audience.
This webinar will examine the many dimensions of diversity in product inclusion and provide an overall picture of the current initiatives in this new field.
How did we sell DT, how did the workshops with clients and users, which methods work and which ones do not.
Examples of real projects: both successful and not very)
- What is DT and why everyone is talking about it
- Key DT elements
- How DT works in outsourcing
- How the theory differs in practice
- How to sell DT
- How a project with DT fails
Event 5, which focuses on the activity of "Validate," is the final task of a 5-Day Lean Design Sprint. This presentation provides visual checklists and templates that can be used to facilitate the activity of "Validate."
Contributing to Drupal: It's Not as Hard as it LooksKarl Kaufmann
Drupal, like any open-source project, is dependent upon voluntary participation for its success and survival. You can help the community, build skills, and increase your bottom line by actively helping make Drupal better.
A Quick guide into a Lean UX process and how to engage with Users.
How to do products people love?
What are the steps you need to give to be a great Uxer?
Can User Experience be Lean?
What Methods and Processes can be used?
User Testing in a nutshell.
Imagine if designers conversed with you in a way that felt like object-oriented programming. Imagine if they handed off a design where, page after page, the objects you needed to code were edged in neon, so clearly defined they popped off the wireframe or comp. Imagine those objects were consistently presented; no one-off cases or guesswork required. Imagine you could take a design and almost create an ERD or rough out an API with it.
Well, good news. There’s no need to imagine it. It exists, and it’s called Object-Oriented UX (OOUX).
OOUX is a design methodology that helps us define usable, consistent products that naturally align with end users’ mental models. Similar to OOP, it asks us to define the objects in the real-world problem domain and design the information and relationships in each object before designing how the user might manipulate them. It's a powerful tool for any digital team, it's relatively easy to do, and it pays dividends fast.
Whether you are a developer, a designer, a content modeler, or someone who has influence over digital teams, OOUX offers a new and exciting option to add to your toolkit that will allow you to deliver better digital projects, quicker and more efficiently, and at a higher level of quality than ever before.
Presentation originally given at THAT Conference 2019
You'll learn:
- How to get buy-in from executives and stakeholders for user research
- How to choose lightweight yet effective research methods
- How to document your results to prove ROI
Storytelling: Selling a brilliant idea like a rock starRicardo Luiz
Storytelling in User Experience and in Projects.
The 5 Magic Steps to tell the story you need to sell a project, a solution or an idea.
How to understand what you need to do in order to engage like a rock star
Integrating User Centered Design with Agile DevelopmentJulia Borkenhagen
The Agile Manifesto emphasizes the importance of individuals and interactions over processes and tools, and that's precisely where the User Centered Design approach comes in. UCD always focuses on the users first, keeps them involved during the entire project and emphasizes the need for iterations and team collaboration.
Integrating Design and Development in Your WorkflowKarl Kaufmann
Integrating design into your workflow boosts team understanding and collaboration, minimizes costly changes, and delivers your client a product much more smoothly.
This webinar was presented by Rachida Amsaghrou for UXPA on Wednesday, June 3, 2020.
Product Inclusion consists in applying inclusion throughout the product lifecycle to enhance product features and user adoption.
Designing a product that fulfills the expectations of a wide range of users is no easy task. The workforce tasked with building inclusive products needs to reflect the diverse needs global users have, hence the importance of diversity in the workforce.
This diversity needs to be cross-functional and present at every stage of the product design and development. Another pre-requisite to product inclusion is Know Your Customer to build products that reflect what they need and want. This will help better segment the market and reach a wider audience.
This webinar will examine the many dimensions of diversity in product inclusion and provide an overall picture of the current initiatives in this new field.
How did we sell DT, how did the workshops with clients and users, which methods work and which ones do not.
Examples of real projects: both successful and not very)
- What is DT and why everyone is talking about it
- Key DT elements
- How DT works in outsourcing
- How the theory differs in practice
- How to sell DT
- How a project with DT fails
Event 5, which focuses on the activity of "Validate," is the final task of a 5-Day Lean Design Sprint. This presentation provides visual checklists and templates that can be used to facilitate the activity of "Validate."
Contributing to Drupal: It's Not as Hard as it LooksKarl Kaufmann
Drupal, like any open-source project, is dependent upon voluntary participation for its success and survival. You can help the community, build skills, and increase your bottom line by actively helping make Drupal better.
This presentation is targeted to developers trying to learn enough design skills to fill in gaps when a ux designer is not available to work on a project. A secondary goal is to give developers insight into the design process.
Are Agile Projects Doomed to Half-Baked Design?theinfonaut
Today's web-based applications go live every few weeks. Agile methodologies like Extreme Programming and Scrum, focus on short development cycles, accelerated feedback from users and customers, and incremental delivery. On the technical side these approaches can bring discipline and predictability to short release cycles. But can these incremental methodologies incorporate successful design techniques? Using case studies and examples from their own project experience, Alex and Leslie will discuss how to integrate design and Agile, discussing what works, what problems arise, and most importantly, the changes in mindset that are necessary on an integrated Agile design/implementation team.
Design Thinking Dallas by Chris BernardChris Bernard
These are the slides I gave for a keynote at a conference hosting by IMC2 for the Design Thinking Dallas Conference. Some of the content here is repetitive across other presentations I give.
Questions? Email me at chris.bernard@microsoft.com
Leveraging Design Systems to Streamline Web ProjectsMediacurrent
Designing for higher ed comes with many unique challenges. There are multiple stakeholders with different goals and objectives, different audiences you’re trying to reach, and the need for a flexible design that adapts to those demands.
In this webinar, learn how to plan a design strategy to drive engagement and results.
Prototyping is not a new concept, but the role it plays in the design process has changed dramatically in the last few years. Proliferation of agile methods and the grassroots nature of design thinking have opened up new opportunities where research and design happen simultaneously. New tools for building digital prototypes have given design teams numerous options from very simple demos to complex proof of concepts.
The Devbridge Design team shares their experience and explore cases where prototyping has driven the design and research process. With varying levels of complexity and fidelity, each has had a different outcome.
IxDA October Event: Prototyping Approaches and OutcomesIxDA Chicago
Prototyping is not a new concept, but the role it plays in the design process has changed dramatically in the last few years. Proliferation of agile methods and the grassroots nature of design thinking have opened up new opportunities where research and design happen simultaneously. New tools for building digital prototypes have given design teams numerous options from very simple demos to complex proof of concepts.
Learn about the Devbridge Design team's experience as they explore cases where prototyping has driven the design and research process. With varying levels of complexity and fidelity, each has had a different outcome.
Just Married: User Centered Design and AgileMemi Beltrame
User Centred Design (UCD) and Agile Development are two of the most exciting and productive Methods to achieve high quality appication both desired by the customers and loved by the users. UCD and Agile Development are though often said to be impossible to combine and that despite their great advantages any attempt would most certainly lead to disaster.
This talk picks up the main points of both methods, shows the key issues and tries to offer a pragmatic approach on how to successfully combine User Centered Design and Agile Development.
Training Webinar: From a bad to an awesome user experience - Training WebinarOutSystems
How can you build an awesome app that looks cool and fresh while providing a great user experience? Discover how to beat the UX and UI design blues and produce apps that everyone loves to use.
- Why an awesome UX is critical
- What you gain by talking to users
- What an MVE is and what it does
- How to go from a screen to an experience
- How to avoid UX traps and go after the rainbow.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Cisco has created a powerful and compelling Human-Centered Design process with dozens of useful frameworks (like Empathy Map, Rose-Bud-Thorn, Difficulty-Importance and so forth).
The challenge was that Cisco needed these frameworks to scale so that globally distributed teams could use common frameworks at scale. Cisco partnered with Conteneo for the solution - described in this deck.
This is take two of the presentation, some things added, some removed, but still the regurgitation is best..
The purpose is to raise your awareness of software architecture in light of modern day agile development. Disciplines to incorporate and reconsider
Sum of the Parts Speaker Series - Experience Engineering and UXvincebohner
Should designers code? Is that even the right question? And what is an Experience Engineer? Find out how our UX team is experimenting with processes, team skills and organization to be more innovative, agile and rigorous about hypothesis driven design.
IxDA Helsinki meet-up at Smartly.io, Thu, 25th August 2016Pekka Hartikainen
Topics in the meet-up
A Practical Approach to Icon Taxonomy
Teemu Korpilahti, Lead Designer at Crasman
Accept the Imperfectness
Sami Vuori, Visual / UX / UI Designer at Gapps
Losing Control: Design Systems for Complex User Interfaces
Pekka Hartikainen, Design Lead at Smartly.io
Early Signal Testing: Designing Atlassian’s New LookAtlassian
You probably have noticed the new look of Atlassian's Cloud products. Our new Design Guidelines took many months to create, and our team had many tough decisions to make. Luckily, we incorporated customer research along the way to guide us.
One of our most valuable research tools is called “early signal testing”, and we think it can help you too. Early signal testing can help you gain confidence in a direction, rather than being paralyzed by a choice. It can help assess your design's usability, clarity, comprehension, and more. This talk explains how your team can gather measurable user feedback in as little as a week, for even the very biggest of problems.
There's a lot of content available about design sprints; what they are, how to run them, why they are useful. Key to them being successful is having a diverse team, including engineers. Very little of the content available covers the important role engineers play at this stage of product creation.
We aim to celebrate women every day, but we’re taking today to give special recognition to womxn at Atlassian continue who inspire and lead.
For #InternationalWomensDay, we asked Atlassians to nominate and recognize amazing womxn at Atlassian who inspire them, challenge them, and truly represent Atlassian values.
Ever wondered what Atlassian engineers do in their 20% time? Join Forge engineering lead Tim Pettersen on a lightning tour of how Forge is being used inside Atlassian. Attendees will get a rare view into some of the apps, tools, and tweaks we’ve built internally on top of Forge in the spirit of dogfooding and innovation. Come along and be inspired with some great ideas for improving and automating your own teams' workflows!
Let's Build an Editor Macro with Forge UIAtlassian
Race out of the gate with Forge UI: a new way of building UI extensions for Atlassian products. In this session, Forge UI Developer Experience lead Peter Gleeson will demonstrate how build an Editor macro from scratch! Attendees will learn about Forge foundational concepts such as the FaaS dev loop, Forge CLI, and how to construct UIs from Forge UI components.
This session provides a great introduction to the Forge platform for any developer looking to get productive with editor apps and Forge UI.
In the words of Jeff Atwood: “JavaScript is the lingua franca of the web”. It’s also the first language we’ve chosen to support in Forge. In this session, Forge engineer Shorya Raj will walk through the Node.js isolate based runtime you’ll be using to write apps for Forge.
Attendees will learn about the unique features of the Forge JavaScript Runtime, such as automatic authentication and tenant context management. Shorya will also cover the differences between the Runtime, conventional browser, and Node.js APIs.
Developers or attendees with some programming experience will get the most out of this session.
Forge UI: A New Way to Customize the Atlassian User ExperienceAtlassian
UI extensibility is an integral part of Atlassian's ecosystem story. In cloud, traditionally this has been accomplished with the humble iframe. In this session you will learn about Forge UI, an additional and innovative way to build visual apps for Atlassian products.
Join Product Manager Simon Kubica and Senior Developer Michael Oates from the Forge team in exploring the underlying concepts and technology powering Forge UI, and learn how it will unlock exciting new opportunities in our ecosystem.
The Forge platform contains some powerful primitives for binding functions to Atlassian events and webhooks emitted by third-party SaaS systems. Join Platform Services Engineer Tomek Sroka as he gets hands-on with Forge Product Triggers and Web Triggers to build a powerful integration with surprisingly little code.
Attendees will walk away with a good understanding of the Forge dev loop and some tips and tricks for improving their own team’s workflows.
Observability and Troubleshooting in ForgeAtlassian
Observability is a critical component of any Cloud development platform, and we have some exciting logging, monitoring, and debugging features planned for the Forge toolchain.
In this lightning talk, Senior Developer James Hazelwood from Forge infrastructure team will give an overview of Forge logging and tunnelling features, explain how different environment types effect observability, and share some expert tips and tricks for detecting and troubleshooting issues in your Forge apps.
Trusted by Default: The Forge Security & Privacy ModelAtlassian
Security and trust have become increasingly important requirements for our customers in Cloud. We’re working to make it easier for you to build and maintain secure apps for Atlassian products.
In this session, Engineering Team Lead Dugald Morrow and Principal Product Manager Joël Kalmanowicz will explain how security and trust have been baked into the Forge framework and the benefits the platform can offer you and your users. Learn how much less work it can be to build trusted apps customers will love on Forge by going deep on the safeguards we’re putting in place.
Developers or attendees with some software security experience will get the most out of this session.
Designing Forge UI: A Story of Designing an App UI SystemAtlassian
Creating apps with Forge and its UI frontend components is now easier than ever. Join Senior Designer Allard van Helbergen and Product Manager Josephine Lee as they walk through the story of designing Forge UI.
What is a declarative UI and why did we choose this paradigm? What are all the considerations that go into defining the set of components to build apps with? And how do you make ‘creating apps’ simple? Walk away understanding the foundations of Forge, how all the different components work together, and where Forge UI is headed in the future.
After a day of learning about the exciting features of Forge, get ready for a peek under the hood to discover how it’s all implemented. Join Forge Architect Patrick Streule as he goes deep on topics such as Forge FaaS infrastructure, the internal workings of tenant isolation, and automatic authentication.
Attendees will also get a glimpse of some features we’re looking at building into the future of Forge, such as a serverless data store for apps and more!
Access to User Activities - Activity Platform APIsAtlassian
How do you stay on top of your work when it is scattered across multiple Atlassian products?
"If only there was a single place where I could see all my activity..." - sounds familiar?
We are going to provide you an insight into what lead to the creation of a new Activity API. Following last year’s Atlas Camp announcement from our CTO Sri Viswanath, Atlassian is moving onto GraphQL - new Activity API is one the first pieces of the GraphQL Atlassian Platform and is the technology behind start.atlassian.com.
Join Sergey Meshkov, Senior Developer, who will provide you a sneak peek of the new GraphQL Activity API as it will soon be available to our vendors.
Design Your Next App with the Atlassian Vendor Sketch PluginAtlassian
Our designers work 3x quicker with the Atlassian Vendor Sketch Plugin — and now we’re unleashing these superpowers to the Atlassian Ecosystem. If you mockup screens for code or marketing, we’ll help you drag and drop your way to an Atlaskit design in less than 10 minutes. And if you’re a designer, you’ll want to hear about our pixel-perfect component library and suite of seamless Sketch integrations.
Join Atlassian’s resident Sketch aficionado, Huw Evans, to learn about:
Sketch Components: If it’s in Atlaskit, it’s now in Sketch. And introducing the Symbol Palette, the quickest way to find the right component for the job.
Product Templates: Spark inspiration by building your designs inside realistic screens from Jira & Confluence — or craft hero images for your Marketplace listing!
Color and Text Styles: Heard of N75? H400? If those mean nothing to you, we’ll run through how to make your users feel at home by using Atlassian colors & typography, right inside Sketch.
Data Suppliers: Say goodbye to Lorem Ipsum. Learn how to use Sketch Data Suppliers to generate realistic copy using live data from Jira, Confluence and Bitbucket. Bonus: How we used AI to create people who don’t exist!
♀️ It's All Open Source: How we made it really easy to customise the Atlassian Vendor Sketch Plugin for your team's needs.
Tear Up Your Roadmap and Get Out of the BuildingAtlassian
You’d never knowingly ship something to your customers that didn’t deliver value, would you? Would you still stand your ground if you were under pressure to get a team of developers working on something?
You probably know that one of Atlassian’s most well-known values is “Don’t f*** the customer”, so learn what happened when a lean product team decided to tear up the roadmap because they were brave enough to admit they didn’t understand their customers well enough.
Join Janel Blattler, as she shares how her team used research to unveil a new plan in just a few weeks. You’ll be able to practice some techniques and walk away with a bucket load of inspiration.
Come along if you’d like to run research, but worry that you don’t have enough time or lack the skills to do so – you don’t need to be a researcher on your team. This session is for you if you’re looking for ways to drive customer empathy closer in the team, or you’d like to up your game and discover some new techniques for delivering lean research with actionable insights.
Nailing Measurement: a Framework for Measuring Metrics that MatterAtlassian
When it comes to designing apps and new features, we just can't get enough of metrics. In an age where we can collect data from almost anything, how can we cut through the noise and focus on the right metrics to measure the success and failures of the apps that we’re building?
Join Atlassian Product Manager Josephine Lee as she delves through what exactly makes a good metric. Throughout the talk, we’ll walk through real Atlassian examples of good and bad metrics. By exploring a framework for measurement, we’ll cover detailed features that showcase how best to measure and choose the right set of success, supportive, and counter metrics.
You'll walk away with tips and learnings from Atlassian’s approach to measuring success, and learn how to use data and metrics to inspire action in your apps.
Building Apps With Color Blind Users in MindAtlassian
Color-blind people are using your apps. 1 in 12 men is color blind. And for women, this is 1 in 200.
Building apps that work well for color blind people is not difficult. Some simple techniques help us with the design of our interface. And some tools help us see what color blind people see.
In this talk, Maarten Arts of Avisi will look at common varieties of color blindness. We will look at apps through the eyes of a color-blind person. And we will discover what color-blind people struggle with.
Regardless of whether you're a designer or developer, this talk will equip you with the skills and the tools you need to make sure that your app works for color-blind people.
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...Atlassian
The words we choose have the power to include or alienate our users. The reality is that for many, English is spoken as a second language. And unless you're going to localize your product for those major non-English speaking markets, you'll need to thoughtfully create content that is accessible to a larger audience.
But how do we create products that maintain a sense of personality without isolating a wide audience of non-native speakers?
Join Atlassian Content Designer, Roana Bilia, as she walks you through why thoughtful, inclusive content, is key to creating well-designed user experiences. You'll walk away with foundational principles for good UX copy when optimizing your product UI, a few quick wins that you as creators and developers can incorporate into your next products, as well as a set of mistakes to avoid that companies—including Atlassian—have made, which prioritized native speakers but isolated non-native speakers.
Beyond Diversity: A Guide to Building Balanced TeamsAtlassian
We hear it all the time, and we get it. Diversity and inclusion are important! But isn't it an HR problem? HR may be able to help with diversity but inclusion or creating an inclusive environment is everyone's responsibility. So how do we create an inclusive environment that celebrates diversity and engages and supports everyone? Isabel Nyo will be sharing best practices and lessons she has learned along the way. She will also be sharing her experience as a minority, a female technical leader, in the technology industry.
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed TeamAtlassian
In September 2018, K15t took its mission to go self-managed to the next-level when the entire company worked together to decide on the Next Big Thing™ to build for Atlassian users and present it at Summit in Las Vegas.
In this session, Anshuman Dash, an intern turned software engineer, turned product manager, shares his journey of professional self-discovery. In under five months, he joins a freshly assembled, self-managed team in building a new Atlassian Marketplace app.
Dash will give a quick intro to what it means for a team to be self-managed. Then, he'll share his observations and experiences on the team, as well as the best-practices, patterns, and processes K15t has discovered along the way.
Whether you are a new team with a kick-ass product idea or a big company figuring out ways to scale, this talk will provide you with practical tips and ideas your team can try out!
Designing for the enterprise comes with a unique set of challenges; ensuring readability and accessibility at scale, meeting the needs of multi-layered organizations, and building a trust when your software - used by dozens of thousands of employees - is considered mission-critical.
At Atlassian, we've spent countless hours digging deep into our enterprise customer's needs and we've gathered a vast repository of insights.
In this talk, Pawel Wodkowski, a senior designer on Jira Server, will share all that we've learned from our research (while not being shy about busting some of those wild admin myths!). You'll get a crash course in what it means to design for scale the Atlassian way.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIVladimir Iglovikov, Ph.D.
Presented by Vladimir Iglovikov:
- https://www.linkedin.com/in/iglovikov/
- https://x.com/viglovikov
- https://www.instagram.com/ternaus/
This presentation delves into the journey of Albumentations.ai, a highly successful open-source library for data augmentation.
Created out of a necessity for superior performance in Kaggle competitions, Albumentations has grown to become a widely used tool among data scientists and machine learning practitioners.
This case study covers various aspects, including:
People: The contributors and community that have supported Albumentations.
Metrics: The success indicators such as downloads, daily active users, GitHub stars, and financial contributions.
Challenges: The hurdles in monetizing open-source projects and measuring user engagement.
Development Practices: Best practices for creating, maintaining, and scaling open-source libraries, including code hygiene, CI/CD, and fast iteration.
Community Building: Strategies for making adoption easy, iterating quickly, and fostering a vibrant, engaged community.
Marketing: Both online and offline marketing tactics, focusing on real, impactful interactions and collaborations.
Mental Health: Maintaining balance and not feeling pressured by user demands.
Key insights include the importance of automation, making the adoption process seamless, and leveraging offline interactions for marketing. The presentation also emphasizes the need for continuous small improvements and building a friendly, inclusive community that contributes to the project's growth.
Vladimir Iglovikov brings his extensive experience as a Kaggle Grandmaster, ex-Staff ML Engineer at Lyft, sharing valuable lessons and practical advice for anyone looking to enhance the adoption of their open-source projects.
Explore more about Albumentations and join the community at:
GitHub: https://github.com/albumentations-team/albumentations
Website: https://albumentations.ai/
LinkedIn: https://www.linkedin.com/company/100504475
Twitter: https://x.com/albumentations
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
3. Designing for user experience (UX) with Atlassian Tools 3 Tools you already have, repurposed. Hai! Samantha Thebridge UX Designer, Atlassian
4. Integrating Design and Dev What is User Experience Design? What are our challenges? 5 simple steps to solve them Profit, or, what have we learned? 4
6. I need it to do all this What is User Experience? 6 UX is making things simple, easy and pleasurable to use. But I want it to feel like this Or even this?
7. UX Disciplines 7 Information Architect HCI & Cognitive Psychology User Research & Validation Interaction Design Visual Design
8. Interaction design Interaction components comprising atomic elements A vast mental library of interaction patterns Anticipating user behavior and expectation Empower the user to hit [submit] and help them recover if they did something they didn’t mean to do If it’s complex make it discoverable, learnable 8 Interaction Design
9. Visual design Visual perception: alignment, spacing, dynamics Color, fonts, judicious use of iconography Gradients, rounded corners and drop shadows –stuff developers hate Invisible design helps make software intuitive, learnable, simple 9 Visual Design
10. What are our challenges? 10 Hmmm… Comic Sans or WingDings today?
11.
12. Aiming for visual parity while remaining faithfulto the unique aims of each product
14. Ensuring that pattern use is communicated != Page Chrome - JIRA Page Chrome - Confluence Tabs - JIRA Tabs - Confluence
15. Practical Challenges Working within product teams In different floors of different buildings Working across time-zones Working across continents 12 SYD: Breakfast SFO: Beer o’clock
21. The JIRA Ignite Story What is Ignite? The problem The challenge 18
22. JIRA permissions schemes should support the specific mapping of version and component related permissions so that a project can allow a product owner to update versions without having to be an admin of the project. “We would like to be able to set the priority of outgoing e-mails. This way we can have the priority of e-mails generated by JIRA set to high when the issue has a priority of Critical or Blocker.” 19
39. 3. From Wireframes to Design Bring different states of static designs to life using Confluence Check in interactive prototypes Browse to files & link html in Confluence Store version-controlled raw artwork files in central repository 36
46. Design Resource Management Using Greenhopper Use cards to manage the design backlog Separate “Design” Project in JIRA Design Sub-tasks within Development project Filters isolate Design from Dev stream Don’t pollute the burndown chart and scare your team lead 42
48. 4. From Design to Implementation JIRA as Design ticketing system Design as part of development triage system Project management – design in Agile 44
50. 5. Validate! Internal testing – select random people in the elevator Design blitz testing – prepare for a comment deluge External Testing and documentation 46
51. User Validation 47 Tons of unused white space all over. we need to break up the space with colors or blocks or backgrounds - something so that its not a whole lot of white +1 Too much whitespace Internal and external feedback
52. 5 Steps to #Winning Braindump to Brief Brief to Wireframes Wireframes to Design Design to implementation Implementation to validation 48
53. What have we learned? You can’t plan for everything User feedback can often lead to to changes Shifting priorities, and scope creep Did we miss something? What parts are technically unfeasible? 49
Communication ProblemsDesign + Development. We have a weird relationship. I don’t know why it’s so weird. Software engineers are the new black, and designers are the old black. I think we’re the new biege. But in an ideal world it would be perfectly symbiotic, based on a mutual appreciation for each others discipline. It would be continually leveraging each others domain knowledge and expertise to create beautiful and powerful software. But the break-neck pace we work at means that we are often working in parallel, with less overlap than is optimal. Before we talk about the challenges we have, let’s first talk about User Experience.
Hi, I’m Samantha, I work for the Atlassian UX team in Sydney.So I’ve been a designer for about 30 years. I’ve been making a living from it for 15 of those years. Before that I was just winning colouring-in competitions. I was gonna go pro but the bottom fell out of the circuit back in Australia, so I turned to Graphic Design. Graphic Design led me to Web Design. I started my web career back in 98 and I worked on sites such as QANTAS.com and Telstra.com – Telstra is I suppose a little like our colonial version of AOL back when it was good. I was lucky enough to work on global e-commerce sites such as the oneworld alliance website, where I got my first glimpse into immersive, embedded media, and then I formed my own multimedia company which I am proud to say survived the dotcom crash and lives on in 2011, minus me, who wanted to move back into interaction design. So since then I worked on rich internet apps like hotel bookings systems, itinerary planners, I spent a few years working on the front end of a major ISP, and in the last few years I’ve worked on an online music shop and a movie downloads site which is a bit like Australia’s Netflix, before landing at Atlassian.While I was working on these movie and music download sites I was using a couple of different bug tracking and job ticketing systems – both open source and subscription-based. Oh and we also then used to log into our client’s tracker of choice. I won’t mention names because they weren’t inherently bad, it’s just that I didn’t understand why we needed so many apps to do it all. So then one day I was brought into first round discussions to make this music site into more of a SOCIAL MEDIA PORTAL, (yay) but they said this time we couldn’t use our own tracking tools – we had to use theirs – and they were using JIRA. So I took a look at JIRA and it was love at first sight and here I am. We have a pre-nup, it’s OK. If JIRA and I split, I’m taking the dog.
So If you’ve been using our products for more than a couple of years, you’ll have seen some big changes taking place in the way our interfaces look over the last 18 months to two years. CLICKToday I’m going to talk to you a little bit about the way we use our own tools within Atlassian Design in the pursuit of excellent user experience and beautiful user interface design. CLICK I want to talk first about the misconceptions between what constitutes UX and UI design and where they overlap; CLICKI want to talk to you about the practical challenges we face; and I especially want to discuss the methodological we all face when executing design in a software development environment, CLICKand I want to talk about a combination of our tools we use in concert to support our feedback loop – things that you could also do but may not have considered yet, CLICKAnd lastly I’ll tell you which bits we’re still refining.
User Experience or UX is a fairly new term that’s been thrown around for a couple of years, and it’s a little confusing because it seems to have just popped up as though it’s a whole new field. There is still a lot of confusion about what this term “UX” means, and so there are a few misconceptions about what it means in practical terms. CLICKThe easiest way to understand it is to know that User Experience is a collection of disciplines concerned with making a product or service simple, easy and pleasurable to use. For a piece of software this usually means making the interface clean and the interactivity both intuitive and learnable. CLICKAt the moment there is a tendency to use the term UX designer as an umbrella job description – this helps no one and cheapens the granular processes within UX – it’s as if we’ve tossed into the air the job titles of everyone in software and web development who is NOT a programmer or a manager and we’ve simply called everyone else a UX designer. The truth is that visual interface design, interaction design, user research and validation, information architecture – these are all component disciplines within the field of User Experience. There is plenty of overlap in the skillsets of most (but not all) UX practitioners, but they are still specialised fields. CLICKCognitive psychology is the study of internal mental processes and about how people perceive, remember, think, speak, and solve problems. CLICKAnother misconception about UX is that it is a step in a process which can be ticked off and completed. This is not true – the improvement of the user experience in your software product is ongoing. It should never, ever end. Another big misconception about UX is that it is solely the responsibility of a User Experience designer or practitioner. This is not the case. A pleasurable user experience is YOUR concern as well, even if you do not define yourself in that role. Each of these component disciplines are key players in the usability of the software for the end user, but the distinctions between the disciplines are important to note, because they are executed at different times during the software development cycle. For the purposes of this talk, I’m going to refer to the component disciplines by their specific names.
Today I’m mostly going to focus more interaction design and visual interface design – these are the nuts and bolts of what the design team at Atlassian deals with on a day to day basis. We also perform User research and validation, information architecture, but I’m going to focus on the first two as later on I’m going to show you some cool ways these disciplines can rely Atlassian tools for feedback and implementation. CLICKInteraction Design is concerned with enabling user behaviour within a specific context: for example: a screen – or a set of subtasks within a screen. Interaction design isn’t just about form controls or giant submit buttons, It’s about providing the easiest and most logical way for a user to complete a task. Think about the form control element, the radio button or the checkbox as an atomic element of a component, such a log-in module. Then think about that component being part of a greater choreography – a framework such as a shopping cart. Getting your user to decide to buy is marketing’s concern. Getting the user to complete their purchase as painlessly as possible is the realm of the interaction designer. CLICKTo do this we employ a whole box of tricks based on what we know about human computer interaction – we practice visual linguistics, we use consistency and common placement of elements, we create a visual vocabulary – sometimes limited, to make sure no one ever has to do too much thinking. CLICKWe use common interaction patterns and frameworks people are already familiar with in order to enable and empower the user to navigate through an application and get their job done. It’s about maintaining a vast mental library of these interaction patterns. It’s not about reinventing the wheel. CLICKIt’s about anticipating how the user expects things to work. It’s about getting them to not be scared to hit submit and it’s about making sure there’s a safety net and error recovery if they do something they didn’t mean to do. CLICKThe less new stuff the user is faced with the better: they expect things to behave in a certain way and the interaction design should almost be invisible. But sometimes the task is pretty complex, and despite our best efforts we can only simplify it so much – so then we have to make the interface discoverable and learnable.
Of course, how those patterns look is completely up to the visual interface designer. The visual design is about colour, spacing, alignment, proximity and visual hierarchy. How a drop-down menu in a form is styled is a completely separate issue from the decision to use a drop-down menu in the first place. Again, good visual design should almost be invisible. People expect things to look slick and machine-tooled and of course they don’t notice when they ARE slick and machine-tooled. They DO notice when something is jarring. Make both elements of the experience practically invisible and your user can focus more on completing their task. CLICK
We’ve got a few challenges at Atlassian. We’ve got the obvious day to day design challenges – this is our day job – our trade. These are the granular decisions we make about icons, font sizes, prototyping, user research and so on. CLICKThen we have the practical challenges which relate to the physical way we do our job. CLICKWe have methodological challenges which pertain to the shifting project management styles that both design and development are affected by. CLICKFinally we have communication challenges which are as much about the different mindsets of the groups that play within Atlassian as it is about note-taking, descriptive emails and record keeping. CLICK
The very nature of the users we are designing for is our first major challenge, but that's the exciting one. Our users are so much more tech savvy than the average user of a consumer application – our users appreciate complexity and aren’t afraid to read documentation. Because our users are supersmart, sometimes it’s a little easy let unnecessary complexity slip in because we know our users are fairly capable of dealing with it. CLICKOur next biggest design challenge is that we are pulling 5 products into line visually, products that have their own visual heritage and their own technical considerations that need to be documented so that new members of the design team can get up to speed really quickly. CLICKThe next major difficulty for us is that we’re shooting for consistency and visual parity across products. It’s not that simple when you have something like JIRA over here which is so fully featured and complex and has a whole range of interaction systems that simply aren’t needed at the other end of the spectrum with something like Confluence. We can’t shoehorn the features of one product into the others, but they still need to look like they are part of a happy and harmonious family. CLICKAnother challenge for us is getting the development bandwidth to roll features across into other projects. If we change a style in JIRA for a really good reason, we need to then have buy-in from the Product Manager of another product so we can have those changes scheduled into development. CLICKThe last key challenge that concerns design is ensuring that pattern use is communicated so that we avoid reinventing the wheel. We sometimes see that what is being done in Bamboo could apply to something in development for FishEye, and we need to make sure that we use the same pattern for both rather than coming up with two slightly different ones. CLICK
Yet we have other more practical challenges that we've run into over the years, and we've developed a set of internal processes using our own tools to help overcome those challenges. CLICK The first challenge is geography. Our design team is split across three floors and two buildings - with a very busy city street separating us. We have chosen to work individually within our product teams. Instead of design working in a central location we get together several times a week to discuss designs we’re working on and cross-product consistency. CLICKAdditionally, we work across continents. Not only do we work separately from the rest of the design team, but we also sometimes work separately from our product team members. As an example, the Studio and Integration teams are based both here and in Sydney. My Product Manager is here in San Francisco, while most of our development happens in Sydney. CLICKThe other obvious one is that we operate in different time-zones and different days of the week. This again is not unique, but we still have know when to filter communication to just Sydney, just San Francisco, just Amsterdam – or when something needs everyone’s eyes on it. CLICK
Every day I cross Sussex Street Sydney – which is a one-way street leading into Chinatown and part of an on-ramp to a major western distributor road – to attend meetings. But also because they have better coffee under their building. Our Studio PM crossed continents to get good coffee. No lie.
The Methodological challenge is my favourite – and it’s the one currently being faced by design and developers all over the world. CLICKWhere does Design fit into Development these days? This has changed a LOT. Back in the glory days of Web 1.0, the discovery, scoping and conceptual phases of a software or web project could take months or up to a year. Developers could start working on the software engineering fairly early on, but not until they had a signed-off functional specification document in their hands. After site schematic diagrams, card sorting exercises, and wireframing, visual designs were done and approved and then finally the front end coding could start and the front and back ends could start to be sewn together. CLICKThanks to Agile methodology, with the idea being that coding starts as soon as possible and you iterate early and often, the relationship between Design and Development has been flipped on its head. Developers can start working on features and throw together a functional – if somewhat clumsy – interface to just get started. CLICK The biggest hurdle we face in is that we used to have so much more scope for “thinking time” at the beginning of the project. We could explore scenarios, use cases, multiple visual solutions and several design iterations. The idea of “design concepts” is not analogous to Agile, as the idea of hours of conceptualizing for days for days just cannot work during tight iteration periods. CLICKDesign has two choices: it can hang onto the legacy of the Waterfall method, and the luxury of endless planning and design phases - and be left behind, or design can to step it up somehow in order to have involvement in each iteration.
So we’ve spent some time working despite these challenges, and I thought the best way to walk you through how we’ve overcome some of them is to look at them through the lens of our most recent major overhaul in JIRA. JIRA Ignite is undertaking a massive simplification of our JIRA Admin UI.I’ll quickly talk you through Ignite: The problem: We knew that the majority of you weren’t spending their days in and around the JIRA admin UI. You told us that most of you were configuring parts of JIRA once and then not coming back into the admin for weeks or even months and having to relearn the steps to change the same settings. This was a particularly noticeable problem in the way Schemes were set up. Not everyone was reconfiguring schemes all the time, but they were still a first class UI element in the project management interface. If you wanted to add an issue type, you had to remember to go into Schemes and then add from there. It wasn’t confusing if you spent a lot of time tinkering with the JIRA admin, but it was scaring off a large enough segment of our users that we knew we had to do something to simplify it.The challenge: Ignite is a perfect case study to describe what I referred to earlier when I was talking about the tendency to allow UI complexity to slip through because of the expertise of you guys. It’s also a perfect case study to describe revising the user experience through evolutionary design and constant iteration. We had an Admin UI that was doing the job, but we knew we could fix it incrementally and make it awesome.JIRA is a highly configurable and flexible tool, but the more we talk to people and watch how it’s used, the more we realise which parts we can smooth off and which parts we can bury just for the proper sysadmins. OMG those guys.
Most of our work starts out as a braindump in Confluence, or are born out of a comment from a customer, or a JIRA.com issue. That leads to customer interviews, then we start scribbling ideas and then we move to Gliffy.
This is when people start to see real work happening, and see their vision start to come to life - when we begin to wireframe – it may be nowhere near final but the idea begins to take shape. We use the Balsamiq plug-in for this. As a designer and a human, I am allergic to Comic Sans, so I have to work on my gag reflex when I'm working on these. The great thing about Balsamiq is that every single person in the company can put together a mock-up of an idea that they've had. It's not restricted to just the design team. Here's a quick overview of how we came up with the JIRA Ignite Interface layout.[Recorded Demo of creating a wireframe and deploying to Confluence] The greatest part of this process is that the Balsamiq file is a living document. Anyone can edit it. My product manager in San Francisco can log in when it's still 3am in Sydney and change ALL my work. FOR THE BETTER, of course. It saves us a great deal of time.
This is when people start to see real work happening, and see their vision start to come to life - when we begin to wireframe – it may be nowhere near final but the idea begins to take shape. We use the Balsamiq plug-in for this. As a designer and a human, I am allergic to Comic Sans, so I have to work on my gag reflex when I'm working on these. The great thing about Balsamiq is that every single person in the company can put together a mock-up of an idea that they've had. It's not restricted to just the design team. Here's a quick overview of how we came up with the JIRA Ignite Interface layout.[Recorded Demo of creating a wireframe and deploying to Confluence] The greatest part of this process is that the Balsamiq file is a living document. Anyone can edit it. My product manager in San Francisco can log in when it's still 3am in Sydney and change ALL my work. FOR THE BETTER, of course. It saves us a great deal of time.
One of the beautiful things about Confluence is the array of plugins and macros. This is the Composition macro and it allows us to bring static page layouts to life to demonstrate interactivity. When we click between these tabs we can simulate the responses to clicks, or open menus. This way we don’t have to put 18 images in a row and end up with a 20km scrolling page. These pages are where people provide a lot of feedback as comments so it makes it easy if we don’t have to read a comment associated with the 12th layout and scroll back up for days to see what the commenter is describing.
Here is an example of how we browse to a working prototype using FishEye in JIRA Studio.
This is an example of how we store our raw files, like Photoshop or Illustrator. This enables our developers to find assets really quickly.
Another thing we do at Atlassian is check in interactive prototypes in the same way our devs check in their code. We use subversion so we retain version control. CLICKOnce our files are checked in we can browse to the raw file using FishEye and link to that file in our Confluence page. CLICK And even better – we can store version-controlled raw and editable artwork files in a central repository. The design team can each have the repository checked out onto their local machine so that we can access large files when we are on the move.
So here is the creation of a
Let me start with project management. While there are huge advantages to be gained by developing in an Agile environment – ASSUMING that you’re doing it properly – there seems to be obvious disadvantages to design in Agile, such as losing the luxury of endless planning periods before making any investment in code, but you know what? There are a few arguments in favour of moulding your design process to the Agile method. CLICK The most obvious one is that you have more time to refine your vision. You don’t have to lock down every single decision into a functional or design requirement and run into prohibitive expense if you need to change things later. You work in bite sized pieces and you can observe those pieces in play while you are planning the next attack. You can see if something is not working before it’s too late to refine. Iterative design means you can afford to deviate from decisions if you can see room for improvement after implementation. Plus, you have less emotional attachment to certain decisions and you can react to change quickly. Designers must use their own experience to recognise and identify potential complexity and adjust their own schedule in advance. This avoids any surprises during the design and implementation phase. It’s not strictly Agile but you need to weigh up the benefit for the final product and set realistic deadlines.As far as synchronising your design sprints with your dev team, “Best practice” supports doing research and wireframing during iteration n+2, designing concepts during iteration n+1, supporting development during iteration n and doing UI design review iteration n-1. This is a solid and fairly accepted practice as long as everyone recognises that you can’t afford to be inflexible and take this too literally. Your planning should reflect the scope of work rather than the deadline imposed by a sprint.
The other critical part of using JIRA as a design ticketing system is the inherent capabilities Greenhopper provides for resource management, planning and tracking design time. There is a minor danger that the design components of a project can muddy the burndown chart by adding bloat to the scope of work. For example, a design task might take more than one iteration and therefore will remain “in progress” for a lot longer than the scrum master feels comfortable with. This can be mitigated by using filters to separate the design tasks from the dev tasks.
Once design has been approved and is being rolled into the product, that's when we start to use JIRA. CLICKWe use it like a design agency ticketing system, so artwork requests are made inside a project and assigned to a designer. CLICK Design becomes part of the development triage system. The designer can locate and report UI bugs and then collaborate with a developer to iron these out. The developer can submit requests back to the designer for information or assets which can then be rolled back into the development issue.
We test the success of our interaction design by doing User Validation. This usually starts with internal testing – grabbing a few random coworkers and putting them in front of a UI we’re working on and asking them to interact with it. We can then respond to their feedback and iterate again. Then we put our design in front of external customers and observe them using the software.We interview customers to discover any issues they have with the current UI, to work out how we can improve them taskflow for them and come up with better interaction frameworks.The results of all these sessions end up on Confluence so that members of the other design teams can steal insights from everyone else.
While it’s great to have requirements, time to ideate, refine, plan and eventually get stakeholder approval, there is no point being inflexible once things are agreed upon. You need to understand that the process is fluid and you have to bend in the wind – both as a designer AND a developer and treat the whole process as something malleable. CLICKThe first thing to understand is that even though you can plan, design and document, there is a point where you reach the law of diminishing returns and it is now more viable to simply stop planning and start building. CLICKOnce you start building you need to be prepared to revisit those requirements and edit, discard and amend while you’re on the move. CLICKAs you progress through the implementation phase it’s often discovered that something hasn’t been fully considered and is missing from the spec. This is often where design in Agile falls down as you need to move some objectives out of the current iteration and into the next in order to accommodate the missing piece. CLICKIf you’re a designer, don’t be dogmatic about certain elements you’ve grown attached to that are technically unfeasible. You can always park these ideas until later when they do become viable.Sometimes user feedback can change everything. You might be absolutely certain that you’ve made a series of correct assumptions that turn out to be wrong. I’m talking generally, here. Obviously this never happens at Atlassian. CLICKYou might find that something you thought was technically unfeasible is now suddenly impossible – we’re seeing a lot of this now that CSS3 and HTML5 are here. Ideas we had a couple of years ago are being rebooted. CLICK.From the top down, priorities can shift. A competitor might launch something that forces you to change tack to compete or stay in the game. If you can’t pivot rapidly you can end up playing catch-up for the next couple of years. The best example I have been privy to was an online music store which was in development for a year, to only offer DRM Windows Media Audio files. This was right at the same time Apple chose MP3. LOL CLICKThe most difficult one to deal with, for both design and development is meandering requirements. Sometimes features are pulled out of, or reintroduced into scope or deadlines change. We can’t always be in the room when these decisions are made, and this can mean some reshuffling.
You can, of course have communication snags during implementation. You can have them in planning, but they have a lot more impact close to a release. Developers and designers have fundamental differences in the way their brains work, as well as what they are passionate about. Devs get excited about code. The devote a lot of their attention to the fine detail of getting something working or trying out a new technology or framework. Designers care about the presentation layer and how it will be used - they want to see their vision executed with pixel-perfect precision. Developers don’t always see the difference between a 5-pixel margin and an 8-pixel margin and think the designer is being pedantic when they log an issue to fix it. Management doesn’t care about either of these things and just wants the product to ship on time. And the user expects flawless, machine-tooled, bug-free, frictionless software.Each stakeholder has a different set of trade-offs. If you can learn a bit more about the other’s domain, you can figure out when you might be able to get a concession that works in favour of your vision.
If we are great at documenting, posting on Confluence, keeping open and transparent written communication, we can mostly avoid communication problems. Our iteration periods are fairly tight, so we don’t have time for any communication issues – especially ones that linger. The most obvious thing to remember is this: UI bugs are not personal, and that you are there to enhance each others work, not make each other miserable. My personal tips are that you should be direct and personal – don’t write passive aggressive blog posts or tweets directed at the person or the issue in question.Be honest with your communication. You’ll get more respect by admitting when you’re at fault instead of trying to deflect blame.But above all: flattery will get you EVERYWHERE. You both have different skillsets – allow yourself to be amazed at what the other is capable of, and don’t be afraid to tell them when you are genuinely impressed.