• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Qualidade de Software em zOS usando IBM Debug Tool e RDz
 

Qualidade de Software em zOS usando IBM Debug Tool e RDz

on

  • 5,364 views

Eu e meu Amigo Claudio fizemos esta apresentação sobre qualidade de software usando IBM Debug Tool e Rdz.Ela foi submetida e aprovada no 2013 World Congress in Computer Science em Las Vegas. O ...

Eu e meu Amigo Claudio fizemos esta apresentação sobre qualidade de software usando IBM Debug Tool e Rdz.Ela foi submetida e aprovada no 2013 World Congress in Computer Science em Las Vegas. O Claúdio foi lá apresentá-la. Foi na Terça passada!

Statistics

Views

Total Views
5,364
Views on SlideShare
5,364
Embed Views
0

Actions

Likes
0
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Qualidade de Software em zOS usando IBM Debug Tool e RDz Qualidade de Software em zOS usando IBM Debug Tool e RDz Presentation Transcript

    • Code Debugging Tool to Help Teach Mainframe Programming Languages 1 Code Debugging Tool to Help Teach Mainframe Programming Languages MSc Claudio Gonçalves Bernardo MBA Paulo Roberto C. Batuta Brasília - Brazil
    • Code Debugging Tool to Help Teach Mainframe Programming Languages SUMMARY I. Introduction II. Software Test III. Test Features IV. Steps of Test V. Unit Test and Debug Tool VI. Debug Tool for z/OS VII. Steps for using Debug Tool VIII. Use of Testing Debugging Tool for Teaching in Mainframe Environment IX. Architecture Suggested for University Lab X. Workstation RDT - RDZ Unit Test XI. Conclusions 2
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Introduction  10 errors can be found for every 1000 lines of code (1 error per KLoC - Kilo Line of Code).  Test software allows errors to be identified before being delivered to the customer.  Software quality must consider not only the occurrence of error but also the software serves the purpose perfectly expected by the client.  An appropriate test is one that discovers the greatest possible number of faults in the software.  When this software is designed to run Mainframe, becomes an even greater difficulty.  Mainframe is complex and the characteristics of each facility are different. 3
    • Code Debugging Tool to Help Teach Mainframe Programming Languages  Universities see this difficulty as a major obstacle to the teaching of …. COBOL …. PL/I ….. Easytrieve …… Assembler  A single system mainframe can deliver thousands of virtual Linux platforms with a small fraction the dollar cost, power and space.  The preparation of students for the global IT industry becomes very difficult.  It is necessary professional has complete mastery of the scenario where the tests will be carried out.  Should apply innovative uses of technology in the classroom.  Reduce learning time with a closer view of the possible day-to-day industry produces software for Mainframe environments. 4
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 5 Software Test  The need of Software Test is a notorious issue in all organizations that develop IT solutions.  In a research 50% of companies surveyed 25% or more of IT projects are completed late, 57% of companies in each two IT initiatives, generated only a positive business results.  Companies that can accelerate the completion of projects and IT services acquire a significant profit margin, while the others were not capable of it are victims of ruthless competition.  The activity of Software Testing performed in a controlled and disciplined performance ensures superior to software product delivered, due to the reduced number of errors when it enters the production phase.
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 6  Developer should use software agents for prioritizing test cases in order to maximize the number of faults found during the time available for testing with a particular order of priority.  Manual tests are time consuming and are prone to many errors.  Tests based searches can help in automating this process by reducing the time and effort to automatically generate test cases and complex data for relevant tests. Defects - Errors - Failures  Defect - An instruction or incorrect command within a source code.  Error - Is a concrete manifestation of the defect when this happens in a software artifact.  Value obtained vs Expected value
    • Code Debugging Tool to Help Teach Mainframe Programming Languages  Represents any intermediate state incorrect or unexpected result in the execution of a program.  Failure - Operational behavior of the software different than expected by the user (and it can be caused by several errors !)  Some errors throughout the lifetime of a software solution, can never cause failure.  Errors generate faults, interpreted as unexpected behaviors in a software that directly affect the end user of the application.  Some factors such as incorrect understanding of user needs, the lack of ability to deal with changing requirements and the discovery of serious problems in the final stages of the project lead to failures in software 7
    • Code Debugging Tool to Help Teach Mainframe Programming Languages  Faults can be considered as incorrect results regarding specification, obtained by using the software. The consequences of failure are faults inserted into software.  Failures may also be the consequence of defects in deployed script prepared for the tests.  Students of computer programming courses at a university or even training companies need to have the exact idea of ​​the importance of testing for the software industry.  Need to understand how IT industry suffers if requirements are generated.  Understand that inaccuracy directly affects the results that are expected of program testing to be performed. 8
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Test Features  Software Testing is an activity that should be handled only at the end of the development process.  Delay in detecting errors makes the delayed repair and costly.  So spending on financial correction could be used for other project activities.  Test becomes of great importance in the development, as it allows the hits are performed before implementation. Steps of Test  A good test is not redundant, it should be very simple or very complex.  Each case must be run separately, to avoid masking of errors. 9
    • Code Debugging Tool to Help Teach Mainframe Programming Languages These steps are necessary : a) Planning b) Execution c) Results Evaluation Results computed vs Expected Results and reports generated notes A good test strategy should:  Contain the activities to be completed to the test;  Establish criteria for evaluating the software;  Know the types of test to be applied;  Have adequate data to generate results conference;  Start from the most basic level, progressing to reach the software as a whole, including integrations with other software;  Have flexibility to allow creativity and customization;  Allow monitoring and compliance test plans outlined. 10
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Unit Test and Debug Tool  Some people still wonder why to write Unit Test.  A unit test should be able to examine the behavior of the code under the most varied conditions.  Analyze by the content of the parameters passed ..………what performs and what returns ……….. if a condition is true or not  Is necessary guarantee if were performed types of tests made by the developer. 11
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 12 Need for Completion Test Unit and Coverage Code Every year lots of tools to aid in development are launched. In Phase Test Software is no different. Debug Tool for z/OS  Tool designed to debug individual tests  z/OS is the Operating System Mainframe environment.  Debug Tool for z/OS allows examine, monitor and control the execution of Programs COBOL , PL/I and ASSEMBLER among others
    • Code Debugging Tool to Help Teach Mainframe Programming Languages An interactive tool for source-level debugging for applications compiled in a variety of environments. Supports batch and on-line processing stored procedures in the database DB2, IMS, and UNIX System Services Supports a seamless debugging of applications in languages ​​mixed in the same session Offers a set of commands that can be interpreted used to specify actions to be performed Offers the option of setting breakpoints in an application program, monitoring changes to variables and noting exceptions and conditions specified during program execution Counts how many times a statement or verb was processed in an application program. 13
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 14 Interface with Debug Tool using a terminal
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Other features of the tool Debug Tool for z / OS are: a. Level debugging code; f. Dynamic changes; b. Multiple breakpoints; g. Modifications of variables; c. Conditional; h. Entering commands; d. Unconditional; i. Cover tested code. e. Debugging step by step; j. Log of the commands used in the debugging session; 15
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 16 1. Compile the program with support for the debugger and create a debug file 2. Set a trigger. For example, code a TEST option in the JCL for batch, or use CADP for CICS 3. Run the application. Language Environment will receive the TEST option and start the debugger Steps for using Debug Tool Debug Tool Program Source Program Load Module Compile LinkObject z/OS SYSDEBUG File LE Enterprise COBOL TEST(…) compiler option Add an LE TEST option to the JCL that runs the program
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Interface with an Application 17
    • Code Debugging Tool to Help Teach Mainframe Programming Languages How Debug for z/OS evidence Coverage Code The code coverage is evident in a practical manner. Percentage of code coverage = Number of Lines Tested ---------------------------------- x 100 Total Lines of a Program Indicates which line of code was executed and how many times it was executed. The code coverage is evident when it terminates execution of white box testing. The tool executes a command and it makes the calculation and displays. This enables the programmer to validate the quality and made ​​his test. 18
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Debug Tool and Code Coverage (Program Frequency Counting) 19
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Need Test of Code Source to Ensure Software Quality An organization needs to create an Environment of Testing and Certification Needs meet ITIL recommendations and the requirements of Basel 2 . Necessity exists for improvement of software quality and reducing problems in production. Intends to achieve this by improving the performance of existing applications in production as well as prevent new applications are poorly constructed. Most of institutions create areas distributed in : Process, Methodology, Infrastructure, Systems and Production. 20
    • Code Debugging Tool to Help Teach Mainframe Programming Languages To meet objectives of these areas it is necessary to perform tests:  Unit  Functional  Performance Use of Testing Debugging Tool for Teaching in Mainframe Environment Training courses in Brazilian universities of Information Technology do not have computer labs in large scale - Mainframe machines. Unable to train future professionals in this environment. IT industry has a demand for professionals is not answered. There is a deficiency that universities have and the low number of trained professionals in their own organizations. 21
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 22 Architecture Suggested for University Lab
    • Code Debugging Tool to Help Teach Mainframe Programming Languages To attend a training scenario in the industry is necessary:  Implement an architecture that allows access the tool via publishers that comes in TSO - Time Share Option and Roscoe.  The solution that is presented execute online programs - transactional batch .  To train students running tests in an environment similar to the industries, the tool can be performed via workstation RDT - RDZ Unit Test.  It is a development platform for System z running in a personal computer capable of execute operating system z/OS.  Provides flexibility to run a customized environment because facilitates developers to easily prototype releasing new applications using mainframe MIPS - Millions of Instructions per Second 23
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 24  This workstation reduces the dependencies because it is an individual unit.  A university that can not afford to buy a Mainframe machine is able to buy this unit test, whose server can support about 60 or more clients. Workstation RDT - RDZ Unit Test
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 25 MVS Resources • z/OS Datasets • JES • TSO • CICS Region • IMS Region • SCM • CLISTs/REXX How RDT - Rational Developer for System z Unit Test functions? RDz Listener Started Task Security/Authorization RACF/ACF-2/Top Secret RDz interacts with z/OS resources through a host-installed listener … and interacts through JDBC drivers to data sources RDz Client Software Data Resources • DB2 Data Objects • IMS Databases JDBC Eclipse-based IDE that breaks the barriers of the green-screen platform  Runs on Windows and Linux  Integration point for z/OS Application Development tools
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 26 Interface with Debug Tool using a graphical user interface  It is software that can be installed on Student workstation  The application running on the mainframe is controlled by the same debugging engine that is used by the 3270 interface  Debug Tool displays on Student workstation z/OS Debug Tool TCP/IP ApplicationDebug Tool
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Conclusion I  Like all kinds of tests are complementary they are designed to make the software into the hands of the customer with the fewest mistakes and less time spent.  The hard part is reaching the exact equation that is capable of delivering quality products and meeting customer expectations.  This tool can be appointed as a new application in software testing.  Intends to deliver the final product with minimum possible error meeting all the requirements generated by the end customer. 27
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Conclusion II  This research presented a solution for debugging programs Mainframe and use his suggestion in the activity of preparing students in learning languages ​​for Mainframe environment.  Its use in an educational facility programming language becomes essential as it allows the student to know the procedures of preparation and execution of testing in this environment, step by step.  This activity will prepare graduates to join the industry in development teams large applications.  The innovative use of this technology in the classroom will meet industries’ requirements. 28
    • Code Debugging Tool to Help Teach Mainframe Programming Languages Conclusion III  Can be concluded from this research that the tool assists the university in teaching programming languages ​​for mainframe environment because it reproduces the exact tests in the IT industry.  When entering the labor market the newly graduated student will ease in adapting to a development team or tests,.  He/she will work with the tool he used in his graduation.  Will work with the same profile presented by University. 29
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 30 Acknowledgments Authors of this paper would like to acknowledge: 1 – FAPDF – Fundo de Apoio à Pesquisa do Distrito Federal – A Brazilian fund of government to support researches. It’s located in Brasília city, Distrito Federal State 2 – UNIP – Universidade Paulista – Brasília, Brazil
    • Code Debugging Tool to Help Teach Mainframe Programming Languages 31 Thanks claudiogbernardo@ig.com.br pbatuta@hotmail.com