5. • The working team is built from two different groups: Dev & Test
• Legacy Product
• Embedded SW
• 75% of the code is being reused
25% can be customized per platform or customer
• 95% Automated tests
• CI exists to some extent
• Not an Agile product
Requirements, constrains, Dependencies, Milestones, Deliverables
Are known at product kickoff
• Product scheduling – strictly waterfall
6. • A waterfall lifecycle
• Test engineer can be engaged in more than one product at a
given time
• Working culture between the different groups are not the same
• Developers completely rely on Test engineers
• Communication between the different parties is good and yet,
something is missing
• The “problem” responsibility is not equally shared
ABOVE ALL - Rapid development and Slow
testing
7. …an old method, technology, computer system, or application
program that continues to be used, typically because it still
functions for the users’ needs, even though newer technology or
more efficient methods of performing a task are now available.”
http://en.wikipedia.org/wiki/Legacy_software
In short – it is old
10. Context
• The value of any practice depends on its context
• There are good practices in context, but there are no best practices
People
• People, working together, are the most important part of any project’s context
• Good software testing is a challenging intellectual process.
Product
• Projects unfold over time in ways that are often not predictable
• The product is a solution. If the problem isn’t solved, the product doesn’t work
Effective
• Only through judgment and skill, exercised cooperatively throughout the entire
project, are we able to do the right things at the right times to effectively test
our products.
11. Functional Tests
Examples
Story Tests
Prototypes
Simulations
Exploratory Testing
Scenarios
Usability Testing
User Acceptance Testing
Unit Tests
Component Tests
Performance & Load Testing
Security Testing
“-ility” Testing
Q2 Q3
Q1 Q4
SupportstheTeam
CritiqueProduct
Technology-Facing
Business-Facing
Lisa Crispin & Janet Gregory version
12. Goals
Drive development with Business-facing
tests
Gain collaboration between all parties
(including customer)
Benefits
Achieve advanced clarity on the product
Use real examples as executable tests
Achieve external quality
Goals
Help to evaluate the product
Understand actual user experiences
Benefits
Feedback to Q1 and Q2
Learn about the product as you test
Goals
Enable to measure the internal quality of
the code
Benefits
Provide a safety net to the developers,
enable stabilization, provide confidence in
design and more
Goals
Does the product deliver the right value?
Benefits
Non-functional requirements are being
tested
Help to finalize the product
Q2 Q3
Q1 Q4
SupportstheTeam
CritiqueProduct
Technology-Facing
Business-Facing
16. • Legacy software needs a custom testing strategy
• Choose & adapt your practice wisely
• You can leverage your work within the Legacy system
• Divide and Conquer
Implement Context Driven Testing - CDT and Agile are good friends
Work with the Agile Quadrants
• As a tester - Be there from start
• Communicate with whom ever can help you test the product
• Big journeys begins with small steps
• Being an Agile practitioner within a Legacy world is hard but
doable
• Adapt, Adapt, Adapt
Editor's Notes
קצת על עצמי
אחראי על בדיקות של הכרטיס החכם במערכות הכבלים והלוויין
מדובר בסביבת EMBEDDED שמשלבת חומרה ותוכנה אם כי הפוקוס הוא יותר על התוכנה
רוב הדרישות והתשתיות למוצר ידועות מראש כך שקשה לעבוד בצורה אג'ילית רשמית
אם זאת אנחנו כל הזמן מחפשים דרכים לשפר ולייעל את הקיים
בכך שאנחנו:
מבינים יותר את צורכי הלקוח ובכך מונעים OVERPRODUCTION
יוצרים קשר הדוק עם כל ה STAKEHOLDERS שנוגעים במוצר
מייעלים את תהליכי הפיתוח והבדיקות כך שהפידבק לאורך חיי המוצר יהיה מהיר ויעיל
ובעיקר מתקשרים הרבה