Description

Software quality has never been as necessary as it is today. Enroll in this online advanced master’s degree and access the most comprehensive content on computer engineering"

##IMAGE##

Computer engineering has grown exponentially in recent years due to the evolution of technology and digital tools, especially in everything related to the web and its usability. That is why today the development of software for various functions is the order of the day and the catalog of programs is growing. However, this quantity is not always synonymous of quality, so that frequently there are applications that do not fulfill their purpose, that return errors or that seriously violate the security of the companies. For this reason, computer engineers specialized in this area are increasingly in demand.

That is why TECH has decided to design this advanced master’s degree in Software Engineering and Quality, a multidisciplinary program designed by experts in the area and designed in such a way that the graduate will find in it all the necessary tools to update their knowledge in a comprehensive manner and based on the latest developments in the sector. It is an educational program that combines theory and practice in 20 modules in which software engineering and the quality of information systems projects are studied in depth.

Throughout the 24 months in which this 100% online program is taught, the engineer will have access to the best syllabus that will allow him to improve his skills in the standardization of databases and in the decoupling between components of a system, as well as to expand his knowledge in scalable architectures, quality metrics and collaborative work.

In addition, you will have access to a modern and cutting-edge virtual classroom where you will find all the tools that will allow you to get the most out of this certificate, including hundreds of hours of additional material in different formats. All this content can be downloaded to any device with an internet connection, ensuring that you can consult it whenever you want and need it.

You will have access to HTML exercises and their answers, so you will be able to put into practice your knowledge and the theory developed throughout the programming"

This advanced master’s degree in Software Engineering and Quality contains the most complete and up-to-date educational program on the market. Its most notable features are:

  • Case studies presented by engineering experts
  • The graphic, schematic, and practical contents with which they are created, provide scientific and practical information on the disciplines that are essential for professional practice
  • Practical exercises where self-assessment can be used to improve learning
  • Special emphasis on innovative methodologies in Software design and construction
  • Theoretical lessons, questions to the expert, debate forums on controversial topics, and individual reflection assignments
  • Content that is accessible from any fixed or portable device with an Internet connection

Thanks to the dedicated DevOps module you will have the most comprehensive and in-depth knowledge to speed up the software development lifecycle and ensure continuous high-quality delivery"

It includes, in its teaching staff, professionals belonging to the field of engineering who contribute their work experience to this program, as well as renowned specialists from prestigious universities and reference societies.

The multimedia content, developed with the latest educational technology, will provide the professional with situated and contextual learning, i.e., a simulated environment that will provide an immersive learning experience designed to prepare for real-life situations.

This program is designed around Problem-Based Learning, whereby the student must try to solve the different professional practice situations that arise throughout the program. For this purpose, the professional will be assisted by an innovative interactive video system created by renowned and experienced experts.

Thanks to this certificate you will be able to start your own software development project and apply the most sophisticated and innovative unit stress and endurance tests to check its quality”

##IMAGE##

Delve into Test-Driven Development and gain a broad and specialized view of test-driven software design and development”

Objectives

Computer engineering is an industry that is constantly changing. This is why TECH has developed this certification, not only with the objective of providing the specialist with a broad and up-to-date knowledge of their profession, but also to provide them with a detailed knowledge of the tools that will allow them to keep up to date after the completion of this advanced master’s degree. In addition, the best theoretical, practical and audiovisual material will be available to make this program a dynamic and highly empowering academic experience.

##IMAGE##

If your goal is to become a specialist in Software Engineering and Quality, this advanced master’s degree will provide you with everything you need to exceed your professional expectations with a total guarantee of success"

General Objectives

  • Develop the criteria, tasks and advanced methodologies to understand the relevance of Quality oriented work
  • Analyze the key factors in the quality of a software project
  • Develop the relevant regulatory aspects
  • Implement DevOps and systems processes for Quality Assurance
  • Reduce the technical debt of projects with a Quality approach rather than an approach based on economics and short deadlines
  • Provide the student with the knowledge to be able to measure and quantify the Quality of a software project
  • Defend the economic proposals of projects on the basis of the Quality approach
  • Acquire new knowledge in Software and Computer Systems Engineering
  • Acquire new skills in terms of new technologies and the latest software developments
  • Process the data generated in Software and Computer Systems Engineering activities

Specific Objectives

Module 1. Software Quality TRL Development Levels

  • Develop in a clear and concise way the elements that encompass Software quality
  • Apply the models and standards according to system, product and software process
  • Delve into the ISO Quality standards applied both in general and in specific parts of the system
  • Apply the standards according to the scope of the environment (local, national and international)
  • Examine the TRL maturity levels and adapt them to the different parts of the software project to be dealt with
  • Acquire the capacity of abstraction to apply one or several criteria of elements and levels of Software Quality
  • Distinguish the cases of application of the standards and maturity levels in a real case simulated project

Module 2. Software Project Development. Functional and technical documentation

  • Determine the influence of project management on quality
  • Develop the different phases of a project
  • Differentiate the quality concepts inherent to functional and technical documentation
  • Analyze the requirements gathering phase, the analysis phase, team management and the construction phase
  • Establish the different Software project management methodologies
  • Generate criteria to decide which is the most appropriate methodology according to the type of project

Module 3. Software Testing. Test automation

  • Establish the differences between product quality, process quality and quality of use
  • Know the ISO/IEC 15504 standard
  • Determine the details of CMMI
  • Learn the keys to continuous integration, repositories and the repercussions they have on a software development team
  • Establish the relevance of incorporating repositories for software projects. Learn how to create them with TFS
  • Analyze the different types of fundamental tests, such as load, unit, stress and endurance tests
  • Assimilate the importance of software scalability in information systems design and development

Module 4. Software Project Management Methodologies. Waterfall Methodology vs Agile Methodology

  • Determine what the Waterfall Methodology consists on
  • Delve into the SCRUM Methodology
  • Establish the differences between Waterfall and SCRUM
  • Clarify the differences between Waterfall and SCRUM methodologies and how the customer sees it
  • Browse the Kanban Panel
  • Approach a same project with WaterFall and SCRUM
  • Setting up a hybrid project

Module 5. TDD (Test-Driven Development). Test-Driven Software Design

  • Know the practical application of TDD and its possibilities in the future testing of a software project
  • Complete proposed real simulation cases, as a continuous learning of this TDD concept
  • Analyze, in the simulation cases, to what extent the tests can succeed or fail, from a constructive point of view
  • Determine the alternatives to TDD, making a comparative analysis between them

Module 6. DevOps. Software Quality Management

  • Analyze the shortcomings of a traditional process
  • Assess the possible solutions and choose the most suitable one
  • Understanding business needs and their impact on implementation
  • Assess the costs of the improvements to implement
  • Develop an evolvable software lifecycle, adapted to real need
  • Anticipate possible errors and avoid them from the design process
  • Justify the use of different implementation models

Module 7. DevOps and Continuous Integration. Advanced practical solutions in software development

  • Identify the stages of the software development and delivery cycle adapted to particular cases
  • Design a software delivery process using continuous integration
  • Build and implement continuous integration and deployment based on your previous design
  • Establish automatic quality checkpoints on each Software delivery
  • Maintain an automatic and robust Software delivery process
  • Adapt future needs to the continuous integration and deployment process
  • Analyze and anticipate security vulnerabilities during and after the software delivery process

Module 8. Database (DB) Design. Standardization and performance. Software Quality

  • Assess the use of the Entity-Relationship Model for the preliminary design of a database
  • Apply an entity, attribute, key, etc., for the best data integrity
  • Assess the dependencies, forms and rules of database normalization
  • Specialize in the operation of an OLAP data warehouse system, developing and using both fact and dimension tables
  • Determine the key points for database performance
  • Complete proposed real-world simulation cases as ongoing learning of database design, normalization, and performance
  • Establish in the simulation cases, the options to resolve in the creation of the database from a constructive point of view

Module 9. Design of Scalable Architectures. The architecture in the software life cycle

  • Develop the concept of Software architecture and its characteristics
  • Determine the different types of scalability in Software architecture
  • Analyze the different levels that can occur in a web scalability
  • Acquire a specialized knowledge of the Software life cycle concept, stages and models
  • Determine the impact of an architecture on the Software life cycle, with its advantages, limitations and support tools
  • Complete proposed real simulation cases, as a continuous learning of the architecture and life cycle of the Software
  • Evaluate, in the simulation cases, to what extent it may be feasible or unnecessary to use the Software

Module 10. ISO/IEC 9126 Quality Criteria. Software Quality Metrics

  • Develop the concept of quality criteria and relevant aspects
  • Examine the ISO/IEC 9126 standard, main aspects and indicators
  • Analyze the different metrics for a Software project to meet the agreed assessments
  • Examine the internal and external attributes to be addressed in the quality of a software project
  • Distinguish the metrics according to the type of programming (structured, object oriented, layered, etc.)
  • Complete real simulation cases, as a continuous learning of quality measurement
  • See in the simulation cases to what extent it is feasible or unnecessary, i.e. from a constructive point of view of the authors

Module 11. Methodologies, Development and Quality in Software Engineering

  • Know the basics of Software Engineering, as well as the set of rules or principles of ethics and professional responsibility during and after development
  • Understand the software development process under the different programming models and the object-oriented programming paradigm
  • Understand the different types of application modeling and design patterns in the Unified Modeling Language (UML)
  • Acquire the knowledge for the correct application of agile methodologies in Software development such as SCRUM, among others
  • Know the Lean development methodology to identify the activities that do not add value to the process, in order to obtain a higher quality software

Module 12. Software Project Management

  • Know the fundamental concepts of project management and the project management life cycle
  • Understand the different stages of project management such as initiation, planning, stakeholder management and scoping
  • Learning schedule development for time management, budget development and risk response
  • Understand how quality management works in projects, including planning, assurance, control, statistical concepts and available tools
  • Understand the functioning of the processes of procurement, execution, monitoring, control and closure of a project
  • Acquire the essential knowledge related to the professional responsibility derived from project management

Module 13. Software Development Platforms

  • Understand the different software development platforms
  • Acquire the necessary knowledge for the development of applications and graphical interfaces in Java and .NET languages
  • Know the techniques required for the debugging and testing of the developments made
  • Learn Android mobile application development environments and debugging and publishing processes
  • Understand cloud-based application development and determine the correct procedures for its implementation
  • Master the basic concepts, services and tools of the Google Clouds platform

Module 14. Web-Client Computing

  • Understand the process of creating web content through HTML markup language
  • Understand the procedures and techniques to improve the appearance of a document written in HTML
  • Know the evolution of the JavaScript language
  • Acquire the necessary knowledge for the development of web client-side applications
  • Develop applications with complex structures, by using the different procedures, functions and objects that integrate JavaScript
  • Learn how to use the DOM programming interface for HTML and XML documents to modify their structure, style and content
  • Understand the use of event-based flow and Listeners, as well as the use of modern Toolkit and alignment systems
  • Know the concept of web usability, its advantages, principles, methods and techniques to make a web site usable by the user
  • Establish knowledge of web accessibility, its importance in current digital platforms, methodologies, norms, standards and determine compliance

Module 15. Web Server Computing

  • Understand the basic, intermediate and advanced concepts of the PHP language for the implementation of server-side applications
  • Acquire the necessary knowledge for data modeling, relationships, keys and normalizations
  • Understand the construction of the logical data model, the specification of tables, columns, keys and dependencies, as well as the knowledge necessary for the physical handling of data, file types, access modes and file organization
  • Learn how to integrate applications developed in PHP with MariaDB and MySQL databases
  • Master the process of customer interactions, using forms, Cookies and session management
  • Understand the Model View Controller View (MVC) Software architecture that separates an application's data, user interface, and control logic into three distinct components
  • Acquire the skills for the use of web services using XML, SOA and REST

Module 16. Safety Management

  • Know the information security process, its implications on confidentiality, integrity, availability and economic costs
  • Learn the use of good security practices in the management of information technology services
  • Acquire the knowledge for the correct certification of security processes
  • Understand authentication mechanisms and methods for access control, as well as the access audit process
  • Understand security management programs, risk management and security policy design
  • Learn about business continuity plans, their phases and maintenance process
  • Know the procedures for the correct protection of the company through DMZ networks, the use of intrusion detection systems and other methodologies

Module 17. Software Security

  • Understand Software security issues, vulnerabilities and how they are classified
  • Know the design principles, methodologies and standards in software security
  • Understand the application of security in the different phases of the software life cycle
  • Acquire the necessary knowledge for secure coding of the life cycle and its validation techniques
  • Understand the methodologies and processes to guarantee security during the development and delivery of cloud services
  • Understand the basics of cryptology and the different encryption techniques currently available

Module 18. Web Server Administration

  • Know the concept, operation, architecture, resources and contents of a web server
  • Understand the functioning, structure and HTTP protocol handling
  • Understand the concept of distributed multi-server architectures
  • Master the functioning of an application server and another proxy
  • Analyze the different web servers that are trending in today's market
  • Understand the process of usage statistics and load balancing on web servers
  • Acquire the necessary knowledge for the installation, administration, configuration and security of the Microsoft Internet Information Services (IIS) web server as well as the free Apache web server

Module 19. Security Audit

  • Acquire the knowledge required for the correct execution of the audit process and internal computer control
  • Understand the processes to carry out for the security audit in systems and networks
  • Understand the different support tools, methodologies and subsequent analysis during internet and mobile device security auditing
  • Learn the properties and influencing factors that condition business risks and determine the correct implementation of appropriate risk management
  • Know the risk mitigation measures, as well as the methodologies for the implementation of an Information Security Management System and the norms and standards to be used
  • Understand the procedures for conducting the security audit, its traceability and presentation of results

Module 20. Online Application Security

  • Acquire the knowledge required to evaluate and detect the vulnerabilities of online applications
  • Understand the security policies and standards to be applied to online applications
  • Know the procedures to use during the development of web applications and their subsequent evaluation through analysis and security tests
  • Learn the security measures for the deployment and production of web applications
  • Understand the concepts, functions and technologies to be applied in the security of web services, as well as security tests and protective measures
  • Assimilate the procedures for ethical hacking, malware analysis and forensic analysis
  • Know the mitigation and containment measures for incidents on web services
  • Incorporate best practice techniques for the development and implementation of online applications

##IMAGE##

Advanced Master's Degree in Software Engineering and Software Quality

In the last decade, computer engineering has grown exponentially thanks to advances in technology and digital tools. This accelerated evolution has created a booming demand in the industry for specialists who perfectly handle everything related to software engineering, from the right tools for the design and implementation of systems, to the most effective security protocols to ensure inviolable access to your data. For this reason, at TECH Technological University we have developed the Advanced Master's Degree in Software Engineering and Quality, a program oriented to favor the specialization of IT professionals through the most complete and updated information in the sector. In this way, you will obtain a broad and highly qualified vision for the design and development of programs based on tests, with which you will ensure high quality standards. Study this postgraduate course and take a definitive step in your professional career.

Specialize in quality criteria for software engineering

If your goal is to become an expert in the area of software quality engineering, this postgraduate course is for you. With the study plan, you will delve into the most advanced criteria, tasks and methodologies for the proper development of an operating systems project. You will also analyze concepts such as technical debt, its causes and consequences, and the key factors of the quality of this set of programs: typology and models, specific features, influential elements, misconceptions, associated costs, among others. You will also learn how to measure and quantify software conditions and implement DevOps processes, as well as security systems to ensure their optimal state. This Advanced Master's Degree will give you everything you need to exceed your professional expectations.