In this blog, 25.000 books will be uploaded, so far more than 1400 books are available. Books, will be added daily, please check this blog daily.
Saturday, December 4, 2010
MCSD Training Kit-Analyzing Requirements and Defining Solution Architectures
Course Overview
This self-paced course combines text, graphics, and review questions to teach you about analyzing requirements and defining solutions architecture. The course assumes that you will work through the book from beginning to end, but you can choose a customized track and complete only the sections that interest you.
The book is divided into the following chapters:
Chapter 1, "Enterprise Architecture" This chapter examines the need for application and infrastructure guidance at an enterprise level. It begins by suggesting that systems be implemented with an architecture-first process. Next, the chapter introduces the Microsoft Solutions Framework (MSF). Chapter 1 also examines the MSF Enterprise Architecture Model and its Business, Application, Information, and Technology Perspectives. This chapter additionally points out that the four primary goals of an enterprise architecture are that it be integrated, iterative, actionable, and prioritized. Finally, this chapter discusses how to begin the enterprise architecture process and continue to deliver systems and applications while the architecture process is underway.
Chapter 2, "Enterprise Applications" This chapter examines the features of modern enterprise applications, and issues that should be considered. It discusses designing large-scale, distributed, enterprise applications and the need to reduce their complexity. It also recommends managing this enterprise application complexity through abstraction, which involves grouping similar requirements together into a small number of abstract categories. Various architecture descriptions are discussed, such as the Unified Modeling Language (UML), Design Patterns, and AntiPatterns. Additionally, this chapter out-lines ten principles for delivering successful applications. Chapter 2 finally suggests that organizations use the several perspectives represented by Microsoft's Enterprise Application Model and discusses the application architecture framework provided by the separate MSF Application Model for Development.
Chapter 3, "Project Teams" This chapter discusses who is responsible for doing what so that all the different parts of an application project are managed properly. The chapter also discusses building a project team within the context of the MSF Team Model for Application Development (MSF Development Team Model). The discussion progresses from understanding the six equally vital team roles to finding and enlisting leaders from different parts of the organization. Chapter 3 also pinpoints specific responsibilities that must be fulfilled for a project to be successful, and assigns these responsibilities to specific team members. It looks at ways to analyze project requirements from the perspectives of different team members and also explores ways to scale the project team to fit the needs and size of the project. Finally, this chapter examines team and leadership characteristics that will help make an organization's use of its project resources more effective.
Chapter 4, "Development Process" This chapter is primarily devoted to the MSF Process Model for Application Development, otherwise known as the MSF Development Process Model. Rather than a step-by-step methodology, MSF is a structural framework that an organization can adapt to suit its particular needs. The MSF Development Process Model is the part of this framework that describes the life cycle of a successful software development project. Using a development framework has been successfully proven in the software industry to improve project control, minimize risk, improve product quality, and increase development speed. Also in this chapter, we discuss the Unified Process development framework along with its workflows, stages, and milestones.
Chapter 5, "Project Vision" This chapter describes the dynamics of the MSF Development Process Model's Envisioning Phase. This chapter also discusses what information to gather from the project stakeholders, how to create a product vision, how the MSF Development Team Model's various roles participate in the envisioning process, and what their responsibilities are. In addition, Chapter 5 examines how the envisioning process develops over a period of time. Finally, this chapter presents a detailed discussion of risk management, based on the MSF Risk Management Model.
Chapter 6, "Project Plan" This chapter outlines the process of mapping concepts to actions and explains team roles in the Planning Phase of the MSF Development Process Model. It takes an in-depth look at the MSF Design Process Model and the conceptual, logical, and physical architectures of an application. This chapter also discusses how the MSF Application Model's user, business, and data service layers can be incorporated into the application's physical architecture. The MSF Development Process Model's Functional Specification, Master Project Plan, and Master Project Schedule are all emphasized as key deliverables of the Planning Phase. Finally, Chapter 6 discusses principles of scheduling, as well as the ongoing task of risk management.
Chapter 7, "User Service Layer Technologies" This chapter examines how to create effective and efficient user interface (UI) designs. It also explores legacy, current, and future technologies that affect the user service layer design of the MSF Application Model. Additionally, this chapter discusses the impact of Web technologies on current application design techniques. We complete Chapter 7 with an in-depth look at implementing a Web-based application.
Chapter 8, "Business Service Layer Technologies" This chapter focuses on such issues as using an object context to manage state, using explicitly defined interfaces when possible, composing functionality, maintaining state across transaction boundaries, propagating errors, and programmatically controlling security. In addition, this chapter takes a detailed examination using COM and COM+ within the business service of an application's physical design. This chapter concludes with a detailed look at using COM components with Microsoft Transaction Server.
Chapter 9, "Data Service Layer Technologies" This chapter examines design issues related to data requirements and explores characteristics of different data access technologies. This chapter also discusses best uses for each access technology, and normalization of data and data integrity. In addition, this chapter identifies how business rules can affect application data and where these rules are implemented. Furthermore, Chapter 9 examines technologies that provide data access to legacy data system stores and Enterprise Resource Planning (ERP) applications. Finally, this chapter reviews COM+ In-Memory Database (IMDB) features that can improve data access performance.
Chapter 10, "Testing and the Production Channel" This chapter explains how to build a working environment that supports development, testing, certification, and production. Using real-life examples, this chapter describes the production channel and its goals. Chapter 10 thoroughly examines testing, and recommends several ways to execute and monitor tests. It also discusses ways to scale out an application's production environment by adding servers to the physical implementation. Finally, this chapter examines ways to classify program faults and failures, discuss the larger issue of product bugs, and describe methods of tracking, classifying, and resolving known bug problems.
Chapter 11, "Application Security" This chapter looks at different security-related protocols and the basic security concepts of authentication. It also examines encryption, which stores and passes information from one place to another so that it can't be read by anyone who intercepts it. Additionally, this chapter discusses access control, which determines what users are allowed to accomplish, and auditing, which records what goes on inside the operating system as users request and work with the resources the system makes available to them.
Chapter 12, "Development Deliverables" This chapter examines the creation process, including how the various team roles function during development. This chapter further explores testing, bug tracking, and the "zero-defect mindset," and also shows how the project management team makes effective trade-offs. In addition, this chapter discusses how multi-layer applications are implemented as monolithic or client/server, or distributed in physical form. Finally, Chapter 12 explores the end of the MSF Development Process Model's Developing Phase, when code-complete is reached, and all product features and original code are incorporated into the application.
Chapter 13, "Product Stabilization" This chapter emphasizes the evolutionary cycle the team will progress through to move from the Developing Phase's Scope Complete Milestone to the Stabilizing Phase's Release Milestone. We summarize this phase's effort as four primary steps: Fix the bugs, synchronize all product deliverables, ship the release, and extensively test the release. Leading up to the Release Milestone, the chapter identifies several key interim milestones that are reached by the continual iteration of the phase's steps. This chapter also provides some guidelines for the deployment of an application after the product is released. From the preplanning phases though pilot testing, support, and troubleshooting, we explore efficient ways to deploy the application with as little negative impact as possible on the users and their systems and networks.
Chapter 14, "Project Review" This chapter emphasizes the value of a solid project review, as it both relates to a project just completed and to the ongoing growth and improvement of the organization. The chapter examines the relationship between the project review and the Capability Maturity Model for Software, and also shows the project review's impotance in creating a best practice guide for the organization's development teams. This chapter examines the practical considerations of conducting a project review: when to schedule a project review, who should attend, and the proper physical setting for a project review.
Features of This Book
The following features are designed to enhance the usefulness of this course:
The overall structure reflects the way a development team would progress through the process of creating an application.
Each chapter contains reference material that also serves as additional recommended reading.
Each chapter ends with a short summary of the material presented.
Review questions at the end of each chapter let you test what you have learned in the chapter.
Case studies provide a different and interesting way to learn development and application design by participating in the complete development life cycle of a multi-layer, distributed application. Although the case study events are purely fictional, they provide fresh insight on how people build applications. See the "Case Studies" section for more information.
Conventions Used in This Book
Before you start reading any of the chapters, it is impotant that you understand the following notational conventions used in this book:
Italic is used for emphasis when defining new terms. Italic is also used for book titles.
Names of files and folders appear in Title Caps. Unless otherwise indicated, you can use all lowercase letters when you type a file or folder name in a dialog box or at a command prompt.
File name extensions appear in all lowercase.
Acronyms appear in all uppercase.
Monospace type represents code samples, examples of screen text, or entries that you might type at a command prompt or in initialization files.
Square brackets [ ] are used in syntax statements to enclose optional items. For example, [filename] in command syntax indicates that you can choose to type a file name with the command. Type only the information within the brackets, not the brackets themselves.
Braces { } are used in syntax statements to enclose required items. Type only the information within the braces, not the braces themselves.
Download
Another Training Kit Books
Another Software Engineering Books
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment