160 likes | 272 Views
Software Architecture ATAM Process Presentation. Your Application Name. Outline. Introduction to your application ATAM Step 3 - Present Architecture ATAM Step 4 - Identify Architectural Approaches ATAM Step 5 - Generate Quality Attribute Utility Tree
E N D
Software Architecture ATAM Process Presentation Your Application Name
Outline • Introduction to your application • ATAM Step 3 - Present Architecture • ATAM Step 4 - Identify Architectural Approaches • ATAM Step 5 - Generate Quality Attribute Utility Tree • ATAM Step 6 - Analyze Architectural Approaches • Conclusion
What is your application/Why do you need the application • GUI – Graphical User Interface • GUI Testing – Test the software with GUI • The most of software are using GUI to interact with user, and GUI plays very important role in software • Test Driven Design (TDD) is very popular
How to do GUI Testing • Automation • Reduce time to operate the software • Create test case in easy way • Use a great algorithm to generate test data • Provide a convenient way to edit test-flow
Basic Concept Determine what to test Generate test input Generate expected output Execute test case and verify output Determine if the GUI was adequately test Performing regression testing
ATAM Step 3Present Architecture Context Diagram Sample
OR AP User Layer View GTT OS Tester Java Runtime Environment JVM Jemmy Runner Sample XML Interceptor Script Model Swing Application Test Case generation Editor GTT User FSM Model HFSM Model
OR Model View GTT Runner Interceptor XML Script Model Editor Test script MFSM Editor HFSM Editor GTT User Test case generator FSM Model HFSM Model
Quality attributes • Reliability • Modifiability • Performance
Artifact: … Artifact: … Response: … Response: … Stimulus: … Stimulus: … Source: developer Source: developer Response Measure: … Response Measure: … Environment: … Environment: … Modifiability • Add supporting other Java GUI library • Add edition of test case ways and views
ATAM Step 4Identify Architectural Approaches MVC Pattern • Because of providing graphic interface, implementation with MVC pattern is required • In order to add new edition way and views • The most important parts of GUI Testing is core algorithm, and we should separate it from view
Layer Pattern • By context diagram, whole GUI Testing architecture just likes layers • Each layer’s output will be as next layer’s input
ATAM Step 6Analyze Architectural Approaches Tree view Diagram view Editor
Analyze Architectural Approaches • Sensitivity • S1: MVC pattern is a sensitivity point to modifiability. • S2: Update the newest hardware is a sensitivity point to performance.
Conclusion • Conclusion and Lesson Learn!