Request Info

Salutation

First Name

Last Name

Job Title

Department

Mailstop

Company

Address

P.O. Box

City

Province

Postal Code

Country
List

Work Telephone

Ext.

E-mail Address

Information provided will be used to communicate with you about our products.
Privacy Statement

A representative will contact you to follow up your request.

 
Special offer: Free Courses with Training Vouchers.

 

Software Engineering Best Practices:
A Comprehensive Hands-On Introduction


Course 9334 Days

 E-mail E-mail  Print Print  Q&A Q&A  PDF PDF  Facebook Facebook  Twitter Twitter

Quick Enrol

You Will Learn How To

  • Analyze, design, program and test software projects
  • Determine the appropriate software development methodology for your project
  • Elicit requirements and write user stories, use cases and use case diagrams
  • Draft mock-up user interfaces and create functional UI prototypes
  • Simplify complex systems using modern object-oriented analysis and design techniques
  • Ensure software quality with both manual and automated testing techniques

Course Benefits

Modern software development requires the collaborative effort of a diverse team with varied skills. To deliver software on time and on budget, team members need to understand the activities performed at each stage in the development cycle. In this course, you analyze, design, implement and test applications that meet user requirements through a simulated case study. You gain hands-on experience performing each role within a development team using the concepts and skills necessary to engineer a successful program.

Who Should Attend

Business analysts, QA testers, programmers, software designers, technical project managers and those who want an introduction to modern software development.

RealityPlus™

Through an evolving case study, you perform the typical roles and activities of software development team members. Team- and PC-based activities include:
  • Eliciting and estimating requirements
  • Writing user stories and use cases
  • Sketching user interface mock-ups and creating UI prototypes
  • Programming using a modern object oriented language
  • Modeling complex systems using UML class diagrams
  • Implementing Model View Controller (MVC) design pattern
  • Coding classes, inheritance and polymorphic behaviors
  • Representing data relationships and entities
  • Manipulating data with SQL
  • Writing manual and automated tests

Course 933 Content

Introduction

Software development life cycle

  • Identifying software development roles and activities
  • Comparing plan-driven vs. agile methodologies
  • Waterfall
  • V
  • Spiral
  • RUP
  • XP
  • Scrum

Gathering software requirements

  • Eliciting requirements from users
  • Developing software iterations

Analyzing User and System Requirements

Creating use case diagrams and user stories

  • Identifying actors and use cases
  • Representing user-system interactions
  • Describing system functionality from the user perspective

Estimating Requirements

  • Accurately estimating user stories
  • Translating relative estimates into time and money

Detailing use cases

  • Elaborating on complex system behaviors
  • Scripting user and system conversations
  • Documenting nonfunctional and system requirements

Designing User Interfaces (UI)

Refining the use case analysis based on user feedback

  • Analyzing the use case to determine system functional requirements
  • Sketching a UI mock-up

Transferring your UI mock-up into a prototype

  • Leveraging a prototyping tool
  • Laying out screens and controls
  • Setting form and control properties

Object-Oriented Programming

Handling and manipulating program data

  • Declaring variables
  • Defining data types
  • Handling events and event-driven programming

Structuring application behavior

  • Controlling code execution with conditional logic
  • Organizing code inside functions
  • Passing arguments to functions
  • Calling and returning data with functions

Crafting an Object-Oriented Class Hierarchy

Refactoring code to improve design

  • Applying the Single Responsibility Principle (SRP)
  • Dividing functionality into classes
  • Modeling applications with UML class diagrams

Simplifying UI code with the Model View Controller (MVC) pattern

  • Separating UI and application logic
  • Designing controller classes

Improving code maintainability with inheritance

  • Removing code duplication
  • Disentangling complex conditional logic

Modeling Classes and Objects

Constructing classes

  • Defining fields and methods
  • Encapsulating and accessing object data

Maximizing program flexibility with inheritance and polymorphism

  • Creating and realizing base classes
  • Defining virtual and abstract methods
  • Overriding base class behavior

Reusing code at runtime

  • Instantiating classes and executing object behavior
  • Sending messages from objects using events
  • Throwing and catching object exceptions

Saving Data to Storage

Defining data requirements

  • Drawing UML data models
  • Representing data relationships and multiplicities
  • Programming entity classes

Creating and accessing relational databases

  • Manipulating data with SQL insert, update and delete queries
  • Retrieving data with SQL select queries
  • Managing multiple records using collections

Testing and Deploying an Application

  • Creating test plans
  • Scripting user acceptance tests
  • Automating unit tests
  • Testing nonfunctional requirements
  • Delivering a first iteration software project

<< Back to Software Engineering Course List
 

Related Courses


RealityPlusTM is a trademark of Learning Tree International, Inc.
 
Software Engineering Best Practices: A Comprehensive Hands-On Introduction

Training Dates

Live online classroom training. Participate in person or in live, online events (highlighted) via Learning Tree AnyWareTM.

US Dates

Mar 13 - 16Rockville, MD enrol
May 1 - 4Reston, VA enrol
Jul 10 - 13Rockville, MD enrol
Jul 24 - 27New York enrol
Aug 28 - 31Reston, VA enrol
Oct 30 - Nov 2Rockville, MD enrol
Nov 6 - 9New York enrol
Dec 18 - 21Reston, VA enrol

For AnyWare enrolments, please register at least 10 days prior to the start of the course.

More Dates and Locations.

Tuition

$ 3,220Standard Tuition
Tuition with a Savings Plan
$ 2,2952-Course Passport
$ 1,8353-Course Passport
$ 1,7604-Course Passport
$ 2,950Voucher 5-Pack
$ 2,830Government Discount

On-Site &
Custom Training

Bring this or any Learning Tree course to your location or have it customized for your organization.

Average Attendee Evaluation

Evaluations in the last 12 months

5 stars:
69%
4 stars:
22%
3 stars:
8%
2 stars:
1%
1 star:   0%

 
"My Learning Tree Course helped me a lot, and I've already recommended it to my colleagues. Quite often, I don't have time to learn the technology on my own, so the course gave me a lot of information all at once so I could see what's available and what's new in the field. It also helps you lay a groundwork you can build on."

– A.A. Ray
American Express

 
Ten Questions to Ask Your Training Provider - Position Paper
 
RealityPlus™: Increasing Value Through Performance-Based Training

Certification Core Course ISPI logo PMI 23 PDU