Indira Gandhi National Open University Project Report For BCA Sample At
“E-Learning – Online Education and Training Operations”
UNDER GUIDANCE OF…………………….
Submitted to the School of Computer and Information Sciences, IGNOU
in partial fulfilment of the requirements
for the award of the degree
Bachelor of Computer Applications (BCA)
Indira Gandhi National Open University
New Delhi – 110068.
Name : ……………
Programme : BCA
Enrolment No. : …………………….
With Candor and Pleasure I take opportunity to express my sincere thanks and obligation to my esteemed guide…………... It is because of his able and mature guidance and co-operation without which it would not have been possible for me to complete my project.
It is my pleasant duty to thank all the staff member of the computer center who never hesitated me from time during the project.
Finally, I gratefully acknowledge the support, encouragement & patience of my family, and as always, nothing in my life would be possible without God, Thank You!
I hereby declare that this project work titled “E-Learning Online Education and Training Operation” is my original work and no part of it has been submitted for any other degree purpose or published in any other from till date.
|1. Introduction and objectives
|1.2. Objectives of the Project
|1.3. Project Category
|2. System Study
|2.1. Preliminary Investigation
|2.2. System development Life Cycle
|2.3. Economic Feasibility
|2.4. Technical Feasibility
|2.5. Operational Feasibility
|2.6. Feasibility Report
|3. System Analysis
|3.1. Importance of Computerized System
|3.2. System Analysis
|3.3. Methods Used For Gathering Information
|4. System Design
| 4.1 Physical Design
| 4.2 Module Description
|4.3 Table Design
|4.4 ER Diagram
|4.5 Data floe Diagram
|4.6 Report Generation
|5 System Development
|5.2 Code Efficiency
|5.3 Optimization of Code
|6.2 Test Cases
|6.3 Verification and Validation
|7. System Implementation Maintenance and Review
| 7.1 Hardware Evaluation Factors
| 7.2 Software Evaluation Factors
| 7.3 Conversion and Training
| 7.4 Training Needs
|8. Cost Estimation of the Project
|9. Ganti & Pert Chart
|10 Security And Validation Checks
|11. Scope of Future Application
- To store students details
- To find the fee detail information for any student/employee.
- All information can be synchronized in one place. And distribute to a particular department to manage properly.
- It is helpful to maintain the database (admission record, fees record, marks records etc).
- Teacher does not maintain the file, documentation, reports (class Wise, section wise).
- Administrator can check the fee status
- Administrator can check the admission status of the students.
- Easy to create any kind of certificate.
- Easy to query all related details of student and employee.
- Easy to generate payroll of individual employee
Using this system, the work can get fast, easy and without delicacy. This system is secured from unauthorized person who can not access the website due to the “Password Protection.” The objectives of the system are-
- To reduce paperwork.
- Reduced operational time.
- Increased accuracy and reliability.
- Increased operational efficiency.
- Viewing and maintaining stock level-line.
- Data security.
1.3 PROJECT CATEGORY
Drawbacks of Current Manual- System
- The current manual system has a lot of paper work and it does not deal with old and new car purchase and sale.
- To maintain the records such as topics available, users details,tutorials available etc. manually, is a time-consuming job.
- With the increase in database, it will become a massive job to maintain the database.
- Requires large quantities of file cabinets, which are huge and require quite a bit of space in the office, which can be used for storing records of previously registered student.
- The retrieval of records of previously registered student will be a tedious job.
- Lack of security for the records, anyone disarrange the records of your system.
- If someone wants to check the details of the available records for his satisfaction the previous system does not provide any necessary detail of this type.
- l. Students Details: The new proposed system stores and maintains all the employees’ details.
- Calculations: The new proposed system calculates service tax, vat etc automatically and it is very fast and accurate.
- Registers: There is no need of keeping and maintaining records register manually. It remembers each and every record and we can get any report related to students at any time.
- Speed: The new proposed system is very fast with 100% accuracy and saves time.
- Manpower: The new proposed system needs less manpower. Less people can do the large work.
- Efficiency: The new proposed systems complete the work of many sales people in less time.
- Reduces redundancy: The most important benefit of this system is that it reduces the redundancy of data within the data.
- Work load: Reduces the work load of the data store by helping in easy updates of the products and providing them with the necessary details together with financial transactions management.
- Easy statements: Month-end and day-end statement easily taken out without getting headaches on browsing through the day end statements.
- Security: Security has been provided to prevent unauthorized access.
Establish The Need of New System
- Problem of Reliability:
- 2. Problem of Accuracy:
- Problem of timeliness:
- Problem of Validity:
- Problem of Economy:
- Problem of Capacity:
SOFTWARE & HARDWARE REQUIREMENTS
The need of today’s software development is competence in a GUI based front-end tool, which can connect to Relational Database engines. This gives the programmer the opportunity to develop client server based commercial applications.
INTRODUCTION TO .NET
What is .NET?
- A vision of how information technology will evolve
- A platform that supports the vision
- A business model of software as a service
- A Vision.
- Web sites will be joined by Web services
- New smart devices will join the PC
- User interfaces will become more adaptable and customizable
- Enabled by Web standards
- A Platform.
- The .NET Framework
- Visual Studio.NET
- .NET Enterprise Servers
- Database, Messaging, Integration, Commerce, Proxy, Security, Mobility, Orchestration, Content Management
- .NET Building Block Services
- .NET My Services (“Appin”)
- Goal: make it incredibility easy to build powerful Web applications and Web services
- A business model.
- Software as a service
- Subscription-based services
- Application hosting, e.g. bCentral
Interoperability: Web languages and protocols must be compatible with one another independent of hardware and software.
Evolution: The Web must be able to accommodate future technologies. Encourages simplicity, modularity and extensibility.
Decentralization: Facilitates Scalability and Robustness.
- A programmable application component accessible via standard Web protocols
- The center of the .NET architecture
- Exposes functionality over the Web
- Built on existing and emerging standards are HTTP, XML, SOAP, UDDI, WSDL.
What is the .NET Framework?
- A set of technologies for developing and using components to create:
- Web Forms
- Web Services
- Windows Applications
- Supports the software lifecycle
- Application Architectures
- The Different types of Applications may vary from single-tier desktop applications (applications that follow the single-tier architecture) to multi-tier applications (applications that follow the two-, three, or n-tier architecture)
- Single-tier architecture
- A single executable file handles all functions relating to the user, business, and data service layers.
- Two-tier architecture
- Divides an application into the following two components:
- Three-tier architecture
- All the three service layers reside separately, either on the same machine or on different machines.
- n-tier architecture
- Uses business objects for handling business rules and data access.
- Has multiple servers handling business services.
The .NET Initiative
- The introduction of the Internet and its rapid growth in the recent past has led to the development of a number of new Technologies.
- One of the most important requirements of such applications is the ability to interchange information across platforms and to benefit from the functionality provided by other applications.
- In the current scenario, although applications serve organization-specific requirements, they are not interoperable. Microsoft has introduced the .NET initiative with the intention of bridging the gap in interoperability between applications.
- The .NET initiative offers a complete suite for developing and deploying applications, which consists of the following:
- NET products: Microsoft has already introduced ASP.NET, which is a tool for developing NET applications by using programming languages such as Visual Basic, C#, and Visual C++.
- NET services: Microsoft is coming up with its own set of Web services, known as My Services. These services are based on the Microsoft Passport Authentication service, the same service that is used in Hotmail.
Explanation of the .NET Framework
- Is a collection of services and classes?
- Exists as a layer between .NET applications and the underlying operating system.
- Encapsulates much of the functionality, such as debugging and security services.
- The following figure depicts the components of the .NET Framework:
The .NET Framework Base Classes or the .NET Class Framework
- Consists of a class library that works with any .NET language, such as ASP.NET and C#.
- Provides classes that can be used in the code to accomplish a range of common programming tasks.
- Namespaces: Namespaces help you to create logical groups of related classes and interfaces that can be used by any language targeting the .NET Framework.
- Assembly: An assembly is a single deployable unit that contains all the information about the implementation of classes, structures, and interfaces.
- The Common Language Runtime
- Provides functionality such as exception handling, security, debugging, and versioning support to any language that targets it.
- Can host a variety of languages and offer a common set of tools across these languages, ensuring interoperability between the codes.
- Provides the following features:
- Automatic memory management
- Standard type system
- Language interoperability
- Platform independence
- Security management
- Type safety
Advantages of the .NET Framework
- Some advantages of the .NET Framework are:
- Consistent programming model
- Multi-platform applications
- Multi-language integration
- Automatic resource management
- Ease of deployment
- Is a model used by ASP.NET applications to communicate with a database for retrieving, accessing, and updating data?
- Uses a structured process flow to interact with a database.
ADO .NET Data Access
Most applications need data access at one point of time making it a crucial component when working with applications. Data access is making the application interact with a database, where all the data is stored. Different applications have different requirements for database access. VB.NET uses ADO.NET (Active X Data Object) as it’s data access and manipulation protocol, which also enables us to work with data on the Internet. Let’s take a look why ADO.NET came into picture replacing ADO.
Evolution of ADO.NET
The first data access model, DAO (data access model) was created for local databases with the built-in Jet engine which had performance and functionality issues. Next came RDO (Remote Data Object) and ADO (Active Data Object) which were designed for Client Server architectures but soon ADO took over RDO. ADO was a good architecture but as the language changes so is the technology within it. With ADO, all the data is contained in a record set object which had problems when implemented on the network (Internet) and penetrating firewalls. ADO was a connected data access which means that when a connection to the database is established the connection remains open until the application is closed, which raises concerns about database security and network traffic. And also as databases are becoming increasingly important and as they are serving more people a connected data access model makes us think about its use. For example, an application with connected data access may do well when connected to two clients, the same may do poorly when connected to 10 and might be unusable when connected to 100 or more. Also, open database connections use system resources to a maximum extent making the system performance less effective.
To cope up with some of the problems mentioned above, ADO.NET came into existence. ADO.NET addresses the above mentioned problems by maintaining a disconnected database access model which means that when an application interacts with the database the connection is opened to serve the request of the application and is closed as soon as the request is completed. Likewise if a database is updated, the connection is opened long enough to complete the Update operation and is closed. By keeping connections open for only a minimum period of time ADO.NET conserves system resources and provides maximum security for databases and also has less impact on system performance. Also, ADO.NET when interacting with database uses XML by converting all the data into XML and using it for database related operations making them more efficient.
Features of ADO.NET
2.1 PRELIMINARY INVESTIGATION
System development, a process consisting of two major steps of system analysis and design, start when management or sometimes system development personnel feel that a new system or an improvement in the existing system is required. The system development life cycle is classically thought of as the set of activities that analysts, designers and users carry out to develop and implement an information system. The system development life cycle consists of the following activities:
- Preliminary investigation
- Determination of system requirements
- Design of system
- Development of software
- System testing
- Implementation, evaluation, and maintenance
A request to take assistance from information system can be made for many reasons, but in each case someone in the organization initiates the request is made, the first system activity the preliminary investigation begins. This activity has three parts:
- Request clarification
- Feasibility study
- Request approval
Request clarification: Many requests from employees and users in the organizations are not clearly defined, therefore it becomes necessary that project request must be examined and clarified properly before considering systems investigation.
2.2 SYSTEM DEVELOPMENT LIFE CYCLE
Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic world, the subject System Analysis and Design (SAD), mainly deals with the software development activities.
DEFINING A SYSTEM
A collection of components that work together to realize some objective forms a system. Basically there are three major components in every system, namely input, processing and output. In a system the different components are connected with each other and they are interdependent. For example, human body represents a complete natural system. We are also bound by many national systems such as political system, economic system, educational system and so forth. The objective of the system demands that some output is produced as a result of processing the suitable inputs.
Following are the different phases of software development cycle:
- System study
- Feasibility study
- System analysis
- System design
2.3 ECONOMIC FEASIBILITY
Economic analysis is the most frequently used technique for evaluating the effectiveness of a proposed system. More commonly known as cost / benefit analysis; in this procedure we determine the benefits and savings that are expected from a proposed system and compare them with costs. We found the benefits outweigh the costs; we take a decision to design and implement the new proposed system.
During the feasibility phase, broad alternatives solutions are examined. For each alternate solution the cost and benefits have to be examined before designing one of the alternative.
Broad solutions will consist of:
- Specifications of information to be made available by the system.
- Description of what will be done manually and what the computer will do.
- Specification of new computing equipment needed or specification of expansion of an existing computer.
- COST AND BENEFIT ANALYSIS
Developing an IT application is an investment. Since after developing that application it provided the organization with profits. Profits can be monetary or in the form of an improved working environment. However, it carries risks because in some cases an estimate can be wrong and the project might not actually turn out to be beneficial.
Cost benefit analysis helps to give management a picture of the cost, benefits and risks. It usually involves comparing alternate investments.
Cost benefit determines the benefits and savings that are expected from the system and compares them with the expected cost.
In performing cost and benefit analysis it is important to identify cost and benefits factors. Cost and benefits can be categorized into the following categories:
- Development cost – Development costs is the cost that are incurred during the development of the system. It is one time investment.
- Operating cost – Operating cost are the expenses required for the day to-day running of the system. As, operating cost are wages, supplies and overheads.
iii. Hardware/Software cost – It includes the cost of purchasing or leasing of computes and it’s peripherals. Software costs involves required software cost.
- Personnel cost – It is the money spent on the people involved in the development of the system.
- Facility cost – Expenses that are incurred during the preparation of the physical site where the system will be operational. These can be wiring, flooring, acoustics, lighting, and air-conditioning.
- Supply cost – These are variable costs that are very proportionately with the amount of use of paper, ribbons, disks, and others.
We can define benefits as
Profit or Benefit = Income – Cost
Benefits can be accrued by:
Increasing income or
Decreasing costs or
||40,000 (depend upon the configuration)
We should know that we need a person who can work with these software’s and so his training will cost around Rs 4,000. Here we see that the total price to get one computer up and running with the database management system is close to Rs.50, 000 as we don’t really need a very high performance computer as this project is entirely text based and requires only minimal processor speeds for computing. If the developer wants to have around 2 computers then we have the total costs being:
55,000*2 = Rs.1, 10,000
This would mean that the this project would need around 1 lakh to run my system successfully and resourcefully. HUMAN RESOURCE MANAGEMENT SYSTEM authorities are planning to reduce the staff , suppose if they remove one employee. Salary of on employee being around Rs.5,000. In one year annual salary of employee is equal to Rs. 60,000 and salary to three employees is Rs. l, 80,000 for one year .From this analysis it can be seen that whatever money the HUMAN RESOURCE MANAGEMENT SYSTEM will invest on making their system a computerized system will be recovered and half years of time (approx.). This analysis shows that how management is benefited by computerized system.
1) Fast and easy access to all E-LEARNING – ONLINE EDUCATION AND TRAINING OPERATIONS related procedures and functions.
2) No need for large storage spaces sized of rooms for storing the cabinets because all the information about the members and other details is saved in the computer’s hard disks.
3) High level of security and authentication of each and every user.
4) Less need for personnel, thus, no monthly salaries, which leads to no extra funds?
5) Reliability is increased, as backups of files, and records can be made and saved in various different locations and information will be highly secure, unlike in file cabinets where entries can easily be ripped or tampered with by users.
6) The reception/front office will look much neater and cleaner the environment they need, as there won’t be any cupboards or drawers which make the resource overcrowded.
7) There will be no longer the need for all the paper work required to make timely reports lists or other lists as the program generates then at anytime at a very quick pace.
2.4 TECHNICAL FEASIBILITY
TOOLS/PLATFORMS, HARDWARE & SOFTWARE REQUIREMENTS
HARDWARE & SOFTWARE CONFIGURATION
Processor : Pentium 2.4 GHz or above
Memory : 256 MB RAM or above
Cache Memory : 128 KB or above
Printer : Laser Printer
Pen Drive : 5 GB
FRONT END : ASP.Net
BACK END : SQL Server
SCRIPTING LANGUAGE : Java Script, HTML
WORD EDITORS : MS-WORD, NOTEPAD
GRAPHIC TOOLS : Paint, Flash
- Operating System : Windows XP(or later)
- RAM : Min 256MB
- Hard Disk Space : 40GB
- Processor : Pentium 4(or higher) or equivalent AMD
- Printer : Compatible
- Screen Resolution : 1024*768
2.5 OPERATIONAL FEASIBILITY
It is mainly related to human organizational and political aspects. The points to be considered are:
o What changes will be brought with the system?
o What organizational structures are disturbed?
o What new skills will be required? Do the existing staff members have these skills?
o If not, can they be trained in due course of time?
Generally project will not be rejected simply because of operational infeasibility but such considerations are likely to critically affect the nature and scope of the eventual recommendations.
For operational feasibility study we appointed a small group of people who are familiar with information system techniques, who understand the parts of the business that are relevant to the project and are skilled in system analysis and design process.
2.6 FEASIBILITY REPORT
After studying the feasibility of the project we came to the following points, these results may change according to further analysis and design.
PROJECT NAME: E-LEARNING – ONLINE EDUCATION AND TRAINING OPERATIONS
DEFINITION OF PROBLEM OR OPPOIRTUNITY: We have to make a computerized system (software) to make the working of E-Learning – Online Education and or purchasing easy and efficient so that software will replace the manual work with automated computerized process.
- Reduce the number of employee.
- Save money.
- Increase the efficiency of workers.
- Reduce the response time.
- Improve the service quality.
- Reduce the bulk of paper work.
- Reduce the chance of error by human.
- Increase the accuracy in result.
The waterfall model is a sequential design process, often used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Conception, Initiation, Analysis, Design, Construction, Testing, Production/Implementation, and Maintenance.
The waterfall development model originates in the manufacturing and construction industries: highly structured physical environments in which after-the-fact changes are prohibitively costly, if not impossible. Since no formal software development methodologies existed at the time, this hardware-oriented model was simply adapted for software development.
The first known presentation describing use of similar phases in software engineering was held by Herbert D. Belington at Symposium on advanced programming methods for digital computers on 29 June 1956. This presentation was about the development of software for SAGE. In 1983 the paper was republished with a foreword by Belington pointing out that the process was not in fact performed in strict top-down, but depended on a prototype.
The first formal description of the waterfall model is often cited as a 1970 article by Winston W. Royce, although Royce did not use the term “waterfall” in this article. Royce presented this model as an example of a flawed, non-working model. This, in fact, is how the term is generally used in writing about software development—to describe a critical view of a commonly used software development practice
The Different Phases Of Software Development Life Cycle Are Shown Below.
A system analysis is a separation of a substance into parts for study and their implementation and detailed examination.
Before designing any system it is important that the nature of the business and the way it currently operates are clearly understood. The detailed examination provides the specific data required during designing in order to ensure that all the client’s requirements are fulfilled. The investigation or the study conducted during the analysis phase is largely based on the feasibility study. Rather it would not be wrong to say that the analysis and feasibility phases overlap. High-level analysis begins during the feasibility study. Though analysis is represented as one phase of the system development life cycle (SDLC), this is not true. Analysis begins with system initialization and continues until its maintenance. Even after successful implementation of the system, analysis may play its role for periodic maintenance and up gradation of the system.
One of the main causes of project failures is inadequate understanding, and one of the main causes of inadequate understanding of the requirements is the poor planning of system analysis. Analysis requires us to recall the objectives of the project and consider following three questions:
- What type of information is required?
- What are the constraints on the investigation?
- What are the potential problems that may make the task more difficult?
3.1 IMPORTANCE OF COMPUTERIZED SYSTEM
E-LEARNING – ONLINE EDUCATION AND TRAINING OPERATIONS
There are several attributes in which the computer based information works. Broadly the working of computer system is divided into two main groups:
- Transaction System
- Decision Support System
A transaction is a record of some well-defined single and usually small occurrence in a system. Transactions are input into the computer to update the database files. It checks the entering data for its accuracy. This means that numeric data appears in numeric field and character data in character field. Once all the checks are made, transaction is used to update the database. Transaction can be inputted in on-line mode or batch mode. In on-line mode, transactions are entered and updated into the database almost instantaneously. In batch mode, transactions are collected into batches, which may be held for a while and inputted later.
Decision Support System:
It assists the user to make analytical decision. It shows the various data in organized way called analysis. This analysis can be made to study preferences and help in making decisions. Computer system works out best with record maintenance. It will tell you which customer would get how much pending/reports statements. It will also help to search the information about a particular person by simply entering his telephone number. User can store information as per requirement, which can be used for comparison with other reports.
3.2 PRINCIPLES OF SYSTEM ANALYSIS
- Understand the problem before you begin to create the analysis model.
- Develop prototypes that enable a user to understand how human machine interaction will occur.
- Record the origin of and the reason for every requirement.
- Use multiple views of requirements like building data, function and behavioral models.
- Work to eliminate ambiguity.
A Complete Structure:
The limited time and resources have restricted us to incorporate, in this project, only the main activities that are performed in news sites, but utmost care has been taken to make the system efficient and user friendly.
For the optimum use of practical time it is necessary that every session is planned. Planning of this project will include the following things:
- Topic Understanding.
- Modular Break – Up of the System
- Processor Logic for Each Module.
- Database Requirements.
It is vital that the field of application as introduced in the project may be totally a new field. So as soon as the project was allocated to me, I carefully went through the project to identify the requirements of the project.
Modular Break –Up of the System:
- Identify The Various Modules In The System.
- List Them In The Right Hierarchy.
- Identify Their Priority Of Development
- Description Of The Modules:
3.3 SYSTEM ANALYSIS
Analysis requires us to recall the objectives of the project and consider following three questions:
- What type of information is required?
- What are the constraints on the investigation?
- What are the potential problems that may make the task more difficult?
Keeping the above questions in mind and considering the survey conducted to determine the need of the system; the total system was deigned and can be described as under:
The three major parts of the system are:
The system is effectively used to provide large variety of information to the interested customer. The major purpose of the site is to easily provide transaction details, account details with quick update to latest modifications in the records. This thing is not at all possible in printed material, which are updated only once a few weeks. It also gives information about the general usage of the system for first time visitors. The system itself works as a information provider for E-LEARNING – ONLINE EDUCATION AND TRAINING OPERATIONSadministrator.
Alert when available: Through the survey it was clearly that there is a need to device an alternative way for providing alert facility to the user. Sometimes the product which customer demand is not available at that moment, user can register demand of customer and when its available, system gives an alert to the user that customer had registered a customer request with the same match.
Constraints: After the objectives were clear during the analysis phase, it was essential to understand the constraints in order to plan and avoid problems arising during detailed analysis.
Technology – the customer may be committed to a particular hardware or software solution. The software required in this case is: compete Java developer kit, Microsoft windows environment for MS – access.
Budget – if budget is a real constraint, the budget of the new system proposed would be constantly compared with that of the existing system or any Alternatives solution. In this case during the economic feasibility study it has been clearly proved that the new system is definitely more feasible than the alternative solution possible. Organization must implement a system which saves the effort, also it provide an easy method for customer who investigate each detail itself.
Scope –what is the area under investigation in this project? What are the boundaries of the system? What is the extent of possible usage of the new system? More and more people are now having access to organization and watch independently Details of new upcoming stock. Hence the scope is constantly increasing. However its usage can be increased many folds with a little investment from the organization side by implanting touch screen computer kiosks at various convenient positions at the service station.
The external entities for an organization are its Supplier’s customers or any individual.
3.3 METHODS USED FOR GATHERING INFORMATION
The methods used for gathering information about the existing information system are as followed.
(a) Review of records.
(b) Observation of the functioning system.
In order to create an informative and practical system, a system analyst would have to have some kind of way to view the current system. Receiving feed back on what can be done to improve the current system, and how much the current system is acceptable to the users.
1) Requirement analysis: –
The main part of problem is to obtain a clear understanding of theneeds of user and what exactly are desired from the software. It is use for specifying the requirement.
Fact finding tools:
After obtaining the background knowledge, I began to collect data on the existing system’s output, input, and costs. The tools used in data collection / information gathering are:
Review of the written Documents
Review of the written documents:
In this phase we analyzed all the documents like the day supply report, order generating forms, supply forms, account etc. All these things describe the format and functions of the current system included in most manuals are system requirement that help determine how III various objectives are met.
The form is one of the most important sources through which! Draw some conclusion like:
- Who use the form(s)? How important are they to the user?
- 2. Do the forms include all the necessary information? What item should be added or deleted?
- How readable and easy to follow is the form?
- How does the information in the form help other user make better decision?
- What other uses does the form offer the user area?
By analyzing all the details we draw a conclusion that what are the merit and De-merit of the current phase. Will the company contain all the back up of all the important document of not sales person contains all the information about the available vehicles or not. But above all there are some problems with the on site observations that one analyst must face during analysis like:
- Take long time and get inefficient result
- Attitude and motivation of subject cannot be readily observed
- Observation is subject to error
- In a complex situation it can be very time consuming
So for this we switched towards the other fact finding tools like interviews and questionnaires.
3 .Interviews and Questionnaires:
The interviews is a face to face interpersonal role situation in which a person called The interview asks a person being interview questions designed to gather information about a problem area. The interview is the oldest and most often used device for gathering information in systems work. It has qualities that behavioral and on-site observations do not possess .It can be used for two main purposes:
(a) As an exploratory device to identify relations or verify Information
(b) To capture information as it exists
- On-site observation:
It is not the easy task to do. In the on site observation the main objective is to get close as possible to the real system that are being studied. There are some questions that can serve as a guide for the on site observations:
- What kind of the system is it? What does it do?
- Who runs the system? Who are the important people in it?
- What is the history of the system? How it get to its present stage of the Development first in this phase we more likely listened than talk and to and to listen with a sympathetic and genuine interest when information is conveyed. We have not to give any advice or passing moral judgment on what is observed. Not to argue with anyone or not to show any hostility towards one person and closeness towards another.So in the on site observation we first visited to the entire organization watched all the transactions, watched the way of taking orders by the sales executive. What types of forms are used in the entire place? Are all forms are written, printed or not.
There are four primary advantages of the interviews:
- Its flexibility
- Easy to validate the information gathered
- Effective technique for elicit information about complex subject
4 instance, goals must be based on what competitors do.
It is usually associated with the self-administrated tools with items of the closed or fixed alternative type. By this nature a questionnaires offer the following advantages:
(a) It is economical and requires less skill to administer than the interview
(b) Unlike the interview which generally questions one subject at time questionnaire can be administrated to large number of individuals simultaneously.
(c) The questionnaires place less pressure on the subjects for immediate responses. Respondents have to think the question over and do calculations to provide more accurate data.
Samples Questions asked to Administrators
(Of similar kind of organizations with automised billing systems)
1.) Are you satisfied with the current system?
- YES ii. NO iii. Partially Satisfied
2.) Are you satisfied with the work done by your staff?
- YES ii. NO iii. Partially Satisfied
3.) What type of up-gradation do you intend to have in the current system?
- Technical ii.Manual iii. Monetary
4.) Which type of promotional schemes you are coming up?
- Revise discount rates ii. Add more facilities for customer iii. None
5.) What do you emphasize on (Regarding type of work done at the center)?
- Quality ii.Quantity iii.Both
6.) What is the Price/Profit ratio in Off and On season?
- Positive ii.Negative iii.Constant/ Average
7.) Are you satisfied with the number of customers coming here?
- Yes ii. NO iii. Can’t say
8.) Which Platform do you work on?
- GUI Based ii.Non-GUI Based iii. Don’t Know
9.) Which Database is implemented for the Billing System?
- MS ACESS ii.SQL SERVER iii. ORACLE iv. Others (Please Specify)………………………
10.) How much security is needed for the implementation of atomization?
- Very High ii.Average iii. Can’t Specify
11.) Any Suggestions for further improvement?
Sample Questions asked to consumers (Center’s customers)
- Customer Type ->
- a) School Student b) College Student c) Working Personal
1.) How do you like the facilities provided by the Center?
- Good ii.Betters than others iii. Best
2.) Are you satisfied with the Quality of service?
- Yes ii. No iii. Partially Satisfied
3.) What do you think about the discount offered?
- Too Less ii.Appropriate iii. Should be increased
4.) Is the Price of auto items adequate?
- Yes ii. No iii. Can’t Say
6.) Does the organization need further improvements?
- Yes ii. No iii. Can’t say
Answers we got from various computer operators
(i) 45% answered
(ii) 35% answered
(iii) 20% answered
Answers we got from various administrators
(i) 42% answered
(ii) 34% answered
(iii) 26% answered
i – Positive answers
ii – Average answers
iii – Negative Answers
The structured techniques used during the analysis which provide this logical view are:
- Data flow diagrams – representing the process, which manipulate the data as it passes through the system.
- Entity model – showing the relationship within the data items held within the system.
- A data dictionary – providing an overall consistent definition of the data used during the system development. This definition includes the content of the data stores, data flows and the process shown on the data flow diagrams, and the entities that make up the entity model.
DESIGN OBJECTIVES AND CONSTRAINTS:
Easy to use –
4.1 PHYSICAL DESIGN
The design phase focuses on the detailed implementation of the system recommended in the feasibility. Emphasis is on translating performance specifications into design specifications. The design phase is a transition from user-oriented document to a programmer-oriented document.
Design Methodology is a way to transform the “art” of system analysis and design into an “engineering – type” discipline. It explains the relationship amongst various modules and programs within the system. It standardizes the approach to analysis and design, simplifies design by segmentation, improves documentation and subsequent maintenance and enhancements.
The following structured diagram can appropriately represent the relationship between various modules.
In analyzing the present system a great deal of information was collected during the investigation and feasibility phases through list of problems and requirements, interview reports, questionnaires, onsite observations, manuals and determining potential solutions. It is important to record this information in an unambiguous, concise manner which will be clear and accessible to others, and which can be used by other analysts and designers involved in developing the system. Structured techniques help us to record the information in this way, using diagrams and minimum amount of the text.
Structured analysis is a set of techniques and graphical tools that allow the analyst to develop a new kind of system specification that are easily understandable to the user. The traditional approach of organizing data through flowcharts support future developments and simplify communication with the user but focus on the cost/benefit and feasibility analysis, project management, hardware and software selection, and personal considerations. In contrast, structured analysis considers new goals and structured tools for analysis, which provide the basis for design and implementation.
System design goes through two phases of development: logical and physical. Logical implementation represented by Data Flow Diagram shows the logical flow of a system and defines the boundaries of the system it describes the input (source), outputs (destinations), data bases (data stores), and procedures (data flows) – all in the format that meets the user’s requirements. The logical implementation of the whole project can be represented as under through Data Flow Diagrams (DFD).
4.2 MODULE DESCRIPTION
Data modeling defines primary data objects, composition of each data object, and attributes of the object, relationships between each object and other objects and between objects and the processes.
List of Tables:
- Teachers Feedback
- Students Feedback
The ‘Student Registration Form’ is designed for registering the new student details and course details.
The ‘Student Fee Form’ is used to enter the student’s fee details.
The ‘Student Marks Form’ is designed for submitting the semester or exam marks of the students for a particular course or an individual student.
The ‘Student Id Form’ is used to create the identity number for each student for different course.
The ‘Employee details Form’ is designed for entering the staff details and other relevant details.
The Employee Id used to create the identity number for each student for different course.
The ‘Salary Form’ is used to derive the salary for employees
The ‘Course details Form’ is designed for entering the different course available in the campus and other relevant details.
The ‘Library module’ is used for the data process of library and book accessing for students and staffs.
Main Description of the module ‘Reports’ are:-
All the above mentioned data are stored in the back end and can be retrieved as reports with filtering options.
The following are the reports can be taken from this system
- Student Report
- Employee Report
- Course Detail Report
- Book Detail Report
- Issued Book Report
- Fee Detail Report
- Marks Detail Report
- Generate Pay Slip
4.4 ER DIAGRAM
In software engineering, an entity-relationship model (ERM) is an abstract and conceptual representation of data. Entity-relationship modeling is a database modeling method, used to produce a type of conceptual schema or semantic data model of a system, often a relational database, and its requirements in a top-down fashion.
An entity may be defined as a thing which is recognized as being capable of an independent existence and which can be uniquely identified. A relationship captures how two or more entities are related to one another.
4.5 DATA FLOW DIAGRAM
Data flow diagrams (DFD) are part of a structured model in the development of software. They are a graphical technique that depicts information flow and the transforms that are applied as data move from input to output. Basically, the function of DFDs is to show the user a graphical analysis of a software system. It is like a flowchart, except DFDs show the flow of data throughout the system.
- The rectangle represents an external entity. The external entity is a producer or consumer of information that resides outside the bounds of the system to be modeled.
- The circle (process) is a transformer of information that resides within the bounds of the system. The line with an arrow (data item) is a single item, or a collection of data items. The arrow head represents the directions of the data.
- The Parallel line (data store) represents a repository of data that is to be stored for use by one or more processes; maybe as simple as a buffer or a queue or as sophisticated as a relational database.
Input to the Project
Login Module: This is very first module of this project. This module contains whole information about the authentication like user id password and type of user.
New User: This module is related to adding information about the users.
Admin: Administrator can:
- Add Tutorial Details
- Add Topics
- Check Users Details
- Uploading notes
Output of the Project
- Topics information report
- Tutorialss information report
- Questions Detaila
- Notes can be downloaded from this web project
4.6 REPORT GENERATION
‘Crystal Reports’ is a popular third party package that is included with in ASP.NET, which allows you to create reports for your application. The package consists of a designer – where you can design and test the reports, Crystal Reports API calls and Crystal Report Viewer control. The reports generated by the administrator are
- Fee Details
- Students Details
- Admissions Details
- Teachers Details
- Course Details
Scheduling of a software project does not differ greatly from scheduling of any multi- task engineering effort. Therefore, generalized project scheduling tools and techniques can be applied with little modification to software projects.
Program evaluation and review technique (PERT) and critical path method (CPM) are two project scheduling methods that can be applied to software development. Both techniques are driven by information already developed in earlier project planning activities.
Estimates of Effort
- A decomposition of the product function.
- The selection of the appropriate process model and task set.
- Decomposition of tasks.
Interdependencies among tasks may be defined using a task network. Tasks, sometimes called the project Work Breakdown Structure (WBS) are defined for the product as a whole or for individual functions.
Both PERT and CPM provide quantitative tools that allow the software planner to (1) determine the critical path-the chain of tasks that determines the duration of the project; (2) establish “most likely” time estimates for individual tasks by applying statistical models; and (3) calculate “boundary times” that define a time window” for a particular task.
Boundary time calculations can be very useful in software project scheduling. Slippage in the design of one function, for example, can retard further development of other functions. It describes important boundary times that may be discerned from a PERT or CPM network: (I) the earliest time that a task can begin when preceding tasks are completed in the shortest possible time, (2) the latest time for task initiation before the minimum project completion time is delayed, (3) the earliest finish-the sum of the earliest start and the task duration, (4) the latest finish- the latest start time added to task duration, and (5) the total float-the amount of surplus time or leeway allowed in scheduling tasks so that the network critical path maintained on schedule. Boundary time calculations lead to a determination of critical path and provide the manager with a quantitative method for evaluating progress as tasks are completed.
Both PERT and CPM have been implemented in a wide variety of automated tools that are available for the personal computer. Such tools are easy to use and take the scheduling methods described previously available to every software project manager.
5.2 CODE EFFICIENCY
Reviewing of Code efficiency for a module is carried out after the module is successfully compiled and all the syntax errors eliminated. Code efficiency review is extremely cost-effective strategies for reduction in coding errors in order to produce high quality code. Normally, two types of efficiency are carried out on the code of a module – code optimization and code inspection. The procedure and final objective of these two efficiency techniques are very different as discussed below.
5.3 OPTIMIZATION OF CODE
Code optimization is an informal code analysis technique. In this technique, after a module has been coded, it is successfully compiled and all syntax errors are eliminated. Some members of the development team are given the code a few days before the optimization meeting to read and understand the code. Each member selects some test cases and simulates execution of the code by hand (i.e. trace execution through each statement and function execution). The main objectives of the optimization are to discover the algorithmic and logical errors in the code. The members note down their findings to discuss these in a optimization meeting where the coder of the module is also present.
Even though a code optimization is an informal analysis technique, several guidelines have evolved over the years for making this naïve technique more effective and useful. Of course, these guidelines are based on personal experience, common sense, and several subjective factors. Therefore are based on personal experience, common sense, and several subjective factors. Therefore, guidelines should be considered as examples rather than as rules to be applied dogmatically. Some of these guidelines are the following:
The team performing the code optimization should not be either too big or too small. Ideally, it should consist of three to seven members
6.1 TESTING PHASE
One of the purposes of the testing is to validate and verify the system. Verification means checking the system to ensure that it is doing what the function is supposed to do and Validation means checking to ensure that system is doing what the user wants it to do.
No program or system design is perfect; communication between the user and the designer is not always complete or clear, and time is usually short. The result is errors and more errors. Theoretically, a newly designed system should have all the pieces in working order, but in reality, each piece works independently. Now is the time to put all the pieces into one system and test it to determine whether it meets the user’s requirements. This is the best chance to detect and correct errors before the system is implemented. The purpose of system testing is to consider all the likely variations to which it will be subjected and then push the system to its limits. If we implement the system without proper testing then it might cause the problems.
- Communication between the user and the designer.
- The programmer’s ability to generate a code that reflects exactly the system specification.
- The time frame for the design
Theoretically, a new designed system should have all the pieces in working order, but in reality, each piece works independently. Now is the time to put all the pieces into one system and test it to determine whether it meets the requirements of the user. The process of system testing and the steps taken to validate and prepare a system for final implementation are:
LEVELS OF TESTING
The different types of testing are as follows:
Software Testing is an empirical investigation conducted to provide stakeholders with information about the quality of the product or service under test , with respect to the context in which it is intended to operate. This includes, but is not limited to, the process of executing a program or application with the intent of finding software bugs. It can also be stated as the process of validating and verifying that a software program/application/product meets the business and technical requirements that guided its design and development, so that it works as expected and can be implemented with the same characteristics.
A primary purpose for testing is to detect software failures so that defects may be uncovered and corrected. This is a non-trivial pursuit. Testing cannot establish that a product functions properly under all conditions but can only establish that it does not function properly under specific conditions. The scope of software testing often includes examination of code as well as execution of that code in various environments and conditions as well as examining the aspects of code: does it do what it is supposed to do and do what it needs to do. In the current culture of software development, a testing organization may be separate from the development team. There are various roles for testing team members. Information derived from software testing may be used to correct the process by which software is developed.
Defects and failures
Not all software defects are caused by coding errors. One common source of expensive defects is caused by requirements gaps, e.g., unrecognized requirements, that result in errors of omission by the program designer. A common source of requirements gaps is non-functional requirements such as testability, scalability, maintainability, usability, performance, and security.
Software faults occur through the following process. A programmer makes an error (mistake), which results in a defect (fault, bug) in the software source code. If this defect is executed, in certain situations the system will produce wrong results, causing a failure. Not all defects will necessarily result in failures. For example, defects in dead code will never result in failures. A defect can turn into a failure when the environment is changed. Examples of these changes in environment include the software being run on a new hardware platform, alterations in source data or interacting with different software. A single defect may result in a wide range of failure symptoms.
A frequent cause of software failure is compatibility with another application, a new operating system, or, increasingly, web browser version. In the case of lack of backward compatibility, this can occur (for example…) because the programmers have only considered coding their programs for, or testing the software upon, “the latest version of” this-or-that operating system. The unintended consequence of this fact is that: their latest work might not be fully compatible with earlier mixtures of software/hardware, or it might not be fully compatible with another important operating system. In any case, these differences, whatever they might be, may have resulted in (unintended…) software failures, as witnessed by some significant population of computer users.
This could be considered a “prevention oriented strategy” that fits well with the latest testing phase suggested by Dave Gelperin and William C. Hetzel, as cited below.
Input combinations and preconditions
A very fundamental problem with software testing is that testing under all combinations of inputs and preconditions (initial state) is not feasible, even with a simple product. This means that the number of defects in a software product can be very large and defects that occur infrequently are difficult to find in testing. More significantly, non-functional dimensions of quality (how it is supposed to be versus what it is supposed to do) — for example, usability, scalability, performance, compatibility, reliability — can be highly subjective; something that constitutes sufficient value to one person may be intolerable to another.
Static vs. dynamic testing
There are many approaches to software testing. Reviews, walkthroughs or inspections are considered as static testing, whereas actually executing programmed code with a given set of test cases is referred to as dynamic testing. The former can be, (and unfortunately in practice often is…) omitted, whereas the latter takes place when programs begin to be used for the first time – which is normally considered the beginning of the testing stage. This may actually begin before the program is 100% complete in order to test particular sections of code (modules or discrete functions). For example, Spreadsheet programs are, by their very nature, tested to a large extent “on the fly” during the build process as the result of some calculation or text manipulation is shown interactively immediately after each formula is entered
- UNIT TESTING:
- INTEGRATION TESTING:
- SYSTEM TESTING:
- FIELD TESTING:
- ACCEPTANCE TESTING:
WHY SYSTEM TESTING?
Testing is vital to the success of the system. System testing makes a logical assumption that if all the parts of the system are correct, the goal will be successfully achieved. Inadequate testing results in two types of problems:
- The time lag between the cause and the appearance of the problem.
- The effect of system errors on the files and records within the system.
ACTIVITY NETWORK FOR SYSTEM TESTING
The test plan entails the following activities:
- Prepare test plan.
- Specify conditions for user acceptance testing.
- Prepare test data for program testing.
- Prepare test data for transaction path testing.
- Plan user training.
- Compile/assemble programs.
- Prepare job performance aids.
- Prepare operational documents.
PREPARE TEST: A workable test plan must be prepared in accordance with established design specifications. It includes the following items:
- Outputs expected from the system.
- Criteria for evaluating outputs.
- A volume of test data.
- Procedure for using test data.
- Personnel and training requirements.
SPECIFY CONDITIONS FOR USER ACCEPTANCE TESTING
Planning for user acceptance testing calls for the analyst and the user to agree on conditions for the test.
PREPARE TEST DATA FOR PROGRAM TESTING
As each program is coded, test data are prepared and documented to ensure that all aspects of the program are properly tested.
PREPARE TEST DATA FOR TRANSACTION PATH TESTING
This activity develops the data required for testing every condition and transactions to be introduced into the system. The path of each transaction from origin to destination is carefully tested reliable results.
PLAN USER TRAINING
User training is designed to prepare the user for testing and converting the system. User involvement and training take place parallel with programming for three reasons:
- The system group has time available to spend on training while the programs are being written.
- Initiating a user-training program gives the systems group a clearer image of the user’s interest in the new system.
- A trained user participates more effectively in system testing.
The training plan is followed by preparation of the user training manual and other text materials.
COMPILE / ASSEMBLE PROGRAMS
All programs have to be compiled / assembled for testing.
PREPARE JOB PERFORMANCE AIDS
In this activity the materials to be used by personnel to run the system are specified and scheduled. This includes a display of materials.
PREPARE OPERATIONAL DOCUMENTS
During the test plan stage, all operational documents are finalized including copies of the operational formats required by the candidate system.
The computer department to ensure that the system functions as specified does this testing. This testing is important to ensure that a working system is handed over to the user for acceptance testing.
6.2 TEST CASES
6.3 VERIFICATION AND VALIDATION (V&V)
The objectives of verification, validity activities are to assess and improve the quality of the work products generated during development and modification of the software. Quality depends upon the various attributes like correctness, completeness, consistency, reliability, usefulness, usability, efficiency and conformance to standards.
The terms verification and validation are used synonymously. These are defined as under: –
Verification: “Are we building the product right?”
Validation: “Are we building the right product?”
- SYSTEM IMPLEMENTATION MAINTENANCE AND REVIEW
7.1 HARDWARE EVALUATION FACTORS
HARDWARE EVALUATION FACTORS
10) Environmental requirements
7.2 SOFTWARE EVALUATION FACTORS
SOFTWARE EVALUATION FACTORS:
- EFFICIENCY: is the software a well-written system of computer instructions that does not use much memory capacity or CPU time?
- FLEXIBILITY: can it handle its processing assignments easily without major modifications?
- SECURITY: does it provide control procedures for errors, malfunctions and improper use?
- LANGUAGE: do our computer programmers and users write it in a programming language that is used?
- DOCUMENTATION: is the s/w well documented? Does it include helpful user instructions?
- HARDWARE: does existing hardware have the features required to best use this software?
- Other characteristics of hardware such as its performance, what about the cost, how much is reliable and etc.
7.3 CONVERSION AND TRAINING
An important aspect of is to make sure that the new design is implemented to establish standards. The term implementation has different meanings, ranging form the conversion of a basic application to a complete replacement of a computer system. Implementation is used here to mean the process of converting a new or revise system into an operational one. Conversion is one aspect of implementation. Conversion means changing form one system to another. The objective is to put the tested system into operation while holding costs, risks, and personnel irritation to a minimum. It involves creating computer-compatible files, training the operation staff, and installing terminal and hardware. A critical aspect of conversion is not disrupting the functioning of the organization.
When a new system is used over and old, existing and running one, there are always compatibility errors. These errors are caused because of the lack of equipment or personnel to work the new system. Running any specified system at an organization does require some or other hardware or, in this case, software requirement as well.
Conversion is one aspect of implementation review & software maintenance.
There are three types of implementation:
- Implementation of a computer system to replace a manual system. The problems encountered are converting files, training users, creating accurate files and verifying printouts for integrity.
- Implementation of a new computer system to replace an existing one. This is usually a difficult conversion. If not properly planned there can be many problems. Some large computer systems have taken as long as year to convert.
- Implementation of a modified application to replace an existing one, using the same computer. This type of conversion is relatively easy to handle, provided there are no major changes in the files.
7.4 TRAINING NEEDS
Training needs refer to the gaining of knowledge required for running the system.
First of all the system is a computer based system therefore the person should have good knowledge about computer and its working.
He should know how to use software’s on the computer.
For a better usage and working of the software the organization should appoint a person who has good knowledge of all the required software. The organization gets a person trained through different institutes present in the market. The training should be as per the above requirements
COST ESTIMATION OF THE PROJECT
Total No. Of Persons Involved In This Project:
- Senior Programmer
- Junior Programmers
- On line Users.
Since this Project will complete in 4 months
COST ESTIMATE: (Salary of Project Manager + Salary of Senior Programmer + 2 * Salary of Junior Programmer) * 2
GANTT & PERT CHART
Gantt charts mainly used to allocate resources to activities. The resources allocated to activities include staff, hardware, and software. Gantt charts (named after its developer Henry Gantt) are useful for resource planning. A Gantt chart is special type of bar chart where each bar represents an activity. The bars are drawn along a timeline. The length of each bar is proportional to the duration of the time planned for the corresponding activity.
Gantt chart is a project scheduling technique. Progress can be represented easily in a Gantt chart, by coloring each milestone when completed. The project will start in the month of December and end after 4 months at the end of March.
PERT chart represents the statistical variations in the project estimates assuming a normal distribution. Thus in a PERT chart instead of making a single estimate for each task, pessimistic, likely, and optimistic estimates are also made. The boxes of PERT charts are usually annotated with the pessistic, likely, and optimistic estimates for every task. Since all possible completion times between the minimum and for every task have to be considered, there are many critical paths, depending on the permutations of the estimates for each task. This makes critical path analysis in PERT charts very complex. A critical path in a PERT chart is shown by using thicker arrows.
<tabledth=”456″>600Design GUI Part15459012075Code Database Part60165601650Code GUI Part459012016575Integrate and Test1652851652850Write User Manual15
75</td PERT charts are a more sophisticated form of activity chart. In activity diagrams only the estima task durons are represented. Since the actual durations might vary from the estimated durations, the utili the activity diagrams is limited.
SECURITY AND VALIDATION CHECKS
Security Management System:-
Security management system easily can maintain the security system. Manager can change the password. In the future if the manager giving resignation, the employee cannot use the system. Employee also cannot lock the system by setting to set his own password. There is also provision that the manager can set some question and answer & the data will be in encrypted form.
Some features of HR security system are:-
- Restricted unauthorized user to access organization hidden data.
- Restrict virus to enter in your data and prevent to corrupt it.
- User registration form
- User record updating/deletion form
- User security privilege view form
- User Login form
- User registration report.
- User record updating/deletion report.
- User security privilege view report
- Detailed User Login report
SCOPE OF FUTURE APPLICATION
- It is designed to provide a communication channel inside an organization between different clients on the network.
- It accept the mails from authorized users providing security.
- This enhances communications among the members of the organization in a reliable, cost-effective and secure way.
We emphasize mainly on intranet application which will work in the same office, but we are trying to get it in the internet where employees can sit in their home and can login into their workspace provided by company. We can implement the chatting facility between the employees which help them in their way of doing projects.
- AN INTRODUCTION TO DATABASE SYSTEM
AUTHOR- BIPIN C. DESAI
AUTHOR- R. PRESSMAN
- SYSTEM ANALYSIS AND DESIGNING (SAD)
IGNOU REFERENCE BOOKS