Certification Summary


In this chapter, we examined standards and processes, which represent some guidelines for best practices. We started by examining standards, including coding, user interface, documentation, and testing standards. Coding standards look at rules and conventions for formatting code. There are great features in Visual Studio .NET to help with this process. The formatting options can be configured for all or specific languages. Without using the VS.NET environment, many of these options would be unavailable for you during development. The proper use of coding conventions helps other developers to understand your code. User interface standards help define a common look and feel with the use of common industry standards. An example would be the Microsoft user interface standards for XP, which detail appropriate user-interface standards for windows, menus, and other visual elements. Documentation standards help with the common communication of the team. Each team member understands the flow of information and what needs to be documented. Each team member can set up a level of expectation for common understanding. Testing standards help to improve customer confidence and software quality by putting in place policies and procedures for testing and by doing unit testing.

Processes discussed were design review, code review, creating builds, tracking issues, management of source code, changes and release management using Visual SourceSafe, and establishing maintenance tasks. Standardizing processes are the next evolution of the standards process. After defining what you want to record and keep track of, a process needs to follow to sequence the events. A design review helps you to determine if you know what you are going to build. It looks at a group collaboration of the ideas of different individuals who look at solutions in different ways. This helps the team to understand how the solution will be solved and helps other developers who could be dependent on your code to start evolving their process. Code review is the examination of completed code to make sure existing standards are followed and complex tasks are explained. The creation of builds is the heart of the iterative development process. These cycles include the compiling of code, deployment, and testing. They allow the team to determine the progress of the project. Visual SourceSafe is integrated with the Microsoft Visual Studio environment to help with the source code and deployment processes. Visual SourceSafe includes multiple configurations for handling this integration. This integration depends on your environment configuration.

Quality and performance metrics help to determine whether the team met the agreed upon goals and objectives. Project control metrics help to control both the nondevelopment and development processes. Some concepts used in this process include the fixed ship date mindset, bug convergence, and zero bug bounce. These concepts help establish the quality of the project and software. Organizational performance is evaluated by examining how well the team works together. This helps determine efficient process and employee practices. Finally, the identification of return on investment is the determination of the financial value of the solution.

Two-Minute Drill

Establishing Standards

  • Documentation standards define a collection of artifacts that help define information for multiple stages of a project.

  • Coding principles help a developer with the formatting of source code and formatting conventions.

  • User interface standards help define the look and feel of the user experience.

  • Testing standards define what methods are used to provide unit testing and test configurations.

Establishing Processes

  • Reviewing development documentation is the examination of the design of a solution or pieces of a solution.

  • Reviewing code is a process for ensuring that developers follow the approved coding standards and conventions. This process helps other developers learn techniques to apply.

  • Tracking issues is the identification and following of bugs and critical tasks that affect the development of the solution.

  • Managing source code, changes, and releases can be performed using Microsoft Visual SourceSafe. This allows for the sharing of documents among developers and team members.

  • Establishing maintenance tasks is the identification of supporting tasks and applications needed for the solution.

Establishing Quality and Performance Metrics

  • Evaluating project control is the determination of the project schedule and the control of costs.

  • Evaluating organizational performance is the analysis of processes and employees to determine what techniques are effective for the organization and the project.

  • Identifying return on investment is determining the financial value of the solution for the business.

Self Test

Establishing Standards

1.

You are writing the technical specifications document. The application is a web application. The requirement is to provide documentation in a physical form to the user and provide an online form of the documentation for the web application. Identify the correct user documentation types to meet the requirements. (Choose all that apply.)

  1. User manual

  2. HTML Help file

  3. Requirements documents

  4. CHM Help file

 a , b , and d . a user manual, html help, and .chm files would allow the application to provide online and offline help. x c . requirements documents are considered project documentation.

2.

You are taking over the project midway through and you need to examine the high-level documents for the project. Choose the correct project documents. (Choose all that apply.)

  1. Requirements document

  2. Use case

  3. Response document

  4. Functional specifications

 a , b , and d . requirements documents, functional specifications, and use cases are types of project documents. x c . a response document is considered a developer document.

3.

You are writing the developer standards document for coding. Identify which of the following statements is incorrect.

  1. _FirstName

  2. %FirstName

  3. firstName

  4. first_name

 b . %firstname is the correct answer. the percent symbol (%) is a special character and cannot start variable names. x a , c , and d are incorrect because _firstname, firstname, and first_name have the correct format for creating a variable.

4.

You are writing the testing plan. Identify which stage of testing is the most critical.

  1. Integration testing

  2. Regression testing

  3. Unit testing

  4. None of the above

 a . integration testing is the correct answer because you are combining solutions together, and integration of the application takes the most time and effort. x b , c , and d . regression testing and unit testing are important but the risk to these processes can be controlled.

5.

You are writing support documentation. Identify the correct support documents for the solution. (Choose all that apply.)

  1. Security documents

  2. User manual

  3. Vision statement

  4. Deployment documents

 a and d . support documents contain details about how to secure and maintain the applications. x b and c . the vision statement is a project document, and a user manual is a use document.

6.

You are writing developer coding standards. The previous application did not have good comments. Identify the correct statements for code comments. (Choose all that apply.)

  1. Avoid extraneous comments.

  2. Comments should explain the intent of the code.

  3. When bugs are found, comment them, note what caused the bugs, and note the fix for them.

  4. The use of asterisks (*) is a great way to comment code.

 a , b , and c . avoiding extra comments, explaining difficult sections of code, and commenting where bugs are found help to have readable code and are true statements about comments. x d . the minimizing of asterisks help the readability of the resulting code.

7.

When performing a code review and using the naming conventions adopted from Microsoft; which of the following options correctly identify the naming of an interface?

  1. iEmployee

  2. Employee

  3. _Employee

  4. IEmployee

 d . the naming convention for interfaces is to start with a capital i. x a , b , and c . these options are in the incorrect format for the interface syntax naming convention.

8.

While creating coding standards for the application, identify the correct naming convention for a Boolean variable.

  1. TrueFlag

  2. IsEmployeeCreated

  3. CreateFlag

  4. Done

 b . a boolean field starts with an i and is descriptive. x a , c , and d . trueflag and createflag are incorrect because you do not want to use the work flag in the definition, and done is incorrect because it is not descriptive and does not start with an i.

9.

You are writing the technical specifications. Using the SQL standards, identify the prefixes not to use with stored procedures. (Choose all that apply.)

  1. xp_

  2. fn_

  3. sp_

  4. ep_

 a , b , and c . the prefix xp_ is used as an extension for extended stored procedures. the prefix fn_ is used for system-defined functions, and sp_ is used for system-defined stored procedures. x d . the ep_ prefix is valid and is not used by sql as a system prefix.

10.

While creating standards for the development staff, it is necessary to identify development environment standards on environment settings. Identify the correct behavior if the tab size is not the same as the indent size and the Keep Tab option is selected to be included in the document.

  1. If the indent size is not a multiple of the tab size, space characters fill the remaining space.

  2. If the indent size is not an even multiple of the tab size, space characters fill the remaining space.

  3. If the indent size is not an even multiple of the tab size, space characters fill the remaining tab characters.

  4. If the indent size is not an even multiple of the tab size, all space characters fill the line.

 b . the correct behavior for the indent size and the keep tab option is to fill in with space characters for the remainder if the indent size is not an even multiple of the tab size. x a , c , and d . these are incorrect definitions for the behavior when the tab size is not the same as the indent size and the keep tab option is selected.

11.

You are creating the standards document. Identify the examples of good user interface to include in the document. (Choose all that apply.)

  1. Users can cancel out of transactions.

  2. The system does not display feedback at any time.

  3. To cancel an action, the action is named Cancel on some screens and Return on others.

  4. Consistent color schemes are used on each screen.

 a and d . examples of good user interface design are allowing the user to cancel out of transactions and using consistent color schemes. this gives the user the ability to correct mistakes and applys a consistent look and feel. x b and c. not displaying feedback and having inconsistent user interface elements creates a nonstandard application that will potentially confuse the user and increase the need for application support.

Answers

1.

A, B, and D. A user manual, HTML help, and .CHM files would allow the application to provide online and offline help.
x C. Requirements documents are considered project documentation.

2.

A, B, and D. Requirements documents, functional specifications, and use cases are types of project documents.
x C. A response document is considered a developer document.

3.

B. %FirstName is the correct answer. The percent symbol (%) is a special character and cannot start variable names.
x A, C, and D are incorrect because _FirstName, firstName, and first_name have the correct format for creating a variable.

4.

A. Integration testing is the correct answer because you are combining solutions together, and integration of the application takes the most time and effort.
x B, C, and D. Regression testing and unit testing are important but the risk to these processes can be controlled.

5.

A and D. Support documents contain details about how to secure and maintain the applications.
x B and C. The vision statement is a project document, and a user manual is a use document.

6.

A, B, and C. Avoiding extra comments, explaining difficult sections of code, and commenting where bugs are found help to have readable code and are true statements about comments.
x D. The minimizing of asterisks help the readability of the resulting code.

7.

D. The naming convention for interfaces is to start with a capital I.
x A, B, and C. These options are in the incorrect format for the interface syntax naming convention.

8.

B. A Boolean field starts with an I and is descriptive.
x A, C, and D. TrueFlag and CreateFlag are incorrect because you do not want to use the work flag in the definition, and Done is incorrect because it is not descriptive and does not start with an I.

9.

A, B, and C. The prefix xp_ is used as an extension for extended stored procedures. The prefix fn_ is used for system-defined functions, and sp_ is used for system-defined stored procedures.
x D. The ep_ prefix is valid and is not used by SQL as a system prefix.

10.

B. The correct behavior for the indent size and the Keep Tab option is to fill in with space characters for the remainder if the indent size is not an even multiple of the tab size.
x A, C, and D. These are incorrect definitions for the behavior when the tab size is not the same as the indent size and the Keep Tab option is selected.

11.

A and D. Examples of good user interface design are allowing the user to cancel out of transactions and using consistent color schemes. This gives the user the ability to correct mistakes and applys a consistent look and feel.
x B and C. Not displaying feedback and having inconsistent user interface elements creates a nonstandard application that will potentially confuse the user and increase the need for application support.

Establishing Processes

12.

You are creating the testing plan. Identify the correct term for the following statement: “The rate of bugs resolved exceeds the rate of bugs found.”

  1. Zero bug bounce

  2. Fixed ship date mindset

  3. Bug convergence

  4. Project control

 c . bug convergence is where the rate of bugs resolved exceeds the rate of bugs found. this marks a milestone in the development. this date helps determine the release date schedule. x a , b , and d . zero bug bounce is a measure of the number of bugs found after testing has started. project control is concerned with whether or not the project is on schedule and how much the project costs. a fixed ship date mindset allows the developers and team to help prevent scope creep.

13.

You are creating the testing plan. Identify the correct term for indicating when there are no active bugs, usually followed by a “bounce” in the number of active bugs.

  1. Zero bug bounce

  2. Fixed ship date mindset

  3. Bug convergence

  4. Project control

 a . zero bug bounce is where there are no active bugs, but a new list of active bugs is found after testing. x b , c , and d . a fixed ship date mindset allows the developers and team to help prevent scope creep. bug convergence is the tracking of when the number of bugs resolved is lower than the number of bugs found. project control is concerned with whether or not the project is on schedule and how much the project costs.

14.

You are creating the testing plan. Identify the correct term for describing the intention to release the software to commercial users on a certain date.

  1. Zero bug bounce

  2. Fixed ship date mindset

  3. Bug convergence

  4. Project control

 b . fixed ship date mindset is having a projected release date of the software. this gives the team and the customer a way to determine if changes are necessary instead of waiting for the next release. x a , c , and d . zero bug bounce is a measure that tracks the number of bugs found after testing has started. bug convergence is the tracking of when the number of bugs resolved is lower than the number of bugs found. project control is concerned with whether or not the project is on schedule and how much the project costs.

15.

You are creating the testing plan. Identify the correct term for describing the examination of the cost based on budget, project progress, and team performance.

  1. Zero bug bounce

  2. Fixed ship date mindset

  3. Bug convergence

  4. Project control

 d . project control is the examination of the cost, the progress, and the team performance on a project. x a is incorrect because zero bug bounce is a measure that tracks the number of bugs found after testing has started. b is incorrect because a fixed ship date mindset helps the developers and the team prevent scope creep. c is incorrect because bug convergence tracks when the number of bugs resolved is lower then the number of bugs found.

16.

The development environment is to be established by creating isolated builds. Which of the following statements is correct for describing isolated builds? (Choose all that apply.)

  1. They do not require access to http://localhost. IIS does not need to be installed on every developer’s computer.

  2. Visual SourceSafe supports shared (multiple) checkouts and the merge, branch, pin, and label commands.

  3. When any one user is debugging, the debug process locks the shared web server, preventing other users from working on projects on the same server.

  4. Each developer must maintain his or her IIS settings to a common standard.

 b and d . with isolated builds, an iis instance is required locally and multiple checkout is available. x a is incorrect because isolated builds do require iis to be on the developer s machine. c is incorrect because debugging is performed locally and is not shared, so there is no interference with other developers.

17.

The development environment is to be established by creating semi-isolated builds. Which of the following statements are correct for describing semi-isolated builds? (Choose all that apply.)

  1. Does not require access to http://localhost. IIS does not need to be installed on every developer’s computer.

  2. It supports shared (multiple) checkouts and the merge, branch, pin, and label commands.

  3. When any one user is debugging, the debug process locks the shared web server, preventing other users from debugging projects on the same server.

  4. Each developer must maintain his or her IIS settings to a common standard.

 a and c . semi-isolated builds do not require a local iis, and because debugging is done against a shared instance, the developer debugging locks other developers from debugging against the server. x b is incorrect because multiple checkouts, merge, and additional features are not supported on nonisolated builds. d is incorrect because each developer will not be maintaining iis in this environment.

18.

The development environment is to be established by creating nonisolated builds. Which of the following statements are correct for nonisolated builds? (Choose all that apply.)

  1. It does not require access to http://localhost. IIS does not need to be installed on every developer’s computer.

  2. It supports shared (multiple) checkouts and the merge, branch, pin, and label commands.

  3. When any one user is debugging, the debug process locks the shared web server, preventing other users from working on projects on the same server.

  4. File access is used.

 a , c , and d . nonisolated builds do not require the developer to maintain a local iis because multiple checkout is unavailable and file access is used. x b is incorrect because you would not support multiple checkouts during nonisolated builds.

19.

You are creating the development standards. Identify the types of issues to be examined by the code reviews. (Choose all that apply.)

  1. Code syntax

  2. Standards

  3. Design

  4. Proof-of-concept

 a and b . code reviews look at the syntax of the code and where standards have been followed. x c and d are incorrect because the design and proof-of-concept are determined before code is written; therefore, you would not perform these during a code review.

Answers

12.

C. Bug convergence is where the rate of bugs resolved exceeds the rate of bugs found. This marks a milestone in the development. This date helps determine the release date schedule.
x A, B, and D. Zero bug bounce is a measure of the number of bugs found after testing has started. Project control is concerned with whether or not the project is on schedule and how much the project costs. A fixed ship date mindset allows the developers and team to help prevent scope creep.

13.

A. Zero bug bounce is where there are no active bugs, but a new list of active bugs is found after testing.
x B, C, and D. A fixed ship date mindset allows the developers and team to help prevent scope creep. Bug convergence is the tracking of when the number of bugs resolved is lower than the number of bugs found. Project control is concerned with whether or not the project is on schedule and how much the project costs.

14.

B. Fixed ship date mindset is having a projected release date of the software. This gives the team and the customer a way to determine if changes are necessary instead of waiting for the next release.
x A, C, and D. Zero bug bounce is a measure that tracks the number of bugs found after testing has started. Bug convergence is the tracking of when the number of bugs resolved is lower than the number of bugs found. Project control is concerned with whether or not the project is on schedule and how much the project costs.

15.

D. Project control is the examination of the cost, the progress, and the team performance on a project.
x A is incorrect because zero bug bounce is a measure that tracks the number of bugs found after testing has started. B is incorrect because a fixed ship date mindset helps the developers and the team prevent scope creep. C is incorrect because bug convergence tracks when the number of bugs resolved is lower then the number of bugs found.

16.

B and D. With isolated builds, an IIS instance is required locally and multiple checkout is available.
x A is incorrect because isolated builds do require IIS to be on the developer’s machine. C is incorrect because debugging is performed locally and is not shared, so there is no interference with other developers.

17.

A and C. Semi-isolated builds do not require a local IIS, and because debugging is done against a shared instance, the developer debugging locks other developers from debugging against the server.
x B is incorrect because multiple checkouts, merge, and additional features are not supported on nonisolated builds. D is incorrect because each developer will not be maintaining IIS in this environment.

18.

A, C, and D. Nonisolated builds do not require the developer to maintain a local IIS because multiple checkout is unavailable and file access is used.
x B is incorrect because you would not support multiple checkouts during nonisolated builds.

19.

A and B. Code reviews look at the syntax of the code and where standards have been followed.
x C and D are incorrect because the design and proof-of-concept are determined before code is written; therefore, you would not perform these during a code review.

Establishing Quality and Performance Metrics

20.

While examining the management of the solution, you want to keep an eye on items that can effect the return on investment (ROI) of the solution. Identify the positive ROI situations. (Choose all that apply.)

  1. Greater number of support personnel

  2. Reduction of staff

  3. Reduction of old hardware

  4. Increased support calls

 b and c . reduction of staff and old hardware affect the return of investment by allowing the application to be more stable and have reduced support costs. x a and d are incorrect because adding support personnel and increasing support calls and complaints affects the roi by making the application one that will have constant maintenance and fixes. they also increase the support cost of the application.

Answers

20.

B and C. Reduction of staff and old hardware affect the return of investment by allowing the application to be more stable and have reduced support costs.
x A and D are incorrect because adding support personnel and increasing support calls and complaints affects the ROI by making the application one that will have constant maintenance and fixes. They also increase the support cost of the application.

Lab Question

1.

Create a C#.NET console application to copy web server log files from remote locations, preprocess them, and load them into a warehouse table. Then generate rollup information from the warehouse table and populate the report structures. The source servers and file locations will be stored on multiple key nodes in the config file that define a) the web server name, b) the file location of the logs, and c) the web site URL for which the logs describe traffic. All temporary files must be destroyed upon completion of processing, and all system notifications, successes, or failures should be written to the event log. The application config file should define a Panic Email key that should be used when a catastrophic failure occurs.

Identify the types of documents necessary to be created for this solution.

the console application would need project documents as follows: a functional specifications document to lay out the requirements necessary for the solution and to determine if the project team and the customer understand the needs of the solution. this document typically provides a high-level overview of the solution and the timelines for completion. the next document would be the technical specifications document. this document would detail the different layers of the application, such as that the user services would be the actual console application and that the data layer would be in sql and in the file system. it is also necessary to keep key information for the solution in an app.config file that will also be defined in the document. the last document would be the deployment document. this document would detail how to create the sql databases and tables necessary for the solution. it would also detail the specific environment variables for the different deployment environments and how to move the application into each environment.

Answers

1.

The console application would need project documents as follows: a functional specifications document to lay out the requirements necessary for the solution and to determine if the project team and the customer understand the needs of the solution. This document typically provides a high-level overview of the solution and the timelines for completion. The next document would be the technical specifications document. This document would detail the different layers of the application, such as that the user services would be the actual console application and that the data layer would be in SQL and in the file system. It is also necessary to keep key information for the solution in an app.config file that will also be defined in the document. The last document would be the deployment document. This document would detail how to create the SQL databases and tables necessary for the solution. It would also detail the specific environment variables for the different deployment environments and how to move the application into each environment.




MCSD Analyzing Requirements and Defining. NET Solutions Architectures Study Guide (Exam 70-300)
MCSD Analyzing Requirements and Defining .NET Solutions Architectures Study Guide (Exam 70-300 (Certification Press)
ISBN: 0072125861
EAN: 2147483647
Year: 2003
Pages: 94

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net