Get in Touch

Course Outline

Project Management

  • Distinctions between project management, line management, and maintenance/support
  • Project definition and types of projects
  • General management principles versus project-specific management
  • Management styles
  • Unique characteristics of IT projects
  • Core project processes
  • Iterative, incremental, waterfall, agile, and lean project methodologies
  • Project phases
  • Project roles and responsibilities
  • Project documentation and associated artifacts
  • Soft factors and personnel management
  • Project standards: PRINCE2, PMBOK, PMI, IPMA, and others

Business Analysis and Requirements Engineering Fundamentals

  • Defining business objectives
  • Business analysis, business process management, and process improvement
  • The boundary between business and system analysis
  • System stakeholders, users, context, and boundaries
  • The necessity of requirements
  • Definition of requirements engineering
  • The boundary between requirements engineering and architectural design
  • Where requirements engineering is often overlooked
  • Requirements engineering in iterative, lean, and agile development, as well as continuous integration (FDD, DDD, BDD, TDD)
  • Core requirements engineering process, roles, and artifacts
  • Standards and certifications: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA

Architecture and Development Fundamentals

  • Programming languages: structural and object-oriented paradigms
  • Object-oriented development: historical context and future trends
  • Modularity, portability, maintainability, and scalability of architectures
  • Definition and types of software architectures
  • Enterprise architecture and system architecture
  • Programming styles
  • Programming environments
  • Common programming mistakes and prevention strategies
  • Modeling architecture and components
  • SOA, Web Services, and microservices
  • Automatic build processes and continuous integration
  • The extent of architecture design in projects
  • Extreme programming, TDD, and refactoring

Quality Assurance and Testing Fundamentals

  • Product quality: definitions, ISO 25010, FURPS, and other models
  • Product quality, user experience, Kano Model, customer experience management, and integral quality
  • User-centered design, personas, and strategies for personalized quality
  • The concept of 'just-enough' quality
  • Differences between Quality Assurance and Quality Control
  • Risk strategies in quality control
  • Components of quality assurance: requirements, process control, configuration and change management, verification, validation, testing, static testing, and static analysis
  • Risk-based quality assurance
  • Risk-based testing
  • Risk-driven development
  • Boehm’s curve in quality assurance and testing
  • The four testing schools: identifying the best fit for your needs

Process Types, Maturity and Process Improvement

  • Evolution of IT processes: from Alan Turing and Big Blue to lean startups
  • Processes and process-oriented organizations
  • History of processes in crafts and industries
  • Process modeling: UML, BPMN, and more
  • Process management, optimization, re-engineering, and management systems
  • Innovative process approaches: Deming, Juran, TPS, Kaizen
  • Is quality free? Insights from Philip Crosby
  • History and need for maturity improvement: CMMI, SPICE, and other maturity scales
  • Special maturity types: TMM, TPI (for testing), Requirements Engineering Maturity (Gorschek)
  • Process maturity versus product maturity: correlation and causality
  • Process maturity versus business success: correlation and causality
  • A forgotten lesson: Automated Defect Prevention and the next leap in productivity
  • Various attempts: TQM, Six Sigma, agile retrospectives, process frameworks

Requirements Elicitation, Negotiation, Consolidation and Management

  • Finding requirements: what, when, and by whom
  • Stakeholder classification
  • Overlooked stakeholders
  • Defining system context and identifying requirements sources
  • Elicitation methods and techniques
  • Prototyping, personas, and requirements elicitation through testing (exploratory and otherwise)
  • Marketing and requirements elicitation: MDRA (Market-Driven Requirements Engineering)
  • Prioritizing requirements: MoSCoW, Karl Wiegers, and other techniques (including agile MMF)
  • Refining requirements: agile 'specification by example'
  • Requirements negotiation: types of conflicts and resolution methods
  • Resolving internal incongruence between requirement types (e.g., security versus ease of use)
  • Requirements traceability: why and how
  • Changes in requirements status
  • Requirements CCM, versioning, and baselines
  • Product view versus project view on requirements
  • Product management and requirements management in projects

Requirements Analysis, Modelling, Specification, Verification and Validation

  • Analysis as the iterative thinking process between elicitation and specification
  • The iterative nature of the requirements process, even in sequential projects
  • Risks and benefits of describing requirements in natural language
  • Benefits and costs of requirements modeling
  • Rules for using natural language in requirements specification
  • Defining and managing a requirements glossary
  • UML, BPMN, and other formal/semi-formal modeling notations for requirements
  • Using document and sentence templates for requirements description
  • Verification of requirements: goals, levels, and methods
  • Validation through prototyping, reviews, inspections, and testing
  • Requirements validation and system validation

Test Design, Test Execution and Exploratory Testing

  • Test design: optimizing time and resources after risk-based testing
  • Test design 'from infinity to here': understanding that exhaustive testing is impossible
  • Test cases and test scenarios
  • Test design across various levels (from unit to system testing)
  • Test design for static and dynamic testing
  • Business-oriented and technique-oriented test design ('black-box' and 'white-box')
  • Negative testing (attempting to break the system) and acceptance testing (supporting developers)
  • Achieving test coverage through various measures
  • Experience-based test design
  • Designing test cases from requirements and system models
  • Test design heuristics and exploratory testing
  • Timing for test case design: traditional versus exploratory approaches
  • Detail level in test case descriptions
  • Psychological aspects of test execution
  • Logging and reporting in test execution
  • Designing tests for 'non-functional' testing
  • Automatic test design and Model-Based Testing (MBT)

Test Organization, Management and Automation

  • Test levels (or phases)
  • Who performs testing and when: various solutions
  • Test environments: cost, administration, access, and responsibility
  • Simulators, emulators, and virtual test environments
  • Testing in agile scrum
  • Test team organization and roles
  • Test processes
  • Test automation: what can be automated?
  • Approaches and tools for test execution automation

Requirements

None.

 63 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories