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
- Understanding Systems Engineering
- Defining Software Engineering
- Challenges in Software Engineering
- System requirements
- System modeling
Software Engineering Processes
- Understanding Software Development Processes
- Traditional approaches
- Agile methodologies
- Processes for developing High-Integrity Systems
- Standards and certification frameworks
High-Integrity Systems
- Characteristics of High-Integrity Systems
- The importance of Quality Management (QM) culture
- Root causes of errors
- Standards for critical systems
- Reliability engineering
Software Maintenance
Day 2: Planning
Requirements
- User requirements
- Elicitation and analysis of user needs
- System requirements
- Software requirements
- Software specification
- The requirements engineering process
- Tools for requirements management
Software Design
- Conway's Law
- Design patterns
- Textual modeling tools
- Principles of Object-Oriented (OO) design
- Design tools
- Common architectural patterns
Modeling
- Architectural planning
- UML graphical representations
- Non-UML graphical notations
Day 3: Code
Software Construction
- Translating design into code
- Programming best practices
- Code abstraction
- Programming workflow
Configuration Management
- Definition of Configuration Management
- Configuration Management within ISO9000 and CMMI
- CASE tools for planning, design, and QA
- CASE tools for software development
- Version control using SVN
- System Integration
Code for High-Integrity Systems
- Error prevention strategies
- Error detection techniques
- Minimizing the impact of errors
- Common challenges in coding for High-Integrity Systems
Code quality metrics
- Code size metrics
- Code complexity metrics
- Non-code metrics
- Static analysis
Day 4: Verification & Validation
Reviews
- Foundations of VV
- Independent Verification & Validation
- Reviews of design and requirements
- Code inspections
- Software walkthroughs
- Audits
- Other V & V methods
Testing High-Integrity Systems
- Safety documentation
- Test scenarios
- Safety argumentation
- Reviews of High-Integrity Systems
- Reliability prediction
- Formal methods
- Costs of V + V
Automated Testing
- Rationale for testing
- Automated vs. manual testing
- Incremental testing
- Test types
- Testing tools
- Test harnesses
Day 5: Management
Project Management
- Overview of Project Management
- Customer handover
- Standards (PMP, PRINCE2)
- Time management
- Cost management
- Risk management
- Project documentation
Process Evaluation
- Role of process evaluation
- Acting on metrics
- Process metrics
- Standards and frameworks for process evaluation (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.