Subroutine to ILE Procedure
|
|
- Abigayle Hudson
- 5 years ago
- Views:
Transcription
1 Can you read? 1
2 Refactoring 2
3 GOTO Conversion 3
4 Subroutine to ILE Procedure 4
5 Modernization & Refactoring Improving the Design of Code, Database and More! 5
6 Refactoring 6
7 Today s Speaker 7
8 Refactoring 8
9 Business value of Refactoring? Eleni Stroulia 9
10 about Refactoring/Modernization previous refactoring events can you name them? general principles recognize code smell ugly code can stay recognize tradeoffs and obstacles to refactoring 10
11 11
12 12
13 What Happened? 13
14 Improve the Design of Existing Code 14
15 CISC to RISC 15
16 Four Digit Year 16
17 1956 5GB IBM Hard Drive 17
18 We is your code comfort? 18
19 Refactoring and DevOps Transition Lay the Foundation Analyze your existing resources Skillset, methodology, existing tooling Identify "Champions" Pick tools that match your needs and experience...not necessarily those that have the largest visibility Document Review Begin to install back office tooling Make incremental Development changes Start using RDi (if you aren't already) "Big Bang Refactoring or DevOps" not absolutely necessary Instead, consider making changes as part of already-defined (and already funded) projects 19
20 Development Transition - OO Start thinking in terms of "Objects" Matches what "Distributed" (Java, C#, C++) developers expect Often very similar to Database UML Related objects become service programs (*SRVPGM) Each object becomes a module (*MODULE) Actions becomes exported procedures Can be easily scripted for testing 20
21 Development Transition - MVC Separate Business Logic from User Interface (Model-View-Controller) Model Reference File View = 5250 (+Web, Mobile, Eclipse, Client Server,...) Controller = Module(s) (*MODULE) 21
22 Development Transition - TDD CI does not work without scriptable test cases... Test Driven Development (xunit overwhelmingly popular) JUnit: Customer cust = new Customer(); String[] location = {"665 Surf Terrace", "Wauconda", "IL"}; cust.setlocation(location); Order order = new Order(cust); boolean success = false; try { cust.delete(); } catch (Exception e) { assertthat(e, is(customerhasordersexception)); } assertthat(success, is(true)); RPGUnit: dcl-f orderf usage(*update:*delete); dcl-ds orderds likerec(orderrec); chain ('665 Surf Terrace' : 'Wauconda' : 'IL') orderrec orderds; assert (not %found : 'Record ("665 Surf Terrace", "Wauconda", "IL")' + 'should not be found'); 22
23 Legend Yes! Maybe No OMG No! 23
24 Development Transition - RPG Convert RPGIII to ILE No: GOTO; I-spec; O-spec; Cycle Free-form preferably More readable/quicker changes (especially for new developers) Easier tracking (fewer diff lines) Tooling: RDi H/S RPG Toolbox ARCAD RPG Converter for IBM i Convert subroutines to procedures (where appropriate) Minimal usage of global variables Review /COPY usage Fine for "macros" (e.g. sort) and copyright/version info Should never /COPY business logic into multiple programs 24
25 Development Transition Break up Large Programs Do multiple developers work on different parts of the same program? Multiple checkouts prevent feature promotion Resolving source conflicts (Sync) is the most difficult (and most costly) part of distributed development Are any of these true: Do you have >10 levels of indentation? Is your source increment.01?? Does the compiler sometimes crash when processing your source??? Have you already asked IBM to increase some limit so your program can compile?!?...answering yes, probably means your program isn't modular... 25
26 Rule of Three-Don Roberts Start thinking in terms of Three Strikes your Out" First time just do it-nike Always fit into workflow to refactor opportunistically Second time you do something similar, wince at duplication but do it anyway Third time you do something similar, you refactor 26
27 Rule of Three-Don Roberts Some techniques Third time you do something similar, you refactor Before you add a new feature, Preparatory Refactoring Making code easier to understand, Comprehensive Refactoring Litter-Pickup, understand but doing it badly Experiment, refactoring and new feature in separate commits (changes) Naming provides clarity and understanding, SQL table 27
28 Smelly Slide-Fixed to Free-Form RPG
29 GOTO Conversion
30 GOTO Conversion
31 GOTO Conversion 31
32 CALLx Conversion
33 MOVEA Conversion
34 PLIST Conversion
35 KLIST Conversion
36 Rule of One-Some Speaker(Me) Not limited to just code-database First time you do something, you refactor? Constraints-Database Centric Programming Performance Testing-Build Dependency-Concurrent Changes Surrogate-Religious War Naming provides clarity and understanding, SQL table 36
37 DDS to DDL conversion You can transform manually, buy a new application or Modernize/Refactor to drive additional Code transformation: - Field Renaming - Keyword management - Object renaming - Multi-member files management Copyright Arcad Software
38 Questions What did you think? 38
Today s Webinar is being recorded You ll receive a follow-up with the recording Q&A after the presentation Ask questions throughout the Webinar
Today s Webinar is being recorded You ll receive a follow-up email with the recording Q&A after the presentation Ask questions throughout the Webinar Post-Webinar survey Reach your Modernization Goals
More informationA few more things about Agile and SE. Could help in interviews, but don t try to bluff your way through
A few more things about Agile and SE Could help in interviews, but don t try to bluff your way through 1 Refactoring How to do it, where it fits in http://www.cse.ohio-state.edu/~crawfis/cse3902/index.htm
More informationObject Oriented Software Design - I
Object Oriented Software Design - I Unit Testing Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa November 28, 2011 G. Lipari (Scuola Superiore Sant Anna) Unit Testing November
More informationG.O.L.F. on IBM i. David Andruchuk Sr. Architect Computer Systems Design Associates, Inc. What can i do..i can do Database
G.O.L.F. on IBM i David Andruchuk Sr. Architect Computer Systems Design Associates, Inc. What can i do..i can do Database What are we covering today? Program vs Data Design Program Centric Data Centric
More informationContents. part 1: ILE Basics...7. Acknowledgments...iv
Contents Acknowledgments...iv Introduction...1 A Brief Description of Our Journey...1 From Old Problematic Monoliths to Innovative, Lightweight, Efficient Programs...3 Why ILE? OPM Has Served Me Fine So
More informationApplication Migration with X-Analysis
MANAGEMENT OVERVIEW A GUIDE TO THE BENEFITS OF USING APPLICATION MIGRATION Application Migration with X-Analysis Databorough Ltd. 66 York Road Weybridge UK info@databorough.com Phone +44 (0)1932 848564
More informationSoftware Design and Analysis CSCI 2040
Software Design and Analysis CSCI 2040 Introduce two important development practices in the context of the case studies: Test-Driven Development Refactoring 2 Logic is the art of going wrong with confidence
More informationJ, K F, G, H. Library/framework, 168 LIKE() predicate, 142 Load-balancing server (LBS), 120 Lock on check out (LOCO), 1
Index A ADO.NET driver coding implementation, 153 154 dr.read() method, 155 finally block, 155 IDataReader, 155 interface variables, 155 loose-coupling, 153 MySql assembly, 153 try-catch blocks, 155 using
More informationBrian May IBM i Modernization Specialist Profound Logic Software. Webmaster and Coordinator Young i Professionals
Brian May IBM i Modernization Specialist Profound Logic Software Webmaster and Coordinator Young i Professionals Overview Discuss advantages of using data structures for I/O operations Review the I/O opcodes
More informationAn Introduction to SQL for System i. A beginning overview of SQL in System i Navigator and Embedded SQL in RPGLE
An Introduction to SQL for System i A beginning overview of SQL in System i Navigator and Embedded SQL in RPGLE Quote heard from IBM at a Conference 80% of everything you will need to know three years
More informationIntroduction. A Brief Description of Our Journey
Introduction If you still write RPG code as you did 20 years ago, or if you have ILE RPG on your resume but don t actually use or understand it, this book is for you. It will help you transition from the
More informationLearning to Provide Modern Solutions
1 Learning to Provide Modern Solutions Over the course of this book, you will learn to enhance your existing applications to modernize the output of the system. To do this, we ll take advantage of the
More information12/7/09. How is a programming language processed? Picasso Design. Collaborating with Subversion Discussion of Preparation Analyses.
Picasso Design Finish parsing commands Collaborating with Subversion Discussion of Preparation Analyses How is a programming language processed? What are the different phases? Start up Eclipse User s Input
More informationTechnology Background Development environment, Skeleton and Libraries
Technology Background Development environment, Skeleton and Libraries Christian Kroiß (based on slides by Dr. Andreas Schroeder) 18.04.2013 Christian Kroiß Outline Lecture 1 I. Eclipse II. Redmine, Jenkins,
More informationIndex. BigBadGuiTools (BBGT), 186 Business logic and data layer, 32 Business requirements
Index A ADO.NET, SQL driver documentation, 171 dr.read() method, 173 ExecuteNonQuery method, 173 IDbDataParameter interface, 174 Interface variables, 173 MySqlDataReader, 173 MySql reference, 170 placeholders,
More informationAO IBM i Advanced Modernization Workshop Curriculum
AO IBM i Advanced Modernization Workshop Curriculum This workshop is intended to provide the IBM i professional, specifically the RPG programmer, with an overview of the newest capabilities which have
More informationCharles Guarino. About The Speaker
Get With The Program! It s Not Your Grandma s RPG Anymore Charles Guarino Twitter @charlieguarino Central Park Data Systems, Inc. About The Speaker With an IT career spanning over 30 years, Charles Guarino
More informationCSCI 2600: Principles of Software. Spring 2017 Lecture 01 Bill Thompson
CSCI 2600: Principles of Software Spring 2017 Lecture 01 Bill Thompson thompw4@rpi.edu https://www.cs.rpi.edu/~thompw4/csci-2600/spring2017/ Thanks Much of the material in this course comes from Prof.
More information5/3/2006. Today! HelloWorld in BlueJ. HelloWorld in BlueJ, Cont. HelloWorld in BlueJ, Cont. HelloWorld in BlueJ, Cont. HelloWorld in BlueJ, Cont.
Today! Build HelloWorld yourself in BlueJ and Eclipse. Look at all the Java keywords. Primitive Types. HelloWorld in BlueJ 1. Find BlueJ in the start menu, but start the Select VM program instead (you
More informationLab Exercise Test First using JUnit
Lunds tekniska högskola Datavetenskap, Nov, 2017 Görel Hedin/Ulf Asklund EDAF45 Programvaruutveckling i grupp projekt Lab Exercise Test First using JUnit Goal This lab is intended to demonstrate basic
More informationRational Developer for i: What's New in 9.0.1
John Fellner, Developer, Rational Developer for i Rational Developer for i: What's New in 9.0.1 TUG Meeting of Members, Jan 22, 2014 Agenda Quick Product Intro What's New in Rational Developer for i v9.0.1
More informationCSC207 Week 4. Larry Zhang
CSC207 Week 4 Larry Zhang 1 Logistics A1 Part 1, read Arnold s emails. Follow the submission schedule. Read the Q&A session in the handout. Ask questions on the discussion board. Submit on time! Don t
More informationLEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus
LEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus INTRODUCTION This five-day, instructor-led course provides students with the knowledge and skills to effectively
More informationCourse 1 October, 9, Adrian Iftene
Course 1 October, 9, 2017 Adrian Iftene adiftene@info.uaic.ro SWEBOK: place and role of software engineering, knowledge areas (KAs), related disciplines Development and maintenance of the systems: model
More informationExtreme programming XP 6
Extreme programming XP 6 Planning Game 3 Planning Game Independent: Stories should be as independent as possible. When thinking of independence it is often easier to think of order independent. In other
More informationC Sc 335 Practice Test 2 Answers 1a) Create an initial list of classes that would do a good job of modeling this system (ANSWER MAY VARY)
C Sc 335 Practice Test 2 Answers 1a) Create an initial list of classes that would do a good job of modeling this system (ANSWER MAY VARY) Candidate Class Name Single Responsibility Customer (or Rentor)
More information9 th CA 2E/CA Plex Worldwide Developer Conference 1
1 Introduction/Welcome Message Modern CA:2E 8.7 allows us to transform our database from traditional DDS specifications, to more modern and accepted SQL. This session will show the process of moving from
More informationOutline. Logistics. Logistics. Principles of Software (CSCI 2600) Spring Logistics csci2600/
Outline Principles of Software (CSCI 600) Spring 018 http://www.cs.rpi.edu/academics/courses/spring18/csci600/ Konstantin Kuzmin, kuzmik@cs.rpi.edu Office hours: Monday and Thursday 4:00 pm - 5:30 pm Mailing
More informationContinuous Integration / Continuous Testing
Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Continuous Integration / Continuous Testing IIC What s SW Integration? Integration
More informationIntroduction to IRQA 4
Introduction to IRQA 4 Main functionality and use Marcel Overeem 1/7/2011 Marcel Overeem is consultant at SpeedSoft BV and has written this document to provide a short overview of the main functionality
More informationThinking Functionally
Thinking Functionally Dan S. Wallach and Mack Joyner, Rice University Copyright 2016 Dan S. Wallach, All Rights Reserved Reminder: Fill out our web form! Fill this out ASAP if you haven t already. http://goo.gl/forms/arykwbc0zy
More informationADT: Eclipse development tools for ATL
ADT: Eclipse development tools for ATL Freddy Allilaire (freddy.allilaire@laposte.net) Tarik Idrissi (tarik.idrissi@laposte.net) Université de Nantes Faculté de Sciences et Techniques LINA (Laboratoire
More informationCOMP 354 TDD and Refactoring
COMP 354 TDD and Refactoring Greg Butler Office: EV 3.219 Computer Science and Software Engineering Concordia University, Montreal, Canada Email: gregb@cs.concordia.ca Winter 2015 Course Web Site: http://users.encs.concordia.ca/
More informationInfoSphere Data Architect Pluglets
InfoSphere Data Architect Pluglets Macros for Eclipse This article provides information on how to develop custom pluglets and use sample pluglets provided by InfoSphere Data Architect. InfoSphere Data
More informationReengineering II. Transforming the System
Reengineering II Transforming the System Recap: Reverse Engineering We have a detailed impression of the current state We identified the important parts We identified reengineering opportunities We have
More informationVersion control CSE 403
Version control CSE 403 Goals of a version control system Keep a history of your work Explain the purpose of each change Checkpoint specific versions (known good state) Recover specific state (fix bugs,
More informationJim Buck Phone Twitter
Jim Buck Phone 262-705-2832 Email jbuck@impowertechnologies.com Twitter - @jbuck_impower www.impowertechnologies.com Presentation Copyright 2017 impowertechnologies.com 5250 & SEU Doesn t work anymore!
More informationLevels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy
Testing ENGI 5895: Software Design Andrew Vardy Faculty of Engineering & Applied Science Memorial University of Newfoundland March 6, 2017 Outline 1 Levels of Testing 2 Testing Methods 3 Test Driven Development
More informationKnowledge Discovery: How to Reverse-Engineer Legacy Systems
Knowledge Discovery: How to Reverse-Engineer Legacy Systems Hugo Bruneliere, Frédéric Madiot INRIA & MIA-Software 1 Context of this work Knowledge Discovery: How To Reverse-Engineer Legacy Sytems The present
More informationOO and Ahh! An Introduction to Object Oriented Programming With PHP. Division 1 Systems. John Valance. Copyright John Valance Division 1 Systems
OO and Ahh! An Introduction to Object Oriented Programming With PHP John Valance Division 1 Systems johnv@div1sys.com Copyright John Valance Division 1 Systems About John Valance 30+ years IBM midrange
More informationDatabase Programming with PL/SQL
Database Programming with PL/SQL 1-2 Objectives This lesson covers the following objectives: List and explain the benefits of PL/SQL List the differences between PL/SQL and other programming languages
More informationConstruction: High quality code for programming in the large
Construction: High quality code for programming in the large Paul Jackson School of Informatics University of Edinburgh What is high quality code? High quality code does what it is supposed to do......
More informationTest Driven Development Best practices applied to IBM i with the assistance of tooling. Barbara Morris RPG compiler lead Edmund Reinhardt RDi lead
Test Driven Development Best practices applied to IBM i with the assistance of tooling Barbara Morris RPG compiler lead Edmund Reinhardt RDi lead The Vision IBM i developers are able to confidently change
More informationDATABOROUGH TOOLS DATASHEET FEB
The knowledge and information contained in an organization s business software is vitally important and extremely valuable but often this information covering the operation, metrics, and design of the
More informationCSE 15L Winter Midterm :) Review
CSE 15L Winter 2015 Midterm :) Review Makefiles Makefiles - The Overview Questions you should be able to answer What is the point of a Makefile Why don t we just compile it again? Why don t we just use
More informationBOSTON USER GROUP. Workflows for Threading. kcura LLC. All rights reserved.
BOSTON USER GROUP Workflows for Email Threading Jacob Cross Overview The objective of today s session is to give you some ideas that will hopefully increase your knowledge of how email threading works
More informationLiquibase Version Control For Your Schema. Nathan Voxland April 3,
Liquibase Version Control For Your Schema Nathan Voxland April 3, 2014 nathan@liquibase.org @nvoxland Agenda 2 Why Liquibase Standard Usage Tips and Tricks Q&A Why Liquibase? 3 You would never develop
More informationDARPA introduction. Joost Westra
DARPA introduction Joost Westra Introduction Darpa & Tekkotsu Project work Previous work Practical RoboLab Why Darpa? Dutch ARchitecture Project for Aibos Problems with the old (German) code Creating your
More informationUnderstading Refactorings
Understading Refactorings Ricardo Terra terra@dcc.ufmg.br Marco Túlio Valente mtov@dcc.ufmg.br UFMG, 2010 UFMG, 2010 Understanding Refactorings 1 / 36 Agenda 1 Overview 2 Refactoring 3 Final Considerations
More informationSQL Support in 2E. 9 th CA 2E/CA Plex Worldwide Developer Conference
SQL Support in 2E 1 Introduction/Welcome Message Modern CA:2E 8.7 allows us to transform our database from traditional DDS specifications, to more modern and accepted SQL. This training session will show
More informationGuidebook ONLINE ORDERING MADE EASY!
www.boltsupply.com Guidebook ONLINE ORDERING MADE EASY! ONLINE ORDERING MADE EASY! www.boltsupply.com Guidebook Here are some of the highlights of the new boltsupply.com New Home Page It s now easier than
More informationLevels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy
Testing ENGI 5895: Software Design Andrew Vardy Faculty of Engineering & Applied Science Memorial University of Newfoundland March 6, 2017 Outline 1 Levels of Testing 2 Testing Methods 3 Test Driven Development
More informationTest Driven Development TDD
Test Driven Development TDD Testing Testing can never demonstrate the absence of errors in software, only their presence Edsger W. Dijkstra (but it is very good at the latter). Testing If it's worth building,
More informationModernizing your database processes with DevSecOps
Modernizing your database processes with DevSecOps Table of Contents Introduction The Shift to DevSecOps Database Flow Comprehensive Security Managing Drift Transparent Auditing Conclusion 1 2 6 7 9 10
More informationFROM OPNQRYF TO SQL WITH RPG OPEN ACCESS
FROM OPNQRYF TO SQL WITH RPG OPEN ACCESS Alex Krashevsky AEK Solutions, Inc. May 9, 2018 aatkrash@gmail.com https://www.linkedin.com/in/alexkrashevsky-58930bb/ Objectives Getting to see a technical challenge
More informationOpenVMS migration to i4 and beyond
OpenVMS migration to i4 and beyond OpenVMS Bootcamp 2015 Migrating OpenVMS systems to Integrity -i4 servers and beyond Colin Butcher CEng FBCS CITP Technical director, XDelta Limited www.xdelta.co.uk Agenda
More informationCS 351 Design of Large Programs Programming Abstractions
CS 351 Design of Large Programs Programming Abstractions Brooke Chenoweth University of New Mexico Spring 2019 Searching for the Right Abstraction The language we speak relates to the way we think. The
More informationSo Now What? Using IWS Server and Service programs
So Now What? Using IWS Server and Service programs Presentation Copyright 2017 impowertechnologies.com Jim Buck Phone 262-705-2832 jbuck@impowertechnologies.com Twitter - @j_buck51 5250 & SEU Doesn t work
More informationAutomated Testing of Tableau Dashboards
Kinesis Technical Whitepapers April 2018 Kinesis CI Automated Testing of Tableau Dashboards Abstract Companies make business critical decisions every day, based on data from their business intelligence
More informationAbout the Authors. Preface
Contents About the Authors Acknowledgments Preface iv v xv 1: Introduction to Programming and RPG 1 1.1. Chapter Overview 1 1.2. Programming 1 1.3. History of RPG 2 1.4. Program Variables 6 1.5. Libraries,
More informationWeek 2: The Clojure Language. Background Basic structure A few of the most useful facilities. A modernized Lisp. An insider's opinion
Week 2: The Clojure Language Background Basic structure A few of the most useful facilities A modernized Lisp Review of Lisp's origins and development Why did Lisp need to be modernized? Relationship to
More informationTest suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at
JUnit Test suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at the moment), or You can build a test suite (a thorough
More informationPractical Objects: Test Driven Software Development using JUnit
1999 McBreen.Consulting Practical Objects Test Driven Software Development using JUnit Pete McBreen, McBreen.Consulting petemcbreen@acm.org Test Driven Software Development??? The Unified Process is Use
More informationDB2 for z/os Stored Procedures Update
Robert Catterall, IBM rfcatter@us.ibm.com DB2 for z/os Stored Procedures Update Michigan DB2 Users Group May 15, 2013 Information Management Agenda A brief review of DB2 for z/os stored procedure enhancements
More informationOracle Forms and Oracle APEX The Odd Couple
Oracle Forms and Oracle APEX The Odd Couple About me 2 Francis Mignault CTO and Co-founder, Insum Solutions 30+ years with Oracle DB, 14+ years with APEX. (Forms 2.3 / Oracle 5) Books: Expert Oracle Application
More informationVersion Control Systems
Nothing to see here. Everything is under control! September 16, 2015 Change tracking File moving Teamwork Undo! Undo! UNDO!!! What strategies do you use for tracking changes to files? Change tracking File
More informationControl Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003
Control Flow COMS W1007 Introduction to Computer Science Christopher Conway 3 June 2003 Overflow from Last Time: Why Types? Assembly code is typeless. You can take any 32 bits in memory, say this is an
More informationSelenium Testing Course Content
Selenium Testing Course Content Introduction What is automation testing? What is the use of automation testing? What we need to Automate? What is Selenium? Advantages of Selenium What is the difference
More informationThe Why and How of the imodernize(d) Application Architecture
The Why and How of the imodernize(d) Application Architecture David Andruchuk Sr. Architect Computer Systems Design Associates, Inc. What can i do..i can do Modernized IBM i is very different from the
More informationAPPLICATION MODERNIZATION. Brian May IBM i Modernization Specialist
APPLICATION MODERNIZATION Brian May IBM i Modernization Specialist APPLICATION MODERNIZATION Three critical areas of modernization The future of RPG and Rational Open Access, RPG Edition MVC Modernize
More informationCSE 70 Final Exam Fall 2009
Signature cs70f Name Student ID CSE 70 Final Exam Fall 2009 Page 1 (10 points) Page 2 (16 points) Page 3 (22 points) Page 4 (13 points) Page 5 (15 points) Page 6 (20 points) Page 7 (9 points) Page 8 (15
More informationIBM i/db2 Modernization to SQL
IBM i/db2 Modernization to SQL About Your Presenter IBM i Professional for 16 Years. Primary Focus is IBM i Engineering / Programming Well Versed in 2E. Well Versed in RPG (All Flavors) Well Versed in
More informationPreface to the Second Edition... xi A Note About Source Entry... xi
Contents Preface to the Second Edition... xi A Note About Source Entry... xi Chapter 1: Pre Free-Format RPG IV... 1 RPG IV... 1 Extended Factor 2... 2 Built-in Functions... 2 Subprocedures... 3 Other Changes...
More informationLecture Notes for Chapter 2: Getting Started
Instant download and all chapters Instructor's Manual Introduction To Algorithms 2nd Edition Thomas H. Cormen, Clara Lee, Erica Lin https://testbankdata.com/download/instructors-manual-introduction-algorithms-2ndedition-thomas-h-cormen-clara-lee-erica-lin/
More informationContinuous Integration using Cruise Control
Continuous Integration using Cruise Control Presented By Tom Grant PlatinumSolutions, Inc. Thursday, April 14 th, 2005 What is Integration? Definition: the act of combining into an integral whole In software
More informationJava Language Modularity With Superpackages
Java Language Modularity With Superpackages Alex Buckley JSR 294 Co-spec lead Sun Microsystems Andreas Sterbenz JSR 294 Co-spec lead Sun Microsystems TS-2401 2007 JavaOne SM Conference Session 2401 Goal
More informationAnalysis of the Test Driven Development by Example
Computer Science and Applications 1 (2013) 5-13 Aleksandar Bulajic and Radoslav Stojic The Faculty of Information Technology, Metropolitan University, Belgrade, 11000, Serbia Received: June 18, 2013 /
More informationSoftware LEIC/LETI. Lecture 13
Software Engineering @ LEIC/LETI Lecture 13 Last Lecture Software Design Bottom-up design process Refactoring A large example Today Software Design Refactoring Workflows of refactoring Introduce persistence
More informationERICH PRIMEHAMMER REFACTORING
ERICH KADERKA @ PRIMEHAMMER REFACTORING WHAT IS REFACTORING? Martin Fowler: Refactoring is a controlled technique for improving the design of an existing code base. Its essence is applying a series of
More informationSECTION 1: CODE REASONING + VERSION CONTROL + ECLIPSE
SECTION 1: CODE REASONING + VERSION CONTROL + ECLIPSE cse331-staff@cs.washington.edu slides borrowed and adapted from Alex Mariakis and CSE 390a OUTLINE Introductions Code Reasoning Version control IDEs
More informationTesting with JUnit 1
Testing with JUnit 1 What are we doing here? Learning the mechanics of how to write tests in Java using JUnit Without considering issues like coverage Using JUnit is sometimes called unit testing Unit
More informationthe gamedesigninitiative at cornell university Lecture 12 Architecture Design
Lecture 12 Take Away for Today What should lead programmer do? How do CRC cards aid software design? What goes on each card? How do you lay m out? What properties should y have? How do activity diagrams
More informationCISC 3140 (CIS 20.2) Design & Implementation of Software Application II
CISC 3140 (CIS 20.2) Design & Implementation of Software Application II Instructor : M. Meyer Email Address: meyer@sci.brooklyn.cuny.edu Course Page: http://www.sci.brooklyn.cuny.edu/~meyer/ CISC3140-Meyer-lec4
More informationThis course supports the assessment for Scripting and Programming Applications. The course covers 4 competencies and represents 4 competency units.
This course supports the assessment for Scripting and Programming Applications. The course covers 4 competencies and represents 4 competency units. Introduction Overview Advancements in technology are
More informationComputer Components. Software{ User Programs. Operating System. Hardware
Computer Components Software{ User Programs Operating System Hardware What are Programs? Programs provide instructions for computers Similar to giving directions to a person who is trying to get from point
More informationMobile Web from the RPG and Dojo Perspectives
Mobile Web from the RPG and Dojo Perspectives IBM has adopted the open-source Dojo toolkit as its internal standard! Is Open Source relevant to the IBM ILE community? How does Open Source Web and ILE work
More informationStage 11 Array Practice With. Zip Code Encoding
A Review of Strings You should now be proficient at using strings, but, as usual, there are a few more details you should know. First, remember these facts about strings: Array Practice With Strings are
More informationIntroduction to Concurrent Software Systems. CSCI 5828: Foundations of Software Engineering Lecture 08 09/17/2015
Introduction to Concurrent Software Systems CSCI 5828: Foundations of Software Engineering Lecture 08 09/17/2015 1 Goals Present an overview of concurrency in software systems Review the benefits and challenges
More informationObjectives. Problem Solving. Introduction. An overview of object-oriented concepts. Programming and programming languages An introduction to Java
Introduction Objectives An overview of object-oriented concepts. Programming and programming languages An introduction to Java 1-2 Problem Solving The purpose of writing a program is to solve a problem
More informationCPSC 427a: Object-Oriented Programming
CPSC 427a: Object-Oriented Programming Michael J. Fischer Lecture 1 September 2, 2010 CPSC 427a 1/54 Overview Course information Goals Learning C++ Programming standards Comparison of C and C++ Example
More informationCOURSE 11 DESIGN PATTERNS
COURSE 11 DESIGN PATTERNS PREVIOUS COURSE J2EE Design Patterns CURRENT COURSE Refactoring Way refactoring Some refactoring examples SOFTWARE EVOLUTION Problem: You need to modify existing code extend/adapt/correct/
More informationI Want To Go Faster! A Beginner s Guide to Indexing
I Want To Go Faster! A Beginner s Guide to Indexing Bert Wagner Slides available here! @bertwagner bertwagner.com youtube.com/c/bertwagner bert@bertwagner.com Why Indexes? Biggest bang for the buck Can
More informationCS Lecture 19: Loop invariants
CS 1110 Lecture 19: Loop invariants Announcements Prelim 2 conflicts Today (April 2) is two weeks before the prelim, and the deadline for submitting prelim conflicts. Instructor travel This week and the
More informationIntroduction to Concurrent Software Systems. CSCI 5828: Foundations of Software Engineering Lecture 12 09/29/2016
Introduction to Concurrent Software Systems CSCI 5828: Foundations of Software Engineering Lecture 12 09/29/2016 1 Goals Present an overview of concurrency in software systems Review the benefits and challenges
More informationNews in RSA-RTE 10.1 updated for sprint Mattias Mohlin, July 2017
News in RSA-RTE 10.1 updated for sprint 2017.28 Mattias Mohlin, July 2017 Overview Now based on Eclipse Neon.3 (4.6.3) Many general improvements since Eclipse Mars Contains everything from RSARTE 10 and
More informationChapter 1 GETTING STARTED. SYS-ED/ Computer Education Techniques, Inc.
Chapter 1 GETTING STARTED SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: WSAD. J2EE business topologies. Workbench. Project. Workbench components. Java development tools. Java projects
More informationRUP for Systems Z and other Legacy Systems
IBM Software Group RUP for Systems Z and other Legacy Systems Susan M Burk Senior Managing Consultant IBM smburk@us.ibm.com 413-726-9361 2006 IBM Corporation Agenda Objectives A Quick Introduction to RUP
More informationWhat's that? Why? Is one "better" than the other? Terminology. Comparison. Loop testing. Some experts (e.g. Pezze & Young) call it structural testing
Week 9: More details of white-box testing What is it? Comparison with black-box testing What we should not validate Automated versus interactive testing Testing conditional and loop constructs COMP 370
More informationPage 1. Human-computer interaction. Lecture 1b: Design & Implementation. Building user interfaces. Mental & implementation models
Human-computer interaction Lecture 1b: Design & Implementation Human-computer interaction is a discipline concerned with the design, implementation, and evaluation of interactive systems for human use
More informationIntroduction to Automated Unit Testing (xunit) Brian Nielsen Arne Skou
Introduction to Automated Unit Testing (xunit) Brian Nielsen Arne Skou {bnielsen ask}@cs.aau.dk Conventional Test Execution Ad hoc manner Manual stimulation & observation E.g. adding a function to a module,
More information