text:
Project Management Institute (CAPM-PMP)

Project Management is the application of knowledge, skills, tools and techniques to project activities to meet project requirement [PMBOK 1.3] There are books out there that teach about Project Management and the Project Management Body of Knowledge (PMBOK), and a few others teach how to pass CAPM/PMP. The intent of this book is to bridge the gap between knowledge of Project Management and how to use it in an exam. This book will be neutral in nature and does not cover a particular industry. As you can see from the table of contents, this book consists of several chapters. Exactly one chapter is dedicated to each Project Management Process. This will enable you to view each process as its own entity.

Audience
This book is intended for those who would like to become a Certified Associate in Project Management (CAPM) or a Project Management Professional (PMP), and for those who would like to get started in Project Management. If you are already certified, congratulations! This book will help you keep current on the subject. Understanding the content of this book does not require you to be an experienced project manager. It is useful to anyone willing to study the art of project management. A brief introduction at the beginning of each chapter gives an overview of what is to be covered. If you are an experienced project manager, you may encounter concepts with which you are already familiar. Feel free to skip those sections and proceed.

Authors
Murali Narayanan (Kb3lja)

Khawar Nehal (Khawar Nehal)

John CH Yang (User:johnCHyang)

- If you contribute to this book, if you wish, please add your name here.

E Jackson

S.Sushmitha

Olumide Idowu,PMP,M.sc(User:Nigeria)

Exam Information
This exam is conducted by Project Management Institute (PMI), a "not-for profit" (as opposed to "non-profit") organization dedicated for project management practices by setting standards and providing associations for project manager,through Prometric,an internationally acclaimed testing body/organization. This book covers PMI's Project Management Body of Knowledge (PMBOK), Third Edition published in 2004. The Fourth edition came out in December 2008. The Fifth edition was released 2012,and before the end of 2016,the sixth edition will be released too.

Prerequisite
The citations on this book are from the PMBOK 3.0 published in 2004. So it is advisable to have a copy of PMBOK 3.0 published by PMI.

Introduction
This part gently introduces the Project Management Fundamentals. Chapter 1 deals with the Framework of Project Management building the blocks for essential project management function. Chapter 2 provides an in-depth knowledge of the Project Life Cycle

Chapter 1 Project Management Framework
After reading this part, the user should be able to
 * Identify the difference between project and Operational Work.
 * Understand the characteristics of the project.

Definition of Project: A project is a temporary endeavor undertaken to create a unique product, service or result [1.2.1].

Characteristics of the Project:
 * Temporary
 * Have definite beginning and end
 * Create unique product or service
 * Have objectives that indicate completion

Temporary
Temporary in the sense that the project by itself has definite beginning, definite end and is not an ongoing process. Bear in mind, temporary does not apply to the product, service or result itself. Projects are carved to last long.

For instance, construction of road is a project. The project last for a specified period of time. Once the road is laid, the project is said to be complete. The project completion should be measurable. Once this project is completed, the on-going process of maintaining the road which is not a project will put in place. The road lasts longer while the project wraps until complete.

Unique
Product or service produced by the project is different from anything else on the market and involves creating something new to this environment. Unique nature does not mean that no such project exists. Consider construction of a bridge. It is considered as a project, because either the existing bridge is torn down and a new one is constructed or a new bridge is constructed. In the first case, since the outcome is a new bridge and not routine maintenance of the bridge, it becomes project. Even though the technology of bridge construction exists, it becomes unique as they are carried at different locations with different owner, different river.

Purposeful (Objective)
Well defined set of desired end result. One of the requirements of objective is that it is measurable. This quality of the objective will enable to mark the project complete.

Have Life cycle
Progress from an idea, through planning and execution, until they are complete. Have definite beginning and ending

Have interdependencies
Have defined sequence.

Progressive Elaboration
Developing in steps and continuing by increments. Project entities are described in broad terms at the start of the project but detailed as project progress. Initially this may look failure prone as the details are not detailed, but will eventually

Example
The activity undertaken to construct a bridge is considered as project as (1) the project ends by the time the construction is complete (2) have time limit as to when the bridge should be finished (3) Not a routine maintenance work (4) Will provide an ability to cross the river.

Portfolio / Program / Project
A portfolio can be a collection of programs or projects and without dependency between each other. One example or portfolio would be to improve facility services. It would be composed of a program to improve water, other to improve electricity, other to improve gas. Programs and projects are grouped to achieve strategic business objectives. Portfolio management is about management of one or more portfolios.

A program is a collection of projects, but they all share similar goals and would have benefits if coordinated together. Managing each of them alone would not allow to achieve same benefits. Program management helps in resolving issues constraints, aligning directions.

Project has a specific goal and scope.

Chapter 2 Project Life Cycle
A collection of generally sequential project phase whose name and number are determine by the control needs of the organization or organization involved in the project.

There also NO single way of defining an ideal project life cycle.

Chapter 3 Process Groups
Five process groups
 * 1) Initiating
 * 2) Planning
 * 3) Executing
 * 4) Controlling & Monitoring
 * 5) Closing

Ten Knowledge Areas
 * 1) Project Integration management
 * 2) Project Scope Management
 * 3) Project Time Management
 * 4) Project Cost Management
 * 5) Project Quality Management
 * 6) Project Human Resource Management
 * 7) Project Communications Management
 * 8) Project Risk Management
 * 9) Project Procurement Management
 * 10) Project Stakeholder Management (NEW)

Part II - Initiation Phase
Project Management Process Groups.

Part III - Planning Phase
Processes in this phase are

 * Develop a project plan
 * Create a scope statement
 * Create a WBS
 * Create an activity list
 * Construct a network diagram
 * Develop activity duration estimates
 * Identify critical path(s)
 * Develop a project schedule
 * Determine resource requirements
 * Estimate project costs
 * Establish a cost baseline
 * Create a quality management plan
 * Document team roles and responsibilities
 * Assign project staff
 * Create a communication management plan
 * Create a risk management plan
 * Identify project risks and triggers
 * Perform qualitative and quantitative analysis
 * Develop a risk response plan
 * Prepare a statement of work
 * Prepare a procurement document.

Chapter 7 Scope Planning
Have you ever made a trip to the grocery store just to buy a loaf of bread and milk. However when you check out you realize that you were enticed to buy meat, cookies, candy, pies, and every other item that looked tasty in store. It is easy to exceed your original intentions if you do not have a clear objective of what your plan of attack is and how you plan to prevent yourself from diverting from your original path.

The following section discusses scope management which is how to get your work completed – and make sure you only get the correct work completed. We will also discuss how as a project manager you can create a plan to control your projects scope to ensure you have a plan to keep your work in line with your customers requirements.

According to the PMBOK Project scope management is “the processes to ensure that the project includes all of the work required, and only the work required, to complete the project successfully”. The project scope statement also meets the following criteria

 * 1) It determines what is included in the project.
 * 2) It serves as a guide to determine what work is not needed to complete the project objectives
 * 3) It defines what work is needed to complete the project objectives.
 * 4) It serves as a point of reference for what is not included in the project.

All this contributes to show that a Project Scope Statement is really just a statement that tells all stakeholders for the project what work is required to complete the project. It is a great tool for a project manager to determine what work is included on the project and all the project manager to add or remove work from the project.

Inputs
Project Charter, Preliminary project scope statement, project management plan

Outputs
Scope Management plan

The Scope Management plan is a document that plays a key role at helping the project manager avoid possible issues with future scope changes, and scope creep. The Scope Management plan consists of some of the following characteristics.

 * 1) 	It can be very formal or informal
 * 2) 	The document describes how scope changes will be classified and identified
 * 3) 	The plan describes how the project scope will be managed
 * 4) 	The plan can be as detailed as the project manager deems necessary
 * 5) 	This document is considered a subsidiary piece of the overall project management plan.

Chapter 9 Create WBS
The WBS (Work Breakdown Structure) is a method of representing work packages, from the high level down to the low level. The project may be "Clean Kitchen" and is made of secondary level work packages such as "Wash Floor," "Clean Fridge," and "Wipe Countertops". "Wash Floor" might be broken down into "Prepare Materials," "Clear Floor of Objects," and "Scrub".

Work Packages should be broken down to whatever level is needed; either common sense takes over or the project scope limits the detail level. This is graphically represented by something such as:

Chapter 11 Activity Sequencing
Activity sequencing is a process for identifying dependencies between scheduled events.

Chapter 12 Activity Resource Estimating
This process is required for finding out what types of resources are required for each scheduled activity.

Chapter 13 Activity Duration Estimating
This process tries to find out the number of work periods shall be required for each activity which has been scheduled.

Chapter 14 Schedule Development
This process is used to analyze sequences of activities, schedule constraints, resource requirements, and activity durations to come up with a feasible project schedule.

Chapter 15 Cost Estimating
A good cost estimation includes the identification of cost components through thorough research. This enables the costs of a project to be monitored, and while the project is in progress, avoids cost overruns.

Inaccuracies in the cost estimation are inevitable. The goal is to be as realistic as possible

Typical cost components include labour, supplies, materials, equipments, and overheads.

S-Curve.

The S Curve is a tool which consists of a display of cumulative costs, labour hours or other quantities plotted against time.

The name of the S-Curve comes from the S-like shape of the curve, flatter at the beginning and end and steeper in the middle. The S-curve is useful as a cost estimation tool because it is the way most of the projects look like in the real world.

The S curve can be used as an indicator for many applications related to project management such as: target, baseline, cost, and time.

There are multiple types of S curves and they include :

The Cost versus Time S Curve. This is useful for projects that contain labour and non-labour tasks.

The Target S Curve. This is useful for the ideal progress of the project if all tasks are completed as currently scheduled.

The Value and Percentage S Curve. This is a useful for calculating the project's actual percentage completion.

The Actual S Curve. This one is useful in depicting the actual progress of the project until the present time.

Chapter 16 Cost Budgeting
This process is used to find out the quality standards and metrics which shall be used in the project and also how they can be met satisfactorily. Budgeting means allocation of funds, suppose the estimate is of 100 units, but the money which can be provided for that activity is only 70 units. then 70 units becomes our budget. moreover it is the comprehensive short-term operational plan for a business.

The bill of materials defines the complete set of materials required in order to create a product.

The BOM can be in the form of a tree with multiple levels. It can also be in a document format which is indented to the lowest level required, so that it accurately lists all parts and raw materials needed to make the specified product.

The BOM is then used by the project manager and/or purchasing department to order any supplies which are necessary for the project.

Chapter 18 Human Resource Planning
This process is carried out to find out the human resources required for the project.

Also the roles of all team members.

Reporting relationships among members.

Responsibilities of team members

And creating a staffing management plan.

Chapter 25 Plan purchases and Acquisitions
The 6 processes of procurement management:

 * 1)  Plan Purchases and Acquisitions
 * 2)  Plan Contracting
 * 3)  Request Seller Responses
 * 4)  Select Sellers
 * 5)  Contract Administration
 * 6)  Contract Closure

Types of bilateral procurement contracts

Request for Proposal (RFP): this is a request for a detailed proposal on price, how the work will be accomplished, skills and experience of the people to be included and various other details. These items of service are usually higher dollar value and tend to be for nonstandard items.

Request for Quotation (RFQ): requests a price quote per item and hour. These items are relatively low dollar value.

Invitation for Bid (IFB) or Request for Bid (RFB): requests a single price for the entire package of work. Items of service are usually high dollar value and are standard.

Chapter 34 Monitor and Control Project Work
This process is used to observe the execution of the project. The objective is to identify problems and issues in a timely manner and suggest corrective action so that the project's objectives can be met.

By knowing the variances of the project from the plan, corrective action can be suggested.

This includes monitoring project parameters and comparing them to the performance baseline.

Preventing the circumvention integrated change control so that only approved changes are implemented.

Thus avoiding scope creep and gold plating.

Chapter 48 Individual Integrity
Ensuring individual integrity and professionalism by adhering to legal requirements and ethical standards to protect the community and all stakeholders.

title: Project Management Institute (CAPM-PMP)


text:
Talk:Project Management Institute (CAPM-PMP)

Why Project Management?
Project Management is one of the field that did not get much industry attention. The reason for this is two fold. This subject often associated with another underlying industry, be it a constructional engineering or Information Technology, which acts as a back bone while Project Management makes it successful. The second reason is the benefit is often hidden to gain popularity or even get a credit. When you meet a successful Project Manager, he or she is normally associated with an industry. Though this is not a requirement for Project Management, but it is the fact. Let us face it, you can not identify 'Risks' if you are not familiar with the industry which is a crucial point in successful Project Management. Remember, Project Management Practices can be applied to literally any industry, the missing link between the best practices in Project Management and the industry itself will be the main course of this book. We tell you the bits and pieces of Project Management Practices and use your judgment as to how you can apply this to your industry.

Is this a new career?
Project Management is not new to us. Project Management exists since civilization and the need is ever growing. As early as third dynasty (2650 BC), when Egyptians build pyramids, they had exactly the same factors we have today – Time constraint, budget and resource. Netjerikhet Djoser was successful building pyramids, just because he used right tool to get the work done - Project Management.

Where to go from here?
Today, handful of universities offer courses on Project Management. One such course that attain popularity is Master of Science in Project Management (MSPM). There are few certifications out there that give the confident to hiring organization that the holder knows the best practices in Project Management. The accreditation depends on which part of the world you live. US and its affiliated countries recognize PMI's certification while UK affiliates recognize Prince2. Depending on your industry, each organization may follow a slightly different practices which are based on industry standard subsidized level of PMI or Prince2 practices.

How should I use this book?
If you are aiming at the certification from PMI (CAPM/PMP), then this book covers most of your need. Learn the basics, each process groups and knowledge areas processes thoroughly. As you learn through the prose, you will also learn how this has been applied or applicable to a set of industry – Then try to associate with this knowledge in your industry and advance.

Am I eligible?
Please visit PMI's website for eligibility requirements.

Can I submit this as SDL-PDU?
Not at this time. SDL PDU stands for Self-Directed Learning and PDU for Professional Development Unit. As this is currently work in progress book, I have no intention of taking to PMI for a proposal at this time. If this would ever change, you can find the details in this section.

Disclaimer
This work is no way related to PMI or it's affiliation thereby. As with all wiki works, put this book for good use.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
User:Sameerkale

I don't have a whole lot to put on here.

title: User:Sameerkale


text:
Ukrainian Dancing/Central Ukraine/Steps for Couples or Groups

To add to this page, go to Template:Steps. Click on edit this page, and then highlight and copy the entire template. Return to this page and click on edit this page. Go to the end of the page and paste the template. Update the template with your description of the steps.

Description
This step requires two dancers, usually one male and one female.
 * 1) The dancers stand side by side, right hip to right hip.  Each dancer places his or her right hand on his/her partner's waist, on the partner's left hand side.  The left arm is raised in fifth position.
 * 2) The dancers perform bihunets, turning in a circle around each other.

The direction of the step may be reversed. Dancers join left sides and raise their right arms into fifth position.


text:
User talk:64.40.46.30

Welcome to Wikibooks. We invite everyone to contribute constructively to our collection. Take a look at the welcome page if you would like to learn more about contributing. However, unconstructive edits are considered vandalism, and if you continue in this manner you may be blocked from editing without further warning. Please stop, and consider improving rather than damaging the hard work of others. Thanks. -- Herby talk thyme 09:31, 7 November 2006 (UTC)

title: User talk:64.40.46.30


text:
User:Newhoggy~enwikibooks/UTF8 for Haskell

This exercise describes how to convert a UTF8 string into a Unicode string in Haskell.

UTF8 is a superset of ASCII, so the following ASCII string is also a valid UTF8 string. To convert this to a unicode code point, simply take the ASCII ordinal value as the code point.

Non-ascii characters span multiple byte and take more work to convert to a unicode code point.

Every non-ASCII unicode character when encoding in UTF8 must consist of a leading byte and one or more trailing bytes. Trailing bytes are of the form 0x10nnnnnn so they are easy to recognise. Leading bytes are of the form 0x110nnnnn, 0x1110nnnn, or 0x1111nnnn, each signifying that there are 1, 2, or 3 trailing bytes respectively.

The UTF8 to unicode translation can be describe thus:

In the case of 2 bytes, if the resulting code point is less than or equal to 127, then the UTF8 character sequence is illegal because codepoints 0 to 127 are already represented in the ASCII subset. Notice that each trailing byte contributes 6 bits to the code point while the leading byte contributes 5, 4, or 3 bits to the code point depending on the type of leading byte. Keep this in mind because we will use bit shifting and recursion on this property for the translation.

The code
First we need to import the ord function from Data.Char and the bitwise operators .&. (bitwise AND), .|. (bitwise OR), and shiftL (bitwise shift left) from Data.Bits.

> import Data.Bits > import Data.Char

To help document the code we define UTF8 type synonyms for character and string datatypes. The type synonyms will make it clear which function argument, or return type contains what sort of data. > type Utf8Char = Char > type Utf8String = String

Here we define a helper function that will be used later on in the code. The function determines if a value is inclusively between two values.

> within :: Ord a => a -> (a, a) -> Bool > within value (min, max) = (min <= value) && (value <= max) > consumeUtf8 :: Int -> Int -> Utf8String -> String > consumeUtf8 ordinal 0 remainder = (chr ordinal):(fromUtf8 remainder) > consumeUtf8 ordinal n (next:remainder) = >  consumeUtf8 newOrdinal (n-1) remainder >  where >    nextOrdinal = (ord next) .&. (ord '\x3f') >    newOrdinal = (ordinal `shiftL` 6) .|. nextOrdinal > consumeUtf8 _ n [] = >  error "Incomplete character.  Expecting " ++ (show n) ++ " more bytes." > fromUtf8 :: Utf8String -> String > fromUtf8 [] = [] > fromUtf8 (lead:remainder) >  | lead `within` asciiRange = fromUtf8 remainder >  | lead `within` plus1Range = consumeUtf8 (ordinal plus1Mask) 1 remainder >  | lead `within` plus2Range = consumeUtf8 (ordinal plus2Mask) 2 remainder >  | lead `within` plus3Range = consumeUtf8 (ordinal plus3Mask) 3 remainder >  | otherwise = error $ "Invalid lead byte: " ++ (show lead) >  where >    asciiRange = ('\x00', '\x7f') >    badRange00 = ('\x80', '\xbf') -- Only tail bytes in this range >    badRange01 = ('\xc0', '\xc1') -- Prevent duplicating code points <= 127 >    plus1Range = ('\xc2', '\xdf') >    plus2Range = ('\xe0', '\xef') >    plus3Range = ('\xf0', '\xf4') >    badRange02 = ('\xf5', '\xff') -- Illegal in Unicode, or RFC 3629 >    plus1Mask = '\x1f' >    plus2Mask = '\x0f' >    plus3Mask = '\x07' >    ordinal mask = (ord lead) .&. (ord mask)


text:
Wikijunior:Life/Today/Classifying books

Think about how books are organised in a library. How do you find the book called High-speed Trains?.

Books on "Trains" should be kept together.

All the books on trains might be in with all the other books on "Transport".

Books on transport will be in "Non-fiction" (books of facts).

All the books for children will be in the "Children's" part of the library.

So books in a library are organised by the sort or class of books they are.

We say they are classified. It makes them easy to find.

Linnaeus classified plants and animals in the same sort of way.

Just like organising books, the idea was to think of what was the same about all the plants or animals in a group.

title: Wikijunior:Life/Today/Classifying books


text:
User talk:202.83.175.44

Welcome to Wikibooks. We invite everyone to contribute constructively to our collection. Take a look at the welcome page if you would like to learn more about contributing. However, unconstructive edits are considered vandalism, and if you continue in this manner you may be blocked from editing without further warning. Please stop, and consider improving rather than damaging the hard work of others. Thanks. -- Herby talk thyme 10:49, 7 November 2006 (UTC)

title: User talk:202.83.175.44


text:
Talk:Biblical Studies/Christianity/The essence of Christianity

Hi - I've reverted to a previous edition on this page which does not put forward the doctrine of God's causation of man's fall, and other strongly deterministic elements. Although, not being all-knowing, I can't judge whether these ideas are right or wrong - these ideas shouldn't be evident in a page on the essence of Christianity when the vast majority of Christians would disagree with them! Hope that is ok, please talk if you disagree! Johnbby 7/11/06

Revision
"We have all sinned" obviously from the apostle Paul, but not a direct quote and NPOV would deem unquoted, undefined We out of place here. - Athrash | T a l k 20:30, 11 February 2008 (UTC)


text:
TeX/def

Description
allows you to define new macros. The command must begin with an escape character (category code 0) and be composed of a series of letters (category code 11) or one single non-letter, following the escape character. (For instance  or  .)  Alternatively, <command> can be an active character (category code 13). Then, the parameter text tells TeX the valid syntax of the command being defined; furthermore, in the parameter text, one can include arguments (denoted by, etc., up to  ) which can be reused in the replacement text. For example, in \def \foo [#1]#2{The first argument is ``#1, the second one is ``#2} The first argument must be delimited by two square brackets while the second may be a single character (strictly speaking, a single token having a category code distinct from 1 or 2) or any balanced text surrounded by braces. Finally, the replacement text tells TeX what the command is supposed to expand to and how to deal with the arguments if any (see example above).

Note that there should not be any space after parameter text. You can use % character if your command definition takes up multiple lines, for example \def \foo [#1]#2% {The first argument is ``#1''.

The second one is ``#2''}

Contrarily to LaTeX (with ), TeX doesn't check whether the command to be defined is important or not. You might well say  etc., except that the most probable is that you encounter some problems quite quickly. One way to be safe in this respect is to write \ifx <command> \undefined \def <command>. . . \fi

can be preceded by \global (the redefinition isn't confined to the current group, also controlled by \globaldefs), \long (the command admits long arguments), \outer (the command is not tolerated in parts of the code which are read at high speed).

See also the commands \let, \edef, \xdef.

Examples
This defines a simple shortcut: \def \NAS {National Academy of Science} \def \author {William {\sc Smith}}

This defines a quotation environment \def \beginquote {\par \begingroup \narrower} \def \endquote {\par \endgroup}

A small tester with:  with one argument, and   with two arguments - that can be run without typesetting (e.g. can be pasted in   shell (\end{document} is left out, so the shell remains open after it executes the pasted code)): \documentclass{article} \begin{document} % one arg def: \def\testonearg[#1]{\typeout{Testing one arg: '#1'}} %call: \testonearg[test this] % two arg def: \def\testtwoarg[#1]#2{\typeout{Testing two args: '#1' and '#2'}} %call: \testtwoarg[test this first]{this is, the second test.} % two arg def (B): \def\testtwoargB#1#2{\typeout{Testing two args B: '#1' and '#2'}} %call: \testtwoargB{test this first}{this is, the second test.}

% output: %*Testing one arg: 'test this' %*Testing two args: 'test this first' and 'this is, the second test.' %*Testing two args B: 'test this first' and 'this is, the second test.'

title: TeX/def


text:
TeX/gdef

Description
works as \def except that the definition is automatically set as \global, or in other words, visible from the outside of the current group.

title: TeX/gdef


text:
ZK/How-Tos/HowToSetupEclipseWtpAndXAMPPForZK

Introduction
To use Eclipse as IDE to develop web applications using the framework ZK, often database access is needed too. This HowTo shows the basic steps in creating an environment in which Eclipse runs together with ZK, XAMPP, MySQL, Tomcat and JDBC. Often occurring errors are described. The installation as described runs on Windows 2000 machine.

Downloads
The following software packages should be downloaded:
 * ZK: The ZK libraries (Homepage ZK);
 * Eclipse & WTP: The Eclipse IDE combined with the Web Tools Platform (WTP is also separately available as part of the Callisto Project) (Homepage Web Tools Platform);
 * XAMPP: An Apache distribution with MySQL, phpMyAdmin (Homepage XAMPP);
 * Tomcat: The Tomcat server/container (XAMPP Add-ons);
 * JDBC Connector: A converter of JDBC (Java Database Connectivity) calls to MySQL protocols (MySQL Connector/J 3.1.14, NOT 5.0.4).

Installation
How to setup Eclipse with ZK is discussed in How To Setup Eclipse Wtp For ZK.

Locations
The Apache distribution is installed in the ${XAMPP} folder. The Tomcat server in the ${XAMPP}/tomcat folder: ${TOMCAT}. The MySQL connector is placed in the ${TOMCAT}/common/lib folder. Eclipse automatically finds all the jars in this folder, so it is not necessary to add it manually as an External Jar to a project. The project in Eclipse runs in the ${APPL} folder (can be outside Tomcat container).

Binding together
Opposed to [1] the information about the connection to the database will be stored in the files: ${APPL}/META-INF/context.xml and ${APPL}/WEB-INF/web.xml. Eclipse adds option "Update root context for Web module MyProject" that uses this information when Run on Server [Alt+Shift eXecute, Run].

File content
In the ${APPL}/WEB-INF/web.xml should be added under the  key the following reference: And the ${APPL}/META-INF/context.xml should have the following content:

Errors
It is possible that error after error pops up. These are often encountered errors. The errors are in a certain order. If an error about an empty JDBC driver pops up, it means that the reference to the resource is correctly found in the web.xml file. If the error about the character set pops up, the JDBC driver is found.

Not Bound in Context
An error about a wrong name: javax.naming.NameNotFoundException: Name **** is not bound in this Context This error occurs when  in web.xml is not equal to the resource name in context.xml.

Empty JDBC Driver
An error about an empty JDBC driver: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' This error has probably to do with the version of the Tomcat server that is used. The 5.5 version uses the syntax like described above. The 5.0 version likes the syntax with the ResourceParams elements:   driverClassName com.mysql.jdbc.Driver

url jdbc:mysql://localhost:3306/actualdatabasename?autoReconnect=true  It can be the case that the Tomcat server has to be restarted.

Character Set
An error about the character set used: java.sql.SQLException: Unknown initial character set index ’48’ received from server. Initial client character set can be forced via the ‘characterEncoding’ property.

Probably, the error is in the MySQL Connector/J JDBC software version 5.0.4, downloaded from www.mysql.org. It is not an Eclipse or QuantumDB issue. If you downgrade to MySQL Connector/J JDBC software version 3.1.14, the issue is resolved.

Windows Hints
Start the MySQL server (as a service) - not with [Win+X] & "services.msc" but - with a shortcut that has as target:
 * %windir%\system32\net.exe start "MySQL Server"

"MySQL Server" is the name that the service has in "services.msc". The attributes "start" and "stop" are recognized. The Tomcat Server can be started from Eclipse itself, and does not need a shortcut.

Information regarding startup of the MySQL server incorporated in XAMPP is stored in ${XAMPP}/mysql/bin/my.cnf. In Windows can a *.cnf not be edited by default. Open a Command Shell box and edit by "edit my.cnf". The character set can be added or altered beneath the elements [mysqld] (the server), [mysql], [client]. The phpMyAdmin tool can be used to do such things with editboxes for the GUI-minded.

See also:

 * How to setup Eclipse WTP for ZK


text:
User talk:168.8.116.25

Welcome to Wikibooks. We invite everyone to contribute constructively to our collection. Take a look at the welcome page if you would like to learn more about contributing. However, unconstructive edits are considered vandalism, and if you continue in this manner you may be blocked from editing without further warning. Please stop, and consider improving rather than damaging the hard work of others. Thanks. -- Herby talk thyme 14:54, 7 November 2006 (UTC)

title: User talk:168.8.116.25


text:
Metal Gear Series/Comparisons to Reality

The Metal Gear series of videogames presents plots rooted in reality, often with fictionalized characters and events. An examination of the series' connections to the real world is given below.

1960s
At the point of Metal Gear Solid 3: Snake Eater, set in 1964, many real events and persons from the era such as the early stages of the Vietnam War, President John F. Kennedy's Assassination, American President Lyndon B. Johnson, Russian President Nikita Khrushchev, the Cuban Missile Crisis, and the failed Bay of Pigs Invasion. All of these events are mentioned and have significance to the plot, although they are coupled with fiction and conspiracy theories.

1970s
Set six years after the Virtuous Mission of Snake Eater, Metal Gear Solid: Portable Ops for the PlayStation Portable chronicles Big Boss's departure from the FOX unit and the founding of FOXHOUND. Little additional information has been released about the game's plot, however it has been cofirmed by Hideo Kojima to follow the expected style of the Metal Gear series.

1990s
In the original two games in the series, Metal Gear and Metal Gear 2: Solid Snake, set in 1995 and 1999 respectively, the fictional countries of Outer Heaven and Zanzibar Land are key figures in the plot, but no reference is made to world leaders. Metal Gear 2: Solid Snake however, branches dramatically from reality with a number of fictional political events including Zanzibar Land's dramatic rise to power, the Soviet Union and Czechoslovakia remaining intact, and a major world oil crisis. The inclusion of these ideas is attributed to the fact that the game was created in 1990. Metal Gear Solid, set in 2005, makes references to real events of the 1980's and 1990's such as the Gulf War, and Chernobyl incident, but no reference to world leaders of that era. This suggests that, up until the early 1990's, the series' history still followed a path generally the same as that of the real world. Though even recent translations Metal Gear 2: Solid Snake keep the same background, the more historically-disparate elements of the game are generally glossed over in Solid series- Metal Gear Solid's Previous Operations file, for instance, refers to Russia and the CIS rather than the Soviet Union, and indicates that Zanzibar Land became a nuclear superpower rather than the only nuclear superpower.

2000s
In the 21st century, the series branches even further from reality. In Metal Gear Solid, set in 2005, a fictional United States Secretary of State is named and later ousted from power as part of the game’s plot. In Metal Gear Solid 2: Sons of Liberty, set in the years 2007 and 2009, the differences from reality are further explored. Two fictional US Presidents are named, the first being George Sears (a.k.a. Solidus Snake), who had been President at the time of the events in Metal Gear Solid and resigned thereafter. His successor, James Johnson, is the second of these imaginary leaders. This implies that, in the Metal Gear timeline, US elections followed the same course as reality until some point around 2001 to 2004 when fictionalized candidates began winning elections.

2010s
The next Metal Gear game and finale to the Metal Gear Solid series, Metal Gear Solid 4: Guns of the Patriots, has been reported to take place six years after Metal Gear Solid 2: Sons of Liberty, in the year 2014.


text: Wikijunior:Life/Today/Books and horses

title: Wikijunior:Life/Today/Books and horses


text:
Calculus/Polar Introduction

The polar coordinate system is a two-dimensional coordinate system in which each point on a plane is determined by an angle and a distance. The polar coordinate system is especially useful in situations where the relationship between two points is most easily expressed in terms of angles and distance; in the more familiar Cartesian coordinate system or rectangular coordinate system, such a relationship can only be found through trigonometric formulae.

As the coordinate system is two-dimensional, each point is determined by two polar coordinates: the radial coordinate and the angular coordinate. The radial coordinate (usually denoted as $$r$$) denotes the point's distance from a central point known as the pole (equivalent to the origin in the Cartesian system). The angular coordinate (also known as the polar angle or the azimuth angle, and usually denoted by $$\theta$$ or $$t$$) denotes the positive or anticlockwise (counterclockwise) angle required to reach the point from the 0° ray or polar axis (which is equivalent to the positive $$x$$-axis in the Cartesian coordinate plane).

Plotting points with polar coordinates
Each point in the polar coordinate system can be described with the two polar coordinates, which are usually called $$r$$ (the radial coordinate) and θ (the angular coordinate, polar angle, or azimuth angle, sometimes represented as $$\phi$$ or $$t$$). The $$r$$ coordinate represents the radial distance from the pole, and the θ coordinate represents the anticlockwise (counterclockwise) angle from the $$0^\circ$$ ray (sometimes called the polar axis), known as the positive $$x$$-axis on the Cartesian coordinate plane.

For example, the polar coordinates $$(3,60^\circ)$$ would be plotted as a point 3 units from the pole on the $$60^\circ$$ ray. The coordinates $$(-3,240^\circ)$$ would also be plotted at this point because a negative radial distance is measured as a positive distance on the opposite ray (the ray reflected about the origin, which differs from the original ray by $$180^\circ$$).

One important aspect of the polar coordinate system, not present in the Cartesian coordinate system, is that a single point can be expressed with an infinite number of different coordinates. This is because any number of multiple revolutions can be made around the central pole without affecting the actual location of the point plotted. In general, the point $$(r,\theta)$$ can be represented as $$(r,\theta\pm360^\circ k)$$ or $$(-r,\theta\pm(2k+1)180^\circ)$$, where $$k$$ is any integer.

The arbitrary coordinates $$(0,\theta)$$ are conventionally used to represent the pole, as regardless of the θ coordinate, a point with radius 0 will always be on the pole. To get a unique representation of a point, it is usual to limit $$r$$ to negative and non-negative numbers $$r\ge0$$ and $$\theta$$ to the interval $$[0,360^\circ)$$ or $$(-180^\circ,180^\circ]$$ (or, in radian measure, $$[0,2\pi)$$ or $$(-\pi,\pi]$$).

Angles in polar notation are generally expressed in either degrees or radians, using the conversion $$2\pi\ \text{rad}=360^\circ$$. The choice depends largely on the context. Navigation applications use degree measure, while some physics applications (specifically rotational mechanics) and almost all mathematical literature on calculus use radian measure.

Converting between polar and Cartesian coordinates
The two polar coordinates $$r,\theta$$ can be converted to the Cartesian coordinates $$x,y$$ by using the trigonometric functions sine and cosine:
 * $$x=r\cos(\theta)$$
 * $$y=r\sin(\theta)$$

while the two Cartesian coordinates $$x,y$$ can be converted to polar coordinate $$r$$ by
 * $$r=\sqrt{x^2+y^2}$$ (by a simple application of the Pythagorean theorem).

To determine the angular coordinate $$\theta$$, the following two ideas must be considered:
 * For $$r=0$$, $$\theta$$ can be set to any real value.
 * For $$r\ne0$$, to get a unique representation for $$\theta$$ , it must be limited to an interval of size $$2\pi$$ . Conventional choices for such an interval are $$[0,2\pi)$$ and $$(-\pi,\pi]$$.

To obtain $$\theta$$ in the interval $$[0,2\pi)$$, the following may be used ($$\arctan$$ denotes the inverse of the tangent function):
 * $$\theta=

\begin{cases} \arctan\left(\frac{y}{x}\right)&\text{if }x>0\text{ and }y\ge0\\ \arctan\left(\frac{y}{x}\right)+2\pi&\text{if }x>0\text{ and }y<0\\ \arctan\left(\frac{y}{x}\right)+\pi&\text{if }x<0\\ \frac{\pi}{2}&\text{if }x=0\text{ and }y>0\\ \frac{3\pi}{2}&\text{if }x=0\text{ and }y<0 \end{cases}$$

To obtain $$\theta$$ in the interval $$(-\pi,\pi]$$, the following may be used:

 * $$\theta=

\begin{cases} \arctan\left(\frac{y}{x}\right)&\text{if }x>0\\ \arctan\left(\frac{y}{x}\right)+\pi&\text{if }x<0\text{ and }y\ge0\\ \arctan\left(\frac{y}{x}\right)-\pi&\text{if }x<0\text{ and }y<0\\ \frac{\pi}{2}&\text{if }x=0\text{ and }y>0\\ -\frac{\pi}{2}&\text{if }x=0\text{ and }y<0 \end{cases}$$

One may avoid having to keep track of the numerator and denominator signs by use of the atan2 function, which has separate arguments for the numerator and the denominator.

Polar equations
The equation defining an algebraic curve expressed in polar coordinates is known as a polar equation. In many cases, such an equation can simply be specified by defining $$r$$ as a function of $$\theta$$. The resulting curve then consists of points of the form $$\big(r(\theta),\theta\big)$$ and can be regarded as the graph of the polar function $$r$$.

Different forms of symmetry can be deduced from the equation of a polar function $$r$$. If $$r(-\theta)=r(\theta)$$ the curve will be symmetrical about the horizontal $$(0^\circ/180^\circ)$$ ray, if $$r(\pi-\theta)=r(\theta)$$ it will be symmetric about the vertical $$(90^\circ/270^\circ)$$ ray, and if $$r(\theta-\alpha^\circ)=r(\theta)$$ it will be rotationally symmetric $$\alpha^\circ$$ counterclockwise about the pole.

Because of the circular nature of the polar coordinate system, many curves can be described by a rather simple polar equation, whereas their Cartesian form is much more intricate. Among the best known of these curves are the polar rose, Archimedean spiral, lemniscate, limaçon, and cardioid.

For the circle, line, and polar rose below, it is understood that there are no restrictions on the domain and range of the curve.

Circle
The general equation for a circle with a center at $$(r_0,\phi)$$ and radius $$a$$ is
 * $$r^2-2rr_0\cos(\theta-\varphi)+r_0^2=a^2$$

This can be simplified in various ways, to conform to more specific cases, such as the equation
 * $$r(\theta)=a$$

for a circle with a center at the pole and radius $$a$$.

Line
Radial lines (those running through the pole) are represented by the equation
 * $$\theta=\varphi$$

where $$\phi$$ is the angle of elevation of the line; that is, $$\phi=\arctan(m)$$ where $$m$$ is the slope of the line in the Cartesian coordinate system. The non-radial line that crosses the radial line $$\theta=\phi$$ perpendicularly at the point $$(r_0,\phi)$$ has the equation
 * $$r(\theta)=r_0\sec(\theta-\varphi)$$

Polar rose
A polar rose is a famous mathematical curve that looks like a petaled flower, and that can be expressed as a simple polar equation,
 * $$r(\theta)=a\cos(k\theta+\phi_0)$$

for any constant $$\phi_0$$ (including 0). If $$k$$ is an integer, these equations will produce a $$k$$-petaled rose if $$k$$ is odd, or a $$2k$$-petaled rose if $$k$$ is even. If $$k$$ is rational but not an integer, a rose-like shape may form but with overlapping petals. Note that these equations never define a rose with 2, 6, 10, 14, etc. petals. The variable $$a$$ represents the length of the petals of the rose.

Archimedean spiral
The Archimedean spiral is a famous spiral that was discovered by Archimedes, which also can be expressed as a simple polar equation. It is represented by the equation
 * $$r(\theta)=a+b\theta$$

Changing the parameter $$a$$ will turn the spiral, while $$b$$ controls the distance between the arms, which for a given spiral is always constant. The Archimedean spiral has two arms, one for $$\theta>0$$ and one for $$\theta<0$$. The two arms are smoothly connected at the pole. Taking the mirror image of one arm across the $$90^\circ/270^\circ$$ line will yield the other arm. This curve is notable as one of the first curves, after the Conic Sections, to be described in a mathematical treatise, and as being a prime example of a curve that is best defined by a polar equation.

Conic sections
A conic section with one focus on the pole and the other somewhere on the $$0^\circ$$ ray (so that the conic's semi-major axis lies along the polar axis) is given by:
 * $$r=\frac{\ell}{1+\epsilon\cos(\theta)}$$

where $$\epsilon$$ is the eccentricity and $$\ell$$ is the semi-latus rectum (the perpendicular distance at a focus from the major axis to the curve).
 * 1) If $$\epsilon>1$$, this equation defines a hyperbola.
 * 2) If $$\epsilon=1$$, it defines a parabola.
 * 3) If $$0<\epsilon<1$$, it defines an ellipse. The special case $$\epsilon=0$$ of the latter results in a circle of radius $$\ell$$.

authors: יהודה שמחה ולדמן

title: Calculus/Polar Introduction


text:
Talk:High School Physics/Energy

Don't mean to be rude, but I started editing this article because there were several misuses of there/their/they're. Soon I found some bizarre sentence constructions followed by an unfortunate volume of... content errors. I found this article while looking for some common equations used in high school physics.

If people want to make contributions, please do some research. Research isn't plagerism, copying the way people explain things or example problems is plagerism, but if you don't know what you are talking about, or really don't feel like doing the work to find the right answers, please don't post. In this case "someone else will do it" might be the right way to think about it.

It makes sense why so many teachers are becoming frustrated with wikipedia and are more frequently discouraging students from using it for reference.

I think the content of this page would be better viewed by nobody. It is a mix of weak information out of context without reference or explanation... and that only applies to the good parts.

Darren Baird (physics teacher), Toronto ON writes... I agree, this article is an awkward attempt at being "cool" or "engaging". The first paragraph vaguely recalls Venus Flytrap in WKRP in cinninati teaching about the structure of the atom.

The article is rife with errors...
 * Kids, it is joules not jeules (the SI unit of energy)
 * Wave energy is a type of mechanical energy.
 * The equation for potential energy varies on how it is stored... for example spring potential energy is PEspring=0.5kx^2, where k is the spring constant that depends on the stiffness of the spring and x is how far the spring is stretched. Gravitational potential energy is simplified as PEgrav=mgh where m is mass, g is the acceleration due to gravity and h is the height of the object above a reference height. IF PE=0.5mv^2, then would not this formula require a velocity... if the object has a velocity then you would say that it is moving and therefore it has "actual" rather than potential energy?

I still stand by Wiki... It is 90% of the time a good start point to get an overview. These bad articles give our students a chance to practice discriminating between good and bad information.

Thanks Mr. Baird.

title: Talk:High School Physics/Energy


text:
Enquiry Skills

Enquiry Skills aims to teach school students about examining sources and making decisions on their usefulness in a classroom context.

Contents

 * /Preface/
 * /Sources/
 * /What is CABPLACE?/
 * /Context/
 * /Sample Questions/
 * /Conclusion/
 * /Authors and Contributors/

For Authors
Enquiry Skills is the analysis of sources and presenting thesis on its relevance and usefulness. Many authors may not know what CABPLACE is, but once explained, I'm sure there will be many who will be able to contribute. This book is aimed toward those of age 12 and above, so edits can have a certain amount of complicated language, but not overdosing on "technobabble" is advised.

title: Enquiry Skills


text:
Enquiry Skills/Preface

History isn’t all about facts, figures and dates.

History covers a lot more than you imagine. If you’re good at history, you’re good at thinking, and analysing and weighing the odds. This sort of thinking is enquiry skills.

Over the course of this book, you will look at different sources, and see the different techniques you can use to value them. At the end, you will be able to look at a text from 150 years ago, or a painting of a historical event painted at the time, and you will be able to look between the lines and deeper into the artwork and be able to find out more about history from history itself. History isn’t about having facts told to you, it’s about finding the facts yourself.

History is now prepared to unveil its true nature before you.

title: Enquiry Skills/Preface


text:
Enquiry Skills/Sources

What is a source?

A source is anything. Absolutely anything that relates to the time period you’re studying. A letter addressed to Gavrillo Princip is a source. A school textbook is a source.

Wait. A school textbook? How? Now, I can’t answer that question in a single sentence, so now, you will learn about Primary and Secondary sources.

title: Enquiry Skills/Sources


text:
Talk:Calculus/Polar Introduction

I'm out of time for this edit session, but I will be back to add more to this section Please feel free to add on/help out. I'm sure I have some errors already, proofreaders are much appriciated. 48v 17:13, 7 November 2006 (UTC)

These terms: polar equation, polar graph, ... are they standard? I have always heard the more verbose 'equation in polar coordinates', etc. So I'm curious. -128.135.100.161 22:43, 12 November 2006 (UTC)

I'm noticing that there's a lack of some of the graphs in this section namely vertical lines, lemniscates, and limaçons. IRox (discuss • contribs) 21:25, 20 August 2011 (UTC)

title: Talk:Calculus/Polar Introduction


text:
Enquiry Skills/Authors and Contributors

If you have contributed, please add your name to this list, so I know who I'm giving my appreciation to!

Authors

 * Ferretinator

title: Enquiry Skills/Authors and Contributors


text:
Talk:Enquiry Skills

Use this page to discuss the book "Enquiry Skills". Please leave your comments followed by your signature with timestamp. --Ferretinator 17:20, 7 November 2006 (UTC)

Pictures
If anyone can find pictures that can be used in the 'Context' and 'Sample Questions' chapter, please post them. Also, they may be of use in the 'What is CABPLACE?' chapter. --Ferretinator 16:49, 8 November 2006 (UTC)

title: Talk:Enquiry Skills


text:
User:NeoDeGenero

Loading...

title: User:NeoDeGenero


text:
A-level Computing 2009/Authors

 * (AQA) Peter EJ Kemp (editor) - London
 * (CIE) Peter Astbury - Alexandria, Egypt

Contributors and proof readers
Thanks for helping out!
 * Students from Christ the King Sixth Form College
 * Students from Loxford School
 * Students from Wreake Valley Academy
 * Peter L Higginson - Reading

title: A-level Computing 2009/Authors


text:
User talk:204.69.190.75

Welcome to Wikibooks. We invite everyone to contribute constructively to our collection. Take a look at the welcome page if you would like to learn more about contributing. However, unconstructive edits are considered vandalism, and if you continue in this manner you may be blocked from editing without further warning. Please stop, and consider improving rather than damaging the hard work of others. Thanks. -- Herby talk thyme 19:05, 7 November 2006 (UTC)

title: User talk:204.69.190.75


text:
User talk:129.25.145.230

Welcome to Wikibooks. We invite everyone to contribute constructively to our collection. Take a look at the welcome page if you would like to learn more about contributing. However, unconstructive edits are considered vandalism, and if you continue in this manner you may be blocked from editing without further warning. Please stop, and consider improving rather than damaging the hard work of others. Thanks. -- Herby talk thyme 19:37, 7 November 2006 (UTC)

title: User talk:129.25.145.230


text:
Talk:Communication Networks/Routing

I will remove those pictures when I get home and replace them with actual tables... What were you thinking?
 * I think they should be made into real tables, especially since it doesn't have copyright tag, when the mass deletion occurs reader would be confused what the texts means. I'll try to recreate some of the tables too. -The Kid 12:39, 10 November 2006 (UTC)
 * OK, I've replaced them with real tables. But note that I've changed the value of the last table, since I think the last table contains errors. I am not a router expert, so I beg a router expert to verify its correctness and correct it if it's wrong. I'm also thinking about remaking the images, because 1) some of the images contains incorrect license tag (made by the uploader but tagged as copyrighted - fair use) and 2) these kind of images should be SVG images -The Kid 11:01, 11 November 2006 (UTC)

title: Talk:Communication Networks/Routing


text:
Enquiry Skills/What is CABPLACE?

CABPLACE is a mnemonic (i.e. memorization device)that will form the center of this book. It stands for:

 * Consistency
 * Accuracy
 * Bias
 * Purpose
 * Language
 * Author
 * Contemporary
 * Exaggeration

Each of these can be used to examine sources and give us an idea of what the time we're studying was like.

There are two types of question that you can be asked in enquiry skills:

 * How useful is the source?-What can it tell us about the time period concerned?
 * How reliable is the source?-Can we use it to examine the time period in question accurately?

Consistency
If something is consistent with other sources, it is reliable because the information it gives matches information found elsewhere.

Source A is a newspaper article from 1914, speaking about the German attempt to capture France through neutral Belgium. This is consistent with other sources, for instance, a school textbook on WWI, therefore Source A is reliable.

Accuracy
Very much like Consistency. If something is accurate, it can be relied on.

Bias
If something is bias, it does not give impartial information, and therefore is not reliable, BUT, it can be useful.

If a peasant from the French Revolution wrote an account of how disgusting they found King Louis, it would be bias, because he or she lives in poverty, and so is blaming her harsh life on the king. The account is bias, so it is not reliable, but it is useful, because it can tell us what some people thought at the time.

Purpose
What was it meant to be?

A diary account is reliable, because its purpose was to express opinion. A letter to a friend is reliable because its purpose is to express opinion or state fact. (However, this may be bias. See above.) A political speech to a population may not be reliable, because its purpose was to change people's opinions.

Language
Words can tell us a lot about history. Adjectives are useful to historians because they describe the time. Nouns can give us an idea of what things were called and what was invented at the time.

In a letter to a politician, a member of the public may use words that express anger, telling us what some or many people thought at the time.

Author
The people who paint or write things can be very influential in history.

If an article in a newspaper is written by an infamous journalist, we know it is not reliable because it is bias.

Contemporary
Is it a primary or secondary source?

This usually comes last. If something is a primary source, it is one of two things.
 * Reliable, because it was made at the time.
 * Not reliable, because it was subject to bias.

If something is secondary, it is usually reliable because the author has compiled it from many different sources to form an unbiased opinion.

Exaggeration
The last letter in CABPLACE refers to things that exaggerate the truth.

The usual suspect is a cartoon. Cartoons are exaggerated in nature, and so are usually not as reliable.

title: Enquiry Skills/What is CABPLACE?


text:
Talk:GCSE Science/Atoms and Bonding

This is rather advanced for the GCSE modules, however useful for A2.

title: Talk:GCSE Science/Atoms and Bonding


text:
The Computer Revolution/Databases/Data mining

Data Mining is a process that uses rules of association with the collection of vast amounts of data. It incorporates statistics, data collection and recognition of patterns and trends. The most common type of data mining today is the use of programs within programs that record computer habits, websites visited and much more information about both the user and computer. The analysis of the data provides profiles that are used by all kinds of organizations. Frequently the programs to do the data mining are included in purchased software and downloaded software. However it is also frequently installed on a computer through the use of a virus or worm or other such malicious tool.

There is no inherent danger to data mining. It is the use of the information that is most troubling. When such techniques can include information like credit card numbers and bank accounts there is an obvious troubling potential for the use of the data. What is meant by no inherent danger is the software data mining collection does not damage a computer, it just records what the computer is doing.

One of the major reasons for collecting such vast amounts of information is for resale. Different on-line merchants would like to know where and when each online shopper is spending their money. Then they can use that information to direct their marketing and timing to a more dedicated market.

The data that is mined, or collected, can come from a vast array of sources. As stated above, the most common form of data mining is the infection of a computer. It can also be extracted from POS (Point Of Sale) transactions, all kinds of data bases, online resources, articles, etc. Although this is an easy way to gather information there is also off-line sources and databases that can be included through the old-style manual data entry.

Fusion/cleaning
With all the information they receive the company must filter through the information to find what their consumers need. Companies wish to have only one type of information it can take time to decipher all the information and see, for example, who buys Huggies brand diapers. All this information is to be fused together and cleaned. Many of these data sources have something wrong with them, such as inconsistencies or is a poor quality. This must be cleaned and checked for the consistency of formats.

Data
Meta-Data is data about data; it describes how and when and by whom a particular set of data was collected and how it’s formatted. Meta-Data is essential for understanding information stored in data warehouse

Warehouse
Data warehouse is a special database of cleaned up data and Meta-data. Both the data and the Meta-Data are sent to the data warehouse.


text:
The Computer Revolution/Databases/DBMS

A Database Management System is a system on your computer which allows you to access information stored in the database. They exist in different sizes and are smaller on personal computers and go on to have large systems on mainframes. The programs in the database give you the option to accumulate, modify, and retrieve information. You can request information from the DBMS as well. Examples include: ATM’s, computerized inventory systems, computerized reservation systems, and business management information.

DBMS - Benefits
One of the most valuable benefits of DMBS databases is that it helps organizations organize, collect and manipulate information (http://audilab.bmed.mcgill.ca/~funnell/Bacon/DBMS/dbms.html). It provides structured fields, titles and tables to assist people in entering data. These databases provide structure to many organizations, fields of business and to all kinds of occupations. These databases are especially imperative in the Medical, Accounting and Human Resources fields where data input and storage is an essential part of the occupation. These databases need to be organized and easy to use in order to effectively manage. Another benefit to DMBS systems is that people within an organization can share data through this system. It is what computer experts called Centralized data (http://audilab.bmed.mcgill.ca/~funnell/Bacon/DBMS/dbms.html). Another advantage of DBMS is that information is current. If one person enters data into the system when it is saved everyone can see when the information was entered that way everyone is up to date with current events which vastly improve the communication process in organizations. The data entered into the system is kept consistent, the structure of the database allows for everyone to enter data in a manner that is the same therefore minimizing mistakes or incomplete information (http://audilab.bmed.mcgill.ca/~funnell/Bacon/DBMS/dbms.html). These central databases have improved the speed, consistency and way we deal with information which has decreased paperwork in our daily working lives.

DBMS - Disadvantages
On most of occasions, all data is integrated into a single database. If database is damaged due to electric failure or database is corrupted on the storage media, then the valuable data may be lost forever. Another disadvantage is the complexity of this database system. It is costly, and it creates more requirements.

DBMS - Principal Components
There are three principal components integrated into the database management system software. These will be covered in more detail in this section. The components are:

 * 1) a database dictionary,
 * 2) DBMS utilities, and
 * 3) a report generator.

First, the database dictionary does not contain actual data. It does, however, contain information to manage the data in the database, thereby enabling a database management system (DBMS) to function or access data from the database. A data dictionary may also be referred to as a “repository.” It is a file or document that is generally not made available to users, but contains a list of files in the database, the number of records in the files and names, as well as types of fields – “… data definitions and descriptions of the structure of the date used in the database”  (Williams, B.K. & S.C. Sawyer,  2007,  Using Information Technology: A Practical Introduction to Computers & Communications,  7th ed.,  Montreal: McGraw-Hill Irwin, p. 415; and  http://webopedia/com/TERM/data_dictionary.html  Retrieved Nov 23, 2006).

A database dictionary or repository stores descriptions of:

 * 1) data elements defined in all tables,
 * 2) tables defined in all databases,
 * 3) indexes defined for each table,
 * 4) defined databases,
 * 5) programs that access the database,
 * 6) access authorizations for all users, and
 * 7) relationships among data elements (http://webcache.googleusercontent.com/search?q=cache:ir0xLKnVB0PkJ:nsu-cc.northern.edu/MIS/MIS484/notes/CH15.ppt+DBMS+utilities&hl+en&gl+ca&ct+clnk&cd+12&client+firefox-a  Retrieved Nov 23, 2006).

There are different types of data dictionaries. Included with the DBMS is the “integrated data dictionary.” A “stand-alone data dictionary” maybe available from a vendor. An “active data dictionary” has the potential to be updated by the DBMS automatically whereas the “passive data dictionary… requires a batch process to create and update the dictionary” (http://webcache.googleusercontent.com/search?q=cache:ir0xLKnVB0PkJ:nsu-cc.northern.edu/MIS/MIS484/notes/CH15.ppt+DBMS+utilities&hl+en&gl+ca&ct+clnk&cd+12&client+firefox-a  Retrieved Nov 23, 2006).

The second component, DBMS utilities, is essentially for maintaining the database. These are programs that enable the user to undertake this maintenance by creating, editing and deleting the data, records and files. This component also includes automatic backup and recovery procedures (http://web.archive.org/web/20100619033849/http://www.cse.sc.edu/~holderfi/files/chap8.pdf  Retrieved Nov 23, 2006). The database user can monitor the types of data being input and sort it by key fields because of DBMS utilities (Williams & Sawyer, p. 416).

The third component of a database management system (DBMS) makes the whole thing worthwhile. This program, the report generator, as the name implies, allows the user of any skill level to generate reports. It can produce on-screen or printed reports or documents from the database, or portion thereof, as specified by the user. For example, the user may specify the format as per row, column or page headers (Williams & Sawyer, p. 416 and http://web.archive.org/web/20100619033849/http://www.cse.sc.edu/~holderfi/files/chap8.pdf  Retrieved Nov 23, 2006).

DBMS - Database Administrator
Database Administrator:

It is a person who analyzes, administers, coordinates, controls and manages activities within the data administration department. Also, this person handles organization’s “database” administration and data relationship.

Database Administrator can perform a variety of activities as follow:
 * Establish and enforce policies about user privacy. Database access and security
 * Implement and manage configuration management approach for all database
 * Implement and manage database change management processes
 * Implement and manage a backup / restore strategy
 * Provide proactive performance monitoring of databases.
 * Monitor databases and server system configuration for performance optimization
 * Install software and upgrades
 * Develop a strategy to manage large data volume growth and address impacts on auditing, backups and restores
 * Develop a working knowledge of applications deployed on the database
 * Maintain knowledge and proficiency of current and upcoming hardware/software technologies

(retrieved December 10, 2006 from: http://jobsearch.monster.ca/getjob.asp?JobID=49483299&AVSDM=2006%2D10%2D24+12%3A51%3A50&Logo=1&cy=CA&q=Database+Administrator&lid=225&sort=rv&vw=b&dcjvlid=227)

title: The Computer Revolution/Databases/DBMS


text:
User:RionaEE

I'm new to wikibooks, so it may take me a little while to get really into contributing.

I recently graduated with a BS in Electrical Engineering, and am currently working on a Masters of Engineering Management. Once I finish that degree in July, I hope to contuine in my education by working on my MS in Electrical Engineering.

I hope to be able to contribute to several different book in the Electrical Engineering Bookshelf.

title: User:RionaEE


text:
HSC Information Processing and Technology/Project Management

Projects involve the planning, designing and implementation of an information system for a specific purpose. An information system is a system that has been set up to store and carry out tasks using information. Most information systems in today's modern society utilize computers, but this has not always been the case, and some information systems, such as address books and filing cabinets, are still operated manually.

Projects can be done for any of the systems listed below

 * Database information systems
 * Communication systems
 * transaction processing systems
 * Decision support systems
 * Automated manufacturing systems
 * multimedia systems

The skills learnt in this topic can be applied to any of the listed topics, as developing any of those systems will require good planning, so the project work topic is foundational to your studies of the HSC component of IPT.

Project Management
Project management is the process of planning, scheduling and controlling all the activities within each stage of the system development cycle. It aims to deliver a new system within an acceptable time frame and budget using any required knowledge, skills, tools or techniques necessary for the particular project.

A project can be any undertaking that sets out a specific objective

The advantages of using project management include:
 * cost control
 * development within specified times
 * organised use of the available hardware and software
 * an improved end product

Project management is best described as a set of five processes that guide the developer of a project. These five processes are known as the system development cycle:
 * Understanding the problem
 * Planning decisions
 * Designing solutions
 * Implementing Solutions
 * Testing, Evaluating and Maintaining

Developing a Project Plan
A project plan is a summary of a project that specifies who, what, how and when. It clarifies what needs to be done and helps people to understand how they fit into the project. A project plan breaks the project into major tasks called subprojects.

The start of a project plan is the problem definition. All the subsequent steps come from the problem definition.

A project plan:
 * Is a summary of a project, specifying who, what, how and when.
 * Clarifies what needs to be done, helps people understand how they fit into the project.
 * Provides overall schedule, details of subprojects and a schedule for each subproject.
 * Identifies people, information technology and data/information required by the system.
 * Helps to deliver a system on time and minimise the effect of unanticipated problems.

A very important tool used in project planning is a Gantt chart, which shows how long each stage of a project or subproject will take

Project Plans involve goals, deliverables and schedules. People working on projects need to understand the need for these things to minimize problems later on

Communication Skills
Participants in a project must always be kept informed. Communication skills incorporate a variety of strategies and techniques for dealing with other people. Good communication facilitates the sharing of information and genuine understanding. All team members must contribute to the team cohesiveness by actively using communication strategies such as:

Social and Ethical Design
All projects have social and ethical implications. A persons ethics are their values, a set of beliefs about what is right or wrong. A project should be considered unethical if it:

 * harmed others in some way
 * was against society's standards of what is right
 * violated the rights, freedom or justice due to others
 * broke the law

Some ethical issues that should be thought of while going through project design are:

 * crime and security, including data protection, piracy, hacking, and virus issues
 * privacy of the individual
 * intellectual property rights and copyright
 * computing etiquette or rules that respect the rights of others
 * the health and safety of all participants
 * equity or the equal access of all participants to the benefits of an information system

Design of System
Information systems should be designed to take into account the strengths and weaknesses of both people and machine.

The Environment
The environment is any aspect which is not directly part of the system but which affects it in some way. The information system has a boundary that sets the limits of the system environment. Within the limits are both human and physical resources.

Ergonomic design that considers the users by arranging the work environment to minimise the problems that can result from the use of hardware and software is desirable. Ergonomic design may include adjustable furniture, correct lighting, controlled noise and software that helps the user to carry out the tasks involved

Understanding the Problem
Understanding the problem is the first stage in the system development cycle. The exact nature of the problem must be determined and whether it can be solved by an information system. This may involve redefining the problem and identifying its important elements. A clear problem statement is essential at this stage.
 * What are the problems with the existing system?
 * How does the existing system work?
 * How do you identify the problems with the existing system?

Prototypes
A prototype is a working model of an information system. Prototypes are built in order to understand the requirements of the system. The also can help in defining the problem to be solved and in determining how an information system might solve the problem. Advantages of using prototypes After all the information has been gathered, a requirements report is produced. This is a statement about the purpose/ requirements of the new information system. It includes aims and objectives of the new system and how it will help the organisation.
 * Clarifies how the existing system will work.
 * The requirements of the system more accurately reflect the needs of the participants.
 * Participants have the opportunity to be involved earlier and more directly in the development of the new system.
 * The new system is easier to create from a prototype.

Planning - Making Decisions

 * This stage involves making decisions using the data gathered. The first task is to develop one or more potential solutions to the problem.
 * A constraint is a factor that affects the system and prevents it from achieving the desired objectives. There are different types of constraints.

Feasibility Studies
A feasibility study is a short report that analyses potential solutions in terms of the known constraints and makes a recommendation. It does not attempt to find a detailed solution. The feasibility study briefly examines the available options, estimates costs and identifies any constraints to be considered. It judges whether a potential solution can actually be implemented.

A feasibility study can make three recommendations: No Change, Develop a new system or investigate other solutions.

Is the Problem Worth Solving?
Deciding whether the problem can be solved.
 * Will the existing system be able to perform the required tasks in the foreseeable future?
 * Will the proposed system meet future needs?
 * Have existing similar solutions been examined?
 * How crucial is the new system to the total organisation?

Is it economically feasible?
The systems analyst must determine whether the solution to the problem is affordable.
 * Development hardware/ software costs?
 * Development personnel costs?
 * Outsourcing costs?
 * The available capital
 * Costs savings as a result of the products implementation
 * Future upgrade costs

Is it operationally feasible?
Analyse whether a solution will be usable by the target customers.
 * What expertise was required to complete this project?
 * What resources are required to develop this project?
 * Are we able to support this product in the future?
 * Can we retrain/ redistribute existing resources to this project?

Is it technically feasible?
Determine what hardware and software is currently being used.
 * Is the technology readily available for this solution?
 * Can the product operate on a variety of platforms and hardware components?
 * Will the solution continue to operate on any new and developing technologies?

Scheduling  Can it be completed in the required time?
The schedule feasibility takes into account the time frame in which a solution must be developed. The solution being developed must be achievable within an appropriate time frame. (Use of Gantt Charts).
 * When is the best time to implement the product?
 * Are personnel available at the required times?
 * How long will each stage of the development take?
 * Are required resources available when needed?
 * What if key personnel leave during development?

Are there other alternative solutions?
After determining the feasibility of a solution, a decision must be made as to whether the solution is to be implemented.
 * Smaller scale solution to the project
 * Discontinue the project

What are the social and ethical issues?
Ensuring that the software being developed is not socially biased as this may impact the feasibility of the solution.
 * Changing nature of work for users
 * Affects on level of employment
 * Affects on the public
 * Legal issues

The Project Plan
This is a summary of who, what, when, and how.

It involves helping participants understand their role in the project. Identifies sub-projects and gives a time frame for them. Identifies the need for the users and participants and their feedback. Identifies the people, information technology, and data/information required by the system.

There are three important parts to a project plan:
 * 1) project goal- desired outcome
 * 2) deliverable- the tangible item expected from the task
 * 3) schedule- gantt chart, the timeline of tasks to be completed

NOTE: the project leader is responsible for developing the project plan and ensuring it is implemented correctly!

Designing Solutions
Designing a solution is the transformation of the specifications into appropriate hardware, software and information processes. It involves purchasing hardware, writing or purchasing software, and specifying information processes to make the system operational.

Participant Development
Participant development occurs when people within the information system develop the solution. Participants produce their own information system using readily available information technology. Information system personnel do not develop the system. Stages in the system development cycle are affected by participant development.

Design Tools
Design tools assist in the development of a new system.

Context Diagrams
Context Diagrams are used to represent entire information systems. The system is shown as a single process along with the inputs and outputs (external entities) to the system. The external entities are connected to the single process by data flow arrows. Processes are represented by circles, entities by boxes and data flow by arrows.

Data Flow Diagrams
A data flow diagram is an expansion of a context diagram. DFDs represent the information system as a number of processes that together form the single process in a Context Diagram. The focus is on the flow of data between information processes in the system. DFDs show where data is collected, organised, analysed, stored, processed, transmitted and displayed. They provide a simple technique for visualising the movement of data and describing what participants do, rather than what the computers do. Data Flow Diagrams share the same symbols as Context Diagrams but have an extra one, an open ended box for data storage.

Decision Trees
Decision trees are a diagrammatic way of representing all possible combinations of decisions and their resulting actions. It represents the decisions made within a system as the branches of a tree. For every condition, there is an action/ outcome.

Decision Tables
Decision tables represent all possible conditions and the actions that will result. It indicates the alternatives for different conditions and actions based on the rules.

Data Dictionaries
A data dictionary is a description of the fields and data stored within the system. From the dictionary it is possible to determine the name used to reference the data, the type of data stored, the length of the field, the application program and an example of data being stored in the system. Data Dictionaries can also be used to calculate the storage required for each record. This forms part of the documentation for the system.

System Flowcharts
System flowcharts are a diagrammatic way of representing both the flow of data and logic through an information system. It documents the essential details of the system, such as sequence, processes, and rules for selecting particular actions. A system flowchart shows the hardware used to process data such as peripheral devices, storage mediums and processing units.

Note these have been removed from the 2010 Onwards Syllabus for HSC

Implementing the Project Plan
The implementation stage delivers the new information system to users and participants. Participants will be provided with at least some of the following new components of the system: Hardware, Software, Data or Processes

Training Participants
Training ensures participants can use the new system and understand its benefits. Training is also needed in the installation of a new system and to ensure that the computer is being used efficiently. The type of training depends on the existing knowledge of the participants and the features of the new system. Technical support staff are people who assist participants of a system on an as-needed basis.

Determining the Conversion Method
Conversion of a system only takes place when a system already exists. It must be carefully planned and executed to avoid errors. There are four methods that can be used to upgrade or replace an existing system. Direct Conversion The old system is shut down or removed and the new system immediately replaces the old one.

Parallel Conversion During the change-over phase, both systems are running together. This method is often used when converting from a non-computing system to a computerised system.

Phased Conversion Parts of the old system are replaced by the new system until the whole system has been converted.

Pilot Conversion This involves trialing the new system in a part of an organisation. The pilot site is selected and a conversion method is used to convert to the new system. Once the pilot test is ok, the rest of the system is changed.

Advantages and Disadvantages of conversion methods:

Deciding Testing Methods
Testing a system is a very important part of the implementation of a system. Without rigorous testing, the system cannot be guaranteed to work as expected.

Testing, Evaluating and Maintaining
Testing a solution ensures that it works. Testing is carried out throughout the system development cycle. Evaluation determines whether the system is working as expected or whether changes are required. It occurs after the new system is established and minor problems have been fixed. The system must also be tested, to make sure that the original objectives and aims have been achieved.

Test data must be sufficient to ensure the program is completely operational and free of logic errors. Test data must be constructed to test every part of a program, including the mainline of the program and any modules used by the program. Test data should test: choice of available options to be taken.
 * All parts of the program
 * Each path of execution
 * Boundary conditions  the values of variables or expressions that determine the

Live Test Data
Live data is real data, used to ensure that a program works under real-life conditions. Stress testing involves increasing the load on a program in an attempt to make it fail.

Larger File Sizes
A program developed to access files should be tested with a range of file types and sizes. The use of large files will highlight problems associated with data access.

Mix of Transaction Types
A variety of different transaction types and sequences of data entry should be tested with live data. Module and program testing usually involve testing specific transactions or processes one at a time. During system testing, transactions occur in random order and checked to see if any errors arise.

Response Times
Live data is used to ensure that the system response times are appropriate. Response times are dependent on all the system components, together with their interactions with each other and other processes that may be occurring concurrently. Response times should be tested on minimum hardware using typical data of different types.

Volume data
It is important to test a system using expected loads. It is also necessary to test the system under heavy loads. Multi-user products should be tested with large numbers of users entering and processing data simultaneously to see if the program can handle the load.

Interfaces between Modules
Interface tests will ensure that the correct numbers of parameters are sent to and from the module and that the format is correct. Interface tests will also detect conflicts between local and global variables. Comparison with Program Test Data Software developers generate test data to test the limits of the system that may not be tested under normal use.

Benchmarking
A benchmark is a standard against which performance of a computer program can be assessed. Established programs are often used as a benchmark to indicate the quality and performance expectations of a new product. Benchmarks allow users of software products to make informed purchasing decisions.

Quality Assurance
Quality Assurance is a set of procedures used to certify that a generated product meets specified criteria with respect to quality and reliability.
 * Correctness
 * Reliability
 * Efficiency
 * Integrity
 * Maintainability

 * Does it do what it is supposed to do?
 * Does it do it all of the time?
 * Does it do it the best way possible?
 * Is it secure?
 * Can it be understood?

Quality Assurance is not just about testing a product once it has been completed. Quality Assurance techniques should be implemented throughout the software development process.

Alpha Testing
Testing of the final solution by personnel within the software development company prior to the products release. The client uses the system in a controlled environment and checks to see if it meets their requirements.

Beta Testing
Testing of the final solution by a limited number of users outside the software development company using real world data and conditions. The program is given to a number of potential clients who will also report to the developers any problems they encounter in the program.

Evaluation

 * Usability
 * Speed
 * Security
 * Accuracy
 * Efficiency
 * Rate of Usage

Maintenance
Maintenance is the modification of the system by making minor improvements. It involves documentation and logs.

Operation Manual
An operation manual details procedures participants follow when using a new system. Participants need to be instructed about and assisted with the major features and functions of the system. An operation manual includes:
 * User-friendly format and structure
 * Clear and concise instructions
 * Steps listed in point form
 * Tasks completed in the simplest way
 * Appropriate instructions for file management and security
 * Screen dumps included where possible.


text:
Engineering Analysis/Optimization

Optimization
Optimization is an important concept in engineering. Finding any solution to a problem is not nearly as good as finding the one "optimal solution" to the problem. Optimization problems are typically reformatted so they become minimization problems, which are well-studied problems in the field of mathematics.

Typically, when optimizing a system, the costs and benefits of that system are arranged into a cost function. It is the engineers job then to minimize this cost function (and thereby minimize the cost of the system). It is worth noting at this point that the word "cost" can have multiple meanings, depending on the particular problem. For instance, cost can refer to the actual monetary cost of a system (number of computer units to host a website, amount of cable needed to connect Philadelphia and New York), the delay of the system (loading time for a website, transmission delay for a communication network), the reliability of the system (number of dropped calls in a cellphone network, average lifetime of a car transmission), or any other types of factors that reduce the effectiveness and efficiency of the system.

Because optimization typically becomes a mathematical minimization problem, we are going to discuss minimization here.

Minimization
Minimization is the act of finding the numerically lowest point in a given function, or in a particular range of a given function. Students of mathematics and calculus may remember using the derivative of a function to find the maxima and minima of a function. If we have a function f(x), we can find the maxima, minima, or saddle-points (points where the function has zero slope, but is not a maxima or minima) by solving for x in the following equation:

 * $$\frac{df(x)}{dx} = 0$$

In other words, we are looking for the roots of the derivative of the function f plus those points where f has a corner. Once we have the so called critical points of the function (if any), we can test them to see if they are relatively high (maxima), or relatively low (minima). Some words to remember in this context are:

 * Global Minima: A global minimum of a function is the lowest value of that function anywhere. If the domain of the function is restricted, say A < x < B, then the minima can also occur at the boundary, here A or B.

 * Local Minima: A local minimum of a function is the lowest value of that function within a small range. A value can thus be a local minimum even though there are smaller function values, but not in a small neighborhood.

Unconstrained Minimization
Unconstrained Minimization refers to the minimization of the given function without having to worry about any other rules or caveats. Constrained Minimization, on the other hand, refers to minimization problems where other relations called constraints must be satisfied at the same time.

Beside the method above (where we take the derivative of the function and set that equal to zero), there are several numerical methods that we can use to find the minima of a function. For these methods there are useful computational tools such as Matlab.

Hessian Matrix
The function has a local minima at a point x if the Hessian matrix H(x) is positive definite:

 * $$H(x) = \frac{\partial^2 f(x)}{\partial x^2}$$

Where x is a vector of all the independant variables of the function. If x is a scalar variable, the hessian matrix reduces to the second derivative of the function f.

Newton-Raphson Method
The Newton-Raphson Method of computing the minima of a function f uses an iterative computation. We can define the sequence:

 * $$x^{n+1} = x^n - \frac{f'(x)}{f''(x)}$$

Where

 * $$f'(x) = \frac{df(x)}{dx}$$

 * $$f''(x) = \frac{d^2f(x)}{dx^2}$$

As we repeat the above computation, plugging in consecutive values for n, our solution will converge on the true solution. However, this process will take infinitely many iterations to converge, but if an approximation of the true solution will suffices, you can stop after only few iterations, because the sequence converges rather quickly (quadratic).

Steepest Descent Method
The Newton-Raphson method can be tricky because it relies on the second derivative of the function f, and this can oftentimes be difficult (if not impossible) to accurately calculate. The Steepest Descent Method, however, does not require the second derivative, but it does require the selection of an appropriate scalar quantity ε, which cannot be chosen arbitrarily (but which can also not be calculated using a set formula). The Steepest Descent method is defined by the following iterative computation:

 * $$x^{n+1} = x^n - \epsilon \frac{df(x)}{dx}$$

Where epsilon needs to be sufficiently small. If epsilon is too large, the iteration may diverge. If this happens, a new epsilon value needs to be chosen, and the process needs to be repeated.

Constrained Minimization
Constrained Minimization' is the process of finding the minimum value of a function under a certain number of additional rules called constraints. For instance, we could say "Find the minium value of f(x), but g(x) must equal 10". These kinds of problems are more difficult, but the Khun-Tucker theorem, and also the Karush-Khun-Tucker theorem help to solve them.

There are two different types of constraints: equality constraints and inequality constraints. We will consider them individually, and then mixed constraints.

Equality Constraints
The Khun-Tucker Theorem is a method for minimizing a function f(x) under the equality constraint g(x). The theorem reads as follows:

Given the cost function f, and an equality constraint g in the following form:

 * $$g(x) = 0$$,

Then we can convert this problem into an unconstrained minimization problem by constructing the Lagrangian function of f and g:

 * $$L(x) = f(x) + \langle \Lambda, g(x)\rangle$$

Where Λ is the lagrange multiplier, and <, > denotes the scalar product of the vector space Rn (where n is the number of equality constraints). We will discuss scalar products in more detail later. If we differentiate this equation with respect to x, we can find the minimum of this whole function L(x,Λ), and that will be the minimum of our function f.

 * $$\frac{df(x)}{dx} + \left\langle\Lambda,\frac{dg(x)}{dx}\right\rangle = 0$$
 * $$g(x) = 0$$

This is a set of n+k equations with n+k unknown variables (n Λs and k xs).

Inequality Constraints
Similar to the method above, let us say that we have a cost function f, and an inequality constraint in the following form:

 * $$g(x) \le 0$$

Then we can take the Lagrangian of this again:

 * $$L(x) = f(x) + \langle \Lambda, g(x)\rangle$$

But we now must use the following three equations/ inequalities in determining our solution:

 * $$\frac{df}{dx} = 0$$
 * $$\langle\Lambda, g(x)\rangle = 0$$
 * $$\Lambda \ge 0$$

These last second equation can be interpreted in the following way:
 * if $$g(x) < 0$$, then $$\Lambda = 0$$
 * if $$g(x) \le 0$$, then $$\Lambda \ge 0$$

Using these two additional equations/ inequalities, we can solve in a similar manner as above.

Mixed Constraints
If we have a set of equality and inequality constraints

 * $$g(x) = 0$$
 * $$h(x) \le 0$$

we can combine them into a single Lagrangian with two additional conditions:

 * $$L(x) = f(x) + \langle\Lambda, g(x)\rangle + \langle \mu, h(x)\rangle$$
 * $$g(x)=0$$
 * $$\langle\mu, h(x)\rangle = 0$$
 * $$\mu \ge 0$$

Infinite Dimensional Minimization
The above methods work well if the variables involved in the analysis are finite-dimensional vectors, like those in the RN. However, when we are trying to minimize something that is more complex than a vector, i.e. a function we need the following concept. We consider functions that live in a subspace of L2(RN), which is an infinite-dimensional vector space. We will define the term functional as follows:

 * Functional: A functional is a map that takes one or more functions as arguments, and which returns a scalar value.

Let us say that we consider functions x of time t (N=1). Suppose further we have a fixed function f in two variables. With that function, we can associate a cost functional J:

 * $$J[x] = \int_a^b f(x,t) dt$$

Where we are explicitly taking account of t in the definition of f. To minimize this function, like all minimization problems, we need to take the derivative of the function, and set the derivative to zero. However, we need slightly more sophisticated version of derivative, because x is a function. This is where the Gateaux Derivative enters the field.

Gateaux Derivative
We can define the Gateaux Derivative in terms of the following limit:

 * $$\delta F(x, h) = \lim_{\epsilon \to 0} \frac{1}{\epsilon} [F(x + \epsilon h) - F(x)]$$

Which is similar to the classical definition of the derivative in the direction h. In plain words, we took the derivative of F with respect to x in the direction of h. h is an arbitrary function of time, in the same space as x (here we are talking about the space L2). Analog to the one-dimensional case a function is differentiable at x iff the above limit exists. We can use the Gateaux derivative to find the minimization of our functional above.

Euler-Lagrange Equation
We will now use the Gateaux derivative, discussed above, to find the minimizer of the following types of function:

 * $$J(x(t)) = \int_a^b f(x(t), x'(t), t)dt$$

We thus have to find the solutions to the equation:

 * $$\delta J(x) = 0$$

The solution is the Euler-Lagrange Equation:

 * $$\frac{\partial f}{\partial x} - \frac{d}{dt}\frac{\partial f}{\partial x'} = 0$$

The partial derivatives are done in an ordinary way ignoring the fact that x is a function of t. Solutions to this equation are either maxima, minima, or saddle points of the cost functional J.

Example: Shortest Distance
We've heard colloquially that the shortest distance between two points is a straight line. We can use the Euler-Lagrange equation to prove this rule.

If we have two points in R2, a, and b, we would like to find the minimum curve (x,y(x)) that joins these two points. Line element ds reads:

 * $$ds = \sqrt{dx^2 + dy^2}$$

Our function that we are trying to minimize then is defined as:

 * $$J[y] = \int_a^b ds$$

or:

 * $$J[y] = \int_a^b \sqrt{1 + \left(\frac{dy}{dx}\right)^2}dx$$

We can take the Gateaux derivative of the function J and set it equal to zero to find the minimum function between these two points. Denoting the square root as f, we get

 * $$0=\frac{\partial f}{\partial y}-\frac{d}{dx}\left(\frac{\partial f}{\partial y'}\right)=y''\frac{1}{\left(1+y^{\prime2}\right)^{3/2}} \;.$$

Knowing that the line element will be finite this boils down to the equation
 * $$\frac{d^2y}{dx^2}=0$$

with the well known solution
 * $$y(x)=mx+n=\frac{b_y-a_y}{b_x-a_x}(x-a_x)+a_y \;.$$

title: Engineering Analysis/Optimization