Cyber indigo Net Pvt. Ltd. specializes in providing customized information technology services in the field of consulting and software development to customers in North America, Europe and Asia. ts services include application development, application maintenance, application testing, data warehousing and business intelligence, enterprise software implementation and maintenance, technology consulting and product sales. CNPL is into outsourcing services for application development ! maintenance and business processes. "he company is mainly focused on providing technology solutions in web technologies and delivering applications through thin#clients. CNPL$s client#list includes corporate companies in %ortune &'' companies and ()* segment. "he company was incorporated in +,,- and is head.uartered in )umbai, ndia. CNPL has successfully over /'' comple0 web applications thus has been successfully deployed in the organizations. What They Do n a rapidly changing digital mar1etplace, CNPL has re#invented the way innovation is delivered to businesses # the very businesses facing today$s mounting challenges2 shortened development cycles, streamlined in#house staff and increasingly global mar1ets. "he company has tie ups with various resellers and vendors which provides us with the latest information of industry advances, which in turn, helps us to provide our clients with well informed recommendations and services. Considering that the company has an ." bac1ground, a number of boo1s are 1ept for references. A lot of soft wares are used for the pro3ects the company wor1s on depending on their ." bac1ground. "hey include operating systems, anti#viruses, system management server soft wares etc. Cyberindigo Net Pvt Ltd. CNPL$s Customer Relation Management (ervices are dedicated towards building a stronger customer relationship scenario for our customers by providing C4) solutions which are ahead because of their high impact business intelligence 1 and e0ecution intelligence. "he main CNPL C4) services allow the client to have the clear vision of strategic differentiation and operational superiority over the others because its C4) solutions are configured to associate itself with the elements of the competitive strategy which the client might be following. 5ur e0pertise in C4) could be utilized in following areas2 Consulting Services # "he consulting services offered by CNPL have been implemented successfully across many functional areas and industry verticals. 5ur servicing solutions leverage our broad domain e0pertise, detailed process 1nowledge and e0tensive e0perience on industry standard C4) pac1ages. Imlementation an! integration # CNPL have played a very instrumental role in implementing a very high impact C4) pac1ages for the clients. 5ur services include Product Customization and Configuration, Enterprise ntegration, 6eployment, Performance chec1s. Custom Develoment # CNPL$s strong technology bac1ground have helped us to develop an attitude of penetrating into depths of understanding any C4) business applications and the underlying technology across other leading products. "hese e0periences coupled with our e0pertise in domain 1nowledge are utilized by our e0pert team members towards building customized and superior .uality C4) applications for our clients. "usiness #rocess Management Solutions # CNPL$s *usiness Process )anagement solutions are designed so as to help those small industrial enterprises to find the flaws in their system processes which had eluded them to match their pace with the industry bigwigs. (uccessful industrial enterprises can utilize these solutions to improve and continuously evolve over other business houses in terms of .uality aided technical superiority and wor1force productivity. Customer Data Integration an! Services # Customer information is a very vital factor in deciding the status of relationship and business dealings which an enterprise ta1es along its evolution with other enterprises. As it may prove cumbersome to manage the e0act relationship status reports 2 and other relevant data$s, its under these situations that CNPL$s customer data integration services come to aid by providing the solutions which are based on our e0perience and e0pertise in dealing with involved technologies and business processes. Suort an! Maintenance # CNPL$s Enterprise (upport and )aintenance services are committed towards providing reliable and customizable solutions that reduce the "otal Cost of 5wnership 7"C58 on the application used by the enterprise. 5ur services are successfully utilized towards2 o +. Application Administration o /. Application Enhancements o 9. Application "roubleshooting o :. )aintenance and 4elease )anagement o &. ;elpdes1 and Production (upport "usiness Intelligence $ Analytics Services # *usiness houses many times miss that insight into real hidden values of any functional data which further helps them to accelerate the speed of decision ma1ing with much efficiency and effervescence. CNPL$s e0tensive dataware housing e0periences have been helpful in come out with high solutions for solving these confusing data e.uations which have bogged down the growth pace of business enterprises. 3 %. System Analysis o& '(isting System "he company possesses a lot of boo1s and software cd<s. "he details regarding the storage, availability had to be maintained in records. n the prior system this was done using )icrosoft E0cel sheets. "his led to a number of problems.
Scoe o& the revious system . "he system made the use of E0cel sheets. "he system had only one copy available. "he C6<s had to be used only for the office purpose and was not allowed to be ta1en home. "he system was easy to implement and no comple0ity was involved. "he information of the boo1 that was stored2 *oo1 Number 7(*N no8, *oo1 name and the description. "his was stored in an E0cel sheet named *oo1s 6etails. (oftware information was first differentiated on the basses of their color code 7(ince each application was assigned a specific color. %or e0ample =reen for all >indows operating system C6<s8. "he information of the software<s that was stored2 C6 number, C6 name and the description. "his was stored in an e0cel sheet named C6 records. 4 #rocesses in revious system) +8 ssuing a boo1. /8 =etting a C6. 98 4eturning a boo1. 1* Issuing a boo+ >hen an employee wants to issue a boo1, he?she first chec1s to see all the boo1s available pertaining to that sub3ect. After selecting a boo1 they have to go to storage area and find the boo1 that they have selected. A 3ournal was maintained to 1eep trac1 of who has issued which boo1. After ta1ing the boo1 employee has to ma1e an entry into the 3ournal. %* ,etting a CD >hen an employee wants software for his office computer he?she chec1s the C6 4ecords and then writes a re.uest the software. "he attendant locates the C6 and gives it to the employee. ;e will ta1e it bac1 after the installation is complete. -* Returning a boo+ "he previous system was very informal so it did not really loo1 into whether a boo1 was returned on time or late. A boo1 was returned according to the convenience of the employee and not the library, when in fact it should be the other way round. After an employee has returned a boo1 the 3ournal should again be updated stating that the boo1 has arrived and is available. 5 -. #roblems .ith the '(isting System "here were a number of problems that the company faced with the e0isting system. "he systems were not automated i.e. it could not be configured to accomplish specific information handling operations. "here was no =@ 7=raphical @ser nterface8.=raphical user interface or ,/I is a type of user interface which allows people to interact with a computer and computer#controlled devices. n the e0isting system no columns were given about the availability, issue date, return date and the employee who has issued the boo1. "his meant that a user could issue a boo1 for however long he wanted. Everyone had direct access to the e0cel sheets. "his was a high security ris1 as anyone could manipulate the details. No way to generate reports. 6ue to this the details were not available clearly to the user. "his led to a lot of confusing regarding the availability, lending and other problems. "he system was more time consuming as it lac1ed a number of features such as the availability. (o the boo1s had to be chec1ed in person regarding their availability. A lot of details have to hand written leading to unnecessary wor1 load. 6 0. #lanning Planning means the systematic arrangement of things towards the smooth wor1ing of a particular thing or a particular module. n planning particular steps are ta1en depending on the decisions put forth by various people. "hese decisions are ta1en when either the people are not satisfied with the wor1ing of a particular thing or a particular system, or there are views put forward that a lot better can be done so that it results in better efficiency, fle0ibility and the smoothness in the wor1ing. >ith planning people are then presented with the view of what the results of the decisions ta1en will be. "he decisions can either be a great support or it will be the same thus proving to be of no help. "hus planning is a systematic approach towards the proper development of the system.
A. In&ormation ,athering >e approached )rs. Aparna =ovind who helped us in setting up a meeting with )r. Pandian who is the team leader in CA*E4N6=5 NE" PB" L"6. >e were then introduced to )r. Cunwar Pratap (ingh who is our pro3ect manager. ;e gave us all the necessary details about the e0isting system that was being used. >e were as1ed about our views on how the system can be replaced by the new system, what were the things that do re.uire a change, what are the things that should not be changed. )any .ueries popped up li1e how must the design be, how many modules must be there, what are the things that must be the main criteria. "hen came the .uery of what language must be used for the generation of the system. >e were given the instruction of developing the system in CD using the .Net platform as the front end architecture. )s Access was to be used as the bac1 end architecture details about the e0isting system that was being used. >e were as1ed about our views on how the system can be replaced by the new system, what were the things that do re.uire a change, what are the things that should not be changed. )any .ueries popped up li1e how must the design be, how many modules must be there, what are the things that must be the main criteria. "hen came the .uery of what language must be used for the generation of the system. >e were given the instruction of developing the system in CD 7 using the .Net platform as the front end architecture. )s Access was to be used as the bac1 end architecture. "he system that the organization used was efficient in functioning but there were many things that must have been there in the system to ma1e it completely efficient and mar1 it up to the level of the user satisfaction. (ome of the things that were missing in the system are as follows2 1. 1o /!ates t was 1nown that a lot of time would be wasted in developing the new system. (o it was decided that a new system would be designed for the smooth wor1ing. %. 1e. System "he new system is developed so that it would replace all the shortcomings of the previous system and would function efficiently as it is intended to. "he new system is also designed such that the system can be updated and there would be no effect on the system. -. 1ot Automate! "he previous system had the biggest problem that the system was not automated. (o because of this manpower was re.uired at all the levels. "his system was therefore not that fle0ible and not user friendly. A lot of attention had to be maintained while the process was always on.
(o now there was an urgent need of a new system so that it would reduce all unwanted stress on the organization. ". 2eatures o& the 1e. System (o the new system has all the features that were found missing in the previous system. %irstly it is automated and a lot of time and labour is saved. (imilarly a lot of new features are added to ma1e it more understandable and ma1e it more clear to all the users. "he ris1 of 8 handling data manually is reduced. "he features are added so as to reduce the loss of data. Also the reason is the information stored must be more precise. "he others features included are as follows. C. 3en!ing Details >ith the lending details feature it can be 1nown as to who is currently having the boo1. All the details of that particular employee will be available at an instance. >ith this all the information related to the boo1 and employee will be visible and it would ma1e the 3ob relatively easier. n lending details the best feature is that of the issue date and the return date. >ith these, the date?time about when the boo1 is issued and entered and so is the date time on the return noted down. ;ence with the systems being automated all these details are accurate details and can be used later for report generation. D. Reorts "he reports are an important part of the system. >ith the help of reports the entire statistics can be clearly 1nown. "he number of boo1s available, number of boo1s lent, return date, issue date all these details are available at an instance. >ith reports the tas1 of turning the pages at the end of the month has been reduced to some clic1s. "he new system is thus friendlier than the previous system. All the information is maintained by the system. 4e.uired information is displayed with specific details. Availability and non availability o1 boo1s is 1nown to the user. "hus all these things ma1e the new system better, friendly, fle0ible thus consuming very less time and being 3ust more convenient. 9 We had a number of sessions with )r. Pandian who gave us information regarding the e0isting system. >hile we were provided with this important information a lot of .uestions were put forward by us. >e were provided with satisfactory answers. (ome of the .uestions put forward and the answer received are as follows2 4o. sa&e is the !ata5 # "he data is not safe because all users are granted access to it. (o changes can be done by anyone which is a danger. Is there any &ull roo& bac+ u i& the !ata is lost !ue to roblems in the system or any other roblem5 # Aes there is a bac1up of data. "he bac1up is manually maintained. (o it is more time consuming and manpower is re.uired for that. 4o. can .e +no. that someone has ma!e un!esire! changes to the !ata5 # >e cannot come to 1now if someone has made changes to the data. %or this the bac1up needs to be changed everytime the data is considered to be a little different. (o bac1 up needs to be accurate.
Can the system be ugra!e!5 # No the system that is used cannot be upgraded. t is considered better to go for a new system than go for ma1ing any changes in the e0isting system.
I& yes then .hat .ill be the level o& the ugra!e! system5 # "he common answer would be that e0cel sheets 3ust can<t be upgraded. Will there be an a!ministrator han!ling the !ata or there .ill be !i&&erent eole5 # Even if there is an administrator there would be no guarantee what so ever that the data cannot be modified by some unauthorized user. "he administrator if used has to be careful while handling the data.
10 What are the !etails that .ill be consi!ere! .hile an emloyee is issue! a boo+5 # "he initial information would be the employee number. (imilarly the boo1 details will also be entered, so that there would be no confusing when the boo1 will be returned. 4o. .ill search o& a boo+ ta+e lace5 # "he search of the boo1 will have to ta1e place manually. "he user will have to go an search for the boo1 himself. (o this is the biggest disadvantage of the system that there is no way the availability of the system can be 1nown with the help of the system. 4o. .ill the availability an! non6availability o& boo+s be +no.n5 # "he availability and the non#availability of the boo1s can be 1nown only by searching for the boo1 by the user. "his is thus more time#consuming. All the .uestions that were put forward were answered by )r. Pandian. A detailed e0planation was given to us regarding our .ueries. (o with the answers provided to us we had some idea as to what are the features that must be there in the new system. >hat are a must for the system that have to be included. Also we came to 1now about those features that are not at all important for the system and must not be included. 11 %or the development of the new system there were some .ueries that had to be cleared so that the system would be efficient and effective. "he .uestions were2 What language must be use! an! .hat shoul! be the &ront en! an! bac+ en! architecture5 # CD language has to be used as for the simple reason that it can be used for windows based application as well as for web based application. CD is used as front end architecture and )(#ACCE(( is used as bac1 end architecture. What are the tyes o& users that must be inclu!e! in the system an! the reason &or it5 # "wo type of users have to be included. "hese are the administrators and the employees. 4o. many mo!ules must be there in the entire system5 # Around ten modules were stated to us that must be included in the system. All these modules have been e0plained in the system analysis and design of the new software. 4o. many tables must be there in the !atabase that can be use! later5 # "here are three tables that must be included in the database. In the tables ho. many columns must be there an! .hat must the columns be5 # "he columns that have to be included must display information related to the table. %or instance in the employee table the columns must display information about the employee. What must be the !ata tyes o& the columns inclu!e! in the !atabase5 # "he data type of most fields is string. *ut there are a few fields such as issue date and return date which have the date?time data type. 12 Where must the !ata be !islaye! in the system must a !ata gri! be inclu!e! or is any other alternative available5 # %or the data to be systematic it is more convenient as to display the data in the data grid. >ith the help of the data grid it becomes easier for the user to go through the information. 4o. many reorts are to be generate!5 # 5nly three reports are to be generated. "hese three reports will provide all the necessary information in an efficient way. What are the reorts that must be inclu!e! an! the reason &or their generation5 # "he reports are the details about all the boo1s, the details about the lent boo1s and all the details about softwares. The !uration &or .hich a boo+ must be issue! to an emloyee5 # "he duration can be anything for a wee1 or it can be for more than a wee1. What must be most imortant thing that must be +no.n .hile issuing a boo+5 # "he most important thing that must be noted down the information about the employee to whom the boo1 is issued li1e the employee code.
13 7. System Analysis an! Design "he basic need for a new system in any field is efficiency that is the new product is more efficient that the old one. As seen in the problems one of the biggest downfalls of the old system is the fact that there is no manager as such. "his is a big security ris1. Another low point was the unnecessary time waste on searching for a boo1 and then going and chec1ing whether the boo1 is available or not. The main ob8ectives o& the system)
+8 "o automate the system as far as possible. /8 Provide a =raphical user interface. 98 Ceep trac1 of the availability of the boo1s.
"o avoid the security issue we have two types of users in the system, namely2 +8 Employees /8 Administrator +8 Employees2 "hey are the actual user of the software. "hey are the ones who will search the boo1s and software, re.uest for a boo1. /8 Administrator2 ;e?(he is the one that loo1s after the system. "hey will handle the issuing a boo1, report generating, lending details, etc. basically all the administrative wor1 of the system. Processes that are performed by the new Library and (oftware C6 )anagement software could be categorized into2 +8 =eneral Processes "hey are the processes that can be performed by all the user irrespective of whether administrator or not. /8 @ser Processes "hey are the Processes that only the users that is the employees can perform. 98 Administrative Processes "hey are the processes that only the administrator can perform. 14 1* ,eneral #rocesses A. Add new user. *. %orgot password. C. Login. A. Add new user2 Any employee can create an account. An account has to be created for the employee to use the system. "he employee has to submit details li1e employee code, name, user id, password, secret .uestion and answer. *. %orgot password2 n the event where the employee forgets his password the user can answer his?her secret .uestion. f the answer is correct the user will be flashed their password. C. Login2 f the user name and password entered by the user is correct only the will the user be given access into the system. %* /ser #rocesses A. (earch *oo1. *. (earch (oftware C6. C. 4e.uest *oo1. A. (earch *oo12 "he user can search for the boo1. (earches can be made using 1eywords such as All, *oo1 Name, (*N no and 6escription. *. (earch (oftware C62 "he user can search for the boo1. (earches can be made using 1eywords such as All, Name, (oftware no, Color Code and 6escription. 15 C. 4e.uest *oo12 After the boo1 has been found the user can select the boo1 and a re.uest will be sent to the administrator stating the boo1 details. "he re.uests are sent using intranet mail services. -. A!ministrator #rocesses A. Add New *oo1. *. (earch *oo1. C. @pdating *oo1. 6. Lending 6etails. E. 4eports Library. %. Add New (oftware C6. =. (earch C6. ;. @pdating C6. . 4eports C6. A. Add New *oo12 >hen a new boo1 has to be entered into the system, the values has to enter the values into the database. "his is handled by the L(C) software. t ta1es the boo1 detail values such as (*N number, boo1 name, description, and author. n the beginning all the boo1s availability is set to Ey< referring to yes.
*. (earch *oo12 "he user can search for the boo1. (earches can be made using 1eywords such as All, *oo1 Name, (*N no and 6escription. C. @pdating *oo12 >hen the details of a boo1 have to be updated, (*N no., boo1 name, author, description the L(C) software ta1es care of these update. 6. Lending 6etails2 >hen a re.uest for a certain boo1 is received, the administrator has to ma1e certain changes to the values of that boo1 in the library table while issuing the boo1. "hese changes are setting the availability to En<, filling in the issue and return date, and the employee code of the employee issuing the boo1. 16 E. 4eports Library2 "his gives the reports, regarding the boo1s in the library. %or eg. Number of all the boo1s along with names, number of lent boo1s along with names, etc. the names and details of the boo1s will be displayed in a data grid.
%. Add New (oftware C62 >hen new software has to be entered into the system, the values has to enter the values into the database. "his is handled by the L(C) software. t ta1es the boo1 detail values such as (oftware number, (oftware Name, 6escription, and Color Code. =. (earch C62 "he user can search for the boo1. (earches can be made using 1eywords such as All, Name, (oftware no, Color Code and 6escription. ;. @pdating C62 >hen the details of a software have to be updated, software no., software name, description and color code the L(C6 software ta1es care of these update. . 4eports C62 6isplays each software along with their details. 17 9. Systems Design Mo!el Considering that our system had a number of processes, it was not sensible to use the spiral model or the waterfall model on the entire software. >hile coding each processes was treated as a module. Each module then the went through a number of phases2
+8 Planning2 %or each module thorough planning was done. Fuestions such as what is the inputG >hat is the output going to beG etc. were answered. /8 Coding2 5nce the planning was over, coding began. f any additional features were to be added they were first passed through the reporting head and then implemented. (imilarly if any problems were met then we had to report to the same. 98 "esting2 After the entire module was coded it would enter the testing phase. n the testing phase module was chec1ed to see if it had any unhandled bugs or if all the e0ceptions were handled. :8 ntegration2 5nly after the module had been thoroughly tested was it integrated to the main system. After all the modules were integrated into the main module the software again enters into the testing phase. ;ere the entire software is chec1ed for un#handled bugs or e0ceptions. After all of this the Library and (oftware C6 )anagement 7L(C)8 software is finally implemented. 18 :. Database Structures After the planning phase it became evident to us that our database needed only three tables. A. Employee table2 Contains all details about the employee including
*. Library table2 Contains all the details about the boo1s including
C. (oftware table2 Contains all details of the software.
A. 'mloyee Table Columns2 +8 Employee code2 6ata type is string. "his field contains the employee code. t is the primary 1ey for the table. /8 Employee name2 6ata type is string. "his field contains the employee<s name. 98 @ser 62 6ata type is string. %ield contains the user id of the user id. @ser id is the e#mail id of each user on the intranet. :8 Password2 6ata type is string. %ield contains the password of the user. Password is the generally the same as the one for their email accounts but this is not necessary. "he password is encrypted and then stored in the table. &8 6esignation2 6ata type is string. "his field contains the designation of the user. t is not important to the system as of now but is re.uired for future use. H8 (ecret Fuestion2 6ata type is string. %ield contains the secret .uestion for a particular user. 19 I8 (ecret Answer2 6ata type is string. %ield contains the secret answer for the secret .uestion. Li1e the password the secret answer is encrypted and then stored in the table. ". 3ibrary Table Columns2 +8 62 6ata type is auto number. Just used as an identifier. t is the primary 1ey. . /8 (*N Number2 6ata type is string. Contains the (*N number of the boo1. t is given as string and not number because (*N number contain characters. . 98 *oo1 Name2 6ata type is string. Contains the name of the boo1. :8 Author2 6ata type is string. Contains the name of the author. &8 6escription2 6ata type is string. Contains the description of the boo1. (ince the description maybe long the field size has been increased. H8 Availability2 6ata type is string. Contain only a character A # boo1 is available and N K *oo1 is not available. I8 ssue 6ate2 6ata type is date?time. "he field stores the value of the date when the boo1 is being issued. -8 4eturn 6ate2 6ata type is date?time. "his field stores the return date of when the boo1 is going to be returned. ,8 Employee Number2 6ata type is string. "his field stores the employee code of the employee that is issuing the boo1. t is a foreign 1ey to the employee code field in the employee table. 20 C. So&t.are Table Columns2 +8 62 6ata type is auto number. Just used as an identifier. t is the primary 1ey. /8 (erial number2 6ata type is string. t is the serial number of the software. 98 (oftware Name2 6ata type is string. %ield contains the name of the software. :8 6escription2 6ata type is string. Contains the description of the software. (ince the description maybe long the field size has been increased. &8 Color Code2 6ata type is string. Contains the color code of the software. Each type of application is assigned a different color. H8 Availability2 6ata type is string. Contains the availability of the software. "his is always set to A in our system. *ut the field is included if the policy that doesn<t allow user to issue softwares is ever changed. I8 C6#Cey2 6ata type is string. Contains the C6#1ey of the software. 21 ;. 2lo.chart o& the 'ntire System Level +2 Level +.+ Level +.+.+2 22 Level +.+./2 Level +./2 23 Conte(t 3evel Diagram) <. #rocess 24
6etailed e0planation of all the processes of the system is given below. >e have shown the data flow diagram along with a unified modeling language diagram for each process. Along with this for each process a screen shot and it e0planation is given. "he processes are as follows2 A8 Log n. *8 Add New @ser. C8 %orgot Password. 68 Add New *oo1. E8 (earch *oo1. %8 @pdate *oo1. =8 Lending 6etails. ;8 *oo1 4eports. 8 4e.uest *oo1. J8 Add New (oftware C6. C8 (earch (oftware C6. L8 @pdate (oftware C6. )8 (oftware 4eports. A. 3O, I1) 25 6A"A%L5> 6A=4A)2 n the log in process the user will enter his details. "he software will chec1 the details with the details that are stored in the database. f they are correct the user is allowed entry else denied. @N%E6 )56ELN= LAN=@A=E2 26 n the log in process the user is first shown the log in for by the L(C) software. "he user enters his?her details and submits. "he software now validates these details with the ones that are stored in the employee table of the database. f the details match the user is granted access. (C4EEN (;5"2 27 n the login process the user has to enter his user id and password. Add new lin1 is given for a new user. %orgot password lin1 is given for a user who has forgotten their password. "he details are sent to the software on the clic1 event of the command button. "hey are validated. f correct values user is granted access else he?she is displayed a message bo0 stating incorrect details. Main #age 28 "hough the main page is not a process it is really important for us to show this feature. 6epending on the user name and password main page is loaded. i8 f the details match that of administrator. ii8 f the details are that of a normal user i.e. employee. i8 f the details are that of the administrator2 ii8 f the details are that of an employee2 29 %or the admin main page the administrator has many options li1e adding or updating a boo1 or C6, searching a boo1 or updating a boo1 or C6 etc. @ser however have only two options2 +8 (earch *oo1 or C6. /8 4e.uest for boo1. ". A!! 1e. /ser 30 6ata %low 6iagram2
n the add new user process, the user gives their details to the add new process of the L(C) software. "he process ta1es these details and from here the are stored into the Employee table of the database. @nified )odeling Language2 31 n the add new process, first the L(C) displays the add new form @ser fill the form and submits. "he values are entered into the employee table. An ac1nowledgement from the L(C) software is sent to the system stating that the new user was created. (creen (hot2 32 n the add new table we ta1e the employee details from the user. "hese details include the Employee number, Employee Name, @ser id, Password, 6esignation, (ecret Fuestion, (ecret Answer. "he values get stored into the Employee table of the database on the clic1 event of the save command button. C. 2orgot #ass.or! 33 6ataflow diagram2 n the forgot password process the user gives the details to the system. "he details entered are chec1ed and the depending on those details the re.uired information is retrieved and is provided to the user. @nified )odeling Language2 34 n the forgot password process the user will enter the re.uired data and send it to the software. "he L(C) software chec1s to see if the data is valid, if so the password is ta1en from the employee table and is flashed to the user. (creen shot2 35 n the forgot password process, the employee is re.uired to enter the details as1ed in the desired te0t bo0es. "here is a secret .uestion that is flashed to the user on the 5NCLCC event of the secret .uestion te0t bo0 or the 5NC;AN=E event of the employee id te0t bo0. "he user then has to enter the re.uired answer. f the entered answer is same as that to that in the database then the re.uired data is flashed on to the screen to the user. D. ADD 1'W "OO= 36 6A"A%L5> 6A=4A)2 n the add new boo1 form details about the new boo1 are ta1en from the administrator. "hese details are passed on to the software form where they are inserted into the library table. @N%E6 )56ELN= LAN=@A=E2 37 n the add new boo1 process the administrator is shown the old data base contents. After which he?she inputs the new boo1 details. "he software validates these inputs and then inserts the values into the library table. "he software then displays the contents of the updated library table to the user. (C4EEN (;5"2 38 n the add new boo1 process the administrator first shown all the contents of the library table. "he admin then enter the values of the new boo1. 5n the clic1 event of the command button the values go to the software. %rom the here the values are validated and then inserted into the library table of the database. '. S'ARC4 "OO= 39 6A"A %L5> 6A=4A)2 n the search process the administrator enter the criteria and details of the boo1 that he is loo1ing for. "he software then evaluates these details and the appropriate records from the library table are returned to the software. @N%E6 )56ELN= LAN=@A=E2 40 n the search process the admin selects a 1eyword. "hen it ma1es the boo1 details. "hen the details are passed to the software the software frames the .uery and .ueries the library table. Fuery results are received and the displayed to the user. (C4EEN (;5"(2 41 n the search boo1 process the admin?user first selects the 1eyword. "hen after that he enters the criteria of the boo1 that he is loo1ing for. 5n the clic1 event of the search button the values are sent to the software. "he software then forms the .uery based on these values and .ueries the library table. "he results are then received by the software and displayed to the user?administrator. 2. /#DAT' "OO= 42 6A"A%L5> 6A=4A)2 n the update boo1 form new details about the boo1 are ta1en from the administrator. "hese details are passed on to the software form where they are inserted into the library table. @N%E6 )56ELN= LAN=@A=E2 43 n the update boo1 process the administrator is shown the old data base contents. After which he?she inputs the boo1<s new details. "he software validates these inputs and then inserts the values into the library table. "he software then displays the contents of the updated library table to the user. (C4EEN (;5"2 44 n the update boo1 process the administrator first shown all the contents of the library table. "he admin then selects the boo1 to be updated from the data grid. "he values of the boo1 automatically fill the te0t fields of the form. "he wanted changes are made. 5n the clic1 event of the button the values go to the software. %rom the here the values are validated and then inserted into the library table of the database. ,. 3'1DI1, D'TAI3S 45 6A"A %L5> 6A=4A)2 n the lending process the admin gives the boo1 details of the boo1 that is going to be lent. 4e.uired changes are the made to the records of the boo1 in the library table. @N%E6 )56ELN= LAN=@A=E2 46 %irst the software loads all details of all the lent boo1. "he admin then enters the boo1 and employee details. "he software validates these values and then updates the re.uired records in the library table of the database. "he software then displays the updated software to the user. (C4EEN (;5"2 47 "he admin will lend a boo1 only after a re.uest mail has been received. "his mail will contain all the boo1 details. After the admin gets this mail he has to issue the boo1 to that user this is handled by the lending process. 5n the clic1 event of the button the availability of the specified boo1 is set to En< not available and the issue date and return date fields are updated with the information that is received from the admin. "he code of the employee who re.uests the boo1 is also ta1en and is updated into the library table. %inally after the whole process the record of all the boo1s whose availability is En< is displayed to the user. 4. "OO= R'#ORTS 48 6A"A %L5> 6A=4A)2 n the report process the admin as1s for certain report. "his choice of report is the sent to the software who get the report information from the library table. @N%E6 )56ELN= LAN=@A=E2 49 "he admin selects the type of report that he?she wants to generate. "his choice is validated by the software. 6epending on the type the software .ueries the library table. "he software then displays the results to the user in a printable format. (C4EEN (;5"2 50 "he admin can ma1e a choice of what 1ind of report he wants depending on the 1ind the software will interpret and display a printable version of the report. I. R'>/'ST "OO= 51 6A"A%L5> 6A=4A)2 n the re.uest process the user re.uest for a boo1. "he software then gets the details from the library table. A mail is sent to admin containing the details of the re.uested boo1. @N%E6 )56ELLN= LAN=@A=E2 52 "he user selects a boo1 and sends the boo1 details to the software. "he software validates these details and mails the boo1 details to the admin. (C4EEN (;5"(2 53 "he re.uest process begins li1e the search process where the user searches a boo1 and then the software displays the search results depending on the details submitted. Now that the user receives a list of boo1s. "he user simply selects the boo1s that he?she wants to issue. "he details of this boo1 will be mailed to the administrator. ?. ADD 1'W SO2TWAR' 54 6A"A%L5> 6A=4A)2 n the add new software C6 form details about the new boo1 are ta1en from the administrator. "hese details are passed on to the software form where they are inserted into the software table. @N%E6 )56ELN= 6A=4A)2 55 n the add new software process the administrator is shown the old data base contents. After which he?she inputs the new boo1 details. "he software validates these inputs and then inserts the values into the software table. "he software then displays the contents of the updated software table to the user. (C4EEN (;5"2 56 n the add new software process the administrator first shown all the contents of the software table. "he admin then enter the values of the new software. 5n the clic1 event of the command button the values go to the software. %rom the here the values are validated and then inserted into the software table of the database. =. S'ARC4 SO2TWAR' CD 57 6A"A%L5> 6A=4A)2 n the search process the administrator enter the criteria and details of the software that he is loo1ing for. "he software then evaluates these details and the appropriate records from the software table are returned to the software. @N%E6 )56ELN= LAN=@A=E2 58 n the search form the admin selects a 1eyword. "hen it ma1es the software details. "hen the details are passed to the software it frames the .uery and .ueries the software table. Fuery results are received and the displayed to the user. (C4EEN (;5"(2
59 n the search software process the admin?user first selects the 1eyword. "hen after that he enters the criteria of the software that he is loo1ing for. 5n the clic1 event of the search button the values are sent to the software. "he software then forms the .uery based on these values and .ueries the software table. "he results are then received by the software and displayed to the user?administrator. 3. /#DAT' SO2TWAR' CD 60 6A"A%L5> 6A=4A)2 n the update software process new details about the software are ta1en from the administrator. "hese details are passed on to the software form where they are inserted into the software table. @N%E6 )56ELN= LAN=@A=E2 61 n the update software process the administrator is shown the old data base contents. After which he?she inputs the software<s new details. "he software validates these inputs and then inserts the values into the software table. "he software then displays the contents of the updated software table to the user. (C4EEN (;5"(2 62 n the update software process the administrator first shown all the contents of the software table. "he admin then selects the software to be updated from the data grid. "he values of the boo1 automatically fill the te0t fields of the form. "he wanted changes are made. 5n the clic1 event of the button the values go to the software. %rom the here the values are validated and then inserted into the software table of the database. M. SO2TWAR' CD R'#ORTS 63 6A"A%L5> 6A=4A)2 n the report for C6 process the admin as1s for certain report. "his choice of report is the sent to the software who get the report information from the software table. @N%E6 )56EL LAN=@A=E2 64 "he admin re.uests for report. "he software .ueries the software table. "he software then displays the results to the user in a printable format. "he screen shot for the software report is the same li1e software boo1. 1@. Imlementation 65 A. MS Access "he )icrosoft office access has some of the ideal re.uirement that has to be ta1en into consideration before using it. "here have been a number of versions since way bac1 in +,,/ when it was developed. >e have used the )icrosoft 5ffice Access /''9 which was available in the year /''9. "he version of office /''9 is the eleventh 7++ th 8 version. "he supported operating system is windows. "he corresponding operating office suite is )icrosoft 5ffice (uite /''9. "his is the information about the version that was used. Also there is no Access 9.' to H.' because the >indows ,& version was launched with >ord I. All of the 5ffice ,& products have 5LE / capabilities, and Access : shows that it was compatible with >ord :. 4ar!.are reAuirements "he processor<s minimum re.uirement /99 );z and the recommended re.uirement is 9'' );z or higher. "he minimum memory to be there is H: )* 4A). *ut the problem that occurs here is that it may limit some of the features. "he recommended memory is +/- )* or higher. "he video adapter and monitor must have minimum of super vga 7-''LH''8 >hile the recommended re.uirement is super vga 7-''LH''8 or higher resolution. "he hard drive dis1 free space re.uired is +.& =* while the recommended is +.& =* or higher. %or the drives the minimum re.uirement is C6#45) and the recommended re.uirement is C6#45) or better. "he devices that are re.uired are the 1eyword and the mouse and that is all what is re.uired. n addition to the >indows MP system re.uirements, (ervice Pac1 / re.uires an additional +.- =* of free hard dis1 space during installation ". Microso&t Bisual Stu!ios 66 "he )icrosoft Bisual (tudios was developed by )icrosoft. "he operating system that is used is the )icrosoft windows. "he genre that is there is ntegrated 6evelopment Environment. 4ar!.are reAuirements
"he best version that should be used is the >indows Bista %or the vista capable must have a processor speed of -'' );z, the memory must be at least &+/ )* 4A), the graphic card must be 6irectM , capable 3ust being minimum. "here is no need for the graphic card as it is 3ust not applicable. )inimum hard dis1 re.uired has to be /' =*. "here needs to be some free space. "he free space that is re.uired is +& =*. As for the other drives that are re.uired it<s only C6#45). %or the ma0imum or the recommended configuration the Bista premium ready must have +.' =;z speed. )emory that is re.uired is + =* 4A). %or very good graphics there has to be 6irectM , capable =P@ with ;ardware Pi0el (hader v/.' and >66) +.' driver support. @nli1e vista here there is a need for the graphic card. >e need +/- )* 4A) that supports up to /,I&H,''' total pi0els 7e.g. +,/' N +/''8 or &+/ )*O for greater resolutions such as /&H'0+H''. "he hard dis1 capacity has to be :' =* while the free space re.uired is :' =*. Aou need a 6B6#45) here unli1e the C6#45) in vista Salient &eatures o& the system 67 "he system that is developed had a lot of new features that are far better than the previous system. Also the new system is simpler to handle and easy to implement. "his system has lived up to the e0pectations and proved very fle0ible. (ome of the features of the system are as follows n the new system the manpower that was once re.uired for the previous system was reduced drastically. "he bac1up of data was now more secure and the threat of the loss of data that e0isted in the previous system was now not a cause of concern. "he new system was more systematic and was divided into various modules thus ma1ing it simper for the users to understand. "he database of the new system is not at all comple0 ma1ing it very easy for the administrator to handle the entire data. All the modules were different from each other and they carried on different functions, but they were connected to each other. "he user did not have to search for a boo1. ;e 3ust had to search it with the clic1 button and the information would be made available. f the administrator wanted to 1now as to who has ta1en a particular boo1, he can 3ust chec1 in the lending details. (imilarly the reports generation would 3ust help by providing all the information altogether. "his will help in maintaining the monthly statistics. "he system had made the wor1 of all the users and the administrator very easy and there was no problem that was being faced by them. All these features thus made the system more effective as compared to the previous system and it was a huge success. Security 68
"he new system that is developed is not only smooth in functioning, but is also more secure in comparison to the previous system. "he new system had many security features and that is the reason it was implemented. (ome of the reasons are as follows2 %irstly not everyone was allowed to have access to the database and the details. An administrator was there for that purpose. >ith this there was a single person responsible for the changes in the data of the database. "he database was well protected and so there would be no instance of any loss of data. "he important fields that the values should be hidden from the users as well as the admin such as password, secret answer field are encrypted and stored into the database. 5nly authorized users would be given access. (o before placing a re.uest they have to be an authorized person. "here is even the convenience for authorized users who have forgotten their password. *y 3ust answering some secret 7personal8 .uestion they would be given access. No one would be able to mishandle a boo1 as the details regarding the particular user are entered. Also the system has different login ids for the user and for the administrator. >ith this there would be no access to the important data to the user. "he system is very secure and the data will be very safe. 69 2urther 'nhancements "he pro3ect as of now is accessible to all but only one person at a time. "he team at cyber indigo is going to enhance this software so as to allow multiple user access the system at the same time. As seen in our database structure the employee table, has the designation field. n the future special privileges are given to higher ran1ing employees, li1e the may get to issue a boo1 for longer, they may issue a number of boo1 at the same time. (oftware C6 are not allowed to be ta1en home as per company policy. "his policy might change in the future, if so then the lending details for software C6 should be handled. 5nly these enhancements might ta1e place in the near future. 5ther changes may include the changes that come after viewing the performance of the software over time. 70 11. A11'C/R' A. C Shar C (harp is an ob3ect#oriented programming language developed by )icrosoft as part of the .NE" initiative and later approved as a standard by EC)A and (5. Andre ;e3lsberg leads development of the CD language, which has a procedural, ob3ect#oriented synta0 based on COO and includes influences from aspects of several other programming languages 7most notably 6elphi and Java8 with a particular emphasis on simplification. Characteristics o& CD CD is intended to be a simple, modern, general#purpose, ob3ect# oriented programming language. *ecause software robustness, durability and programmer productivity are important, the language should include strong type chec1ing, array bounds chec1ing and detection of attempts to use uninitialized variables, source code portability, and automatic garbage collection. "he language is intended for use in developing software components that can ta1e advantage of distributed environments. Programmer portability is very important, especially for those programmers already familiar with C and COO. (upport for internationalization is very important. CD is intended to be suitable for writing applications for both hosted and embedded systems, ranging from the very large that use sophisticated operating systems, down to the very small having dedicated functions. Although CD applications are intended to be economical with regards to memory and processing power re.uirements, the language was not intended to compete directly on performance and size with C or assembly language. 71 ". Microso&t Access )icrosoft 5ffice Access, previously 1nown as )icrosoft Access, is a relational database management system from )icrosoft which combines the relational )icrosoft Jet 6atabase Engine with a graphical user interface and software development tools. t is a member of the /''I )icrosoft 5ffice system. Access can use data stored in Access?Jet, )icrosoft (FL (erver, 5racle, or any 56*C#compliant data container. (1illed software developers and data architects use it to develop application software. 4elatively uns1illed programmers and non#programmer Ppower usersP can use it to build simple applications. t supports some ob3ect# oriented techni.ues but falls short of being a fully ob3ect#oriented development tool. Access was also the name of a communications program from )icrosoft, meant to compete with ProComm and other programs. "his proved a failure and was dropped. Aears later )icrosoft reused the name for its database software. /ses Access is used by small businesses, within departments of large corporations, and by hobby programmers to create ad hoc customized des1top systems for handling the creation and manipulation of data. Access can be used as a database for basic web based applications hosted on )icrosoft$s nternet nformation (ervices and utilizing )icrosoft Active (erver Pages A(P. )ost typical web applications should use tools li1e A(P?)icrosoft (FL (erver or the LA)P stac1. (ome professional application developers use Access for rapid application development, especially for the creation of prototypes and standalone applications that serve as tools for on#the#road salesmen. Access does not scale well if data access is via a networ1, so applications that are used by more than a handful of people tend to rely on Client#(erver based solutions. ;owever, an Access Pfront endP 7the forms, reports, .ueries and B* code8 can be used against a host of database bac1ends, including JE" 7file#based database engine, 72 used in Access by default8, )icrosoft (FL (erver, 5racle, and any other 56*C#compliant product. 2eatures 5ne of the benefits of Access from a programmer$s perspective is its relative compatibility with (FL 7structured .uery language8 Q.ueries may be viewed and edited as (FL statements, and (FL statements can be used directly in )acros and B*A )odules to manipulate Access tables. @sers may mi0 and use both B*A and P)acrosP for programming forms and logic and offers ob3ect#oriented possibilities. )(6E 7)icrosoft (FL (erver 6es1top Engine8 /''', a mini#version of )( (FL (erver /''', is included with the developer edition of 5ffice MP and may be used with Access as an alternative to the Jet 6atabase Engine. @nli1e a modern 46*)(, the Access and the Jet Engine implements database triggers and stored procedures in a non#standard way. (tored Procedures are implemented in B*A, and "riggers are only available from embedded %orms. *oth "riggers and (tored procedures are only available to applications built completely within the Access database management system. Client applications built with B* or COO are not able to access these features. (tarting in )( Access /''' 7Jet :.'8, there is a new synta0 for creating .ueries with parameters, in a way that loo1s li1e creating stored procedures, but these procedures are still limited to one statement per procedure. )icrosoft Access does allow forms to contain code that is triggered as changes are made to the underlying table 7as long as the modifications are done only with that form8, and it is common to use pass#through .ueries and other techni.ues in Access to run stored procedures in 46*)( that support these. n A6P files 7supported in )( Access /''' and later8, the database# related features are entirely different, because this type of file connects to a )(6E or )icrosoft (FL (erver, instead of using the Jet Engine. "hus, it supports the creation of nearly all ob3ects in the underlying server 7tables with constraints and triggers, views, stored procedures and @6%#s8. ;owever, only forms, reports, macros and 73 modules are stored in the A6P file 7the other ob3ects are stored in the bac1#end database8. 74 C. Microso&t Bisual Stu!io Microso&t Bisual Stu!io is the main ntegrated 6evelopment Environment 76E8 from )icrosoft. t can be used to develop console and =@ applications along with >indows %orms applications, web sites, web applications, and web services in both native code as well as managed code for all platforms supported by )icrosoft >indows, >indows )obile, .NE" %ramewor1, .NE" Compact %ramewor1 and )icrosoft (ilver light. Bisual (tudio includes a code editor supporting ntelli(ense as well as code refactoring. "he integrated debugger wor1s both as a source#level debugger and a machine#level debugger. 5ther built#in tools include a forms designer for building =@ applications, web designer, class designer, and database schema designer. t allows plug#ins to be added that enhance the functionality at almost every level # including adding support for source control systems 7li1e (ubversion and Bisual (ource(afe8 to adding new toolsets li1e editors and visual designers for domain#specific languages or toolsets for other aspects of the software development lifecycle 7li1e the "eam %oundation (erver client2 "eam E0plorer8. Bisual (tudio supports languages by means of language services, which allow any programming language to be supported 7to varying degrees8 by the code editor and debugger, provided a language# specific service has been authored. n#built languages include C?COO 7via Bisual COO8, B*.NE" 7via Bisual *asic .NE"8, and CD 7via Bisual CD8. (upport for other languages such as %D, Python, and 4uby among others has been made available via language services which are to be installed separately. t also supports M)L?M(L", ;")L?M;")L, Java(cript and C((. Currently, Bisual (tudio /''- and /''& Professional Editions are available for students to download free of charge via the 6ream(par1 program. Architecture Bisual (tudio does not support any programming language, solution or tool intrinsically. nstead, it allows various functionality to be 75 plugged in. (pecific functionality is coded as a B(Pac1age. >hen installed, the functionality is available as a Service. "he 6E provides three services2 (Bs(olution that provides the ability to enumerate pro3ects and solutions, (Bs@(hell that provides windowing and @ functionality 7including tabs, toolbars and tool windows8, and (Bs(hell that deals with registration of B(Pac1ages. n addition, the 6E is also responsible for co#ordinating and enabling communication between services. All editors, designers, pro3ect types and other tools are implemented as B(Pac1ages. Bisual (tudio uses C5) to access the B(Pac1ages. "he Bisual (tudio (6C also includes the Managed Package Framework 7MPF8, which is a set of managed wrappers around the C5)#interfaces that allow the Pac1ages to be written in .NE" languages. ;owever, )P% does not provide all the functionality e0posed by the Bisual (tudio C5) interfaces. "he services can then be consumed for creation of other pac1ages, which add functionality to the Bisual (tudio which the B(Pac1age implementation can implement to add support for various functionality. %unctionality that can be added this way includes synta0 coloring, statement completion, brace matching, parameter information tool tips, member lists and error mar1ers for bac1ground compilation. f the interface is implemented, the functionality will be available 6E. 2eatures Code editor Bisual (tudio, li1e any other 6E, includes a code editor that supports synta0 highlighting and code completion using ntelli(ense for not only variables, functions and methods but also language constructs li1e loops and .ueries. ntelli(ense is supported for the included languages, as well as for M)L and for Cascading (tyle (heets and Java(cript when developing web sites and web applications. Auto complete suggestions are popped up in a modeless list bo0, overplayed on top of the code editor. Bisual (tudio /''- onwards, it can be made temporarily semi#transparent to see the code obstructed by it. "he code editor is used for all supported languages. "he Bisual (tudio code editor also supports setting boo1mar1s in code for .uic1 navigation. 5ther navigational aids include collapsing code bloc1s and incremental search, in addition to normal te0t search and rege0 search. "he code editor also includes a multi#item 76 clipboard and a tas1 list. "he code editor supports code snippets, which are saved templates for repetitive code, that can be inserted into code and customized for the pro3ect being wor1ed on. A management tool for code snippets is built in as well. "hese tools are surfaced as floating windows which can be set to automatically hide when unused or doc1ed to the side of the screen. "he Bisual (tudio code editor also supports code refactoring including parameter reordering, variable and method renaming, interface e0traction and encapsulation of class members inside properties, among others. Debugger Bisual (tudio includes a debugger that wor1s both as a source#level debugger as well as machine#level debugger. t wor1s with both managed code as well as native code and can be used for debugging applications written in any language supported by Bisual (tudio. n addition, it can also attach to running processes and monitor and debug those processes. f source code for the running process is available, it displays the code as it is being run. f source code is not available, it can show the disassembly. "he Bisual (tudio debugger can also create memory dumps as well as load them later for debugging. )ulti#threaded programs are also supported. "he debugger can be configured to be launched when an application running outside the Bisual (tudio environment, crashes. Designer >in %orms 6esigner2 "he >in %orms designer is used to build =@ applications using >in%orms. t includes a palette of @ widgets and controls 7including buttons, progress bars, labels, layout containers and other controls8 that can be dragged and dropped on a form surface. Layout can be controlled by housing the controls inside other containers or loc1ing them to the side of the form. Controls that display data 7li1e te0tbo0, list bo0, grid view etc8 can be data bound to data sources li1e databases or .ueries. "he @ is lin1ed with code using an event#driven programming model. "he designer generates either CD or B*.NE" code for the application. Suorte! ro!ucts 77 )icrosoft Bisual CD )icrosoft Bisual CD is )icrosoft$s implementation of the CD language, that targets the .NE" %ramewor1, along with the language services that lets the Bisual (tudio 6E support CD pro3ects. >hile the language services are a part of Bisual (tudio, the compiler is available separately as a part of the .NE" %ramewor1. "he Bisual CD /''- compiler supports version 9.' of the CD language specifications. Bisual CD supports the Bisual (tudio Class designer, %orms designer, and 6ata designer among others. 78