A Top 10 Key to Success for Architects, delivered by author Pete Eeles, IBM, hosted on the "Good Design is Good Business" group on developerWorks: https://www.ibm.com/developerworks/mydeveloperworks/blogs/669242b1-dd91-4d63-a08f-231314c793bb/entry/top_10_success_secrets_for_software_architects_good_design_is_good_business_series?lang=en
Complexity requires Empiricism which requires Scrum by Ralph JochamBosnia Agile
Understand the underlying principles and practices of Scrum. This workshop explains the history of Scrum, the differences of plan-driven defined development approaches and how progress can be easily measured. Come learn and understand through theory and joyful exercises the power of Scrum.
Software Architecture for Agile DevelopmentHayim Makabee
Slides of a workshop given at Herzliya on June/2017, organized by ILTAM and IASA Israel. This workshop was dedicated to the topic of Software Architecture in the context of Agile Development. We answered the question: “How much Design Up Front should be done in an Agile project?” Hayim presented his approach of Adaptable Design Up Front (ADUF), describing its rationale, applications in practice and comparison to other approaches such as Emergent Design. He explained why adaptability is essential for the development of complex software systems using Agile methods. The concepts were illustrated through practical software architecture approaches such as micro-services and examples of real software systems that were developed in the past. The workshop also included an exercise on the definition and evolution of the design of an interesting system.
The bottleneck has moved, developers are not the bottleneck. Requirements errors are the greatest source of defects and quality problems. Requirements engineering agile style.
A Top 10 Key to Success for Architects, delivered by author Pete Eeles, IBM, hosted on the "Good Design is Good Business" group on developerWorks: https://www.ibm.com/developerworks/mydeveloperworks/blogs/669242b1-dd91-4d63-a08f-231314c793bb/entry/top_10_success_secrets_for_software_architects_good_design_is_good_business_series?lang=en
Complexity requires Empiricism which requires Scrum by Ralph JochamBosnia Agile
Understand the underlying principles and practices of Scrum. This workshop explains the history of Scrum, the differences of plan-driven defined development approaches and how progress can be easily measured. Come learn and understand through theory and joyful exercises the power of Scrum.
Software Architecture for Agile DevelopmentHayim Makabee
Slides of a workshop given at Herzliya on June/2017, organized by ILTAM and IASA Israel. This workshop was dedicated to the topic of Software Architecture in the context of Agile Development. We answered the question: “How much Design Up Front should be done in an Agile project?” Hayim presented his approach of Adaptable Design Up Front (ADUF), describing its rationale, applications in practice and comparison to other approaches such as Emergent Design. He explained why adaptability is essential for the development of complex software systems using Agile methods. The concepts were illustrated through practical software architecture approaches such as micro-services and examples of real software systems that were developed in the past. The workshop also included an exercise on the definition and evolution of the design of an interesting system.
The bottleneck has moved, developers are not the bottleneck. Requirements errors are the greatest source of defects and quality problems. Requirements engineering agile style.
https://www.learntek.org/blog/sdlc-models-software-development-life-cycle-models/
https://www.learntek.org/
Learntek is global online training provider on Big Data Analytics, Hadoop, Machine Learning, Deep Learning, IOT, AI, Cloud Technology, DEVOPS, Digital Marketing and other IT and Management courses.
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
Refactoring for Software Design Smells - 1 day Workshop Ganesh Samarthyam
Fred Brooks in his book "The Mythical Man Month" describes how the inherent properties of software make its design an "essential" difficulty. Good design practices are fundamental requisites to address this difficulty. One such good design practice is identifying and addressing 'smells'. Most practitioners know about identifying and refactoring code smells. However, there is a lack of awareness on refactoring design smells and architecture smells, which are also equally important for creating high quality software. This presentation provides an in-depth coverage of design smells and how you can refactor them (with most examples from JDK 7.0).
Software Development life cycle:
SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle defines a methodology for improving the quality of software and the overall development process.
Phases:
Planning
Analysis
Design
Implementation
Testing
Are You an Accidental or Intentional Architect?iasaglobal
The first step in preparing for capability on demand is to set up for capacity on demand, but this can only occur after a CIO gets the IT house in order operationally. An IT organization that cannot manage operations effectively because it lacks understanding of costs relating to business performance and outcomes will have trouble evaluating the price-for-performance trade-offs offered by external suppliers.
https://www.learntek.org/blog/sdlc-models-software-development-life-cycle-models/
https://www.learntek.org/
Learntek is global online training provider on Big Data Analytics, Hadoop, Machine Learning, Deep Learning, IOT, AI, Cloud Technology, DEVOPS, Digital Marketing and other IT and Management courses.
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
Refactoring for Software Design Smells - 1 day Workshop Ganesh Samarthyam
Fred Brooks in his book "The Mythical Man Month" describes how the inherent properties of software make its design an "essential" difficulty. Good design practices are fundamental requisites to address this difficulty. One such good design practice is identifying and addressing 'smells'. Most practitioners know about identifying and refactoring code smells. However, there is a lack of awareness on refactoring design smells and architecture smells, which are also equally important for creating high quality software. This presentation provides an in-depth coverage of design smells and how you can refactor them (with most examples from JDK 7.0).
Software Development life cycle:
SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle defines a methodology for improving the quality of software and the overall development process.
Phases:
Planning
Analysis
Design
Implementation
Testing
Are You an Accidental or Intentional Architect?iasaglobal
The first step in preparing for capability on demand is to set up for capacity on demand, but this can only occur after a CIO gets the IT house in order operationally. An IT organization that cannot manage operations effectively because it lacks understanding of costs relating to business performance and outcomes will have trouble evaluating the price-for-performance trade-offs offered by external suppliers.
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...NUS-ISS
Architecture has an important role to play when deploying Agile at scale. In this session, we will take a look at Agile Architecture, its key building blocks, the mental model change that Agile Architecture requires and how it plays a critical role in supporting an organisation’s Digital-Agile Transformation success.
Are You an Accidental or Intention Software ArchitectRandy Ynchausti
This presentation challenges viewers to consider what knowledge body and skills base a professional software architect possesses. It was presented originally at the UT IASA Chapter meeting November 21, 2013.
[2015/2016] Software systems engineering PRINCIPLESIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
5.2.2013 2013 2013 - Software, System, & IT Architecture - Good Design is G...IBM Rational
Series Name: Software, System, & IT Architecture
Webinar Name: 2013 - Software, System, & IT Architecture - Good Design is Good Business: Design Management: Pictures are Worth….
Date: May 2, 2013
Presneter: Roger Snook
fter Completing this chapter you should be able to:
understand what software engineering is and why it is important;
understand the concepts of software processes and software process models;
Compare and contrast a variety of models
understand some ethical and professional issues that are important for software engineers;
Many organizations engage in initiatives to develop elaborate reference architectures, patterns and governance processes in an attempt to optimize their enterprise. They put significant effort into the upfront guidance of development teams, and then find themselves challenged to understand how closely an architecture matches the approved approach after the projects complete. Organizations must take a new approach to this problem!
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
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.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
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/
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.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
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.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
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.
2. Please note the following
IBM’s statements regarding its plans, directions, and intent are subject to change or
withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general product
direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a commitment,
promise, or legal obligation to deliver any material, code or functionality. Information
about potential future products may not be incorporated into any contract. The
development, release, and timing of any future features or functionality described for our
products remains at our sole discretion.
Performance is based on measurements and projections using standard IBM
benchmarks in a controlled environment. The actual throughput or performance that any
user will experience will vary depending upon many factors, including considerations
such as the amount of multiprogramming in the user’s job stream, the I/O configuration,
the storage configuration, and the workload processed. Therefore, no assurance can be
given that an individual user will achieve results similar to those stated here.
3. Agenda
Agility at scale, ALM, and Architecture & Design
Design and Backlog management
Design and Sprint planning
Design and Iterative development
4. 4
Your work environment - Raise your hand if….
1. You work on an agile project
2. You team size is over 10 resources
3. Your team use tools for planning, requirements management, tests, or change requests
4. Your team is distributed
5. Some team members work from home on a regular basis
6. You have never raised your hand so far
6. 6
Quick poll
According to agile best practices, there is no architecture in Agile
projects.
True
False
Would you develop a software-intensive system without thinking?
Yes
No
7. 7
Architecture and Agile: a contradiction?
No architecture role does not mean no
architectural tasks
– Architecture & design is the responsibility of the
whole team
Design activities does not necessarily imply
models or documentation
– Brainstorming
– Creative thinking
– Problem solving
Agile thought leaders recommend agile
architecture
– « Continuous attention to technical excellence
and good design enhances agility. » - Agile Manifesto,
principle #9
– « The best architectures, requirements, and designs
emerge from self-organizing teams. » - Agile Manifesto,
principle #11
8. 8
<
Typical agile development lifecycle (Scrum)
Feedback
Backlog Sprint Backlog
Tasks
Working increment
Test
Code
Refactor
Production
Incidents
Continuous
Delivery
Continuous
Integration
Many teams have adopted a similar development lifecycle, including our Jazz
Design Management development team.
9. 9
Agile Architecture and Design in ALM:
A team approach to design management
Design management is a team effort
– Everyone contributes to design information
– Everyone leverages information in designs
– Design needs to be integrated in lifecycle, not external
Design information is useful throughout
the ALM cycle
– Backlog
– Planning
– Sprint
– Change request
– Defect / incidents
– Reduce technical debt
– Continuous delivery
– And more……
Lifecycle traceability
– Requirements, design, quality, and change management
– Focus on activities useful for the whole lifecycle
Requirements
Architecture &
Design
Quality
Change &
Configuration
Code
10. Architecture in Agile projects
Some key architectural activities your team can’t ignore, whether you are “Agile” or not:
Define the approach for developing the system
– Identify key best practices & patterns to leverage
– Drive technical decisions
Identify the appropriate technical components too meet:
– Functional requirements
– Non-functional requirements (availability, security, performance…)
Define the structure of the system (runtime and deployment)
Continuously validate architectural consistency
Continuously communicate with all stakeholders (wherever they may be located)
Continuously validate against (possibly volatile) requirements
10
Agile architecture is about finding the right balance between “anticipation” and “adaptation”
Initial envisioning
Evolving and emergent design
Source: Succeeding with Agile, M. Cohn, 2007Source: Succeeding with Agile, M. Cohn, 2007
Agile architecture is about finding the right balance between “anticipation” and “adaptation”
Initial envisioning
Evolving and emergent design
11. Agenda
Agility at scale, ALM, and Architecture & Design
Design and Backlog management
Design and Sprint planning
Design and Iterative development
12. Design information for backlog ranking
Backlog ranking – Why design helps?
Experimented Product Owners know that business value is
not the only factor
Take into account design information for ranking based on:
– Risks
– Dependencies
– Complexity
Design information helps uncover technical risks and
dependencies
Complex items sometimes require a design feature team to
be assigned to design scenarios and break down features
13. Design Management supports working as a Team
Increase team knowledge through
an enterprise-wide software design
repository
Scenario designers, analysts,
architects, developers, testers, and
other extended team members can
access designs through a Web
client
13
Threaded discussions on
scenarios and early
designs
Rich hovers provide quick
access to information to
determine if additional details
are required!
14. Everyone stays connected
Dashboards
provide an easy
way to stay
connected with
design activities
Design
comments,
recent links,
most active,
design reviews,
design changes
Create mashup
dashboards with
viewlets from
across the
application
lifecycle
14
15. Some of the architectural and design expressions we use
for architecture envisioning/backlog
prioritization/understanding
15
Component Architecture
Tactic/Scenario Model
Deployment Architecture
Live Architecture
Documents
FreeForm Diagrams
16. Agenda
Agility at scale, ALM, and Architecture & Design
Design and Backlog management
Design and Sprint planning
Design and Iterative development
17. Design information for Sprint planning
Sprint planning – Why design helps?
Assess technical feasibility of requirements
– Explore design alternatives
– Leverage guidance and past decisions when possible
Identify tasks to implement stories
Evaluate development effort based on:
– Lessons learned from the previous sprints or projects
– Potentially reusable assets
– Technical complexity Planning
18. Learn from the past
Quickly search across all of your organizations designs on the server for learning, review,
analysis, or to identify potential reuse
Search directly on the server; no need to load designs into a client first
Simple full text search over model content (name, description, type)
Powerful query based searching
18
19. New* Architecture Decision Knowledge
Architecture Decision support (ADK)
Simple way to manage information about
architecture/design issues and decisions
Other users can benefit from the decision making
process
Leverage past decisions, understand
rationale
Impact analysis helps to identify decisions for
specific issues
20. Some of the expressions we use for sprint planning – our
distributed whiteboard for reasoning around tasks
20
Capability/Block diagrams
Conceptual Data/Resource Model
Deployment Architecture
Live Architecture
Documents
FreeForm Diagrams
21. Agenda
Agility at scale, ALM, and Architecture & Design
Design and Backlog management
Design and Sprint planning
Design and Iterative development
22. Design to support iterative development
Development & testing – Why design helps?
Sketches for ideation and problem solving
– “A picture is worth a thousand words”
Design tasks for complex user stories
– Design “in a flash”
– Communicate design to team
Design activities intertwined with development activities
– Look at design for code development
– Look at design for test scripting
– Various levels of automation possible
Reduce technical debt
– Capture design decisions for reuse, revisiting, …
– Understand impact of change
22
23. Live Design Documents
Create living
design
documents
Rich text
documents
with embedded
design links
Add to any
design project
Keep current
as designs
change
23
25. Generating or creating formal models from the informal
expressions
25
Informal expressions can
seed the content for formal
models
Can convert individual shapes
and connections into formal
model elements
26. Automation: e.g. Model RESTful Services and Generate
JAX-RS Based Web Services
26
Generate JAX-RS based
Web Service from Model
Deployed on
Application Server
Generate Model from
JAX-RS based Web Service
Model RESTful Service in RSA
27. Teams have visibility into coverage & completeness
27
Proactively respond to gaps as they surface throughout the project
Issues are quickly highlighted and resolved
Different views available
28. Some of the expressions we use during sprint feature
development – our distributed whiteboard
28
Flow/Activity diagrams
Resource/ontology models
Component diagrams
Live Architecture
Documents
Use case diagrams
29. Summary: Lightweight design process for agile teams
Simplicity is essential
– Design Management provides simple tools
Light design supports agile teams
– Backlog management
– Sprint planning
– Iterative development during Sprints
Everyone in the team creates and uses design
information
Design evolves over time
– Emergent design (done incrementally)
– Intentional design (decision making process)
– Some design aspects may be anticipated
(envisioning)
Balance between anticipation and adaptation
31. 31
Daily Apple TV giveaway
Complete your session surveys online each day at a conference kiosk or on
your Innovate 2013 Portal!
Each day that you complete all of that day’s session surveys, your name will
be entered to win the daily Apple TV!
On Wednesday be sure to complete your full conference evaluation to receive
your free conference t-shirt!
Author Notes: This is the PowerPoint template for the Innovate 2013 Track Sessions This template has been built in PowerPoint 2003. If you’re using PowerPoint 2007 or above, you may experience different usability results than what is provided as guidance here. To allow all masters of your exiting presentation to be updated correctly, download this template to your hard drive and copy your existing slides into the new template using slide sorter. IBMers can find additional information on presentation guidelines and resources at: https://w3-connections.ibm.com/wikis/home?lang=en-us#!/wiki/Rational%20Presentation%20Templates,%20Guidelines,%20and%20Resources IBM Rational presenters can leverage existing brand-level assets and sparklers (including Rational Brand Messaging Slides, Client Success Slides and Client Quotes, Statistics) from SSW’s Brand Content Page: https://w3-03.sso.ibm.com/software/xl/myportal/content?synKey=R789607U42052O71 Imagery guidelines: Avoid using cartoon like clip-art, use photo-art instead. Third party material cannot be used in a presentation without written permission (this includes product and Web page screen shots, and photos). Images must be acquired from a ‘royalty-free to use’ source such as: Microsoft or Lotus Symphony Clip Art library http://www.freebyte.com/clipart_images_photos_icons/#freevectorgraphics http://www.freedigitalphotos.net/ IBMers can use royalty-free images from the following repositories : IBM Brand Systems Center / Assets / Photography Login instructions: https://w3-connections.ibm.com/forums/html/topic?id=c1082624-e54c-4e04-bad1-ddb150ac7540 IBM Software Story Images https://w3-connections.ibm.com/files/app#/collection/b7570645-b2f8-4450-a27f-9269a163fc2d IBM Rational Presentation Image Library: https://w3-connections.ibm.com/wikis/home?lang=en_US#!/wiki/Rational%20Presentation%20Templates,%20Guidelines,%20and%20Resources/page/Presentation%20Image%20Library
IBM IOD 2011 06/09/13 Prensenter name here.ppt 06/09/13 15:00 Please note the following IBMers must include the next slide (verbatim) after your title slide. IBMers must also include the mandatory “Acknowledgements and Disclaimers” slide (see slide 10) at the end of your presentation before the closing “Thank You” slide. - You will need to customize the “Acknowledgements and Disclaimers” text in red appropriately.
Get to know the audience. Identify, from the audience, some common scaling factors such as: Team size Distributed team (or collocated with some schedule arrangements)
In the early days, agile development was applied to projects that were small in scope and relatively straightforward. Today, organizations want to apply agile development to a broader set of projects. Agile needs to adapt to increasing complexity. Agility@Scale is about explicitly addressing the complexities that disciplined agile delivery teams face in the real world. The agile scaling factors are: Geographical distribution. What happens when the team is distributed within a building or across continents? Team size. Mainstream agile processes work well for small teams (10-15), but but what if the team is fifty people? One hundred people? One thousand people? Compliance requirement. What if regulatory issues – such as Sarbanes Oxley, ISO 9000, or FDA CFR 21 – are applicable? Domain complexity. What if the problem domain is intricate ( such as bio-chemical process monitoring or air traffic control), or is changing quickly (such as financial derivatives trading or electronic security assurance). More complex domains require greater exploration and experimentation, including but not limited to prototyping, modeling, and simulation. Organization distribution. Sometimes a project team includes members from different divisions, different partner companies, or from external services firms. Technical complexity. Working with legacy systems, multiple platforms, or blending disparate technologies can add layers of technical complexity to a solution. Sometimes the nature of the problem is very complex in its own right. Organizational complexity. The existing organizational structure and culture may reflect traditional values, increasing the complexity of adopting and scaling agile strategies. Different subgroups within the organization may have different visions as to how they should work. Individually, the strategies can be quite effective, but as a whole they simply don’t work together effectively. Enterprise discipline. Organizations want to leverage common infrastructure platforms to lower cost, reduce time to market, and to improve consistency. They need effective enterprise architecture, enterprise business modeling, strategic reuse, and portfolio management disciplines. These disciplines must work in concert with, and better yet enhance, the disciplined agile delivery processes. Each scaling factor has a range of complexities associated with it. Each team faces a different combination of factors, and therefore needs a process, team structure, and tooling environment tailored to meet their unique situation.
Question 1: Agile myth buster (addressed next slide) Question 2: Expected answer = 100% B. Used to introduce next slide.
There is no contradiction between Architecture and Agility. Misconception because the Architect role has disappeared from some agile approaches (Scrum, XP). The role still exist in OpenUP and Crystal. It is called Technical Coordinator in DSDM Design does not mean UML models or comprehensive documentation. Design is about cogitate and try to solve a specific problem Most Agile Through leaders foster architecture and design activities as part of agile approaches.
A team approach to design management Architecture & design is a team effort Everyone contributes to design information Everyone leverages design information Backlog Priorities: business value, risks, and dependencies Sprint planning Assess technically feasible of requirements: Explore design options Evaluate development effort: Choose the right card during planning poker Development & testing Sketches for ideation and problem solving Design activities intertwined with development activities Design tasks for complex user stories: Design “in a flash” Impact analysis Reduce technical debt As a developer, I need to look at design information so that I reuse available assets. As a tester, I need to consider the design information so that my script covers all the technical aspects As a team, I may want to review design information during the course of a sprint
Design information is used to help prioritize the backlog. Instead of just considering the business value for the user stories, pragmatic agile team take into account: Risk: address the most risky stories first Dependencies: From a technical standpoint, some user stories can be related. Sometime, one story can be addressed only when another story, or a technical component has been developed Design information help uncover risks and dependencies
Development effort should be assessed based on the understanding of what needs to be delivered. Design information helps the team identify what can be delivered (technical feasibility) and what can be contained in the next sprint (estimation). E valuate development effort based on level of difficulty Choose the right card during planning poker or choose the right story points
Talk about the reasoning behind the decomposition, even before a work item is created “ Distributed whiteboard”
Problem solving: Diagrams and other information graphics can enhance human cognitive capacities in a wide range of contexts and applications Cognitive science shows the importance of visual representation to replace textual description: Sketches, drawing, diagrams, pictures Many studies in cognitive science about group creativity, analogies, pictures vs text…. “ A picture is worth a thousand words.” One study actually stated that a picture is worth 84.1 words.(http://www.cl.cam.ac.uk/~afb21/publications/Student-ESP.html) Design activities intertwined with development activities Deb, the developer, must take a look at the requirement to be sure she is developing the right feature. But she must also look at the design information to verify that her code is aligned with design choices Tanuj, the tester, is creating scripts to verify a feature. But he must also look at the design choices to check that his script is using the right components. Design “in a flash”: Quick design session, on demand, when a new technical problem is uncovered Technical dept: Use design to understand technical problems and reduce the debt. Talk about Feature Teams
The image shows a traceability view in Release Plan containing links to requirements and test cases. It also has a column to identify defects affecting the plan items. This demonstrates an integrated plan with traceability reporting. Rather than relying on stale and occasionally run traceability reports, using an integrated plan with a built-in traceability view makes the gaps are obvious and easy to address through out the project. The green row shows items that have no known gaps and no issues effecting the plan item. Red highlights gaps – missing requirement or missing test case Yellow indicates issues that need to be reviewed and resolved. Benefits: Creating a shared vision delivers what the stakeholders want Ensuring coverage improves quality for the release and each sprint Whole team buy-in improves team trust, efficiency and focus ` Design information is part of the lifecycle scenario. Design information is typically linked to Requirements (RM) Tasks (CCM) Test cases (QM) Design resources (DM) Tools based on OSLC facilitate lifecycle traceability
Also service specfications (can be textual or sequence diagrams) ...
Design management is part of ALM disciplines (like requirements, test, and change management) Design: Intentional yet emergent. Design is done incrementally (through Sprints), and needs are addressed when they arise. But design is also intentional (vs accidental). Some needs are anticipated. DM can be used as your distributed (and historical) whiteboard. It support agility at scale and distributed agile teams
Optional slide. Graphic is available in English only.
Giveaway Slide
IBM IOD 2011 06/09/13 Prensenter name here.ppt 06/09/13 15:00 Mandatory closing slide (1 of 2) Acknowledgements and disclaimers IBMers must include This mandatory “Acknowledgements and Disclaimers” slide at the end of your presentation before the closing “Thank You” slide. - You will need to customize the “Acknowledgements and Disclaimers” text in red appropriately.
Mandatory closing slide (2 of 2) Thank You Slide (available in English only).
Traceability relationships in Rational solution for CLM with focus on architecture and design Specific relationships across ALM and relationships within the design domain Steps from requirements to execution and the kind of activities in each tool in CLM Traceability to support collaborative work: explore and traverse links to understand the solution from different perspectives (dm, rm, qm, ccm) Traceability and impact analysis