Академический Документы
Профессиональный Документы
Культура Документы
Introduction
1.1 Introduction
Hostel management gives on idea about how the students details, room allocation,
mess expenditure is maintained in the particular concern. The hostel managementsystem also
includes some special features. The administration has the unique identity for each member as
well as students’ details. The stock management has also held by mess expenditure, the mess
expenditure that used to calculate the mess bills of each of the students. The modules of this
project are student details, attendance details, room details, mess modules.
1.3 Motivations
As a Student, I can well understand the problems which are we face daily in our life. Actually,
I have got many things in my mind about Final project system. And finally, I have planned to
do a system for applying online hostel registration, bill payment method, maintain student
details, visitor details, employees’ detail and more facilities without any problems for Hostel
Management.
I was thinking about final project as few days that what to do for final project. At last of past
week Decided to develop a system far Hostel management which is more usable thing at the
current situation for our Hostel Student.
When I have discussed with my Warden also they have allowed and encouraged me to develop
this good system for good purpose of students to save their time and money because they said,
usually this activity being as a time consuming for students because they have to get renewal
or registration or hostel fees payment form, fill it up, get sign from warden and Director. So,
this procedure taking more than two days.
1.4 Objective
The main objective of this project is:
Maintain the students as hostellers and waiting list students separately Student will no
longer apply for their hostels manually.
The warden can see and access the student's data.
To know number of items (e.g.: bed, chairs) given to student staying in the hostel.
Process allotment list.
Admin can send the approval notification to every approved student via email.
Automatically insert student's details to the hosteller's record when the allotment is
confirmed by the admin and deleted when vacation is conformed or after the course end
date.
Students can register their complaints.
Admin can edit notice board and each student can view it.
Hostel secretary can calculate hostel fee including mass fees and can edit mess menu
Hostellers can check the stains of every month, hostel fee
The SDLC process involves several distinct stages, including planning, analysis, design,
building, testing, deployment and maintenance. Here are six SDLC methodologies, or models,
that development teams use in this effort.
• Agile
• Lean
• Waterfall
• Iterative
• Spiral
• DevOps
Agile
The Agile model has been around for about a decade. But lately, it has become a major driving
force behind software development in many organizations. Some businesses value the Agile
methodology so much that they are now applying it to other types of projects, including non-
tech initiatives.
In the Agile model, “fast failure” is a good thing. The approach produces ongoing release
cycles, each featuring small, incremental changes from the previous release. At each iteration,
the product is tested. The Agile model helps teams identify and address small issues on projects
before they evolve into more significant problems, and engage business stakeholders and get
their feedback throughout the development process.
Lean
The Lean model for software development is inspired by lean manufacturing practices and
principles. The seven Lean principles (in this order) are: eliminate waste, amplify learning,
decide as late possible, deliver as fast as possible, empower the team, build integrity in, and
see the whole.
The Lean process is about working only on what must be worked on at the time, so there’s no
room for multitasking. Project teams are also focused on finding opportunities to cut waste at
every turn throughout the SDLC process, from dropping unnecessary meetings to reducing
documentation.
Waterfall
Some experts argue that the Waterfall model was never meant to be a process model for real
projects (check out the discussion on this topic on StackExchange). Regardless, the Waterfall
model is widely considered the oldest of the structured SDLC methodologies. It’s also a very
straightforward approach: finish one phase, then move on to the next. No going back. Each
stage relies on information from the previous stage and has its own project plan.
The downside of Waterfall is its rigidity. Sure, it’s easy to understand and simple to manage.
But early delays can throw off the entire project timeline. With little room for revisions once a
stage is completed, problems can’t be fixed until you get to the maintenance stage. This model
doesn’t work well if flexibility is needed or if the project is long term and ongoing.
Even more rigid is the related Verification and Validation model — or V-shaped model. This
linear development methodology sprang from the Waterfall approach. It’s characterized by a
corresponding testing phase for each development stage. Like Waterfall, each stage begins only
after the previous one has ended. This SDLC model can be useful, provided your project has
no unknown requirements.
Iterative
The Iterative model is repetition incarnate. Instead of starting with fully known requirements,
project teams implement a set of software requirements, then test, evaluate and pinpoint further
requirements. A new version of the software is produced with each phase, or iteration. Rinse
and repeat until the complete system is ready.
Advantages of the Iterative model over other common SDLC methodologies is that it produces
a working version of the project early in the process, and makes it less expensive to implement
changes. One disadvantage: Repetitive processes can consume resources quickly.
Spiral
One of the most flexible SDLC methodologies, the Spiral model takes a cue from the Iterative
model and its repetition; the project passes through four phases (planning, risk analysis,
engineering and evaluation) over and over in a “spiral” until completed, allowing for multiple
rounds of refinement.
The Spiral model is typically used for large projects. It enables development teams to build a
highly customized product, and incorporate user feedback early on in the project. Another
benefit of this SDLC model is risk management. Each iteration starts by looking ahead to
potential risks, and figuring out how best to avoid or mitigate them.
DevOps
The DevOps methodology is the newcomer to the SDLC scene. As this article explains, it
emerged from two trends: the application of Agile and Lean practices to operations work, and
the general shift in business toward seeing the value of collaboration between development and
operations staff at all stages of the SDLC process.
In a DevOps model, Developers and Operations teams work together closely — and sometimes
as one team — to accelerate innovation and the deployment of higher-quality and more reliable
software products and functionalities. Updates to products are small but frequent. Discipline,
continuous feedback and process improvement, and automation of manual development
processes are all hallmarks of the DevOps model.
1.9 Procedure
Research
Design
Development
Tesing
Deployment
2. Literature Review and Analysis
2.1 Literature Review
Hostels, accommodation and housing services have grown to be one of most popular and
favorite business option. Cities, towns, business centers, shopping places and schools are
examples of places where this business has flourished. This positions a challenge on how to
efficiently handle or manage these facilities.
Modern businesses are rediscovering the ancient mantras for success in corporate world and
blending them with contemporary marketing practices. Long term survival and competitive
advantage can only be attained by establishing an emotional bond with the customers. A shift
is taking place from marketing to anonymous masses of customers to developing and managing
relationships with more or less well known or at least some identified customers (Greenrooms,
1994).
This section shall provide general literature on Automation particularly hostel services industry
and its link with customer satisfaction, customer loyalty and business performance followed
by literature on computer systems and service quality in details. The ‘gap model’ shall be
introduced and literature on service guarantee, service recovery, and complaint management
shall be provided. This would lead to the privacy issues related with management in the service
industry.
Many computer or automated systems have been developed to keep up with the increasing
demand for better and efficient way of managing these facilities than manual systems that are
hard to work with and inflexible. Most of these systems are web-based systems. Examples that
are discussed in this section include those that have been implemented at universities and
colleges. However, there are others that have been implemented outside the learning
environment namely bookhostels.com technology who brag to power over 500 affiliate
websites worldwide, including the Web Reservation owned sites www.hostelworld.com and
www.hostels.com and internationally renowned travel sites such as Studentuniverse.com.
The existing system is manual based and need lot of efforts and
consume enough time. In the existing system we can apply for the hostels online
but the allotment processes are done manually. It may lead to corruptions in the
allocation process as well as hostel fee calculation. The existing system does not
deals with mess calculation and complaint registration.
2.4 Comparison
Economic Feasibility:
Economic analysis is the most frequently used method for evaluating the effectiveness of a new
system. More commonly known as cost/benefit analysis. .net using visual C# and SQL database
easily available in internet
Technical Feasibility:
The technical feasibility in the proposed system deals with the technology used in the system.
It deals with the hardware and software used in the system whether they are of latest technology
or not. It happens that after a system is prepared a new technology arises and the user wants
the system based on that technology. This system uses windows platform, .net as front-end
technology and sql server as backend technology. Thus, HOSTEL MANAGEMENT SYSTEM
is technically feasible.
Operational Feasibility:
The project has been developed in such a way that it becomes very easy even for a person with
little computer knowledge to operate it. This software is very user friendly and does not require
any technical person to operate. Thus, the project is even operationally feasible.
ORGANIZATION
NAME
CONTACT
ADDRESS
PROJECT
NAME
BRAND
PRODUCT
BEGIN DATE
END DATE
DURATION
ASSUMPTIONS
GOALS
OBJECTIVE
SCOPE
DELIVERABLES
PAYMENTS
ADVANCE
MID
TOTAL COST
Simply put, a Gantt chart is a visual view of tasks scheduled over time. Gantt charts are used
for planning projects of all sizes and they are a useful way of showing what work is scheduled
to be done on a specific day. They also help you view the start and end dates of a project in one
simple view.
3. System Design
3.1 Introduction
Systems design implies a systematic approach to the design of a system. It may take a bottom-
up or top-down approach, but either way the process is systematic wherein it considers all
related variables of the system that needs to be created—from the architecture, to the required
hardware and software, right down to the data and how it travels and transforms throughout its
travel through the system. Systems design then overlaps with systems analysis, systems
engineering and systems architecture.
Data flow diagrams can be used in any industry that needs to perform a structured analysis,
such as in computer systems design and business development. Data flow diagrams can be used
to visualize current systems or improve them to fix problems and make them more efficient.
Many people confuse data flow diagrams with flow charts and pseudocode. Flow charts show
steps in a process, like this flow chart for the writing process. Keep in mind that a flow chart
does not identify the inputs, the functions, or storage.
There are several common modeling rules that I follow when creating DFDs:
All processes must have at least one data flow in and one data flow out.
All processes should modify the incoming data, producing new forms of outgoing data.
Each data store must be involved with at least one data flow.
Each external entity must be involved with at least one data flow.
A data flow must be attached to at least one process.
A context diagram is a top level (also known as "Level 0") data flow diagram. It only contains
one process node ("Process 0") that generalizes the function of the entire system in relationship
to external entities. This is simple Level 0 DFD with only one process
3.2.2 Level 1 DFD
A level 1 data flow diagram (DFD) is more detailed than a level 0 DFD but not as detailed as
a level 2 DFD. It breaks down the main processes into subprocesses that can then be analyzed
and improved on a more intimate level. A more detailed DFD of Hostel System
Use case diagrams consists of actors, use cases and their relationships. The diagram is used to
model the system/subsystem of an application. A single use case diagram captures a particular
functionality of a system. Hence to model the entire system, a number of use case diagrams are
used.
The purpose of use case diagram is to capture the dynamic aspect of a system. However, this
definition is too generic to describe the purpose, as other four diagrams (activity, sequence,
collaboration, and Statechart) also have the same purpose. We will look into some specific
purpose, which will distinguish it from other four diagrams.
Use case diagrams are used to gather the requirements of a system including internal and
external influences. These requirements are mostly design requirements. Hence, when a system
is analyzed to gather its functionalities, use cases are prepared and actors are identified.
When the initial task is complete, use case diagrams are modelled to present the outside view.
In brief, the purposes of use case diagrams can be said to be as follows –
It helps you document and understand the dynamic aspects of your software system -
specifically the sequence of messages that are sent and received between objects. Sequence
diagrams can help you comprehend and solve difficult issues in the process-intensive portions
of your applications.
if you're not using business objects, most of your application logic resides inside methods of
user interface objects or in functions and procedures? and there really isn't much messaging
that occurs between objects. However, once you decide to elevate your programming by using
business objects in your applications, sequence diagrams help you answer two very important
questions:
Which objects should be assigned a particular responsibility?
In what order should messages pass between objects?
These questions are very difficult to answer correctly when you simply try to envision object
messaging in your head. In contrast, when you document your thought process in a sequence
diagram, suddenly the answers to these questions become crystal clear. At a higher level, it
also helps you comprehend the overall flow of a particular process. In addition, sequence
diagrams help you easily identify unnecessary messages between objects and factor them out.
You may also discover that objects you originally thought should be involved in a particular
process shouldn't be involved at all!
UML Class Diagram gives an overview of a software system by displaying classes, attributes,
operations, and their relationships. This Diagram includes the class name, attributes, and
operation in separate designated compartments.
Class Diagram helps construct the code for the software application development.
Benefits
Class Diagram Illustrates data models for even very complex information systems
It provides an overview of how the application is structured before studying the actual code.
This can easily reduce the maintenance time
It helps for better understanding of general schematics of an application.
Allows drawing detailed charts which highlights code required to be programmed
Helpful for developers and other stakeholders.
The name of the class is only needed in the graphical representation of the class. It appears in
the topmost compartment. A class is the blueprint of an object which can share the same
relationships, attributes, operations, & semantics. The class is rendered as a rectangle, including
its name, attributes, and operations in sperate compartments.
Attributes:
An attribute is named property of a class which describes the object being modeled. In the class
diagram, this component is placed just below the name-compartment.
Relationships:
Dependency
A dependency means the relation between two or more classes in which a change in one may
force changes in the other. However, it will always create a weaker relationship. Dependency
indicates that one class depends on another.
Generalization
A generalization helps to connect a subclass to its superclass. A sub-class is inherited from its
superclass. Generalization relationship can't be used to model interface implementation. Class
diagram allows inheriting from multiple superclasses.
Association:
This kind of relationship represents static relationships between classes A and B. For example;
an employee works for an organization.
Here are some rules for Association:
Association is mostly verb or a verb phrase or noun or noun phrase.
It should be named to indicate the role played by the class attached at the end of the
association path.
Mandatory for reflexive associations
3.6 ER Diagram
An entity relationship diagram (ERD) shows the relationships of entity sets stored in a database.
An entity in this context is an object, a component of data. An entity set is a collection of similar
entities. These entities can have attributes that define its properties.
By defining the entities, their attributes, and showing the relationships between them, an ER
diagram illustrates the logical structure of databases.
Entities
Entities, which are represented by rectangles. An entity is an object or concept about which
you want to store information.
A weak entity is an entity that must defined by a foreign key relationship with another entity
as it cannot be uniquely identified by its own attributes alone.
Relationships
Actions, which are represented by diamond shapes, show how two entities share information
in the database.
In some cases, entities can be self-linked. For example, employees can supervise other
employees.
Attribute:
Attributes, which are represented by ovals. A key attribute is the unique, distinguishing
characteristic of the entity. For example, an employee's social security number might be the
employee's key attribute.
A multivalued attribute can have more than one value. For example, an employee entity can
have multiple skill values.
A derived attribute is based on another attribute. For example, an employee's monthly salary is
based on the employee's annual salary.
Connecting Lines:
Connecting lines, solid lines that connect attributes to show the relationships of entities in the
diagram.
Cardinality:
Cardinality specifies how many instances of an entity relate to one instance of another entity.
Ordinality is also closely linked to cardinality. While cardinality specifies the occurrences of a
relationship, ordinality describes the relationship as either mandatory or optional. In other
words, cardinality specifies the maximum number of relationships and ordinality specifies the
absolute minimum number of relationships.
3.7 Database
A database is a collection of information that is organized so that it can be easily accessed,
managed and updated.
Data is organized into rows, columns and tables, and it is indexed to make it easier to find
relevant information. Data gets updated, expanded and deleted as new information is added.
Databases process workloads to create and update themselves, querying the data they contain
and running applications against it.
Computer databases typically contain aggregations of data records or files, such as sales
transactions, product catalogs and inventories, and customer profiles.
In Mysql
Conceptually, a schema is a set of interrelated database objects, such as tables, table columns,
data types of the columns, indexes, foreign keys, and so on.
….
In MySQL, physically, a schema is synonymous with a database. You can substitute the
keyword SCHEMA instead of DATABASE in MySQL SQL syntax, for example
using CREATE SCHEMA instead of CREATE DATABASE.
In SQL Server
The names of tables, fields, data types, and primary and foreign keys of a database.
3.8 Normalization
If a database design is not perfect, it may contain anomalies, which are like a bad dream for
any database administrator. Managing a database with anomalies is next to impossible.
Update anomalies − If data items are scattered and are not linked to each other properly, then
it could lead to strange situations. For example, when we try to update one data item having its
copies scattered over several places, a few instances get updated properly while a few others
are left with old values. Such instances leave the database in an inconsistent state.
Deletion anomalies − We tried to delete a record, but parts of it was left undeleted because of
unawareness, the data is also saved somewhere else.
Insert anomalies − We tried to insert data in a record that does not exist at all.
Normalization is a method to remove all these anomalies and bring the database to a consistent
state.
There are seven normalization form. 7th is still in development and just a theory for now they
are
To be in first normal form (1NF), a table must have the following qualities:
The table is two-dimensional with rows and columns.
Each row contains data that pertains to some thing or portion of a thing.
Each column contains data for a single attribute of the thing it’s describing.
Each cell (intersection of a row and a column) of the table must have only a single value.
Entries in any column must all be of the same kind. If, for example, the entry in one row of
a column contains an employee name, all the other rows must contain employee names in
that column, too.
Each column must have a unique name.
No two rows may be identical (that is, each row must be unique).
The order of the columns and the order of the rows are not significant.
Before we learn about the second normal form, we need to understand the following –
If we follow second normal form, then every non-prime attribute should be fully functionally
dependent on prime key attribute. That is, if X → A holds, then there should not be any proper
subset Y of X, for which Y → A also holds true.
For a relation to be in Third Normal Form, it must be in Second Normal form and the following
must satisfy –
Language: C Sharp or C#
IDE: Visual Studio 2017:
Framework: .Net Framework 4.5
Technology: Winform
UI and Reporting Framework: DevExpress 18.1.4
Database: SQL SERVER 2012
DB IDE: DbForge for Sql Server 5.1
Drawing: Microsoft Visio 2016
Report Making: Microsoft Word 2016
User Interface were made using drag and drop facility beside this UI Framework DevExpress
was used to create more good looking, professional and responsive design
Coding was done by keeping in view the 3-tier architecture. Visual studio itself provide 2 tier
it keeps drag and drop code separate from other logic. But in 3 tier we further divide that logic
into business logic and database logic.
4.3.3 OOP
Features like inheritance, encapsulation and other oop features were used by default. Every
custom Form or Control is inheriting from the basic form or control provided by visual studio
itself
Dialog Box are used to show exception, success and error alerts. A few examples are given
below
4.3.5 Events
Mouse and Keyboard events are used beside them dropdown change event, and data grid
selection changed event are also used.
Errors are handled very wisely so that the software should not close unexpectedly. Few
examples are given below.
I have chosen c# because it is very easy to create desktop application with it and criteria to
create a computer shop management system was fulfilled by c#. and hardware work like
printing was also added very easily.
5. Deployment
5.1 Implementation
A product software implementation method is a blueprint to get users and/or organizations
running with a specific software product.
The method is a set of rules and views to cope with the most common issues that occur when
implementing a software product: business alignment from the organizational view and
acceptance from human view.
The implementation of product software, as the final link in the deployment chain of software
production, is in a financial perspective of a major issue.
It is stated that the implementation of (product) software consumes up to 1/3 of the budget of
a software purchase (more than hardware and software requirements together).
When the main point of the computer study program is to implement counter measures to bots
and bugs.
5.1.1 Location
The software was implemented at Zikria Boy Hostel
5.1.2 Hardware
I told them to buy:
Processor: Core 2 Dou 2.4 Ghz
Ram: 2Gb
HDD: 160Gb
5.2 Configuration
I installed sql server on their system. Made the installer of the software with automatic database
connection setting. And database creation and table creation and insert one record for admin
user in admin table for login
5.3 Testing
5.3.1 Purpose
Software testing enables making objective assessments regarding the degree of conformance
of the system to stated requirements and specifications.
Testing verifies that the system meets the different requirements including, functional,
performance, reliability, security, usability and so on. This verification is done to ensure that
we are building the system right.
In addition, testing validates that the system being developed is what the user needs. In essence,
validation is performed to ensure that we are building the right system. Apart from helping
make decisions, the information from software testing helps with risk management.
Software testing contributes to improving the quality of the product. You would notice that we
have not mentioned anything about defects/bugs up until now.
This system has some benefits to their staffs. Currently they are keeping every record by written
down in memo manually. At least this system will give them relieve from exhausted life which
they are dealing with their customers. Besides this system will make them more reliable to its
customers as all the customers records will be kept safely than any previous
times. Moreover, they can manage their stock more handily.
Reference
SMARTDRAW
http://www.smartdraw.com
TECHNOPEDIA
https://www.techopedia.com
UML-DIAGRAM
http://www.uml-diagrams.org
GURU99
https://www.guru99.com/