Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Day 1: Process
Introduction
- What is Systems Engineering?
- What is Software Engineering?
- Why is Software Engineering challenging?
- System requirements
- System modelling
Software Engineering Processes
- What is a Software Development Process?
- Traditional Processes
- Agile Processes
- Processes for building High-Integrity Systems
- Standards & certification systems
High-Integrity Systems
- What are High-Integrity Systems?
- The role of Quality Management (QM) culture
- Root causes of errors
- Critical systems standard
- Reliability engineering
Software Maintenance
Day 2: Planning
Requirements
- User requirements
- Elicitation and analysis of user requirements
- System requirements
- Software requirements
- Software specification
- The requirements process
- Tools for managing requirements
Software Design
- Conway's Law
- Design patterns
- Textual modelling tools
- Principles of Object-Oriented (OO) design
- Design tools
- Common architectures
Modelling
- Planning an architecture
- UML graphical representations
- Non-UML graphical representations
Day 3: Code
Software Construction
- Translating design into code
- Programming best practices
- Code abstraction
- Programming workflow
Configuration Management
- What is Configuration Management?
- Configuration Management in ISO 9000 and CMMI
- CASE tools for planning, design and QA
- CASE tools for software development
- Version control with SVN
- System Integration
Code for High-Integrity Systems
- Preventing errors
- Detecting errors
- Reducing the impact of errors
- Common challenges with code for High-Integrity Systems
Code quality metrics
- Code size metrics
- Code complexity metrics
- Non-code metrics
- Static analysis
Day 4: Verification & Validation
Reviews
- Fundamentals of V&V
- Independent Verification and Validation
- Design and requirements reviews
- Code inspections
- Software walkthroughs
- Audits
- Other V&V methods
Testing High-Integrity Systems
- Safety documentation
- Scenarios
- Argumentation for safety
- Reviews of High-Integrity Systems
- Predicting reliability
- Formal methods
- Costs of V&V
Automated Testing
- Why test?
- Automated versus manual testing
- Incremental testing
- Types of tests
- Testing tools
- Test harnesses
Day 5: Management
Project Management
- What is Project Management?
- Customer handover
- Standards (PMP, PRINCE2)
- Time management
- Cost management
- Risk management
- Project documentation
Process Evaluation
- The role of process evaluation
- Acting on metrics
- Process metrics
- Process evaluation standards and frameworks (CMMI, ISO 9001, TickIT+)
- Process evaluation meetings
Summary and Conclusions
35 Hours
Testimonials (2)
Everything was built up from a basic level while progressing quick enough to prevent anyone getting bored.
Nathan Roberts
Course - Software Engineering
The level of inter activeness and pace meant that it was never boring.