Overview
Students who are beginning studies in technology need a strong foundation in the basics before moving on to more advanced technology courses and certification programs. The Microsoft Technology Associate (MTA) is an innovative certification track designed to provide a pathway for future success in technology courses and careers.
The MTA program curriculum helps teach and validate fundamental technology concepts. This text covers fundamental skills in such areas as Programming and an understanding of general software development, web,desktop, and database applications.
Course Outline
Lesson 1: Introduction to Programming 1
Objective Domain Matrix 1
Key Terms 1
Understanding Computer Programming 2
Introducing Algorithms 2
Introducing C# 4
Understanding Decision Structures 11
The If Statement 11
The If-Else Statement 13
The Switch Statement 15
Understanding Repetition Structures 17
Understanding the While Loop 17
Understanding the Do-While Loop 19
Understanding the For Loop 20
Understanding the Foreach Loop 21
Understanding Recursion 22
Understanding Exception Handling 23
Handling Exceptions 24
Using Try-Catch-Finally 25
Skill Summary 26
Knowledge Assessment 27
Competency Assessment 30
Proficiency Assessment 31
Lesson 2: Introduction to Object-Oriented Programming 32
Objective Domain Matrix 32
Key Terms 32
Understanding Objects 33
Thinking in an Object-Oriented Way 33
Understanding Classes 33
Understanding Values and References 44
Understanding Structs 44
Understanding Memory Allocation 45
Understanding Encapsulation 47
Understanding Access Modifiers 48
Understanding Inheritance 48
Understanding Abstract and Sealed Classes 50
Inheriting from the Object Class 51
Casting between Types 52
Understanding Polymorphism 53
Understanding the Override and New Keywords 55
Understanding Interfaces 56
Skill Summary 58
Knowledge Assessment 59
Competency Assessment 64
Proficiency Assessment 64
Lesson 3: Understanding General Software Development 65
Objective Domain Matrix 65
Key Terms 65
Understanding Application Lifecycle Management 66
Understanding Requirements Analysis 66
Understanding the Design Process 67
Understanding Software Development 67
Understanding Software Testing 68
Understanding Release Management 68
Understanding Testing 68
Understanding Testing Methods 69
Understanding Testing Levels 69
Understanding Data Structures 70
Understanding Arrays 70
Understanding Queues 72
Understanding Stacks 73
Linked Lists 74
Understanding Sorting Algorithms 76
Understanding BubbleSort 76
Understanding QuickSort 79
Skill Summary 81
Knowledge Assessment 81
Competency Assessment 83
Proficiency Assessment 84
Lesson 4: Understanding Web Applications 85
Objective Domain Matrix 85
Key Terms 85
Understanding Web Page Development 85
Understanding HTML 86
Understanding Cascading Style Sheets 88
Understanding JavaScript 92
Understanding Client-Side vs. Server-Side Programming 94
Understanding ASP.NET Application
Development 95
Understanding ASP.NET Page Life Cycle and Event
Model 96
Understanding State Management 99
Understanding IIS Web Hosting 104
Understanding Internet Information Services 105
Creating Virtual Directories and Web Sites 105
Deploying Web Applications 106
Understanding Web Services Development 107
Introducing SOAP 107
Introducing WSDL 108
Creating Web Services 108
Consuming Web Services 112
Skill Summary 115
Knowledge Assessment 115
Competency Assessment 118
Proficiency Assessment 119
Lesson 5: Understanding Desktop Applications 120
Objective Domain Matrix 120
Key Terms 120
Understanding Windows Forms Applications 120
Designing a Windows Form 121
Understanding the Windows Form Event Model 123
Using Visual Inheritance 123
Understanding Multiple Document Interface (MDI) Applications 126
Understanding Console-Based Applications 129
Working with Command-Line Parameters 130
Understanding Windows Services 131
Creating a Windows Service 132
Skill Summary 137
Knowledge Assessment 138
Competency Assessment 140
Proficiency Assessment 141
Lesson 6: Understanding Databases 142
Objective Domain Matrix 142
Key Terms 142
Understanding Relational Database Concepts 142
Understanding Databases 143
Understanding Relational Database Concepts 143
Understanding Relational Database Design 144
Understanding Entity-Relationship Diagrams 144
Understanding Data Normalization 146
Understanding Database Query Methods 149
Working with SQL Queries 150
Working with Stored Procedures 159
Understanding Database Connection
Methods 164
Working with Flat Files 164
Working with XML 167
Working with DataSet 170
Skill Summary 173
Knowledge Assessment 173
Competency Assessment 176
Proficiency Assessment 176
Basic concepts
- Basic Testing Vocabulary
- Quality Assurance versus Quality Control
- The Cost of Quality
- Software Quality Factors
- How Quality is Defined
- Why Do We Test Software?
- What is a Defect?
- The Multiple Roles of the Software Tester(People Relationships)
- Scope of Testing
- When Should Testing Occur?
- Testing Constraints
- Life Cycle Testing
- Independent Testing
- What is a QA Process?
- Levels of Testing
- The “V” Concept of Testing
Week 2:
Testing Techniques
- Structural versus Functional Technique Categories
- Verification versus Validation
- Static versus Dynamic Testing
- Examples of Specific Testing Techniques
Test Administration
- Test Planning
- Customization of the Test Process
- Budgeting
- Scheduling
Create the Test Plan
- Prerequisites to test planning
- Understand the Characteristics of the Software Being Developed
- Build the Test Plan
- Write the Test Plan
Week 3:
- Test Cases:
- Test case Design
- Building test cases
- Test data mining
- Test execution
- Test Reporting
- Defect Management
- Test Coverage – Traceability matrix
Test Metrics – Guidelines and usage
Test reporting:
- Guidelines for writing test reports
Week 4:
Test Tools used to Build Test Reports
Managing Change
- Software Configuration Management
- Change Management
Risks – Risk Analysis and Management with examples
User Acceptance testing – in detail explanation with details
Case Study: How to test web, stand alone and database applications – with examples.
Help with resume and testing interview skills.
Software Testing Training Course Week 5:
Automation Testing Basics
- Basics of automation testing – why, when and how to perform automation testing
- Factors for choosing a particular tool
- An overview for the major functional testing tools
- Overview of Test management and bug tracking tools