Download Interent ExplorerDownload Apple SafariDownload OperaDownload FirefoxDownload Google Chrome

Software Engineering Training

Software Engineering Training

Print Friendly, PDF & Email

Software Engineering Training:

Software Engineering Training course with hands-on ( Online, Onsite, and Classroom Live!)

Software engineering is far more than programming. It is a broad discipline that encompasses many important concepts and techniques. This Software Engineering Training, the first of our two courses on software engineering, provides an introduction to the objectives, principles, and methodologies of software engineering.

Software engineering is an engineering branch associated with the development of software products using well-defined scientific principles, methods, and procedures. The outcome of software engineering should be an efficient and reliable software product.

Software engineers are invaluable especially since it’s not unusual for problems to arise when software exceeds timelines, and budgets or has a reduced level of quality. The software engineer ensures that the application is built consistently, correctly, on time and on budget, and within requirements.

Upon the completion of this Software Engineering Training course, you will have an understanding of the entire software lifecycle from conception to development to maintenance.

What’s Included?

  • 3 days of Software Engineering Training with an expert instructor
  • Software Engineering Training Electronic Course Guide
  • Certificate of Completion
  • 100% Satisfaction Guarantee

Resources

Related Courses

Customize It:

  • If you are familiar with some aspects of Software Engineering Training, we can omit or shorten their discussion.
  • We can adjust the emphasis placed on the various topics or build the Software Engineering Training course around the mix of technologies of interest to you (including technologies other than those included in this outline).
  • If your background is nontechnical, we can exclude the more technical topics, include the topics that may be of special interest to you (e.g., as a manager or policy-maker), and present the Software Engineering Training course in a manner understandable to lay audiences.

Audience/Target Group:

  • Software developers
  • Software engineers
  • System engineers
  • Test engineers
  • Project Managers (PM)
  • Testing, Verification & Validation and Configuration PM

Objectives:

After completing this Software Engineering course, attendees will be able to:

  • Describe basic software engineering principles
  • List the motivation behind software requirements, definition, development, and management
  • List requirements elicitation, gathering, and analysis techniques
  • List the competing methods for software requirements and definitions
  • Understand software requirements values and principles
  • List software requirements, development, and management standards and best practices
  • Discuss steps in developing Software Requirements Specifications (SRS)
  • Describe requirements verification principles and methods
  • Discuss software validation principles based on users’ needs, scenarios and ConOps
  • Understand best methods and practices common to software development and management
  • List cost-effective risk management program implementation alternatives
  • Discuss failures and root causes in software requirements, analysis and development projects
  • Describe similarities and differences between software development management plans and project management plans
  • List software development management and cross activities including project management, scope management, time management, cost management, risk management, configuration management, and quality management
  • List steps in developing software performance measurement, metrics, and KPIs

Software Engineering Training – Course Outline:

Principles Behind Software Engineering, Software Requirements, Development and Management

  • Software engineering goals and objectives
  • Role of software requirements, definitions, development, and management
  • Software requirements analysis methods and techniques
  • Software development methods and techniques
  • Software management methods and techniques
  • Capability Maturity Model Integration® (CMMI)
  • ISO 15504 Software Process Improvement Capability Determination (SPICE)
  • Software requirements analysis
  • Software requirements elicitation
  • Software requirements specification
  • Software requirements validation
  • Software requirements management tools
  • Software design and construction
  • Software Project management activities
  • Software Development Plans

Software Development Life Cycle (SDLC)

  • SDLC as a process methodology for software development
  • SDLC models
  • Waterfall, spiral, and agile
  • Factors selecting a model
  • Project’s size, complexity, aims, and objectives
  • Status of requirements
  • Well-understood and articulated upfront requirements
  • Stability of the environment in which the software will function
  • Customer’s needs and availability during the project
  • Project risk tolerance
  • Project Timeline
  • The initial phase and the requirements task
  • User and stakeholders
  • Well-documented, validated, and approved requirements
  • Functional, performance, and other requirements
  • Analysis, design, implementation, testing, integration, operations, and maintenance
  • Waterfall model
  • Agile model
  • The Agile Manifesto
  • Identifying emerging requirements
  • Standards and regulations violation
  • Calculating metrics
  • Writing functional specifications,
  • Writing test cases
  • Software verification and validation
  • Challenges in the requirements engineering process
  • Best Practices and lessons learned

Software Life-Cycle Building Blocks

  • Concept development
  • Operational needs assessment
  • Concept of Operations (ConOps)
  • Defining operational requirements
  • Eliciting, collecting, and developing requirements
  • Analyzing and defining requirements
  • Classifying functional vs. non-functional requirements
  • Uncertainty
  • Prototyping and experimentation
  • Software architecture considerations
  • Software architectural frameworks and models
  • Software design and development
  • Develop technical requirements
  • Develop top-level software design
  • Integration and Interoperability (I&I)
  • Integration testing
  • Interface management
  • Test and evaluation
  • Verification and Validation (V&V)
  • Implementation, O & M, and transition

Identify and Managing Stakeholders

  • What problem is the customer trying to solve?
  • Customers’ needs and wants?
  • Value proposition
  • Objectives and goals
  • Scope of Project
  • Project milestones
  • Managing critical assumptions
  • Identifying risks
  • Issues
  • Constraints
  • Success Criteria

Eliciting, Collecting, Developing, and Managing Software Requirements

  • High-level concept definition
  • Software development scope
  • Operational needs and the concept of operations (CONOPS)
  • Discover, elicit, collect, define, and analyze requirements
  • Meet the users’ needs to perform a specific set of tasks
  • Identifying stakeholders
  • Operational users and other stakeholders
  • Requirements elicitation
  • Elicitation techniques
  • User requirements
  • Analyze, integrate, and transform needs into software requirements
  • Roles and Expectations
  • Elicit business, mission, and operational needs
  • Facilitate stakeholder engagement on and resolution of requirements
  • Requirements and software capabilities
  • Software functional descriptions
  • Non-functional properties of that software
  • Requirements attributes
  • Classifying techniques for functional and non-functional requirements
  • Requirements elicitation to different development methodologies (waterfall, spiral, agile, etc.)

Writing Software Requirements Specifications (SRS)

  • What are Software Requirements Specifications?
  • A well-designed, well-written SRS
  • What Kind of Information Should an SRS Include?
  • Interfaces
  • Functional Capabilities
  • Performance Levels
  • Data Structures/Elements
  • Safety
  • Reliability
  • Security/Privacy
  • Quality
  • Constraints and Limitations
  • Apportioning of requirements
  • Specific requirements
  • User interfaces
  • Software interfaces
  • Functional requirements
  • Performance requirements
  • Design constraints
  • Software system attributes
  • Prioritization and Release Plan
  • Choice of a prioritization method

Agile & Scrum Software Development Applied

  • Agile methods in software requirements and definitions
  • Role of Agile in software development and management
  • Scrum and XP
  • Empirical processes control
  • Sprint cycle and planning
  • Backlogs
  • Sprint reviews and retrospectives
  • Project Objectives and Vision
  • Project management
  • Risk management
  • Requirements
  • Product Backlog
  • Customer Involvement
  • Stakeholders and Roles
  • User Stories
  • Epics, Features, and Tasks
  • Requirements discovery
  • User interviews
  • Focus groups
  • User groups

Software Requirement Management

  • Creation, editing, and updating of requirements
  • Defining and managing requirements, specifications, stories, and other artifacts
  • Requirements management solutions for product development.
  • Advanced requirements, test cases, and life cycle management software.
  • Requirements, test cases, releases, defects, and issues
  • Test cases and test steps that validate the functionality
  • Management and traceability of requirements
  • Design Control Items View Profile
  • Program planning
  • Analyses of alternatives
  • Management metrics
  • Technical maturity
  • Technology planning
  • Cost estimation
  • Agile acquisition strategy
  • Risk management
  • Configuration management tools
  • Software reliability, availability, and maintainability
  • Quality assurance and measurement
  • Cross team activities
  • Process reviews

Whether you are looking for general information or have a specific question, we want to help!

Request More Information

    Time frame:

    0