DEPARTMENT OF ENGINEERING
MECHANICAL
August 2009 –
January 2010
PES INSTITUTE OF TECHNOLOGY 100 FEET RING ROAD, BANASHANKARI III STAGE BANGALORE-560085
Project Report On DESIGN OF CENTRIFUGAL COMPRESSOR (SOFTWARE)
Compiled & Designed by Lovel Rishi 1PI07ME046 Department of Mechanical Engineering
Project Guides:
Dr. TR SEETHARAM Prof. V KRISHNA of HOD
Signature
PES Institute of Technology, 100 Feet Ring Road, BSK 3rd Stage, Bangalore-560085 DEPARTMENT OF MECHANICAL ENGINEERING
CERTIFICATE This is to certify that Lovel Rishi, bearing University Seat Number 1PI07ME 046, has satisfactorily completed the Special Topic Project prescribed by PES Institute of Technology (Autonomous Institute under VTU, Belgaum) in the year 2009 (August December).
Guides:
Dr. TR Seetharam
Prof. V Krishna
Dr. K
Narasimha Murthy Professor and Head of the Department
ABSTRACT
ACKNOWLEDGEMENT The completion of this project brings with it a sense of satisfaction, but it is never complete without thanking the persons responsible for its successful completion I extend my deep sense of sincere gratitude to Dr. KNB Murthy, Principal and Director, PES Institute of Technology, Bangalore, for providing me facilities required for the mini project. I express my in-depth, heartfelt, sincere gratitude to Prof. Shylaja S S, Head, Department of Information Science and Engineering, P E S Institute of Technology, Bangalore, for her valuable suggestions and support. I extend my heartfelt, sincere gratitude to Dr. Sutikshn Kumar, Professor,
Department
of
Information
Science
and
Engineering, P E S Institute of Technology, Bangalore, for her constant support and valuable guidance for completion of the mini project on Operating System. Finally, I would like to thank all the faculty members of Department of Information Science and
Engineering, P E S
Institute of Technology, Bangalore, for their support.
Ashish Gupta (1PI07IS021 )
TABLE OF CONTENTS
CHAPTER NO PAGE NO. 1.
TITLE
Introduction 1
2.
Literature Survey
2 3.
Modules
4 4.
Testing
9 5.
Conclusion
14 6.
References 15
MindTwister
1. Introduction In software
engineering,
a web
application or webapp
is
an application that is accessed via a web browser over a network such as the Internet or an intranet. The term may also mean a computer software application that is hosted in a browser-controlled environment (e.g. a Java applet) or coded in a browser-supported language (such as JavaScript, possibly combined with a browser-rendered markup language like HTML) and
reliant
on
a
common
web
browser
to
render
the
application executable. Web applications are popular due to the ubiquity of web browsers, and the convenience of using a web browser as a client, sometimes called a thin client. The ability to update and maintain web applications without distributing and installing software on potentially thousands of client computers is a key reason for their popularity, as is the inherent support for cross-platform compatibility. MindTwister is a full fledged web application which provides users with a tool to test their Mental Skills, Intelligence Quotient, English Vocabulary and Technical Skills. The application provides users with various options like signing up, signing in and getting information about what is IQ, Mental Ability, Analytical skill and English Vocabulary. The option to take the test has been provided on each topic page. The user needs to log in to take the test. Each test is of 10 mins consisting of 20 questions and the results are based on the test score a user gets in the test. In case the user wants to see their previous test scores, an option has been provided to retrieve the scores after logging in. The error handling has been done very efficiently and the user will find it very easy to browse through the application. In case, the user reports any error, he/she can provide their feedback on the feedback board which will be taken care of. One of the most important feature is the random question generation
Information Science & Engineering
Page 1
MindTwister
from the database and different question generation for each test every time the user logs in to take the test.
2. Literature Survey An intelligence quotient or IQ is a score derived from one of several different standardized tests designed to assess intelligence. The term "IQ", from the German Intelligence-Quotient, was coined by the German psychologist William Stern in 1912 as a proposed method of scoring early modern children's intelligence tests. The word quotient means the result of dividing one quantity by another, and intelligence can be defined as mental ability or quickness of mind. Researches convinced scientists that intelligence was inherited and led to further studies which involved evaluating individual differences in reaction time and range and specificity of the senses, which have since been shown to correlate with academic success. Assuming that children all follow the same pattern of development but develop at different rates, concept of mental age was created, whereby, for example, a child of any age who scored as well as an average twelveyear-old was said to have a mental age of twelve. Intelligence tests today no longer use the IQ formula. Instead, the score on a modern intelligence test compares a person’s performance with others his/her own age, while arbitrarily defining the average score as 100. During the past 25-30 years IQ testing has been brought into widespread use by employers because of their need to ensure that they place the right people in the right job from the outset. One of the main reasons for this in today’s world of tight purse strings, cost cutting and low budgets is the high cost of errors in employing the Information Science & Engineering
Page 2
MindTwister
wrong person for a job, including the cost of re advertising and interviewing new applicants and of reinvestment in training. By taking up IQ test we become able to know and improve our IQ level as well as abilities like classification skills, spatial skills, logical reasoning, pattern recognition, general knowledge etc. Today in modern computer age there are genuine reasons behind popularity of online IQ test. Most of the young people want to measure their IQ score with a free psychometric tool. Secondly, online IQ tests are easy to use and available on the internet. We have simply to enter our email address to use an intelligence measurement tool and have a satisfactory result.
Thirdly, throat cut marketing ploys have forced the IQ testing sites marketers to spend more money to get loyal lists of subscribers. A free instrument is a right tool to have strong lists of hungry subscribers. Whatever the reason may be there is no dispute that free IQ tools are getting popular very fast in young generation. We may read reviews and questions that young lot of 14 to 25 years old is looking for genuine and quality free online IQ tests. Most of the users don’t bother even to know a bit about reputation of the test owners and the websites offering them. They even make plans to avoid marketing emails from the websites to promote their products. Tests that measure the IQs of children are standardized and an average score is recorded for each age group. Thus a child of 10 years of age who scores the results expected of a child of 12 would have an IQ of 120, calculated as follows: (mental age/chronological age)100 = (12/10)100 = 120. However, because little or no improvement in IQ rating is found in adults, they have to be judged on an IQ test whose average score is 100 and their results graded above and below this norm according to known scores. Information Science & Engineering
Page 2
MindTwister
In this online IQ test website we have tried to implement the same concept. We no longer use the above formula to calculate IQ test scores. Instead, modern intelligence tests apply statistical methods to produce a score reflecting one's performance as compared to his peers. A scale is defined by which we can relate to the IQ score & find out where we stand relative to others. The Online IQ test website been developed is easy to use. As the user explores the website he or she is allowed to create his account and login to take up the test. As the user goes to IQ section he is presented well designed set of questions with average score 100 stored in the database. Based on the user’s answers he gets his IQ score reflecting his performance as compared to his peers.
3. Modules Sign up/Sign in Existing users can directly sign in using their username and password. New users can easily sign up by providing username, password and email. If the username already exists, the user is asked to enter other username. The password strength has been provided from 4 to 20 characters. If any detail is not in correct format, the corresponding error is displayed.
Server side script:Signing up protected void Button1_Click(object sender, EventArgs e) { OdbcConnection conn = new OdbcConnection("Dsn=iqcon;uid=root;server=localhost;database=iq;port=2011");
Information Science & Engineering
Page 1
MindTwister Random rnduser = new Random(); int uid = Convert.ToInt32(rnduser.Next().ToString()); if (CustomValidator1.IsValid) { string cmd1 = "select * from iq.userinfo where uname='" + tbusr.Text + "';"; conn.Open(); OdbcCommand scmd1 = new OdbcCommand(cmd1, conn); OdbcDataReader rdr = scmd1.ExecuteReader(); if (rdr.HasRows) { TextBox2.Visible = true; TextBox2.Text = "Username already exists.Choose another username."; tbusr.Text = ""; } else { TextBox2.Visible = false; string cmd = "insert into iq.userinfo (uname,uid,pwd,email) values ('" + tbusr.Text + "'," + uid + ",'" + tbpswd.Text + "','" + tbem.Text + "');"; OdbcCommand scmd = new OdbcCommand(cmd, conn); scmd.ExecuteNonQuery(); conn.Close(); tbem.Text = ""; tbusr.Text = ""; tbpswd.Text = ""; lblem.Visible = false; tbem.Visible = false; Button1.Visible = false; Button13.Visible = true; Button10.Visible = true } } }
Information Science & Engineering
Page 1
MindTwister
Signing in:protected void Button13_Click(object sender, EventArgs e) { TextBox2.Visible = false; OdbcConnection conn = new OdbcConnection("Dsn=IQCON;uid=root;server=localhost;database=iq;port=2011"); string cmd = "select uname,pwd from iq.userinfo where uname='"+tbusr.Text+"' and pwd='"+tbpswd.Text+"';"; conn.Open(); OdbcCommand scmd = new OdbcCommand(cmd, conn); OdbcDataReader rdr = scmd.ExecuteReader(); if (!rdr.HasRows) { TextBox2.Visible = true; TextBox2.Text = "Please check your username and password."; } else { loggedin.Visible = true; div4.Visible = false; dvfrgtpswd.Visible = false; div.Visible = false; TextBox3.Visible = true; TextBox3.Text = "Hello, " + tbusr.Text+"."; string cmd1 = "select uid from iq.userinfo where uname='" + tbusr.Text + "';"; OdbcCommand scmd1 = new OdbcCommand(cmd1, conn); OdbcDataReader rdr1 = scmd1.ExecuteReader(); while (rdr1.Read()) { Session["uid"] = rdr1.GetInt32(0); } Session["usernm"] = tbusr.Text; Session["signed"] = 1; tbusr.Text = ""; tbpswd.Text = ""; } if (Convert.ToInt32(Session["signed"]) == 1) Button14.Visible = true; else Button14.Visible = false; conn.Close(); } protected void Button11_Click(object sender, EventArgs e) { OdbcConnection conn = new OdbcConnection("Dsn=IQCON;uid=root;server=localhost;database=iq;port=2011"); string cmd = "select pwd from iq.userinfo where uname='" + TextBox1.Text + "';"; conn.Open(); OdbcCommand scmd = new OdbcCommand(cmd, conn); OdbcDataReader rdr = scmd.ExecuteReader(); while (rdr.Read()) { lblgtps.Visible = true; lblgtps.Text = "Your Password: "+rdr.GetString(0) ; }}
Information Science & Engineering
Page 1
MindTwister
Random Question Generation:The questions has been selected randomly from the database based on what topic the user has chosen for the test. Server side script:protected void Button5_Click(object sender, EventArgs e) { RadioButtonList1.Items.Clear(); RadioButtonList2.Items.Clear(); RadioButtonList3.Items.Clear(); RadioButtonList4.Items.Clear(); RadioButtonList5.Items.Clear(); Label3.Visible = true; Application["time"] = 0; Button5.Enabled = false; Button5.Visible = false; OdbcConnection coniq = new OdbcConnection("Dsn=IQCON;uid=root;server=localhost;database=iq;port=2011"); if (Convert.ToInt32(Session["choice"]) == 0) { Random rndiq = new Random(); coniq.Open(); for (int i = 1; i <=5; i++) { int qid = Convert.ToInt32(rndiq.Next(1, 45).ToString()); while((qid == Convert.ToInt32(Application["cuqid1"])) || (qid == Convert.ToInt32(Application["cuqid2"])) || (qid == Convert.ToInt32(Application["cuqid3"])) || (qid == Convert.ToInt32(Application["cuqid4"])) || (qid == Convert.ToInt32(Application["cuqid5"]))) { qid =Convert.ToInt32(rndiq.Next(1, 48).ToString()); } string cmdq = "select qdesc,op1,op2,op3,op4 from iq.iqqn where qno=" + qid +";"; OdbcCommand cmdiq = new OdbcCommand(cmdq, coniq); OdbcDataReader rdriq = cmdiq.ExecuteReader(); while (rdriq.Read()) { if (i == 1) { Application["cuqid1"] = qid;
}
TextBox1.Text = rdriq.GetString(0); RadioButtonList1.Items.Add(rdriq.GetString(1)); RadioButtonList1.Items.Add(rdriq.GetString(2)); RadioButtonList1.Items.Add(rdriq.GetString(3)); RadioButtonList1.Items.Add(rdriq.GetString(4)); RadioButtonList1.Items.Add("No Answer");
. . . Information Science & Engineering
Page 1
MindTwister
. .
Information Science & Engineering
Page 1
MindTwister
Timer:The timer has been implemented using the AJAX control toolkit which has been provided as an add-on in visual studio 2008. The timer ticks on the interval specified.
HTML script:
Server side script:protected void Timer1_Tick(object sender, EventArgs e) { Application["time"] = Convert.ToInt32(Application["time"]) + 1; Label3.Text = "Time Elapsed: "+Convert.ToString(Convert.ToInt32(Application["time"]))+"secs"; if(Convert.ToInt32(Application["time"])==600) { Response.Redirect("result.aspx"); } }
Previous Score Retrieval:MySql has been used as the database. Based on the current user, the scores of all previous tests taken by the user are displayed. Server side script:protected void Page_Load(object sender, EventArgs e) { OdbcConnection conn = new OdbcConnection("Dsn=iqcon;uid=root;server=localhost;database=iq;port=2011"); string cmd = "select USERNAME,TESTTOPIC,TESTSCORE from iq.testrec where USERNAME='" + Convert.ToString(Session["usernm"]) + "';"; OdbcDataAdapter adp = new OdbcDataAdapter(cmd, conn); DataSet ds = new DataSet(); Label2.Visible = false; adp.Fill(ds,"iq.testrec"); if (!Page.IsPostBack) { if(Convert.ToInt32(Session["signed"])==1) { GridView1.Visible = true;
Information Science & Engineering
Page 1
MindTwister GridView1.DataSource = ds; GridView1.DataBind(); if (GridView1.Rows.Count == 0) { Label2.Visible = true; Label2.Text = "No records found."; } } else Response.Redirect("errfeed.aspx"); }
Information Science & Engineering
Page 1
MindTwister
4. Testing First page:
Fig- 4.1
After Logging in:-
Fig.-4.2
Information Science & Engineering
Page 1
MindTwister
Test Page:-
Fig-4.3
Information Science & Engineering
Page 1
MindTwister
Test Result:-
Fig-4.4
Information Science & Engineering
Page 3
MindTwister
All User Score Retrieval:-
Fig-4.5
Information Science & Engineering
Page 1
MindTwister
5. Conclusion The project, we conducted provided us a great opportunity to learn and understand the basic concepts of a web application, ASP.NET, C#, AJAX and MYSQL. The Web Applications are becoming very popular nowadays due to their accessibility directly through the web without installation . Many people want to test their different skills because these are needed nowadays in various competitive exams like CAT, MAT etc. This Web Application is a small attempt to provide such users with an easy to use application to test their skills. Future enhancements such as categorized display of result showing the areas in which the user is strong or weak , inclusion of graphical based questions and making the test as an installable software would further make this application more productive.
Information Science & Engineering
Page 1
MindTwister
6. References ➢ Beginning Ajax With ASP.NET (2006) – Wallace B. McClure, Scott Cate , Paul Glavich ,Craig Shoemaker ➢ Professional ASP.NET 3.5 in C# and VB- Bill Evjen, Scott Hanselman, Devin Rader ➢ Aptech Study Materials ➢ www.asp.net ➢ www.w3schools.com ➢ www.msdn.microsoft.com
Information Science & Engineering
Page 1