Sunday, March 01, 2009

Software Track: Cyber Mall Automation System

writing a program for a programmer is not big task as compared with designing front end and backend. Before that, analysis to have perfect output is the major one. without having depth analysis, one cant design the system. Further without having perfect design, coding is not possible. While i was in second year at my Bachelor study, i always tried to have code first and get output then others like keeping focus on analysis and design. But i realized the importance of analysis and design in my final year project. Our motto was to get the product completely implementable for the competitive market. Though somehow, we were successful but limited time could not allow us to get the perfect outcome.

Anyway i was quite satisfied with my work in my project. I was always worried about the project because my other partners were more relaxing. I also felt that leading in a project is not an easy task. Analyze the system, design the system, coding, reporting ...means like following software development life cycle properly. But who can handle which part..proper work division in a group may not lead to desired output.

Here i want to describe briefly about what my project was. the project was entitled "Cyber Mall Automation System". In Kathmandu Valley, there are lots of cyber cafes but no one Cyber was found to be automated. Time manipulation, bill generation were not the only activities out project captured. This project was designed with border concept that a cyber cafe may provide cafe service as well as the necessary stationery for the internet users. A cyber may have pre-registered users who can balance for month, year or even lifetime so that every time its not necessary for him/her to pay for the service. Cafe administration system should have to deduce the price automatically for the registered users as well. No problem, one can pay on the spot for the service.

We already have computers in networking. Definitely there should be a gateway server on its Cyber LAN. Hence to implement a software system for allCcyber activities with cafe services requires no more resource addition. Just run the software on its LAN as a client-server environment. Based upon this concept, the project was formulated. the major facilities of the package are:

1. client-server based.
2. calculate the time based on processor's clock tick for the internet users.
3. realtime cafe service as per the order by the client from his/her desk.
4. Advance Payment system for the frequent internet users (once a users is registered, he can access the cyer facilities until his balance donto cross the minimum threshold)
5. realtime bill generation.
6. daily/monthly/yearly report generation for managerial action.
7. Remote monitoring of the client machine (shutdown client, lock/unlock client etc...)
and many more.

The Concept:
1. the server keeps status of its all clients in the network by polling every minutes.
2. server database contains clients_PC database, Items Inventory Lists, internet users database.
3. server keeps log of every users conenction and order activities.
4. server gives alarm based on clients orders/requests.
5. client could not access internet without providing username/password.
6. registered users and guest users are treated separately to maintain the necessary information.
7. server can shutdown the remote PCs at time at the office close time.





The figure on the left shows the collecting hosts information just after running the server process. When an operator logs into the server, it starts finding out the live clients and listed its status. When any user logs into the client for the internet access, it is responded to server and listed on the same session table which has client host, status (power on/off), internet session, logged in username, type of
user(guess/registered), and time span.













The server databse must maintan the host information in its LAN. When new PC is connected to LAN, the name and IP address for that PC needs to be specified and registered into the server databse. Client PC never sends client name and client IP to server. so first its name/IP should be specified in the server databse and client package have to be installed on the new client.














The service provider not only provide the internet but also provide cafe service. when internet users want to have snacks, he can place an order immediately. Hence the server database maintains items inventory with its rates and availability information for that day.















It is remote control window in server side. this window lists all the live PC on the LAN. Just before closing the Cyber, the administrator shutdown all PC from server control. in addition, if any one internet users found doing fraud, admin can lock the clinet machine immediately.










For any MIS and automated system, Report is the most. It helps to analyze to do further decision and actions.











This is client's welcome screen. iI there is server failure, client may connect to another server choosing from the list of servers. Without connecting to server, no one client can enter into the system. All the special keys are disabled for security purpose.















After client logged into the client PC, his time starts the cliet only send the login time and logout time to server. But for cliet's reference, it is continuously displays on the clinet side.

The order placement window. the item list on the table shows the available items for that moment. Client must first put order adding items on his/her basket and finally order as per his/her requirements.

Hence, this software has lots of features which i cant explain in detail all about within this blog. We did our much effort to make the system user friendly and attractive too as well as bug free. It can be implemented to anywhere like not only to Cyber cafes but also to a departmental store which supplies goods where we can avoid internet billing rather we may focus on items billing.

Sunday, January 25, 2009

Software Track - Object Oriented Programming (3-D visualization of Complex Poynomial)

I just looked back to my project developed as subject project while studying BE Computer Engineering@IOE. Among the different types of programming, I like Object Oriented Programming specially JAVA due to its robustness, architectural independence, parallel processing (thread), and other properties of OOPs.

Computer Graphics, one of the interesting subjects of study. Rajendra Dev Adhikari (Currently telecom engineer), was the subject teacher encouraged us to develop project in graphics. We had to implement Gaurad shading and other necessary algorithms if possible.

Myself (Babu Ram Dawadi) with my roommate Arun Parajuli in IOE hostel decided to draw complex polynomial using Hornor’s Method (studied in Numerical Method). Arun Parajuli was quite perfect in JAVA multithreading. Hence our effort came into realization that we perfectly developed a project combining graphics algorithm and Numerical Method Algorithm. The project was developed in JAVA Swing. If you supply coefficients of a polynomial, then the program shows the 3-D plot like shown below.







Wednesday, December 17, 2008

AAA for Wired and Wireless Campus Area Internet Users @IOE Pulchowk

Center for Information Technology of IOE Pulchowk campus has been managing Internet Users over WINNT Domain. It has been 4 years since I have been working as system/network administrator managing different servers of IOE.EDU.NP domain and SOI System under WIDE Project. During this run, several improvement have been done like IOE Mail, bandwidth management, power management, network management and hardware update etc.. But it’s a universal truth that clients never satisfy with the service.

As a consequence, I tried to remove all the domain controllers with old P2 Dell server and replace the authentication through radius users over Quad Core 2Ghz Dell Server. I found radius authentication the best one solution for wired/wireless and dialup users. So that through a single database server can control all kinds of user’s authentication though LDAP is also another solution. IOE Pulchowk has more than 2000 users on its LAN, so it’s not the easy task to maintain more than 1500 machines enabled with internet. Virtual LANs on the central backbone switch, two Transparent Proxies, and two Radius servers enabled the system a bit manageable.
Chillispot is a wireless captive portal mostly suitable on wireless internet, though it can be used in wired LAN (UAM technique). I designed to have a concept of utilizing chillispot on wired as well as wireless LAN. Chilli-Radius Authentication with appropriate firewall and bandwidth control is the current implementation as new authentication system in IOE Pulchowk Campus. But performance is another major issue whether the new system might have shown improvement in internet access or not.
The central authentication system is supposed to have some benefits like:
•Users can be captured with their MAC/IP address
•MAC authentication can be implemented
•Fraud users can be identified
•Users with unnecessary site access can be easily traced.
•All the users request is passed through transparent proxy: performance is supposed to be improved
•Public IP block Saved (private Class B IP addressing has been implemented)
•Web based password change option

There is still difficulty in wireless user’s authentication in case of using wireless routers. Normal Wireless router doesn’t have authentication within itself. But due to over traffic chilli and firewall process seems not working properly. Symptoms of frequent connectivity breakdown may need more research and test.




authentication system

The basic authentication and internet system is as follows:
•When a client browse the internet, the gateway servers running chilli and proxy provides authentication page to clients.
•Client supply the username and password which is forwarded to radius servers for the users validation.
•Radius server replies with the validation information to chilli, then the users are authenticated and the subsequent request of users would be forwarded to transparent proxy.
•Users can be seen online until he/she logged out.




Lists of users with their machines IP/MAC address accessing internet

Monday, June 16, 2008

My First Attempt: Paper Presentation in an International Conference & IT Park Visit

“International Conference on Electronic Commerce in the 21st Century” was the main title of the conference held in June 2 to 4 at Soaltee Crown Plaza, Kathmandu Nepal. When I appeared in SIGCOMM 2007 conference at Kyoto Japan, I was really surprised with the environment. I hadn’t had expected that environment on this conference though I was curious about the situation because I had to present my paper there. What if I could not answer expert’s questions!! :O. I was a bit afraid as the hall was full of foreigner and locals. My English is not good so far though I had already prepared somehow to cover up my 30mins presentation time.

The organizer had mistakes in formatting my paper which could easily be pointed out from the wrong mail address and wrong picture placement. Any way I felt really comfortable with presentation and as per my knowledge, I easily tackled the questions at the end.

Australian professor Kuzic was a bit funny and impressive. Almost Asian guys especially Indians were presenting their paper just reading slides. Kuzic commented it out that just to explain what we would understand...no need to read line by line. Another professor Leon from Luxemburg wanted to start his session with European Style (keep the audiences relaxed ...like provide them beer, whisky…). Sometimes the hall was disturbed with mobile ring during middle of the presentation…ha ha...it’s a Nepalese Style.

The last day of the conference was already planned for foreigner to visit to IT Park. By the way, I had never got a chance to visit IT park of Nepal which was located alone at Banepa. This was my opportunity having trip with foreign professors to IT Park. The member secretary and full time member of HLCIT briefly described about the environment and technology currently implemented in IT Park. One thing what they focused with proudly was about finger print verification to permit into the room. Ha ha ha...it was already old and nothing for foreigner. Hence Australian professor frankly commented that not to be proud of our work but be focused what we could do and approached with vision to Indian and Chinese which are the two major IT industries of the world. I appreciated his comment.



Discussion meeting at IT-Park, Banepa

Group photo on the IT-Park premise

The trip to Bhaktapur Durbar Square was also quite interesting. I had to visit friends in the evening for software development and outsourcing plan. So I just separated from the group who had next plan to visit to Pashupati around 5:15PM from Quoteshwor. Thanks much to Dr. Tank Dhamala (Head, TU Central Department of Computer Science) for such a nice trip and for the successful completion of the conference.

Monday, May 26, 2008

Guest Lecture on “Introduction to IPv6 Networking” to TU M.Sc. Computer Science Students @IOE

Last Friday, Asst. Prof. Jivan Kumar Pant sir discussed with me about to give one lecture on IPv6 Networking and demonstration of IOE Pulchowk campus’s System/Network. As per the discussion the class had been set on Sunday morning at 7:30AM. I was in hurry up at that time preparing slides for conference presentation. I had to meet prof. sashi sir anyhow as soon as possible. My work load was just increased by the guest lecture too. Whole day on Saturday I started preparing slides for guest lecturing and planned for system/network demonstration too.

I was a bit felt uneasy to have lecture with M. Sc. Computer Science Students though I am teaching e-Commerce to masters student at Acme Engineering College. But it’s a way to disseminate knowledge. Teaching learning process doesn’t indicate senior/junior. I thought my slides were too summarized. The presentation just covered the introduction, addressing mechanism, current scenario of IPv6 in the world and transition mechanisms. I had prepared some IPv6 practical activities like unicast and multicast routing in my laptop with VMWare server.

When the day came, i had started my lecture and during the time, I surprised that the professor of computer network at TU central department of computer science himself was listening my lecture sitting behind the chair with students. I felt a bit happy that the way I delivered my lecture was more than sufficient for students. IPv6 is still new in Nepal though other countries have implemented on some network. The resource to study about IPv6 is really limited in Nepal. That’s why professor himself was expecting some input about IPv6 from me. When I did my research thesis with IPv6 Networking, my confidence toward IPv6 is drastically increased and the practical networking environment with IOE IPv6 network really makes me more confident.

After completing the lecture, professor and students both were seems happy with the contents what I delivered and it really felt me happy. With my co-worker Manish Singh, The demonstration of both IPv4 and IPv6 network was successfully completed. I hope this lecture and demonstration will help students encouraged towards networking and system administration.

Why did I share this feeling with my blog?? Really I did one mistake in my presentation slides. I had included one slide which compared header structure of IPv4 and IPv6 protocol. When I just reviewed my slides today, the version field for IPv4 must specify 4 and for IPv6 must be 6. But on both header structure, 4 was indicated. Hassssssssssssssss…what a mistake. Sorry students and professor, u didn’t indicate my mistake. Hope you correct that mistake.

Monday, May 05, 2008

Do You Like Piano?? Make your Computer Keyboard a Piano

There is no one in this world who hates music. Piano is a typical Musical Instrument which is frequently used to play while we become offset or we come into tension. Hence this device is used to play for peacefulness and coolness.

During my Masters study, I have developed a software package using Visual Basic as a project categorized under Multimedia which was an elective subject. Teacher suggested us to create a group and build a project which must cover objective of what we were studying in Multimedia Subject. Responsibility went to me to create a project anyhow. I thought to build a piano which is helpful to everyone because anybody if he has a computer, he could simulate the principle of Piano by his computer keyboard.

Some of the keys of computer keyboard are taken as piano keys. It is similar like real piano. If you are perfect in playing a piano, I confirmed that you will really enjoy with this software. Let me give you tips about how to install and play:

You can download a pianosetup.doc and serialkey.txt (key: 1111111111) from the following link:

http://baburamdawadi.tripod.com/project/pianosetup.doc

http://baburamdawadi.tripod.com/project/serialkey.txt

(alternetive technique to download: copy these links to Browser's address bar and enter, if you could not download directly)

after download is complete, first rename the pianosetup.doc file to pianosetup.exe (you can run that file only after renaming to pianosetup.exe)

Just run the setup file and supply serial key what I have provided with.

After installation is complete, go to program file>>Easy Piano>> Projectmultimedia

You can see the following main screen and choose tools>>Piano

And start playing (note* your speakers connected to your computer must be working)

Enjoy Piano!!!!!!! ;)


Tuesday, April 08, 2008

From NGO-Profile to DNF-Profile to DNET-Profile

When I was working as lecturer in Acme Engg. College, I became so tedious in teaching. Though teaching is a nice job which improves our level of confidence in mass communication as well as enhances our knowledge what we studied in B.E.

I know I am computer engineer. I thought my job must be either software programming or system/network administration in parallel with teaching. Programming only is also a tedious job (continuous programming>> monotonous).

During these teaching periods, I roamed for programming job after 2PM onwards after finishing morning shift class on the college. I like database programming. One of my friends, coworker at Acme proposed me for part time program at Compro Computers Pvt. Ltd. Hence my part-time programming life started since February 2006. The first project was Finance Model 1.0 developed for NGO-Federation of Nepal. It was an accounting package in replace of quickbooks (famous accounting software). I was afraid how could I generate balance sheet, laser, trial balance, Journal Vourcher etc…etc…though I programmed until 9PM night daily with the help of Auditor on the side.

During this programming period, I got a chance to meet mercantile programmer and we developed that first software as a joint effort. My inspiring friend Prabhat, IT manager of NGO-Federation, helped me a lot and taught me about firing trigger and writing procedure in MS-SQL Server. Due to this hard work, I became the system architect for the next project called Prime Minister Office Project (PMO). During the PMO project development, our team started the project enthusiastically from the beginning at Prime Minister’s office at singadurbar (interview,DB design….there was vice chair person Kirtinidihi Bist in Prime Minister’s post). The time was the time when king gyanendra seized the country and ruled by himself. We became unlucky that the project was closed due to country’s political instability and king’s over enthusiasm (I hate politics).

After that I became the IT-Consultant of Ngo-Federation when IT manager of NGO-Federation went for abroad study. During the consultancy I handled the entire project running on NGO with NGO-Profile which was developed on MS-SQL Server, Crystal Report, and ASP with Nepali Unicode format. After successful completion as IT consultant in NGO-Federation, I got a second contract on Dalit NGO Federation of Nepal (DNF) to create profile of Dalit NGOs. It is really interesting to program in ASP/MS-SQL server with Nepali Unicode as front end. Hence I developed data entry and analysis for DNF-Profile. Some of the snapshots are:


Data entry form for DNF-Profile



Record Search form for DNF-Profile



Data in Unicode format, in SQL Server


From that Unicode programming, my confidence level towards programming increased more. I just used these templates and created IOE Entrance Management System too. Now I am writing program for DNET-Profile (Development Network Pvt. Ltd.) using the ASP and MS-SQL. Interaction with the data entry operators, writing code, refining the wrong entry makes me quite sharp with more experiences in software developing. Some snapshots from this DNET-Profile:


Data Entry Form



Record Update Form



Database of DNET-Profile


IT-Consultancy enables us to be social, interactive and forwarding in the IT field…….this is just my way towards creating profile on NGOs/Consultancy Offices