Software Engineering Training Course

Course

In City Of London

Price on request

Description

  • Type

    Course

  • Location

    City of london

Software Engineering starts where programming stops. In this course you will learn a solid foundation in Software Engineering. It builds a bridge from programming to solid engineering practices. The course gives you an overview of basic concepts and vocabulary typically used in the field. During the course, you will learn to use many techniques to plan, implement and validate software projects and to evaluate and improve development processes.
Audience:
This course is intended for software developers with various backgrounds who know at least one programming language.

Facilities

Location

Start date

City Of London (London)
See map
Token House, 11-12 Tokenhouse Yard, EC2R 7AS

Start date

On request

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Subjects

  • Programming
  • Engineering
  • Systems
  • Planning
  • Project
  • Design
  • Testing
  • Software Engineering
  • Evaluation

Course programme

Day 1: Process Introduction

  • What is Systems Engineering?
  • What is Software Engineering?
  • Why is Software Engineering difficult?
  • System requirements
  • System modeling
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 QM culture
  • Reasons for errors
  • Critical systems standard
  • Reliability engineering
Software Maintenance Day 2: Planning Requirements
  • User requirements
  • Elicitation/analysis of user requirements
  • System requirements
  • Software requirements
  • Specification of software
  • Requirements process
  • Tools to manage requirements
Software Design
  • Conways Law
  • Design patterns
  • Textual modeling tools
  • Principles of OO design
  • Design tools
  • Common architectures
Modeling
  • Planning an architecture
  • UML graphical representations
  • Non-UML graphical representations
Day 3: Code Software Construction
  • How to take a design into code
  • Programming best practices
  • Abstraction of code
  • Programming workflow
Configuration Management
  • What is Configuration Management?
  • Configuration Management in ISO9000 and CMMI
  • CASE tools for planning, design & QA
  • CASE tools for writing software
  • Version control with SVN
  • System Integration
Code for High-Integrity Systems
  • Preventing errors
  • Catching errors
  • Reducing the impact of errors
  • Typical problems 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 VV
  • Independent Verification & Validation
  • Design and requirement reviews
  • Code inspections
  • Software Walkthroughs
  • Audits
  • Other V & V methods
Testing High-Integrity Systems
  • Documents regarding safety
  • Scenarios
  • Argumentation for safety
  • Reviews of High-Integrity Systems
  • Predicting reliability
  • Formal methods
  • Costs of V + V
Automated Testing
  • Why test?
  • Automatic vs manual tests
  • 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 function of process evaluation
  • Acting on the metric
  • Process metrics
  • Process evaluation standards & frameworks (CMMI, ISO 9001, TickIt+)
  • Process evaluation meetings
Summary and Conclusions

Software Engineering Training Course

Price on request