Tuesday, 19 July 2016

600-511 NPDESACI Designing with Cisco Network Programmability for ACI

Exam Number 600-511 NPDESACI
Last day to test: November 20, 2016
Associated Certifications Cisco Network Programmability Design Specialist
Duration 90 Minutes (55 - 65 questions)
Available Languages English
Register Pearson VUE

This exam tests a candidate's ability to use network applications expertise to translate customer requirements into a policy-based, application centric network infrastructure.

The Designing with Cisco ACI Network Programmability (600-511) exam is a 90- minute (1.5 hours) exam with 55-65 questions. This exam tests a candidate's ability to use network applications expertise to translate customer requirements into a policy-based, application-centric network infrastructure.

The following topics are general guidelines for the content likely to be included on the exam. However, other related topics may also appear on any specific delivery of the exam. In order to better reflect the contents of the exam and for clarity purposes, the guidelines below may change at any time without notice.

1.0 Understanding Business Requirements 24%

1.1 Gathering business requirements

1.1.a Understand business requirements
1.1.b Understand current infrastructure
1.1.c Understand who the vested parties are and how they define policy and application
1.1.d Document existing application interaction

1.2 Risk and Impact Analysis

1.2.a Take the requirements and perform a risk assessment and impact analysis to narrow down the possible design choices

1.3 Ongoing communications to finalize the business requirements

1.3.a Identify the design choice that meets the business, risk, and customer requirements

2.0 Translating Business Requirements Into Technical Requirements 19%

2.1 Mapping of business requirements

2.1.a Map existing applications to Cisco ACI constructs
2.1.b Map existing network services to Cisco ACI Fabric
2.1.c Create application network profiles that map to the business requirements
2.1.d Identify which applications can expect to see improvements in the areas of performance, security/compliance, visibility, and speed of service delivery
2.1.e Determine methods of representing the improvements expected – quantitative metrics and qualitative metrics

2.2 Perform software modeling and analysis

2.2.a Identify tools that can be used to build application network profiles
2.2.b Identify best practices for building application network profiles for legacy applications
2.2.c Identify best practices for building application network profiles for greenfield applications

2.3 Perform network modeling and analysis (capacity and performance)

2.3.a Analyze the current infrastructure inventory and capacity to meet the requirements
2.3.b Assess the delta between the requirements and the current infrastructure to implement the application

2.4 Translating service level agreements (SLAs) and operational level agreements (OLAs) into technical requirements

2.4.a Plan or design to account for business interruption of various lengths or scopes

3.0 Positioning Application Centric Infrastructure Value Proposition 29%

3.1 Policy based infrastructure management

3.1.a Identify opportunities to automate tasks that are manual today
3.1.b Identify architectural bottlenecks in the current infrastructure that are roadblocks in introducing programmability and automation
3.1.c Is there uniformity in policy across the entire infrastructure or are there policy silos and policy gaps?
3.1.d Describe programming model and APIs available to automate network functions required to deploy applications

3.2 Enhance visibility and control

3.2.a Identify lack of comprehensive visibility and control over resource allocation for applications today and highlight how Cisco ACI can address this limitation
3.2.b Identify number of points of management to see if Cisco ACI can reduce the number to dramatically bring in value addition
3.2.c Identify application performance features that increase scalability or provide optimal traffic steering
3.2.d Describe available tools to provide comprehensive application-level visibility

3.3 Security and compliance

3.3.a Identify any compliance and auditing requirements and highlight key security features of Cisco Application Centric Infrastructure (policy-based forwarding, auditing, forensics across physical and virtual devices)

4.0 Define High-Level System Architecture 28%

4.1 Software architecture and design

4.1.a Take a set of software requirements or details about a solution and generate (identify, pick, choose) a design document (class hierarchy, object model, Entity Relationship (ER) diagram)

4.2 Infrastructure architecture and design (physical and virtual)

4.2.a Take a set of infrastructure requirements or details about a solution and generate (identify, pick, choose) a design document (configuration or design change)

4.3 Identify different integration/interoperability points between different systems

4.3.a Understand the differences (compare and contrast) between different integration interfaces (knows what to use when and why)

4.4 Migrate existing network to Cisco ACI


QUESTION 1
Which two benefits are achieved through database sharding within the Cisco APIC cluster?
(Choose two.)

A. active-standby high availability
B. scalability
C. compression
D. reliability
E. load balancing

Answer: B,D

Explanation:


QUESTION 2
Which overlay protocol does Cisco AVS for vSphere use to allow the ACI fabric to extend over an
existing network infrastructure?

A. GRE
B. IPsec
C. NVGRE
D. VXLAN
E. OTV

Answer: D

Explanation:


QUESTION 3
Which three main problems was a host overlay system designed to address? (Choose three.)

A. workload mobility
B. simplified and automated workload provisioning
C. multitenancy at scale
D. integrate physical and virtual networking
E. increase visibility to traffic flows
F. better root cause analysis capabilities
G. consolidate IT infrastructure teams

Answer: A,B,C

Explanation:


QUESTION 4
Which two benefits of ACI help improve the time required to deploy an application? (Choose two.)

A. enabling software developers to create development environments similar to production
B. eliminating the need for expensive Layer 4 to Layer 7 service appliances
C. eliminating IP addressing from software stacks
D. evolving the IT model from manual workflows to an application model that automates
deployment, operations, and visibility

Answer: A,D

Explanation:

Monday, 11 July 2016

600-509 Integrating Business Applications with Network Programmability

Exam Number 600-509 NPIBA
Associated Certifications Cisco Business Application Engineer Specialist
Duration 75 Minutes (55 - 65 questions)
Available Languages English
Register Pearson VUE

This exam tests a candidate's ability to use the programmability of an open infrastructure to develop and deploy business applications. It also tests how well the candidate can build an application with API capabilities to collect information from the network when needed.

The Integrating Business Applications with Network Programmability (NPIBA) exam (600-509) is a 75-minute assessment with 55-65 questions. This exam tests a candidate's ability to use the programmability of an open infrastructure to develop and deploy business applications. It also tests how well the candidate can build an application with API capabilities to collect information from the network when needed.

The following topics are general guidelines for the content likely to be included on the exam. However, other related topics may also appear on any specific version of the exam. In order to better reflect the contents of the exam, the guidelines below may change at any time without notice.

1.0 Fundamentals of Networking 35%

1.1 Describe the operation of IP data networks

1.1.a Describe the purpose and functions of network devices
1.1.b Identify common applications and their impact on the network

1.2 Identify basic LAN switching technologies

1.2.a VLANs
1.2.b Network segmentation and basic traffic management

1.3 Describe IP addressing (IPv4 / IPv6)

1.3.a Basic principles of IP address
1.3.b Subnets and prefixes

1.4 Describe IP routing

1.4.a Understands the basic routing concepts
1.4.a [i] Differentiate between routing and routing protocols
1.4.a [ii] Static vs. Dynamic routing
1.4.a [iii] IP routing table
1.4.b Understands the difference between routing and switching

1.5 Describe network data security

1.5.a TLS basics
1.5.b Certificates
1.5.c User/host authentication

1.6 Troubleshoot host IP configuration

1.7 Describe network virtualization

1.8 Describe network assurance technologies

1.8.a Quality of service
1.8.b Load balancing
1.8.c Network proximity
1.8.d Network availability

1.9 Describe application-aware networks

2.0 Business Goals 20%

2.1 Define the business outcome for the application

2.2 Document requirements in terms of deployment, lifecycle management, level of service

2.3 Describe application consumption models

2.3.a Understanding and describing clients for the application from the business perspective
2.3.b Understanding the multiple service level requirements
2.3.c Multitenant environment and implications on application deployment (gold or silver)
2.3.d Security considerations in different consumption models (firewall or certificates)

2.4 Describe the business benefits of making applications network

2.4.a Describe the actions that can be taken based on the information from the network

2.5 Identify challenges with making an application network aware

3.0 Network Programmability Concepts 22%

3.1 Describe the function of a controller

3.2 Compare and contrast controllers

3.2.a APIC
3.2.b APIC-EM
3.2.c Open SDN controller

4.0 API Services 27%

4.1 Identify how APIs can be used to achieve business goals

4.2 Leverage APIs in a business application

Friday, 8 July 2016

600-504 NPENG Implementing Cisco Network Programmability

Exam Number 600-504 NPENG
Associated Job Role Network Programmability Engineer Specialist
Network Programmability; Support Specialist Certification
Duration 90 minutes (55 – 65 questions)
Available Languages English
This exam tests the ability of network engineers to deploy network applications in the programmable environment and make sure that they work. The exam also tests the ability to implement an open network infrastructure designed by network designers and architects. Successful candidates will demonstrate that they can deploy, install, and troubleshoot network infrastructures and applications.
The Implementing Cisco Network Programmability (600-504) (NPENG) exam is a 90-minute (1.5 hour) exam with 55‒65 questions. This exam tests the ability of network engineers to deploy network applications into the programmable environment and ensure that they work successfully. The exam also tests the ability to implement an open network infrastructure designed by the network designers and architects. Successful candidates will demonstrate that they can deploy, install, and troubleshoot network infrastructures and applications. Candidates can prepare for this exam by taking the Implementing Cisco Network Programmability course.
The following topics are general guidelines for the content likely to be included on the exam. However, other related topics may also appear on any specific delivery of the exam. In order to better reflect the contents of the exam and for clarity purposes, the guidelines below may change at any time without notice.
1.0 Requirements Collection and Analysis 16%

1.1 Understand the architecture of the application being deployed
1.2 Understand the external interfaces for the application (N&S bound API, GUI interface, CLI)
1.3 Understand relevant standards bodies for network programmability
1.4 Understands open source concepts and engagement models
1.5 Understand the environment in which the application is being deployed
2.0 Deployment Design Development 19%

2.1 Understand the pros and cons of different deployment models and configurations
2.2 Document in detail how the application is deployed and configured
2.3 Understand the best practices to deploy the end product
2.4 Understand the lab validation and testing
3.0 Configuration and Implementation 29%

3.1 Fluent in the installation and configuration of the application being deployed
3.2 Fluent in the configuration of the network and other dependent services the application is using
3.3 Understanding the base lining process
3.4 Staging and verification
4.0 Troubleshooting 20%

4.1 Troubleshoot the functionality and performance of the application
4.2 Interface with developers on improving application serviceability and quality
4.3 Network troubleshooting
4.4 Network virtualization
4.5 Automation/orchestration
4.6 Application and operating system
4.7 Storage
4.8 Be able to determine the real-time impact of the deployed application on the IT infrastructure
4.0 Operation and Optimization 16%

5.1 Tuning
5.2 Ability to optimize and tune the application specific to the environment
5.3 Monitoring and instrumentation
5.4 Change management

QUESTION 1
Which two statements about RFC6020 are true? (Choose two.)
A. YANG is a data modeling language.
B. YANG is a protocol to configure network devices.
C. YANG is used by OF-CONFIG.
D. YANG is used by BGP-LS.
E. YANG is an object-oriented programming language.
Answer: A,C
Explanation:

QUESTION 2
Applications compiled by Java are better adaptive to different operating systems like Windows and
Linux than applications compiled by C compiler.
Which option describes why Java applications are more independent from the OS than C applications?
A. Java has a DLL to abstract the difference of OS.
B. Java compiler is smarter than C compiler.
C. Java compiler creates byte code that is run on Java VM, and Java VM is prepared for each OS.
D. This is an urban legend. No difference between Java and C.
Answer: A
Explanation:


Tuesday, 28 June 2016

600-212 SPLTE Implementing Cisco Service Provider Mobility LTE Networks (SPLTE)

Exam Number 600-212 SPLTE
Associated Certifications Cisco Service Provider Mobility CDMA to LTE Specialist
Cisco Service Provider Mobility UMTS to LTE Specialist
Duration 90 Minutes (55-65 questions)
Available Languages English
Register Pearson VUE
Exam Policies Read current policies and requirements
Exam Tutorial Review type of exam questions

This exam tests a candidate's knowledge of the skills required to understand and implement technologies, components, architecture fundamentals and products that are found in common LTE networks. The exam includes information on the evolved packet core components and their role in the LTE Evolved Packet System (EPS) to include the Evolved Packet Core network as well as the Radio Access Network (RAN). The exam also includes information on standardized technologies that are implemented on the Mobile Management Entity (MME) Serving Gateway (SGW) and the Packet Data Network Gateway (PGW), and their interaction with authentication, charging, and billing components in the network of the mobile operator, as well as, configuration details of how these components are implemented on the Cisco ASR 5000 Series system.

The 600-212 SPLTE Implementing Cisco LTE Packet Core Networks exam tests a candidate's knowledge of the skills required to understand and implement technologies, components, architecture fundamentals, and products that are found in common Long-Term Evolution (LTE) networks.

Recommended Training

Implementing Cisco Service Provider Mobility LTE Networks – (SPLTE)

Courses listed are offered by Cisco Learning Partners—the authorized source for Cisco IT training delivered exclusively by Certified Cisco Instructors. For a list of Cisco Learning Partners, use the Learning Partner Locator.

The Implementing Cisco LTE Packet Core Networks (600-212 SPLTE) exam is a 90-minute, 65–75 question assessment within Cisco's Service Provider Specialist certification. This exam tests a candidate's knowledge of the skills required to understand and implement technologies, components, architecture fundamentals and products that are found in common LTE networks. The exam includes information on the evolved packet core components and their role in the LTE Evolved Packet System (EPS) to include the Evolved Packet Core network as well as the Radio Access Network (RAN). The exam also includes information on standardized technologies that are implemented on the Mobile Management Entity (MME) Serving Gateway (SGW) and the Packet Data Network Gateway (PGW), and their interaction with authentication, charging, and billing components in the network of the mobile operator, as well as, configuration details of how these components are implemented on the Cisco ASR 5000 Series system. This exam is a requirement in order to attain either the Cisco Service Provider Mobility UMTS to LTE Specialist certification or the Cisco Service Provider Mobility CDMA to LTE Specialist certification. Candidates can prepare for this exam by taking the Implementing Cisco Service Provider Mobility LTE Networks (SPLTE) v1.0 training course.

The following topics are general guidelines for the content likely to be included on the exam. However, other related topics may also appear on any specific delivery of the exam. In order to better reflect the contents of the exam and for clarity purposes, the guidelines below may change at any time without notice.

1.0 LTE 5%

1.1 Describe and differentiate LTE / SAE architecture

1.2 Explain attach procedure and call flow

2.0 MME (4G LTE) 16%

2.1 Network functions LTE –MME

2.1.a Identify key functions of the MME and basic understanding of architecture and interfaces
2.1.b Describe MME states of MM and CM management
2.1.c Describe protocol stacks and procedures
2.1.d Describe mobility management signaling and call flows
2.1.e Describe session management signaling and call flows
2.1.f Describe location management signaling and call flows
2.1.g Describe SGS procedures and signaling call flows
2.1.h Describe intra-MME handovers procedure
2.1.i Describe intra-RAT handovers procedure
2.1.j Describe inter-MME handover procedures

2.2 QOS architecture

2.2.a Describe the overall QOS functionality in LTE for single and multi pdn
2.2.b Describe the QOS mapping from UMTS to LTE

2.3 Configurations

2.3.a Configure S1 interface with corresponding services and system parameters
2.3.b Configure S6a interface with corresponding services and system parameters
2.3.c Configure S11 interface with corresponding services and system parameters
2.3.d Configure S13 interface with corresponding services and system parameters
2.3.e Identify and implement gateway selection mechanisms
2.3.f Identify and implement MME operator policy and feature sets
2.3.g Troubleshoot configurations

2.4 Network sharing


2.4.a Describe MOCN architecture
2.4.b Describe GWCN architecture

2.5 Security

2.5.a Describe LTE security principles for MME network node
2.5.b Explain security functions for mobility management procedures

2.6 Idle mode signaling reduction

2.6.a Identify IDLE mode signaling reduction in an LTE network
2.6.b Describe IDLE mode signaling establishment
2.6.c Describe IDLE mode signaling reduction deactivation

2.7 CSFB

2.7.a Describe CSFB architecture in LTE network
2.7.b Describe CSFB call flow and signaling

2.8 IPv6 support

2.8.a Configure IPV6 and dual stack EPS bearer scenarios
2.8.b Configure and implement transport plane IPV6 support for MME

3.0 SGW (4G LTE) 10%

3.1 Network functions LTE-SGW

3.1.a Identify key functions of the SGW and basic understanding of architecture and interfaces
3.1.b Describe SGW attach procedures and call flows
3.1.c Configure S1-U interface with corresponding services and system parameters
3.1.d Configure S5/S8 using PMIP/GTP interface with corresponding services and system parameters
3.1.e Configure S11 interface with corresponding services and system parameters

3.2 Feature functionality and extended application

3.2.a Describe multi-PDN support for SGW
3.2.b Describe downlink delay notification for SGW
3.2.c Describe idle mode signaling reduction support for SGW
3.2.d Configure and implement IPV6 support for SGW

3.3 Internetworking between LTE and other technologies

3.3.a Describe interaction with CDMA/eHRPD internetworking
3.3.b Describe interaction with GSM/UMTS internetworking
3.3.c Configure S4 interface with corresponding services and system parameters
3.3.d Configure S12 interface with corresponding services and system parameters
3.3.e Configure S103 interface with corresponding services and system parameters

3.4 Charging

3.4.a Configure Gx interface with corresponding services and system parameters

3.5 QoS

3.5.a Describe QoS bearer management and marking for SGW
3.5.b Configuring DSCP marking for SGW

4.0 PGW (4G LTE/EHRPD) 15%

4.1 Architecture overview

4.1.a Identify key functions of the PGW and basic understanding of architecture and interfaces

4.2 Implement S5/S8 and Gn/Gp interface

4.2.a Describe GTP protocol
4.2.b Describe mobility management/session management call flows
4.2.c Describe QoS in EPC
4.2.d Configure S5/S8 interface with corresponding services and system parameters
4.2.e Troubleshoot S5/S8 and Gn/Gp

4.3 APN

4.3.a Describe the various IP address allocation mechanisms
4.3.b Describe the concept of virtual APNs
4.3.c Configure APNs and virtual APNs with corresponding service and system parameters
4.3.d Configure IP source address validation and access control list
4.3.e Troubleshoot APN

4.4 Implement Gx interface

4.4.a Describe the important diameter AVPs needed for Gx
4.4.b Describe basic Gx call flows
4.4.c Configure Gx interface with corresponding services and system parameters
4.4.d Troubleshoot Gx interface
4.4.e Describe the common policy use cases
4.4.f Configure failure handling modes
4.4.g Configure usage monitoring over Gx

4.5 Implement Gy interface

4.5.a Describe the important diameter AVPs needed for Gy
4.5.b Describe the basic Gy call flows
4.5.c Configure Gy interface with corresponding services and system parameters
4.5.d Troubleshoot Gy interface
4.5.e Configure failure handling modes
4.5.f Describe OCS selection based on static configuration
4.5.g Describe RADIUS attributes and PCRF out-of-quota redirection handling

4.6 Implement AAA Interface

4.6.a Describe the basic AAA authentication and accounting call flows
4.6.b Describe the important RADIUS attributes for authentication and accounting
4.6.c Configure RADIUS interface with corresponding services and system parameters
4.6.d Troubleshoot RADIUS interface

4.7 Implement S6b interface

4.7.a Describe the important diameter AVPs needed for S6b
4.7.b Describe the basic S6b call flows
4.7.c Configure S6b interface with corresponding services and system parameters
4.7.d Troubleshoot S6b interface

4.8 Interworking with non-3GPP access networks

4.8.a Configure S2a interface with corresponding services and system parameters
4.8.b Configure S2b interface with corresponding services and system parameters
4.8.c Configure S2c interface with corresponding services and system parameters
4.8.d Configure LMA functionality on a PGW
4.8.e Configure non-3GPP IRAT handovers
4.8.f Troubleshoot S2b and S2c interfaces

4.9 SGi Interface

4.9.a Configure and implement various IP transport types
4.9.b Configure and implement static and dynamic routing protocols

5.0 Voice Over LTE 20%

5.1 VoLTE application messages/protocols

5.1.a Describe VoLTE specific diameter interface
5.1.b Describe XCAP, LDAP, SPML
5.1.c Describe CAMEL, CAP, INAP, SOAP, MSML

5.2 Voice over LTE architecture

5.2.a Describe voice evolution in mobile network
5.2.b Identify VoLTE system architecture and functions of network elements

5.3 Network elements in voice over LTE

5.3.a Describe CSCF
5.3.b Describe ENUM
5.3.c Describe MNP — mobile number portability/database
5.3.d Describe telephony application server
5.3.e Describe DRA/DEA
5.3.f Describe HSS
5.3.g Describe PCRF
5.3.h Describe ATCF,ATGW
5.3.i Describe MRF
5.3.j Describe understand OSS and BSS

5.4 QoS

5.4.a Describe QoS in EPS
5.4.b Describe end-to-end QoS in VoLTE

5.5 Interfaces and signaling messages

5.5.a Configure Gx interface and signaling
5.5.b Design Rx interface and signaling
5.5.c Implement Cx interface and signaling
5.5.d Describe ISC interface and signaling
5.5.e Describe Ut interface

5.6 End-to-end call flow

5.6.a Describe IMS client attach to EPC
5.6.b Describe P-CSCF discovery
5.6.c Describe IMS registration, re-registration and de-registration
5.6.d Describe mobile-originated VoLTE call
5.6.e Describe mobile-terminated VoLTE call
5.6.f Describe emergency VoLTE call

5.7 Supplementary services

5.7.a Describe IR.92 supplementary service overview
5.7.b Describe IR.94 supplementary service overview
5.7.c Describe Important services call flows

5.8 VoLTE Interworking

5.8.a Describe PSTN interworking
5.8.b Describe IMS/SIP interworking
5.8.c Describe e-SRVCC

6.0 Other Interfaces 5%

6.1 AAA/diameter related interfaces

6.1.a Describe SWx interface
6.1.b Describe S9 interface
6.1.c Describe Sp interface

6.2 HRPD related interfaces

6.2.a Describe S101
6.2.b Describe S103

7.0 Charging 13%

7.1 Offline charging service

7.1.a Describe offline charging architecture
7.1.b Explain the GTPP protocol header and messages
7.1.c Explain charging data record transport through GTP'
7.1.d Compare and contrast GTPP transfer scenarios
7.1.e Describe and differentiate mobility records generated by MPC nodes
7.1.f Identify and list conditions for record closure and generation
7.1.g Explain Rf offline charging scenarios
7.1.h Identify and list offline charging error cases
7.1.i Configure for offline billing
7.1.j Troubleshoot for offline billing

8.0 Lawful Intercept 5%

8.1 Describe lawful intercept architecture and events

8.2 Configure lawful interception

8.3 Describe lawful intercept trigger element

9.0 Management Protocols 11%

9.1 TACACS

9.1.a Describe admin authentication and command authorization methods
9.1.b Configure Local administration levels
9.1.c Configure external authentication TACACS servers

9.2 Performance counters/statistics

9.2.a Describe the various performance counters
9.2.b Describe the collection and processing of performance counters
9.2.c Describe the common KPIs for various MPC nodes
9.2.d Configure counters and KPIs

9.3 Fault management

9.3.a Describe SNMP protocols, alarms, notification and MIBs
9.3.b Configure SNMP traps, filters and thresholds

9.4 syslog/events Log

9.4.a Describe system log formats and filters
9.4.b Configure syslog servers and event logs

9.5 Security

9.5.a Describe user access control

9.6 NTP

9.6.a Describe system timing
9.6.b Configure NTP servers, system clock, time zone and timestamps

QUESTION 1
Which three options are valid functions performed by Mobility Management Entity? (Choose
three.)

A. Header compression and user plane ciphering
B. PDN GW and Serving GW selection
C. Tracking area list management
D. User plane packet forwarding and routing
E. UE IP address allocation
F. NAS signaling

Answer: B,C,F

Explanation:


QUESTION 2
Which two radio technologies are used in LTE? (Choose two.)

A. OFDMA
B. MIMO
C. TDMA
D. EV-DO
E. VOR
F. DME

Answer: A,B

Explanation:


QUESTION 3
Which parameter provides support of radio resource management by the MME across the S1
interface?

A. RFSP index
B. relative MME capacity
C. GUTI
D. OLD-GUTI

Answer: A

Explanation:


QUESTION 4
Which two Transport protocols can be used for the S6a interface? (Choose two.)

A. SCTP
B. TCP
C. UDP
D. FCP
E. RDP

Answer: A,B

Explanation:


QUESTION 5
Which two statements apply during the attach procedure on an MME? (Choose two.)

A. The attach procedure provides an always-on IP connectivity to the subscriber.
B. Multiple default bearers can be established during the attach procedure.
C. A dedicated bearer can also be established during the attach procedure.
D. The additional guti value in the attach request is derived from a PTMSI.
E. The attach request is always integrity protected.

Answer: A,C

Explanation:

Monday, 20 June 2016

Exam 70-483 Programming in C#

Published: October 12, 2012
Languages: English, Chinese (Simplified), French, German, Japanese, Portuguese (Brazil)
Audiences: Developers
Technology: Visual Studio 2012
Credit toward certification: MCP, MCSD

Skills measured
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

Manage program flow (25–30%)
Implement multithreading and asynchronous processing
Use the Task Parallel library (ParallelFor, Plinq, Tasks); create continuation tasks; spawn threads by using ThreadPool; unblock the UI; use async and await keywords; manage data by using concurrent collections
Manage multithreading
Synchronize resources; implement locking; cancel a long-running task; implement thread-safe methods to handle race conditions
Implement program flow
Iterate across collection and array items; program decisions by using switch statements, if/then, and operators; evaluate expressions
Create and implement events and callbacks
Create event handlers; subscribe to and unsubscribe from events; use built-in delegate types to create events; create delegates; lambda expressions; anonymous methods
Implement exception handling
Handle exception types (SQL exceptions, network exceptions, communication exceptions, network timeout exceptions); catch typed vs. base exceptions; implement try-catch-finally blocks; throw exceptions; determine when to rethrow vs. throw; create custom exceptions

Preparation resources
Asynchronous programming with Async and Await (C# and Visual Basic)
Threading (C# and Visual Basic)
Selection statements (C# reference)

Create and use types (25–30%)
Create types
Create value types (structs, enum), reference types, generic types, constructors, static variables, methods, classes, extension methods, optional and named parameters, and indexed properties; create overloaded and overriden methods
Consume types
Box or unbox to convert between value types; cast types; convert types; handle dynamic types; ensure interoperability with unmanaged code, for example, dynamic keyword
Enforce encapsulation
Enforce encapsulation by using properties, by using accessors (public, private, protected), and by using explicit interface implementation
Create and implement a class hierarchy
Design and implement an interface; inherit from a base class; create and implement classes based on the IComparable, IEnumerable, IDisposable, and IUnknown interfaces
Find, execute, and create types at runtime by using reflection
Create and apply attributes; read attributes; generate code at runtime by using CodeDom and lambda expressions; use types from the System.Reflection namespace (Assembly, PropertyInfo, MethodInfo, Type)
Manage the object life cycle
Manage unmanaged resources; implement IDisposable, including interaction with finalization; manage IDisposable by using the Using statement; manage finalization and garbage collection
Manipulate strings
Manipulate strings by using the StringBuilder, StringWriter, and StringReader classes; search strings; enumerate string methods; format strings

Preparation resources
Types (C# programming guide)
Classes and structs (C# programming guide)
Object-oriented programming (C# and Visual Basic)

Debug applications and implement security (25–30%)
Validate application input
Validate JSON data; data collection types; manage data integrity; evaluate a regular expression to validate the input format; use built-in functions to validate data type and content out of scope: writing regular expressions
Perform symmetric and asymmetric encryption
Choose an appropriate encryption algorithm; manage and create certificates; implement key management; implement the System.Security namespace; hashing data; encrypt streams
Manage assemblies
Version assemblies; sign assemblies using strong names; implement side-by-side hosting; put an assembly in the global assembly cache; create a WinMD assembly
Debug an application
Create and manage compiler directives; choose an appropriate build type; manage programming database files and symbols
Implement diagnostics in an application
Implement logging and tracing; profiling applications; create and monitor performance counters; write to the event log

Preparation resources
Validating data
.NET Framework regular expressions

Implement data access (25–30%)
Perform I/O operations
Read and write files and streams; read and write from the network by using classes in the System.Net namespace; implement asynchronous I/O operations
Consume data
Retrieve data from a database; update data in a database; consume JSON and XML data; retrieve data by using web services
Query and manipulate data and objects by using LINQ
Query data by using operators (projection, join, group, take, skip, aggregate); create method-based LINQ queries; query data by using query comprehension syntax; select data by using anonymous types; force execution of a query; read, filter, create, and modify data structures by using LINQ to XML
Serialize and deserialize data
Serialize and deserialize data by using binary serialization, custom serialization, XML Serializer, JSON Serializer, and Data Contract Serializer
Store data in and retrieve data from collections
Store and retrieve data by using dictionaries, arrays, lists, sets, and queues; choose a collection type; initialize a collection; add and remove items from a collection; use typed vs. non-typed collections; implement custom collections; implement collection interfaces

Preparation resources
File system and the registry (C# programming guide)
Connecting to data in Visual Studio
Editing data in your application

QUESTION 1
You work as a senior developer at ABC.com. The ABC.com network consists of a single domain
named ABC.com.
You are running a training exercise for junior developers. You are currently discussing the use of
the Queue <T> collection type.
Which of the following is TRUE with regards to the Queue <T>collection type?

A. It represents a first in, first out (FIFO) collection of objects.
B. It represents a last in, first out (LIFO) collection of objects.
C. It represents a collection of key/value pairs that are sorted by key based on the associated
IComparer<T> implementation.
D. It represents a list of objects that can be accessed by index.

Answer: A

Explanation:


QUESTION 2
You work as a developer at ABC.com. The ABC.com network consists of a single domain named
ABC.com.
You have written the following code segment:
int[] filteredEmployeeIds = employeeIds.Distinct().Where(value => value !=
employeeIdToRemove).OrderByDescending(x => x).ToArray();
Which of the following describes reasons for writing this code? (Choose two.)

A. To sort the array in order from the highest value to the lowest value.
B. To sort the array in order from the lowest value to the highest value.
C. To remove duplicate integers from the employeeIds array.
D. To remove all integers from the employeeIds array.

Answer: A,C

Explanation:


QUESTION 3
You work as a senior developer at ABC.com. The ABC.com network consists of a single domain named ABC.com.
You are running a training exercise for junior developers. You are currently discussing the use of a
method that moves the SqlDataReader on to the subsequent record.
Which of the following is the SqlDataReader method that allows for this?

A. The Read method.
B. The Next method.
C. The Result method.
D. The NextResult method.

Answer: A

Explanation:


QUESTION 4
You work as a developer at ABC.com. The ABC.com network consists of a single domain named ABC.com.
You have received instructions to create a custom collection for ABC.com. Objects in the
collection must be processed via a foreach loop.
Which of the following is TRUE with regards to the required code?

A. The code should implement the ICollection interface.
B. The code should implement the IComparer interface.
C. The code should implement the IEnumerable interface.
D. The code should implement the IEnumerator interface.

Answer: C

Explanation:


QUESTION 5
You work as a senior developer at ABC.com. The ABC.com network consists of a single domain named ABC.com.
You are running a training exercise for junior developers. You are currently discussing the use of LINQ queries.
Which of the following is NOT considered a distinct action of a LINQ query?

A. Creating the query.
B. Obtaining the data source.
C. Creating the data source.
D. Executing the query.

Answer: C

Explanation:

Thursday, 9 June 2016

Exam 70-475 Designing and Implementing Big Data Analytics Solutions

Published: October 27, 2015
Languages: English
Audiences: IT Professionals
Technology: Microsoft Azure
Credit toward certification: Specialist

Skills measured
This exam measures your ability to accomplish the technical tasks listed below. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

Design big data batch processing and interactive solutions (20-25%)
Ingest data for batch and interactive processing, design and provision compute clusters, design for data security, design for batch processing, design interactive queries for big data

Design big data real-time processing solutions (25-30%)
Ingest data for real-time processing, design and provision compute resources, design for lambda architecture, design for real-time processing

Design machine-learning solutions (25-30%)
Create and manage experiments, determine when to pre-process or train inside Machine Learning Studio, select input/output types, apply custom processing steps with R and Python, publish web services

Operationalize end-to-end cloud analytics solutions (25-30%)
Create a data factory, orchestrate data processing activities in a data-driven workflow, monitor and manage the data factory, move, transform, and analyze data

Thursday, 2 June 2016

10 more pointless (but awesome) Linux terminal tricks

One year ago, I put together a list of my favorite “pointless but awesome” Linux terminal tricks—filled with such classics as making a cow talk with “cowsay” and rainbow-coloring your terminal with “lolcat.”  As was correctly pointed out to me at the time, there are a lot of ridiculous (but cool) things you can do in the terminal that didn’t make that list. So, here’s round two. You’re welcome. (Note: Some of these you will need to install using apt-get, zypper or whatever package manager your Linux distribution uses.)

I’m 99 percent sure that every one of you has seen this. A full version of Star Wars Episode 4: A New Hope. Entirely in the terminal. And entirely via telnet. Simply pop open your terminal, type “telnet towel.blinkenlights.nl”, then sit back and enjoy this cinematic masterpiece in all its ASCII glory.

This one dates all the way back to 1983—33 years ago—with the release of https://en.wikipedia.org/wiki/UNIX_System_V. The “cal” program, short for “calendar,” does exactly what you think it does. It displays a calendar. It has a handful of options (like what day a week starts on and what month to display) but only a handful.  Recommendation: pipe “cal” through “lolcat” (“cal | lolcat”) to spice things up a little bit.

Clear your mind of what you think is possible. If you could imagine the most useful terminal command, what would it be? If you said “a command that repeated the same bit of text over and over again until the end of time,” you and the developer of “yes” have something in common! Type, simply ‘yes “repeat this text forever”’ and you’re in business! Again. “lolcat” makes everything better.

Take text, and make it bigger using a bunch of smaller characters. That’s toilet.  Typing ‘toilet “Yo, Dawg.”’ will get you the results you desire.

In 1999, “rig” was born with a singular purpose—to generate fake identities.  From the man page (“man rig”): “It is suitable for such applications as feeding the NY times registration page to fend off junk (snail) mail and telemarketers, or for registering on BBS's to which you don't wish to reveal your real information.”

I love “espeak”. Take some text and speak it—with loads of options. Create a .wav file, customizable speaking speed, change the pitch—it’s just wonderful. Extra fun: You can feed content from a text file to read to you or pipe the output of another program into espeak. For example, “rig | espeak” will cause your computer to speak a random, fake person’s name and address. Why would you do that? Who knows. But it’s cool that you can.

What if you want to see the exact number of times that you’ve run every single terminal program? Type “hash”. Note: This doesn’t count the number of times you pipe output through “lolcat.” This bums me out. Because if it did, my main machine might be breaking a world lolcat record right now.

We’re going to get into some very debatable territory here in terms of “pointless-ness.” This program displays an ASCII-fied version of any image—with lots of options. I recommend using “asciiview picture.png -driver curses”. That’s what I do. And be sure to fire up “man asciiview” to see all of the options available.

Admit it—“top” sucks. It’s OK—we’re all thinking it. Written in 1984, “top” is fine for getting some quick stats and finding a process ID. But it’s ugly and not exactly interactive. That’s where “htop” swoops in and saves the day. First released in 2004, “htop” is like “top” only you can move through the running tasks with your arrow keys and issue signals directly to them. It’s handy as all get out. And using this instead of a graphical system monitor will prove you’re one of the cool kids.

The final, and possibly most useful, terminal program on this list is the one that helps you to find other programs. Type “apropos” into your shell, and it will simply ask you: “apropos what?” Type “apropos picture”, and it will display the programs with man pages that have the word “picture” in their name or description. Handy as all get out if you’re trying to find the right tool to use—or goof off with.