Price: $3,999.00

Course Number: 905
Length: 4 Days
Print Friendly, PDF & Email

Agile Software Development Training

Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams.

Analysts contend that the ultimate value in Agile software development is that it enables teams to deliver value faster, with greater quality and predictability, and greater aptitude to respond to change.

Additionally, Agile has been proven to save organizations money. Agile projects contain 93% fewer defects, take less time to complete and reduce waste.

Agile software development focuses on keeping the process lean and creating minimum viable products (MVPs) that go through a number of iterations before anything is final.

Feedback is gathered and implemented continually and in all, it is a much more dynamic process where everyone is working together toward one goal.

Agile software development also involves a specific way of thinking and acting. Agile is all about short cycles, iterative and incremental delivery, failing fast, getting feedback, delivering business value to customers early and about people, collaboration and interaction.

Agile methodology is an iterative, time-boxed, people-oriented and result-focused approach to software delivery that builds software incrementally from the start of the project, instead of delivering it all at once near the end.

Agile methodology is aligned with the values and principles described in the Agile Manifesto for Software Development. According to this principle, requirements, plans, and results are evaluated continuously; teams have a natural mechanism for responding to change quickly.

Agile methods began appearing in the early 1990s as the software industry exploded. Agile software development gained immediate traction because traditional software development approaches appeared to many software developers to be too rigid and resulting in over-budgeting and delays.

Agile Software Development Training Course by Tonex

This course emphasizes the rapid realization of system value through disciplined, iterative and incremental software development techniques, and elimination of wasteful practices.

Attendees will learn the full spectrum of Agile Methods, including Scrum, Extreme Programming, Lean, Crystal Methods, Dynamic Systems Development Method, and Feature-driven Development. These methods promote teamwork, rich and concise communication, and the frequent delivery of running tested systems containing the highest priority customer features.

Agile methods are contrasted with common workplace practices and traditional methods such as CMMI, PMI/PMBOK, and RUP. Examples of agile adoption in industry are covered. Additional topics in the course include team dynamics, collaboration, software quality, and metrics for reporting progress.

We discuss challenges include smooth iteration and release planning, collaboration amongst cross-functional teams and reliable quality assurance for multi-layered and composite applications. We also address the most effective way to manage dynamic requirements and tests.

Global principles are presented with detailed practices that can be easily implemented by attendees, providing a comprehensive understanding of the important elements of agile software development methods.

 

Agile software development

Who Should Attend

Software architects, system engineers, enterprise architect, programmers, technical/project managers, analysts who want to learn to develop software using proven Agile programming principles and practices

Objectives

Upon completion of this course, the participants are able to:·

  • Learn about software system engineering requirements analysis and design
  • List Agile development and Agile testing processes
  • Explore Agile software development methods and approaches
  • Explore transitioning mechanisms from traditional waterfall software approaches to iterative Agile methodologies
  • Utilize integrated application lifecycle management software and best practices
  • Achieve better visibility, control and responsiveness across the lifecycle, from requirements management to delivery
  • Utilize tools and techniques essential for development of complex software systems using agile development processes
  • Explore applied practical problems to aid understanding software systems engineering reliability and performance issues
  • Produce designs and cost estimates of complex products
  • Work with customers to better translate user needs into outstanding delivered products
  • Define optimal verification and validation programs tailored to the organization and its customers

Outline

Agile System and Software Definitions and Concepts

  • Building Software using Systems Engineering Principles
  • Agile System Development Life Cycle
  • Systems Engineering Team Building
  • The Systems Engineering Process
  • Requirements
  • Functional analysis process
  • System Analysis and Design Process
  • Conceptual System Design and Development
  • Preliminary System Design and Development
  • Detail Design and Development
  • Developing a Systems Architecture
  • Technical Reviews and Audits
  • Role of Configuration Management
  • Verification and Validation Testing
  • Risk Management Methodology
  • System Cost and Scheduling
  • System Production
  • Systems Engineering Management and Planning
  • Agile Project Management
  • Identification and Resolution of Impediments

Agile Software Development

  • Agile Software Development
  • Quality, reduced time to market, & cost savings
  • High-efficiency model for building applications
  • Agile development methods
  • Scrum and Extreme Programming (XP)
  • Transitioning from Waterfall to Agile
  • Align Agile practices with PMI’s
  • Align Agile with the SEI’s CMMI®
  • Plan your Agile Transition Strategy

Introduction to Agile System Software Development

  • Agile development concepts and definitions
  • Application of agile development to systems engineering
  • What is agile system software engineering?
  • Key Characteristics of Agile
  • Requirements and practices
  • Agile Requirements
  • Agile Best Practices
  • Agile Contracts
  • Agile Foundation
  • Agile Iterations
  • Agile Meeting & Team Facilitation
  • Agile Metrics & Reporting
  • Agile Organizational Principles
  • Agile Roles & Responsibilities
  • Capability Maturity Model Integration (CMMI®)
  • Focused on Customer Value

Agility and Software Engineering Processes

  • Three Perspectives on Software Engineering
  • The Agile Manifesto
  • Individuals and Interactions over Processes and Tools
  • Customer Collaboration over Contract Negotiation
  • Responding to Change over Following a Plan
  • Application of Agile Software Development
  • Customers and Users
  • Driving the Requirements
  • Customer Role and Collaboration
  • Time-Related Problems in Software Projects
  • Why Are Measures Needed?
  • The Agile Approach to Quality Assurance
  • Abstraction Levels in Agile Software Development
  • Software Intangibility and Process Transparency
  • Reflective Practitioner Perspective
  • A Conceptual Framework for Change Introduction
  • Transition to an Agile Software Development Environment
  • Leadership Styles
  • Delivery and Cyclicality

Application of Agile System Software Concepts

  • Understanding problem statements
  • Storing and managing frat information
  • Translating customer's needs
  • Complete top-level descriptions
  • Operational scenarios
  • Decomposing descriptions to the next level
  • Requirements allocation
  • Decomposing systems description another level
  • Control of the process

The Agile Software Approaches

  • Need for the software approach
  • Basic steps
  • Examples of the software approach
  • Applying the systems approach to engineering of complex systems
  • Agile Programming
  • Agile Project Simulation
  • Agile methodologies
  • XP and Scrum
  • Agile development principles
  • Test-driven development
  • Refactoring existing code
  • Maintenance and improved design
  • Simplifying complex coding problems
  • Design patterns
  • Planning an Agile Release
  • Establishing the Agile project
  • Stakeholder Analysis
  • User Requirements
  • Eliciting application requirements
  • Capturing user stories
  • The Agile coding processes
  • Verification and Validation
  • Integrating unit testing
  • Cleaning code with refactoring
  • Integrating Object-Oriented Programming Principles
  • Single Responsibility Principle (SRP)
  • Open/Closed Principle (OCP)
  • Dependency Inversion Principle (DIP)
  • Liskov Substitution Principle (LSP)
  • Integrating design patterns into the Agile process
  • Managing product delivery
  • Tools for tracking and monitoring a project
  • Managing Change

System Analysis and Design Process

  • Systems Engineering Requirements Specifications
  • Understanding and Defining User Requirements
  • Specifications
  • Performing a Function Process
  • Developing and Selecting a Systems Architecture
  • Software and Hardware Architecture
  • Defining, Controlling, and Managing Interfaces
  • Performing System Design and Development
  • Defining and Managing Performance Parameters

Defining and Managing Reliability Engineering

  • Alternative Models
  • Economic Evaluation
  • Optimization in Design and Operations
  • Queuing Theory and Analysis
  • Control Concepts and Techniques
  • Reliability and Maintainability
  • Usability (Human Factors)
  • Supportability (Serviceability)
  • Producibility and Disposability
  • Design for Affordability (Life-Cycle Cost)
  • Overview of tools used in Agile Engineering
  • Definition of problems and alternative solutions
  • Analysis of functions and systems
  • Requirement development
  • Generation of alternatives
  • Description and analysis of alternatives
  • Documentation and communication
  • Decision making
  • Specifications

Agile Software Development Training

 

 

 

 

 

 

Request More Information

Please enter contact information followed by your questions, comments and/or request(s):
  • Please complete the following form and a Tonex Training Specialist will contact you as soon as is possible.

    * Indicates required fields

  • This field is for validation purposes and should be left unchanged.

Request More Information

  • Please complete the following form and a Tonex Training Specialist will contact you as soon as is possible.

    * Indicates required fields

  • This field is for validation purposes and should be left unchanged.