Software Management & Testing
3.4 (11 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,030 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Software Management & Testing to your Wishlist.

Add to Wishlist

Software Management & Testing

Modern Software Challenges, Roles & Team-Building Best Practices
3.4 (11 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,030 students enrolled
Created by Randall Nagy
Last updated 5/2016
Current price: $10 Original price: $200 Discount: 95% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 8 hours on-demand video
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Understand Modern Testing Practices
  • Understand Testing & Software Developer Terms
  • Know How to Test Browser, Console, & Cloud Software
  • Understand HTML, JavaScript, Python, and Java
  • Appreciate How to Win Friends while Testing Software
  • Learn How To Use UML Use Cases
  • Document Testing & Software Analysis Activities
  • Create Iterative Testing Plans & Prescriptions
  • Discover How To Create & Manage Test Cases
  • Enjoy a Role-Based Review Of "The Perfect Team Collaboration Software"
  • Discover how to limit a UML Activity Diagram so as to use more universally-understood Flow Chart activities.
View Curriculum
  • Students should have a basic understanding of computer programming & software development concepts.

Far from being a mundane technical process, the art of creating fantastic software requires an ability to kindle a synergy. From upper management to content creators, the clear and present need in the software industry is to seek out & employ not only those who can identify and use their tools well, but also those who know how to win friends, as well as influence team members.

From testing graphical to browser based applications therefore, in addition to reviewing the modern trends, techniques, and tools de jur, my Software Management & Testing training opportunity also covers how to encourage team members to do their best. By combining field-tested techniques used to remedy defects found in multi-million dollar software systems with well known testing concepts, our mission is to equip each student with the insight and real-world experiences required to ensure both personal, as well as project, success.

Who is the target audience?
  • Students who are new to the testing and / or software development industry
Students Who Viewed This Course Also Viewed
Curriculum For This Course
57 Lectures
Introduction (1000)
4 Lectures 30:06

Discover the "secret" to becoming a highly paid, sought-out, professional software industry rock star!

Preview 03:37

Discover what you will learn in this edition of Randall Nagy's popular "Software Management & Testing" training. Commonly known as "Testing Success," enjoy a high-level review of the first "IOP” Pattern all technologist must understand. Learn more about the training, as well as the tenure & impressive industry qualifications of your instructor.

Preview 07:31

Discover how testing requirements may expand to include other systems, expectations, as well as implied industry requirements. Discover what people mean when they use such terms as “Five Nines,” “DMZ,” “Retention,” “Persistence”, “SLA” as well as other industry-wide concepts.

Basic Terms & Concepts

Gain practical insight into the motivations and expectations of the key players involved in the software quality assurance process. Discover how to turn project antagonists into valued team members while reviewing the classic set of roles often required to support the modern software development process.

Roles & Responsibilities
Testing Fundamentals (2000)
20 Lectures 02:48:26

Discover how to pair testing activities with testing results while learning what “interfaces” are. Understanding the “Lego Effect” that can be used to chain computer programs together using such universal concept as standard input, output, and error.

Input, Output & Processing

Discover the secret & highly testable nature of all web-based applications. Discover what a “regression” is, as well as how they differ form “Bugs.” Learn what a "command processor" and a "shell" are, while discovering why the Python programming language is enjoying increasing support amongst modern software, system, & DevOps testers.

Testing Terminology

Enjoy a hands-on lab exercise that demonstrates how Python can be used to manage program output. Understand the difference between "built in" and "external" commands. Learn how to create, as well as to append, any program's console output to editable files.

I/O Redirections

Review the sources of error that often contribute to creating software and system defects. Understand how the realms where software operate can increase the scope of our testing efforts. Discover how to conduct a “Software Quality Review,” as well as gain insight into the typical testing & defect remediation life cycle.

Testing Fundamentals (Part Two - Start)

Understand the key cultural requirements for creating excellent products. Understand what is meant by “granularity” while learning how to decompose requirements into testable activities. Discover the justification behind creating testing policies, as well as requirements enforcement. Review concepts related to System Complexity and Inter-operation.

Sources of Error: Requirements, Technology & Complexity

The discussion of Complexity continues with the review of the classic “CQT” dilemma. Understand what software developers mean when discussing the “build -v- buy” options, as well as how generic solutions far too often rigidly dictate, rather than accommodate, company policies.

Sources of Error – Complexity (continued)

Understand the different realms where testing can occur. Learn how to triage testing activities so as to keep focused on the most relevant testing mission. Understand how the concepts of “testing width” and “testing depth” can work together to manage your iterative testing tasks. Understand the difference Unit, Integration, and System Testing.

Testing Realms

Understand what a “framework” is. Enjoy a high-level definition of how “is a” and “has a” can impact longer-term testing plans. Review what an “adapter” is, as well as how adapters can manage test changes. Understand feature mocking, as well as mock objects. Review source-code level internal comments & documentation.

Testing Realms (continued)

Review the three (3) key phases required to create automated test cases. Understand the trade-offs between automated, and manual testing. Discover more helpful hints on testing GUI's, as well as how to automate the testing of both graphical, as well as textual, testing chores.

Testing Realms (continued)

Testing Approach

Understand how creating a distinct “work in process” phase, as well as numbering scheme, can be important to overall testing success. Understand how the concept of “metatada” applies to artifacts created by testing activities. Discover how to associate multiple results with a single test case. Review the benefits behind one man's usage of the classic major, minor, and revision numbering scheme.

Testing Approach (continued)

Understand the difference between pro-active, and re-active testing. Review the Five (5) distinct phases in the testing life cycle.

A Bug's Life

Review previously defined testing terms. Discover what “Component Testing,” "Smoke Testing" are. Understand the universal aspects of "Functional Testing." Learn what is meany by "Oracle Testing," as well as which technologies can be used to create testing oracles.

Testing Fundamentals: More Testing Terms

Review the more prevalent software testing technologies. Understand what the *Unit technologies do. Discover what popular technology supports the management of testing oracles. Learn what "Testing Stubs" and "Test Doubles" are, and how they are used. Learn how Test Spies, Fake Objects, Dummy & Fake Objects operate. Understand what "Edge Conditions” are, as well as how to locate, document, & test them.

Honorable Mentions

Learn the difference between static and active documentation. Discover how companies decompose documents into testing requirements. Apply requirement gathering concepts so as to define your own testing strategy.

Learn the difference between testing strategy & tactics: Understand how to use past, present, and future analysis to help create testing plans. Learn how to perform a gap analysis.

Analysis Activities & Lab Exercise

Discover how to conduct a software quality review. Understand how “being tested” or “being done” can be difference from being “feature complete” or “correct.” Learn more about the trends in documentation maintenance in the modern software world. Review the importance of mapping feature requests to test plans, as well as content delivery. Understand the need for recovery, restart, and security testing.

The Software Quality Review

Review the IEEE / ANSI definition of Software Reliability. Understand the difference between operational "stimulation" -v- "simulation." Review the decomposition of two simple requirements as used in future sessions. Learn how to apply the "IOP" model so as to help add more detail to requirements. Understand the difference between "Correctness," "Confidence," and "Error Free."

Requirements, Behaviors, & Reliability

Delve deeper into the testing process so as to learn how to create a testing policy as well as process. Discover which type of testing activities can be exchanged between software developers and testers. Understanding difference between testing, verification, aw well as validation activities. Learn how to create plans to track, monitor, & manage testing operations. Discover how to determine if work on a software or system under test has been completed.

Testing, Debugging & Verification

Discover the basics of creating a UML Activity Diagram. Learn how Flowcharts relate to UML Activities. Understand guard conditions, activities, and entry / exit points. Enjoy a step-by-step review of a requirement fulfillment activity.

Testing & Verification Process

Review the detailed (low level) steps required to create a Test Case. Discover the three "flows" to document for any Test Case. Review a comprehensive set of Design Artifact & related Testing Terms. Complete a Lab Exercise designed to help students create a Test Case. Understand the difference between a Model, Specification, Code, and Practice-based Test Case.

Test Case Creation
Internet & Browser Testing (3000)
10 Lectures 01:32:10

Review the topical summary and learning objectives as presented in the "Browser Testing" presentations.

Browser-Based Software Testing - Introduction

Client-Server Testing

Review the history of JavaScript. Learn what JavaScript has in common with the Java Programming Language. Discover the ever decreasing (!) challenges of testing JavaScript. Discover the DOM, as well as how JavaScript can use it. Learn what client-side validation is. Discover how AJAX can use JASON - as well as XML. Review the recent innovations in JavaSript. Understand what Node.js is,as well as how PhoneGap (Apache Cordova) can be used. Understand the JavaScript standardization process.

JavaScript Overview

Review the testable side of JavaScript. Understand how scoping browser support can ease testing chores. Discover how XML DOM snapshot can be used to automate testing success. Discover the modern trends in cross-platform JavaScript Support. Understand how JavaScript can be used to create compiled native-code applications. Discover how to test JavaScript as a textual. browser-based, technology. Learn how to choreograph multi-language browser-based testing. Learn how browser based session & security testing can be predictably tested. Understand how to test JavaScript as a compiled (!) language standard.

Browser Testing: Testing JavaScript

Review the testing pattern required to reliably test Web Services. Review how JAX-RPC, SOAP, REST, and BEST operate. Learn the basic HTTP verbs used to requesting server information. Discover the difference between an HTTP "GET" and an "POST." Discover the testable need for using the standard RFC response-codes.

Complete a Lab Exercise designed to familiarize the student with "Gap Analysis," as well as to identify "Critical Paths" through any testing activity.

Testing Web Services

Understand the history of HTML. Discover why XHTML failed. Learn the key advantages of HTML 5. Discover what a “Style-Sheet” is. Discover what Local & Remote Browser Sessions are. Understand how the new “applicaitonCache” can support responsive web designs. Review the new HTML 5 Layout capabilities. Learn about the more noteworthy HTML5 tags and CSS3 style attributes.

Complete a Lab Exercise designed to allow the student to have hands-on experience with HTML5's new "Drag & Drop" capabilities.

HTML5 Overview

Cross-Browser Testing

Review in-depth real-world conceptual solutions to GUI Testing. Understand MIME Types, as well as content-comparison concepts. Discover the capabilities & limiting of several Automation Testing Frameworks. Discover why Google's GWT allows JavaScript developers to become more efficient. Understand RPC/XDR efficiencies and why the underpinnings of CORBA are re-gaining popularity.

Graphical User Interface (GUI) Testing

Discover how Regular Expressions can ease data verification chores. Review the complete set of Regular Expression sequences & encoding. Learn how to use Regular Expressions under JavaSript. Review RE's validation techniques in HTML. Discover meta-characters and encoding techniques.

Browser Testing & Regular Expressions (RE)

Discover Anchor-Points and Qualifiers. Review a JavaScript RE validation script. Enjoy an on-click form validation example. Understand ranges and alphanumeric sequences.

Enjoy a Lab Exercises designed to re-create the HTML and JavaScript exercises. Review the Browser Based Testing Educational Summary.

Regular Expressions (Part Two)
Testing Concepts (4000)
10 Lectures 01:23:27

Review the concepts to be covered. Understand the difference between “Code Coverage” and “Data Coverage.”

Testing Concepts (Introduction)

Discover how Testing Surfaces relate to traditional Black & White Box Testing. Learn when to move back and forth between white, gray, and black-box testing approaches. Understand how to prioritize testing activities. Discover how to increase code-coverage so as to cover edge conditions, as well as parameter testing.

Finally, review the benefits of freezing code. Understand how work can continue even while code is being tested.

Black & White Box Testing

Consider the cross-role support required to manage change.

Understand when to use "Acceptance Testing." Review a list of common "Acceptance Criteria" which can be used to manage quality reviews. Discover how Service Testing can easily support several types of testing activities.

Code Testing

Understand the dependencies between System & other testing types. Learn how to apply Alternate Flows so as to manage testing success. Discover when to move from black to gray, then to white-box testing. Review Black, White, and Grey-Box testing triggers & justifications.

System Testing

Enjoy a multi-part lab designed to allow the student to define a black, gray, or white-box approach for their own SUT. Particle what you have learned by defining a testing & acceptance plan.

Static Testing Environment (LAB)

Review the definition of software quality as previously defined. Understand what to look for when reviewing source code. Discover how domain-noun naming conventions can help ease testing & maintenance. Review the key elements of quality for overall System acceptance. Discover the difference between Correctness, Completeness, and Consistency.

Testing Concepts: Software Quality Defined

Review the definition of Requirements, Behavior, & Reliability as previously defined. Review and implementation of previously defined requirements.

Enjoy an optional opportunity to install Python & test an implementation of R1000.

Testing Concepts: Requirements, Behavior, & Reliability

Review different SUT Observational States & Operational Plans. Learn how to create "probability paths" to triage testing requirements. Discover how to mathematically prioritize testing activities. Discover how to create operation state & transition maps & simplified state diagrams. Learn how to create an operational profile. Enjoy a step-by-step review of creating a Profile for R2000.

Analytical Concepts

Learn how to chart control-flow within source code. Understand how to create maps of execution. Discover how to justify the elimination of untestable code. Understand what a code "signature" is, and why they are important. Understand how to leverage "signatures" as testing contracts. Understand how to preserve obsolete "code contracts" as code changes.

Functions & Control Flow Graphs (CFGs)

Review a real-world test of an open source Java Project: Discover the default coordinate system use by all modern graphical applications. Understand how changing mathematical slopes required edge-condition testing to drive software development. See how test cases can remain whenever a signature hides implementation details. 

Understand what "Encapsulation" is, as well as how encapsulation relates to testing interfaces. Review how GUI comparisons can be equal over multiple test runs.

Lab Exercise: LineDDA
Case Studies (5000)
4 Lectures 24:47

Review a real-world set of projects that practices, technologies & challenges. Review the “bottom-up” testing strategy difference between "Agile" and "Waterfall" Testing. Discover "Continuous Integration" & how often differs from the classical testing model. Consider the unspoken world of Implicit Regulatory Requirements. Enjoy the re-telling of a testing success that lead to the creation of a flag-ship monitoring, notification, and graphical reporting system.

Case Studies: Introduction & Case Study 01

Enjoy the retelling of how installing virus software into the DMZ cost one company $60 million dollars. Appreciate how the follow-on solution to this testing success allowed for a resalable stand-alone program to be re-sold as a service.

Case Study 02: Life in the DMZ

Enjoy the retelling of how Web Service Testing evolved into a Testing Framework. Discover the need to have both production, as well as testing & developer domains. Understand how SLAs required resold-services to be dynamically feature-manged. Related research concepts include SOAP, REST, and BEST Service Strategies.

Case Study 03: SOA Testing & Service Technologies

Enjoy the retelling of a waterfall - Agile Project approach of migrating HIPPA data to Amazon Web Services (AWS.) Understand the key challenges of certifying the SUT was compatible with implicit Industry Regulations. Review how test cases eventually came to fulfill the need of data security & operational scalability. Understand how using Amazon's Spot Servers to reduce cost associated with testing as scale.

Case Study 04: Load Testing & Lab Exercises
Best Practices (6000)
5 Lectures 37:11

Review the highlights of Collaboration & Work-flow Management Systems. Discover the clear and present trends in the collaboration management systems. Enjoy the name-dropping of some of the most popular collaborative systems in the world today. Enjoy a role-based review of team-collaboration software. Discover why flexible approaches & templates allow for the best-of-breed support.

Introduction & Work Management

Discover the key features to look for when selecting a Source Code or Artifact Management System. Understand why instant messaging is a collaboration feature that should be used cautiously. Discover the challenge of having a public, private, and protected (group) research numbering system. Understand the need for message filtering, as well as content-centric messages and events. Discover the need for any single team member to have separate & distinct role-based logins. Enjoy a role-based review of the most applicable collaboration management features. Understand what lifecycle "events" are, and why they are important.

Source Code Repositories

Review the authors most-desired (& uncommon!) reporting / monitoring services. Discover the need to track the velocity, as well as difficulty & role-based trends and plotting. Understand the need for a “3D” process management view as extracted from simple & daily requirement-number logging. Discover the need to determine if events messages have been received, as well as “de-bounced.” Review the manager's eye view of 2nd & 3rd level reporting & artifacts.

Source Code Repositories (continued)

Review the high-level list of best testing practice recommendations. Understand then need for creating whimsical monikers to refer to previous design & requirement scenarios. Begin to appreciate how the need to understand is more important than the need to pedantically create marginally read project documentation. Reinforce the need for having an informal numbering scheme for captivating the informal requirement gathering process. Review the list of 4 main SME to keep close in our testing plans.

Testing Best Practices

Understand what the term “Spear-point Testing” means. Understand the concept of Parity. Learn how Parity can improve team moral and company prosperity. Discover the “Golden Rule of Friendship.” Understand how applying “Quid Pro Quo Parity” can help improve project morale. Discover the power of impromptu & informal testing practices. Understand how need for “code freezing” does not necessarily prevent content creators from working. Understand the need for conducting protected, as well as personal, note-taking & research.

Special Testing Emphasis
Closing Concepts (7000)
4 Lectures 29:46

Understand the importance of a testing "mission statement." Discover the "consultants view" of testing success. Review the differences, as well as similarities, between pro-active and re-active testing. Understand what a “Testing Prescription" is. Learn how to create a Testing Prescription. Discover how to transition from re-active to pro-active testing plans. Understanding the importance of the "Tool & Technology" SME. Understand the need for creating a "Magic Three" Executive Summary.

Closing Concepts – Testing Perscriptions & Other Winning Strategies

Consider tips on gathering, prioritizing, as well as summarizing multi-SME commentary. Understand the need to document software success whenever formally reporting upon testing failure. Understand the need to cleanly define key Systems, Services, and Software Review key techniques required to build stakeholders & improve project morale.

Testing Prescriptions (continued)

Review the "When" as often involved in the final testing prescription. Discover what to include when creating a single-page - or informal – Testing Prescription. Enjoy the review of key concepts and presentation highlights. Enjoy the beginning of the “Closing Concepts” Session. Consider how generic mindsets & product insights often create generic product results.

Testing Prescription (continued) & Closing Concept Review

Understand What Business Rules are. Understand both by whom, as well as how Business Rules might be created. Discover how to create "When Then" Statements. Appreciate the need to decompose Business Rules into testable technical groups.

Closing Concept Review (continued)
About the Instructor
Randall Nagy
3.8 Average rating
168 Reviews
9,655 Students
14 Courses
Consulting Engineer & Educator

I've over 30 years of experience.

"Mr. Nagy presently earns his keep in the world by providing technology mentoring, training, hands-on consulting / software development, & customized content creation services.

Mr. Nagy has served as both a Principal Trainer & Principal Software Development Engineer. His "Linked In" recommendations testify to a 30+ year track record of excellent personal communication skills, design & analysis abilities, as well as superior consulting & training results.

Though tenured, Mr. Nagy is most often described as being extremely technical, yet very personable & easy to get along with.

The author of over 26 Open-Source Projects, Mr. Nagy's hands-on experience includes topics such as C/C++, Python, SO / SOA, Security, Testing, UML, Java/JEE, .NET (C# and VB.NET), LAMP, Hadoop, jQuery, HTML 5, Android, and more. Maintaining techniques in embedded engineering, Mr. Nagy has experience creating custom training for such expert-level, high-performance technologies as IBM Rhapsody.

Technically speaking, "... from the best Service-Oriented practices to embedded engineering, I maintain an extensive hands-on skill set. From Java and C/ C++, C#, PHP, Python, Ruby, HTML 5 and Web 2.0, I have both designed and implemented architectures from the UI / RIA to the server, well into the RFC Layer. …

I also have over 150 successful training / mentoring, publication, and speaking engagements to my credit. Recent experience includes such state-of-the art technologies as Hadoop, Android, WSO2, and TFS."