CIS 599 Project Deliverable 2: Business Requirements
Running Head: PROJECT PLAN-BUSINESS REQUIRMENT DOCUMENT 1
PROJECT PLAN-BUSINESS REQUIRMENT DOCUMENT 21
Project Plan-Business Requirement Document
CIS 599 Graduate Info Systems Capstone
Abstract
After finishing project plan inception with introduction Documenting the existing IT network and system is very important. Many businesses have a process in place to assist with project management and implementation. One opportunity for improvement involves making reasonable estimates of how big a project is and how much it is going to cost. There are many different names for tools used with this process: business needs specification, requirements specification or, simply, business requirements. Business requirements are the critical activities of an enterprise that must be performed to meet the organizational objective(s) while remaining solution independent. A business requirements document (BRD) details the business solution for a project including the documentation of customer needs and expectations. If an initiative intends to modify existing or introduce new hardware/software, a new BRD should be created. The BRD process can be incorporated within a Six Sigma DMAIC Define, Measure, Analyze, Improve, and Control culture. Completion of a quality requirements document allows user needs and expectations to be captured, so that infrastructure and information systems can be designed properly. Using the requirements document provided in the course shell as a part of the requirements gathering process. You are to assess the needs of the company as it prepares to become a multinational organization. You must consider current and future trends and requirements; however, assumptions should be realistic and carefully considered. The needs of the organization should be documented. Later deliverables will focus on specifics of all requirements.
Here in the Business Require Document I will again explain Project overview and current background process then I will explain scope of the project in detail. First in the scope I will describe the scope and analyze how to control the scope and control of the scope. Later in the first part I will elaborate possible risks, constraints, and assumptions then integration with Database and Data Warehousing, Cloud Technology and Virtualization, and Network Infrastructure and Security. In the second section I will assess the human capital that may be needed to complete the project, ensuring that necessary skill sets are identified then outsourcing or offshoring needs that may be required to accomplish project. In the last section I will define relevant terms that will be used throughout the project and then cost projections for staffing, infrastructure, and other resources.
I will separately attached Revised Project plan in MS Project (.mpp file)
Document Control
Change Record
|
Date |
Author |
Version |
Change Reference |
|
11/1/12 |
Mr. Patel |
1.1 |
Introduction |
|
12/14/12 |
Dr Baker |
1.2 |
Add 3 main.5 subtask |
|
12/24/12 |
Mr. David |
1.3 |
Database update |
|
1/4/13 |
Mr. David |
1.4 |
Bug fix in software |
Reviewers
|
Name |
Position |
|
Dr Jack |
Project Manager |
|
Mr. Patel |
CIO |
|
Mr. Thomas Baker |
Assistant Project Manager |
|
Mr. David |
Sr. Software engineer |
Table of Contents
4Document Control
Business Requirements 6
SCOPE 6
Describe the scope and analyze how to control the scope. 6
Speculate and give justifications for how to control scope 8
Assess the human capital that may be needed to complete the project, ensuring that 15
necessary skill sets are identified. 15
Speculate on possible outsourcing or offshoring needs that may be required to accomplish project. 17
Define relevant terms that will be used throughout the Project 19
Include Cost projection for staffing, infrastructure and other resources. 20
Costs of Project 20
Noticeable costs associated are listed in the following table 20
Business Requirements
Project Overview- The Project Plan of our company will provide a definition of the project, including the project’s goals and objectives. Additionally, the Plan will work as an agreement between the following parties: Project Sponsor, Steering Committee, Project Manager, Project Team, and other personnel associated with and/or affected by the project. The project includes the followings: project purpose, business and project goals and objectives, scope and expectations, roles and responsibilities, assumptions and constraints, project management approach, ground rules for the project, project budget, project timeline, the conceptual design of new technology.
Background including current process- I will be the Chief Information Officer (CIO) of this company and I was told to merge my company to multinational company of equal size and I will be responsible for developing a project plan to strategically integrate all systems, including databases and infrastructure. I will have 2-month time to expand my company from 1 floor to 3 floors. The IT role of the project is deals with all areas of an organization's network storage and retrieval. It includes not only the company's computers and servers, but also the phone networks and telecommunication. Information technology literally manages the technology that handles a company's information: online, on computers, on servers and on telephones.
SCOPE
Describe the scope and analyze how to control the scope.
“In project management, the term scope has two distinct uses- Project Scope and Product Scope” (Schwalbe, 2013). Scope involves getting information required to start a project, and the features the product would have that would meet its stakeholder’s requirements. "The work that needs to be accomplished to deliver a product, service, or result with the specified features and functions. The features and functions that characterize a product, service, or result. Notice that Project Scope is more work-oriented, while Product Scope is more oriented toward functional requirements. If requirements are not completely defined and described and if there is no effective change control in a project, scope or requirement creep may ensue. Scope creep management is also important for effective project management. Projects are expected to meet strict deadlines with resource restraints, and an unvetted and unapproved change in the scope can affect the success of the project. Scope creep sometimes causes cost overrun. Scope creep is a term, which refers to the incremental expansion of the scope of a project, which may include and introduce more requirements that may not have been a part of the initial planning of the project, while nevertheless failing to adjust schedule and budget. There are two distinct ways to separate scope creep management. The first is business scope creep, and the second is called features also technology scope creep. The type of scope creep management is always dependent on the people who create the changes. Business scope creep management occurs when decisions that are made with reference to a project are designed to solve or meet the requirements and needs of the business. Business scope creep changes may be a result of poor requirements definition early in development, or the failure to include the users of the project until the later stage of the systems development life cycle. Management system. Items deemed out of scope go directly through the change control process and are not automatically added to the project work items. The Project Scope Management plan is included in as one of the sections in the overall Project Management plan. It can be very detailed and formal or loosely framed and informal depending on the communication needs of the project. Features Technology scope creep occurs when the scope creep is introduced by technologists adding features not originally contemplated. Customer-pleasing scope creep occurs when the desire to please the customer through additional product features adds more work to the current project rather than to a new project proposal. Gold-plating scope creep occurs when technologists augment the original requirements because of a bias toward "technical perfectionism" or because the initial requirements were insufficiently clear or detailed.
Scope Control: Any changes in the scope of the project will be controlled through consultation with the parties in the agreement and the permission of the Chief Executive Officer. If control scope is allowed to creep you will lose control of the project and unofficial changes in product scope will cause the project to get behind schedule and to over-run its budget. The most important aspect of this is to take consideration of the impact of control scope on schedule, cost, quality, resources, risk, etc. on any such potential changes to scope. Also important is to ensure that the underlying causes of scope change requests are fully understood and managed, and while doing so to prevent any unnecessary change requests for proceeding further.
Speculate and give justifications for how to control scope
Control Scope process
Changes to scope are an ongoing process that can start as soon as the scope baseline is created.
Control Scope inputs-There are five inputs to the control scope process:
Project management plan-This contains the scope baseline consisting of the WBS codes WBS dictionary as well as the project scope statement. It contains the scope management plan describing how control scope will occur as well as the change control plan describing the project change control system. The project management plan also contains the configuration management plan describing how the physical elements of the product will be controlled, and the requirements management plans describing how the project requirements will be managed and controlled.
Work performance information. This provides information on deliverable status and describes which deliverables are complete, which are currently ‘work in progress’, and how much work remains. It will typically also include any issues, problems or risks that the development team is dealing with for particular deliverables or products.
Requirements documentation. This is particularly useful as an input because whenever a change request is raised or detected, the requirements documentation acts as a reference to understand what was originally agreed so that the change can be evaluated against the backdrop of the regional requirement.
Requirements traceability matrix. -This helps the project manager to a value weights potential changes and change requests with regard to the original requirement. It also helps to identify the source of each requirement select the appropriate stakeholders can be involved and consulted as is appropriate.
Organizational process assets-This will normally cover any particular policies and procedures that have been laid down by the delivery organization regarding scope management. As a consequence of scope, one of the tools is variance analysis where the causes of such variances and lessons learned are documented. This may cause change requests possibly for taking corrective or preventative actions, or maybe defect repair. The upshot of this is normally that the scope baseline will need to be updated and that will normally mean schedule and cost baselines need you to change as well.
Control Scope outputs.
There are five outputs from the control scope process:
Work performance measurements.-These will show how actual progress is different from the original plan and such measurements are collected as part of the control scope process is used by the communications process, report performance.
Organizational process assets updates.-Whenever any form of corrective action is implemented, it is highly likely that changes will also need to be made to any organizational process assets, is clearly they were not entirely adequate this time, and will need to be updated for future projects.
Change requests-If any changes are made to the scope baseline, then these must be incorporated as updates to the WBS. If such a change results in enhancing the original scope, then this two must be decomposed down to the level of work packages, causing additional changes to other documentation.
Project management plans updates. As already stated, any change in scope will need to be updated within the project management plan because of resulting changes in potentially cost, schedule, risk, quality, etc.
Project document updates. -Similar to the above examples, there may be other documentation that needs to be updated for example the risk logs or regular reports.
The Control Scope tool. -There is only one tool used within the control scope process:
Variance analysis. - According to et al’. (Varianceanalysis.org) Variance analysis is used to measure any such differences between what was originally defined within the scope baseline verses what was actually created, and this is a very effective way to investigate the root causes behind such differences. (In summary, to control scope, you will want to compare the baseline and requirements with the current actual results by conducting variance analysis. If a variance exists then a change requests should be sublimated. As a result of this work performance measurements will be created along with a updates to the project management plan, documentation and organizational process assets.
Identify possible risks, constraints, and assumptions.
Risk factors and Constraints
Risks factors include, but not limited to a) not having a commercial support high enough up the corporate ladder b) project management that has never built a data warehouse and insists that it is done like a transaction system c) in-fighting within your team d) fraudulent the database to be transaction- oriented vs. aggregation oriented and e) not having your user community involved in the requirements and development process.
When you try to merge with multinational companies, political risk refers to the risk that a host country will make political decisions that will prove to have adverse effects on the multinational's profits and/or goals. Adverse political actions can range from very detrimental, such as widespread destruction due to revolution, to those of a more financial nature, such as the creation of laws that prevent the movement of capital. In general, there are two types of political risk, macro risk and micro risk. Macro risk refers to adverse actions that will affect all foreign firms, such as expropriation or insurrection, whereas micro risk refers to adverse actions that will only affect a certain industrial sector or business, such as corruption and prejudicial actions against companies from foreign countries. All in all, regardless of the type of political risk that a multinational corporation faces, companies usually will end up losing a lot of money if they are unprepared for these adverse situations. For example, after Fidel Castro's government took control of Cuba in 1959, hundreds of millions of dollars worth of American-owned assets and companies were expropriated. Unfortunately, most, if not all, of these American companies had no recourse for getting any of that money back.
|
Risk |
Risk Level L/M/H |
Likelihood of Event |
Mitigation Strategy |
|
Project Size |
|
|
|
|
Person Hours |
H: Over 7000 |
Certainty |
Assigned Project Manager, engaged consultant, full project management approach and communications plan |
|
Estimated Project Schedule |
H: Over 6 months |
Certainty |
Created comprehensive project timeline with recurrent baseline reviews |
|
Team Size at Peak |
H: Over 12 members |
Certainty |
Comprehensive communications plan, frequent meetings, tight project management omission |
|
Number of Interfaces to Existing Systems Affected |
H: Over 2 |
Certainty |
Develop interface control document immediately |
Assumptions
The following assumptions were made in preparing the Project Plan:
1. I have assumed that all project plan policy has been written and manual is ready.
2. There will no issue with budget of the project. There will be no problem regarding finance.
3. Written agreement has already been signed with multinational company as far as merging is
Concern.
4. All the team member will join regular meeting as per cycle for timely implementation of the project.
5.Failure to identify changes to draft deliverables within the time specific in the project timeline will result in project delays.
6.I have assumed that the entire project member will follow Communication Plan.
7.Mid and upper management will foster support and buy in of project goals and objectives.
8.The city will ensure the continuation of a technological infrastructure that can support the new mobile technology.
9.All project participants will abide by the guiding principle identified within this plan.
10.Some of my team member always communicates with the entire multinational company team member.
Describe the needed integration with other systems and infrastructure.
Database and Data Warehousing
In computing, a data warehouse or enterprise data warehouse (DW, DWH, or EDW) is a database used for reporting and data analysis. It is a central repository of data, which is created by integrating data from one or more disparate sources. Data warehouses store current as well as historical data and are used for creating trending reports for senior management reporting such as annual and quarterly comparisons. The data stored in the warehouse are uploaded from the operational systems such as marketing, sales etc., shown in the figure to the right. The data may pass through an operational data store for additional operations before they are used in the DW for reporting.
The typical ETL-based data warehouse uses staging, data integration, and access layers to house its key functions. The staging layer or staging database stores raw data extracted from each of the disparate source data systems. The integration layer integrates the disparate data sets by transforming the data from the staging layer often storing this transformed data in an operational data store (ODS) database. The integrated data are then moved to yet another database, often called the data warehouse database, where the data is arranged into hierarchical groups often called dimensions and into facts and aggregate facts. The combination of facts and dimensions is sometimes called a star schema. The access layer helps users retrieve data.
Cloud Technology
Cloud computing, or something being within the cloud, is an expression used to describe a variety of computing concepts that involve a large number of computers connected through a real-time communication networks such as the Internet. In science, cloud computing is a synonym for distributed computing over a network and means the ability to run a program on many connected computers at the same time. The phrase is also more commonly used to refer to network-based services which appear to be provided by real server hardware, which in fact are served up by virtual hardware, simulated by software running on one or more real machines. Such virtual servers do not physically exist and can therefore be moved around and scaled up (or down) on the fly without affecting the end user—arguably, rather like a cloud. The popularity of the term can be attributed to its use in marketing to sell hosted services in the sense of application service provisioning that run client server software on a remote location.
Virtualization
Virtualization, in computing, refers the act of creating a virtual (rather than actual) version of something, including but not limited to a virtual hardware platform, operating system (OS), storage device, or network resources. Hardware virtualization or platform virtualization refers to the creation of a virtual machine that acts like a real computer with an operating system. Software executed on these virtual machines is separated from the underlying hardware resources. For example, a computer that is running Microsoft Windows may host a virtual machine that looks like a computer with the Ubuntu Linux operating system; Ubuntu-based software can be run on the virtual machine Desktop virtualization is the concept of separating the logical desktop from the physical machine.
One form of desktop virtualization, virtual desktop infrastructure (VDI), can be thought as a more advanced form of hardware virtualization. Rather than interacting with a host computer directly via a keyboard, mouse, and monitor, the user interacts with the host computer using another desktop computer or a mobile device by means of a network connection, such as a LAN, Wireless LAN or even the Internet. In addition, the host computer in this scenario becomes a server computer capable of hosting multiple virtual machines at the same time for multiple users. Operating system-level virtualization, hosting of multiple virtualized environments within a single OS instance. Application virtualization and workspace virtualization, the hosting of individual applications in an environment separated from the underlying OS. Application virtualization is closely associated with the concept of portable applications. Service virtualization, emulating the behavior of dependent (e.g., third-party, evolving, or not implemented) system components that are needed to exercise an application under test (AUT) for development or testing purposes. Rather than virtualizing entire components, it virtualizes only specific slices of dependent behavior critical to the execution of development and testing tasks.
Network Infrastructure and Security
Infrastructure security is the security provided to protect infrastructure, especially critical infrastructure, such as airports, highways rail transport, hospitals, bridges, transport hubs, network communications, media, the electricity grid, dams, power plants, seaports, oil refineries, and water systems. Infrastructure security seeks to limit vulnerability of these structures and systems to sabotage, terrorism, and contamination. Critical infrastructures naturally utilize information technology as this capability has become more and more available. As a result they have become highly interconnected, and interdependent. Intrusions and disruptions in one infrastructure might provoke unexpected failures to others. How to handle interdependencies becomes an important problem. The most recent example of vulnerable infrastructure was the electrical grid in 2003, when Northeastern American areas experienced a power outage that appears to have originated in the Midwest, and possibly from a tree branch.
Assess the human capital that may be needed to complete the project, ensuring that necessary skill sets are identified.
According to et al’. (Gamage, 2013) Human Capital is one of the key areas, which an organization should consider, when thinking about the organizational success and existence. Especially task related human capital helps to detect and explore new business opportunities such as new projects, and it’s easy to absorb new knowledge with similar prior knowledge . Therefore task related human capital is more positively related to business success than non-task related human capital. And human capital is an important factor for those industries with higher level of technology. Because skilled and experience human resource is the only way to adopt new knowledge and skills. And apart from those, Human capital is mostly important for young business than, established organizations. Young organizations need to compete with other established firms, and this needs expertise knowledge and skills to take quick decisions.
As I have mention in the first part of the project inception we have currently 25 employees working in the organization. After merging we will have about 65 employees. CIO will be a ringmaster of this project and know everything related to project. He is the only person who will have 100% authority to do everything. There are many groups of people involved in both the project and project management lifecycles.
The Project Team is the group responsible for planning and executing the project. It consists of a Project Manager and a variable number of Project Team members, who are brought in to deliver their tasks according to the project schedule.
According to et al’. (Lane 2011) The Project Manager develops the Project Plan with the team and manages the team’s performance of project tasks. It is also the responsibility of the Project Manager to secure acceptance and approval of deliverables from the Project Sponsor and Stakeholders. The Project Manager is responsible for communication, including status reporting, risk management, escalation of issues that cannot be resolved in the team, and, in general, making sure the project is delivered in budget, on schedule, and within scope.
The Project Team Members are responsible for executing tasks and producing deliverables as outlined in the Project Plan and directed by the Project Manager, at whatever level of effort or participation has been defined for them. On larger projects, some Project Team members may serve as Team Leads, providing task and technical leadership, and sometimes maintaining a portion of the project plan.
According to et al’. (Schwalbe 2013) The Executive Sponsor is a manager with demonstrable interest in the outcome of the project that is ultimately responsible for securing spending authority and resources for the project. Ideally, the Executive Sponsor should be the highest-ranking manager possible, in proportion to the project size and scope. The Executive Sponsor acts as a vocal and visible champion, legitimizes the project’s goals and objectives, keeps abreast of major project activities, and is the ultimate decision-maker for the project. The Executive Sponsor provides support for the Project Sponsor and/or Project Director and Project Manager and has final approval of all scope changes, and signs off on approvals to proceed to each succeeding project phase. The Executive Sponsor may elect to delegate some of the above responsibilities to the Project Sponsor and/or Project Director.
The Project Sponsor and/or Project Director is a manager with demonstrable interest in the outcome of the project who is responsible for securing spending authority and resources for the project. The Project Sponsor acts as a vocal and visible champion, legitimizes the project’s goals and objectives, keeps abreast of major project activities, and is a decision-maker for the project. The Project Sponsor will participate in and/or lead project initiation; the development of the Project Charter. He or she will participate in project planning (high level) and the development of the Project Initiation Plan. The Project Sponsor provides support for the Project Manager; assists with major issues, problems, and policy conflicts; removes obstacles; is active in planning the scope; approves scope changes; signs off on major deliverables; and signs off on approvals to proceed to each succeeding project phase. The Project Sponsor generally chairs the steering committee on large projects. The Project Sponsor may elect to delegate any of the above responsibilities to other personnel either on or outside the Project Team.
We will have backup team who will take response for Absence activities related to employees not showing up for work such as sick leave, industrial action, etc.. Unavoidable absence is referred to as Statutory Absence. All other categories of absence are termed "Controllable Absence”; Collaborative activities are related to the expenditure of time between more than one employees within an organizational context. Examples include: meetings, phone calls, instructor led training, etc.; Knowledge Activities are related to time expenditures by a single person and include finding/retrieving information, research, email, messaging, blogging, information analysis, etc.; and Process activities are knowledge and collaborative activities that result due to organizational context such as errors/rework, manual data transformation, stress, politics, etc
Speculate on possible outsourcing or offshoring needs that may be required to accomplish project.
To “go global” in a way that works for the market research organization and its clients, let me
Explore the critical success factors for building a client-centric global operating model. In a way before
While we are merging with multinational company we need outsourcing and offshoring both. All the designing, manufacture, architecture clerk work will be offshore. While all programming work will be done by outsourcing from India or china to reduce the cost of the project. Decisions should not be based exclusively on cost. A simple cost-benefit analysis may lead to an answer that doesn’t mesh with the model you want to build. The general Assumption is that outsourcing to countries like India and China is a cost-saver -- but you don’t necessarily win if the results don’t fit your desired business model or goals. Define your business needs specifically and clearly. Programming services, for example, can be successfully outsourced to India, delivering tangible benefits in terms of speed and cost. Conversely, if a project must be done in French, the language barriers add a level of complexity, requiring translation and extra hours that would eradicate any cost savings found in India. In this case, keep it local. Some clients expect a great deal of contact on a daily basis, looking for project managers who track their field work with deep expertise and provide a local presence for regular meetings. In this case, an onshore person can oversee the engagement, supported by an offshore team. For each need, categorize the client in different tiers and identify the proper ratio of offshore to outsourcing.
The firm intends to outsource for more opportunities in social media. It will outsource from firms that offer services on social networking and web sites. This is to enable clients create their profile and search for colleagues in business field, academic institutions and for fun. The firm will outsource the services from Friendster Corporation, which specializes on websites and social media communication. Friendster will assist users create blogs and watch videos from the websites. The services will allow users to adjust their personal profiles through various applications provided within the platform. This firm intends to get revenue through the advertisements in the web sites and social media. This is because; the advertisers usually target all users irrespective of their age groups or ethnicity. This will create great revenue for this firm whilst cutting on labor costs. Outsourcing will be like Data Processing and Data Conversion -Data Collection and processing in MS Excel, CSV and Other databases format to SPSS, Quantum, SAS etc. for further processing. Data Processing: Banner Tables Data processing and converting in tabulated form Data Processing: Data Analysis Services Advanced statistical services to promote fact based decision making for companies.
Define relevant terms that will be used throughout the Project
Terms that will be use throughout the project for purpose and structure of a project, committee, meeting, negotiation, or any similar collection of people who have agreed to work together to accomplish a shared goal. The terms of reference of a project are often referred to as the project charter. Terms of reference show how the scope will be defined, developed, and verified. They should also provide a documented basis for making future decisions and for confirming or developing a common understanding of the scope among stakeholders. In order to meet these criteria, success factors/risks and restraints should be fundamental keys. Creating detailed terms of reference is critical, as they define the:
Vision, objectives, scope and deliverables (i.e. what has to be achieved)
Stakeholders, roles and responsibilities (i.e. who will take part in it)
Resource, financial and quality plans (i.e. how it will be achieved)
Work breakdown structure and schedule (i.e. when it will be achieved
The "terms of reference" are created during the earlier stages of project management, immediately after the approval of a project business case. They are documented by the project manager and presented to project sponsor or sponsors for approval. Once the terms have been approved, the members of the project team have a clear definition of the scope of the project. They will then be ready to progress with the creation of the remaining project deliverables. This phrase is often used when describing the task that has been assigned to a consultant or advisor. As such, the consultant or advisor may be engaged via a contract with general terms of engagement that also incorporates the terms of reference that specifically describe the consultant's task.
Include Cost projection for staffing, infrastructure and other resources.
Employee salaries and benefits make up the majority of the state-operating budget. Agencies regularly monitor expenses and the resulting effect on the budget. Budgets are managed in Accounting System.HR/Payroll changes throughout the fiscal year can dramatically impact an agency's budget. Some examples of HR/Payroll events that affect budget projections are:
Across-the-board salary adjustments
Adding new positions
Employee changes: Leaves of Absence, retirements, and layoffs
Changes to benefit rates
Existing employees
Vacant positions that have a date in the "Intend to fill" field
Future salary, benefit rate, and other changes affecting large number of positions
Costs of Project
Noticeable costs associated are listed in the following table
|
Time spent in careful analysis XE "Analysis" of measurable needs |
$0.2 million |
|
Hardware costs XE "Design" |
$0.5 million |
|
Infrastructure |
$0.9 million |
|
Design XE "Design" and implementation effort |
$0.35 million |
|
On-going support and maintenance |
$0.47 million |
|
Software Costs |
$0.3 million |
|
Other Costs |
$2.7 million |
|
Time spent in careful analysis XE "Analysis" of measurable needs |
$0.2 million |
|
Staffing |
$1.4 million |
|
Other |
$0.2 million |
Reference:
Schwalbe, K. (2013). Information technology project management. (6th ed.). Cram101.
Varianceanalysis.org. (n.d.). Retrieved from
http://www.varianceanalysis.org/Gamage. (2013). Human Capital is an important factor for the
Success of an organization. Retrieved
Lamoreaux, Naomi R. “The great merger movement in American business, 1895-1904.” Cambridge
University Press, 1985
Lane, D., 2011, “The Chief Information Officer’s Body of Knowledge People, Process, and Technology”, John Wiley & Sons, Inc., Hoboken, NJ
Mark, M. & James, B., 2006, “Information Security: Principles and Practices”, Prentice Hall, Inc., Upper Saddle River, NJ