2. Usability in ABAP Programs Mauricio Roberto Cruz ABAP Consultant since 2006 PI Consultant since 2008 JAVA/Android/UX Enthusiast Editor for “ABAP Zombie” http://abapzombie.blog.br/
3. Agenda Concepts Whyshouldwecareabout Usability? Real case analysis Creatinguser-oriented ABAP programs Tools andTechniques ReferencesandGuidelines
4. Concepts Usability – The ease of use and learnability of a human-made object Interaction Design(IxD) – Tells how a system/product must behave based on user experience with it User Experience (UX) – how someone feels and react when using a product
5. Why should we think in Usability? Simpler and easier-to-use interfaces Less “misunderstanding errors” Program will last longer on your client’s system And your job will look even more Professional!
7. SAP Project – Who’s who? User – He wants something! SD Consultant – He knows what the user wants ABAP Developer – He will create what the SD Consultant tells him the user wants
9. Let’s build something… “classical” FS001 - Sales Order File Program must do the following: Extract all sales order data based on date/s.o. number/s.o. type into a text (.txt) file Create file at server or user’s machine
10. Hand’s on! SD Consultant Defined all rules needed and gathered all transactions/tables from where data will be extracted Also defined an Layout with the end-user ABAP Developer Created the whole program 100% according to the Specification
11. Results – Is it complete? Program’s Selection Screen: Success Message:
12. Test Results ABAP Unit Test Done, everything is fine! SD Unit Test Done, everything if fine and according to what I specified User Acceptance Test Program is wrong!
13. What went wrong? Data modeling was correctly made Business requirements were covered by the program There were no issues with File Layout However…
14. What went wrong? Nobody thought about how that software will be used. We work for the end-user, yet we often ignore what are his thoughts and what he trully needs
15. Question Have you ever faced this kind of situation, where the user seems to have no “computer skills” at all, and can’t understand how a “simple and correct” program works?
20. Developer and User Relation User interaction design is one of tasks from ABAP developers An ABAP developer knows technically what can and can’t be built Based on previous developments experiences he can suggest many improvements to the software overall design
21. In case you are curious… This is what user wanted
22. Defining a user interface Scenarios and Use Cases User Interaction Scenarios Use cases in those scenarios Prototypes Wireframes Navigation Prototypes
23. User-Oriented Projects! User-Oriented activities should be applied in any project: smaller and larger ones Senior ABAP Developer engaged in Blueprints and Requirements Gathering phases Agile methodologies can have a Sprint 0, dedicated only for interaction design There are no additional costs, and more quality will be delivered to customers
24. Guidelines and Techniques ABAP UX Guideline SAP Design Guild – ABAP Development Guideline http://www.sapdesignguild.org/ Techniques Researches with users Personas Usability Tests