Software Engineering Training
Software engineering knowledge is required by every individual involved in software development. It is a systematic approach to the analysis, design, implementation, test, maintenance of software. Every software or websites or web applications developed must follow the software engineering principles. A software developed without following the principles of software engineering will lead to a failure.
Software engineering is the branch of engineering that deals with the study and application of design, development and maintenance of software systems in order to produce software that works reliably and efficiently. It deals with all aspects of software production and development covering the program modeling and analysis, software design, validation, quality assurance, management and maintenance; and effective practices involving these process. The purpose is to build software that satisfies the customer needs and to build software with budget and deadline defined as well as to accommodate change in the requirements.
It is relatively young discipline however, with the growth of software industry and increase in use of software, the industry is requiring more and more sophisticated approach and methods in software development and management.
This course will provide students students the chance to work with scenarios that involve software architecture and engineering scenarios.
We will first provide fundamentals in software development and then identify the important phases of any software project. After grasping the theoretical and practical knowledge of fundamentals we will then provide detailed knowledge of each phase in software development cycle and tools required in each stage.
- Identify the types of software and features of good software
- Develop system approach to software development.
- Identify and understand software development process and about various models of software development process.
- Use tools and techniques for process modeling.
- Identify and understand various methodologies used to track project progress.
- Learn to schedule estimation models and develop risk management models.
- Develop the models and tools for capturing requirement
- Understand about designing the system; conceptual and technical design, tools, techniques and types of design and documenting design.
- Writing programs in standard procedures
- Perform testing, quality assurance techniques to software
- Access software reliability, maintainability
- Learn and develop about various tools and techniques for delivering the systems like training and training aids.
- Perform evaluation of product and processes
- Be able to improve prediction by using inspections and reuse methods.
Who can join Software Engineering Training?
This course has been especially designed for those who intend to pursue career in the testing, installation and maintenance of computer software and modules and systems.
The volume of knowledge gained by the intensive trainings in hardware, software, troubleshooting equipment and other computer tools will enable students to work in various roles in such sectors requiring software professionals such as software experts, computer system expert, testing experts etc.
This course will also be beneficial to:
- Software developers
- Software engineering intending to upgrade their knowledge
- Project managers of software related projects
- Quality assurance professionals
- Software testing and maintenance professionals
This is an advance level training course so it requires fundamental knowledge of software and system operations. It is recommended to have basic programming knowledge and theoretical knowledge of project management.
Module 1: Software Engineering Syllabus
- Software development life cycle
- Requirement analysis
- Software development life cycle models
- Waterfall model
- Spiral model
- Prototyping model
- Rapid Application Development model
- Iterative model
- Software requirement specification
- Software design tools
- Documentation and usermanual
- Quality assurance and testing
- Designing test cases
- Unit testing
- Integration testing
- System testing
- User acceptance testing
- white box vs black box testing
- software project management
- Feasibility study
- Creating milestones and deliverables
- Resource planning
After the completion of this course students can develop software/web applications following the software engineering practices.