Professional Documents
Culture Documents
(Session 2017-2021)
By
Azka Sarfraz BSSIT-17-32
&
Aqsa Arif BSSIT-17-09
Session (2017-2021)
Submitted By
Azka Sarfraz BSSIT-17-32
&
Aqsa Arif BSSIT-17-09
Project Supervisor
Muhammad Sajjad
____________________________ _____________________________
Muhammad Sajjad Name:
Assistant Professor __________________________________
Organization & Designation:
__________________________________
Head of CS Department
Signature:
___________________________
Prof. Nazir Ahmad
Assistant Professor
Govt. Graduate College, Sahiwal.
i
Dedication
“Dedication is a devotion to which we love, who our benefactors are,
who pray for us and who made us capable of doing all these, under this
head; they are my PARENTS and our TEACHERS. So, we have
devoted this report to our beloved and kind parents and teachers.”
Acknowledgment
ii
With the blessings of Almighty Allah and the prayers of our parents, we have made
this attempt to achieve the goal that was set for us to complete the BS degree.
Although the project was complex and complicated, we put our maximum effort to
fulfil the goal. We would like to express our deepest appreciation to all those who
provided us with the possibility to complete this report. A special gratitude we give
to our final year project supervisor, Mr. Muhammad Sajjad, whose contribution
in stimulating suggestions and encouragement, helped me to coordinate my project
especially in writing this report.
Furthermore, I would also like to acknowledge with much appreciation the crucial
role of the staff of the Information Technology Department of GGCS, who
permitted to use all required equipment and the necessary material to complete the
task. Last but not least, many thanks go to the head of the department, Mr. Nazir
Ahmed who has invested his full effort in guiding me to achieve the goal. I have to
appreciate the guidance given by other supervisors as well as panels, especially in
our project presentation that has improved our presentation skills thanks to their
comments and advice.
Azka Sarfraz
Aqsa Arif
Abstract
iii
“GGCS Alumni Portal” is an android app developed for managing various
activities in the library. For the past few years, the number of educational
institutions is increasing rapidly. Thereby the number of Libraries is also
increasing for the accommodation of the students studying in this institution. And
hence there is a lot of strain on the person who is running the library and software’s
are not usually used in this context. One very important benefit of using the
Library Management System is, it helps the institution reduce the burden and
workload on the administration staff employees. The system assists institutions in
securely storing and managing the data and information of students. It allows
access to this information by a few authorized staff employees only. We can
improve the efficiency of the system, thus overcoming the drawbacks of the
manual system.
Table of Contents
iv
CHAPTER 1-INTRODUCTION 1
1. Introduction 1
1.1 Objectives 1
1.2 Existing System 2
1.3 Problem statement 2
1.4 Proposed system 2
1.5 Scope of project 2
CHAPTER 2-ANALYSIS 3
2.1 Feasibility Study 4
2.2 User Requirements 6
2.2.1 Functional Requirements6
2.2.2 Non-Functional Requirements 6
2.3 System Requirements 7
2.4 System Requirements specifications 7
2.5 Use case diagram 7
2.6 Behavior specification 7
CHAPTER 3-DESIGN 13
3.1 System Architectural Design 14
3.2 System Software Design 16
3.2.1 Class Diagram 17
3.2.2 State chart Diagram 20
3.2.3 Activity Diagram 24
3.2.4 Sequence Diagram 27
3.3 Database Design 16
3.3.1 ERD 17
3.3.2 Normalization (Bachman diagram) 20
3.4 User Interface Design 16
CHAPTER 4-IMPLEMENTATION 30
4.1 Source code functions 31
v
4.2 Libraries 35
CHAPTER 5-USER GUIDE 45
5.1 Screen shots 46
5.2 Bibliography 46
vi
Chapter #1
Introduction
1.1 Objectives
The alumni portal is providing a common platform for every organization. Owing to the need to
have all the Alumni (already passed out students) must be connected to the organization,
resulting in sharing their views, experiences, guidance, ideas, strategies, and motivations.
An alumni portal is a platform where the college, alumni and the institute/college students can
interact with each other for their benefit. The students can share their views or queries or
experiences on to portal regarding certain events and internship opportunities.
The Alumni portal application aims to allow old and current students of the college to have
interaction. This allows students/alumni to know about themselves and their current activities.
This portal focuses on the feature of interaction/communication, which will enable the current
students to have interaction with the alumni of the college or organization for getting various
updates on current industry trends, Internship opportunities, project sponsorship, and various
referrals opening in the corporate world.
Alumni portal is providing common platform for every organization. Owing to the need to have
all the Alumni (already passed out students) must be connected to the organization, resulted in
sharing their views, experiences, guidance, ideas, strategies, and motivations. The aim of Alumni
portal application is to allow old and current students of the college to have interaction. This
allows students/alumni to know about themselves and their current activities. This portal focuses
the feature of interaction/communication, which will enable the current students to have
interaction with the alumni of the college or organization for getting various updates on current
industry trends, Internship opportunities, project sponsorship and various referrals opening in the
corporate world. In this project we proposed the Dynamic design of the Alumni portal, enable the
duplex interaction between all alumni and students.
Use of this portal
The system has been tested for feasibility in the following points.
Technical Feasibility
Economic Feasibility
Operational Feasibility
Login
In GGCS Alumni Portal, the user has different accounts systems that will allow admin/ users to
log in to the system.
Create Account
The account will be created for the user who applied for registration. The user now acts as a
member and they have access to the system.
5
Manage Account
The administrator will be able to manage the accounts of users. Admin should have full authority
over the user accounts. Check and verify the user detail, username, and password.
Security
Usability
Performance
Availability
Reliability
Accessibility
Maintainability
Performance –fast response
Easy to use
Easy to understand
Everyone can be used
Not technical skills required to use it.
System will help in saving time and improving efficiency
Maintainability- easy to maintain
Performance/ response time- fast response
The non-functional requirements are ordered in descending order of importance. In other words,
the most important requirements are shown first.
6
2.4 SOFTWARE REQUIREMENT SPECIFICATION (SRS)
The software requirement specification of the software system is in the documentation part in
which I analyse what is this system for, what are the features, how can I develop this system,
what are the components of the proposed solution of the system.
2.4.1 System Requirements:
• Database: MySQL
• RAM 4 GB RAM
7
2.5 USE CASE DIAGRAM
In UML, use-case diagrams model the behavior of a system and help to capture the
requirements of the system.
Use-case diagrams describe the high-level functions and scope of a system. These diagrams also
identify the interactions between the system and its actors. The use cases and actors in use-case
diagrams describe what the system does and how the actors use it, but not how the system
operates internally.
Use-case diagrams illustrate and define the context and requirements of either an entire system or
the important parts of the system. You can model a complex system with a single use-case
diagram, or create many use-case diagrams to model the components of the system. You would
typically develop use-case diagrams in the early phases of a project and refer to them throughout
the development process.
Before starting a project, you can create use-case diagrams to model a business so that all
participants in the project share an understanding of the workers, customers, and
activities of the business.
While gathering requirements, you can create use-case diagrams to capture the system
requirements and to present to others what the system should do.
During the analysis and design phases, you can use the use cases and actors from your
use-case diagrams to identify the classes that the system requires.
During the testing phase, you can use use-case diagrams to identify tests for the system.
Use cases
A use case describes a function that a system performs to achieve the user’s goal. A use
case must yield an observable result that is of value to the user of the system.
Actors
An actor represents a role of a user that interacts with the system that you are modeling.
The user can be a human user, an organization, a machine, or another external system.
Subsystems
In UML models, subsystems are a type of stereotyped component that represent
independent, behavioral units in a system. Subsystems are used in class, component, and
use-case diagrams to represent large-scale components in the system that you are
modeling.
Relationships in use-case diagrams
In UML, a relationship is a connection between model elements. A UML relationship is a
type of model element that adds semantics to a model by defining the structure and
behavior between the model elements.
8
9
10
2.6 BEHAVIOUR SPECIFICATION
A technique for software system behaviour specification appropriate for use in designing systems
with concurrency is presented. The technique is based upon a generalized ability to
define events, or significant occurrences in a software system, and then indicate whatever
constraints the designer might wish to see imposed upon the ordering or simultaneity of those
events.
Behavior Specifications conveniently and efficiently fulfil multiple purposes:
Behavior Specifications are NOT part of a formal requirements document or legal contract —
they are as-built documentation and test assets.
11
Chapter #3
Design
3.1 SYSTEM ARCHITECTURAL DESIGN
The process of defining a collection of hardware and software components and their
interfaces to establish the framework for the development of a computer system.
System Architectural Design:
The server architecture consists of two components: a dedicated database server platform and
a separate gateway or firewall. The site, and application, that will be installed in the browser
will act as a gateway or firewall. The database contains URLs, their content categories (such
as Services, Business Listing Profiles, or Review Forum), and specifications on which
businesses are listed.
Here only the administrator can log in to the system and query the database using a query
language.
13
That interfaces are application layer constituents. It includes forms, buttons, traffic
navigators, etc.
3.1.2 Business Logic Layer
This defines how the system will act on the user’s requests, queries. The functionality of the
system is defined at this layer. The user when to interacting with the system, gave some
instructions to process, here these instructions, functionality is defined.
14
Figure 3.1 Data Storage Layer
15
3.2 SYSTEM SOFTWARE DESIGN
System design is the process of designing the elements of a system such as the architecture,
modules and components, the different interfaces of those components and the data that goes
through that system.
System Analysis is the process that decomposes a system into its component pieces for the
purpose of defining how well those components interact to accomplish the set requirements.
The purpose of the System Design process is to provide sufficient detailed data and
information about the system and its system elements to enable the implementation consistent
with architectural entities as defined in models and views of the system architecture.
Elements of a System
Architecture - This is the conceptual model that defines the structure, behavior and more
views of a system. We can use flowcharts to represent and illustrate the architecture.
Modules - This are components that handle one specific tasks in a system. A combination
of the modules makes up the system.
Components - This provides a particular function or group of related functions. They are
made up of modules.
Interfaces - This is the shared boundary across which the components of the system
exchange information and relate.
Data - This the management of the information and data flow.
16
3.2.1 Class Diagram
a class diagram in the Unified Modelling Language (UML) is a type of static structure
diagram that describes the structure of a system by showing the system's classes, their
attributes, operations (or methods), and the relationships among objects.
Purpose of Class Diagrams
1. Shows static structure of classifiers in a system
2. Diagram provides a basic notation for other structure diagrams prescribed by UML
3. Helpful for developers and other team members too
4. Business Analysts can use class diagrams to model systems from a business
perspective
A UML class diagram is made up of:
A set of classes and
A set of relationships between classes
What is a Class
A description of a group of objects all with similar roles in the system, which consists of:
Structural features (attributes) define what objects of the class "know"
Represent the state of an object of the class
Are descriptions of the structural or static features of a class
Behavioural features (operations) define what objects of the class "can do"
Define the way in which objects may interact
Operations are descriptions of behavioural or dynamic features of a class
Inevitably, if you are modeling a large system or a large business area, there will be
numerous entities you must consider. Should we use multiple or a single class diagram for
modeling the problem? The answer is:
Instead of modeling every entity and its relationships on a single class diagram, it is
better to use multiple class diagrams.
Dividing a system into multiple class diagrams makes the system easier to
understand, especially if each diagram is a graphical representation of a specific part
of the system.
17
Alumni 1
Registers 1
User url: stringg
User_id:integer
Add_user ()
Post
Roll_no:integer Delete_user ()
Name:string Post_id:integer
0…1 1
Email:string Post_msg:string
Register ()
Status:string 1
Login ()
Post () Add_post ()
Chat () Like ()
logout() Reply ()
Chat Login
Chat_id:integer User_id:integer
Pwd:string
Chat ()
Login ()
Student
Alumni
User_id:integer
Roll_no:integer Admin_id:integer
Name:string Name:string
Email:string Email:string
Register () Register ()
Login () Login ()
Post () Add_event ()
Chat () Add-menu ()
Logout () Logout ()
18
3.2.2 Activity Diagram
Activity diagrams, along with use case and state machine diagrams, are considered behaviour
diagrams because they describe what must happen in the system being modelled.
Stakeholders have many issues to manage, so it's important to communicate with clarity and
brevity. Activity diagrams help people on the business and development sides of an
organization come together to understand the same process and behaviour. You'll use a set of
specialized symbols—including those used for starting, ending, merging, or receiving steps in
the flow—to make an activity diagram, which we’ll cover in more depth within this activity
diagram guide.
Before you begin making an activity diagram, you should first understand its makeup. Some
of the most common components of an activity diagram include:
Action: A step in the activity wherein the users or software perform a given task. In Lucid
chart, actions are symbolized with round-edged rectangles.
Decision node: A conditional branch in the flow that is represented by a diamond. It
includes a single input and two or more outputs.
Start node: Symbolizes the beginning of the activity. The start node is represented by a
black circle.
End node: Represents the final step in the activity. The end node is represented by an
outlined black circle.
19
3.2.3 Sequence Diagram
UML Sequence Diagrams are interaction diagrams that detail how operations are carried
out. They capture the interaction between objects in the context of a collaboration.
20
Sequence Diagrams are time focus and they show the order of the interaction visually by
using the vertical axis of the diagram to represent time what messages are sent and when.
Sequence diagrams can be somewhat close to the code level, so why not just code up that
algorithm rather than drawing it as a sequence diagram?
A good sequence diagram is still a bit above the level of the real code
Sequence diagrams are language neutral
Non-coders can do sequence diagrams
Easier to do sequence diagrams as a team
Can be used for testing and/or UX Wireframing
21
22
23
3.3 DATABASE DESIGN
Database Design is a collection of processes that facilitate the designing, development,
implementation and maintenance of enterprise data management systems. Properly designed
database is easy to maintain, improves data consistency and are cost effective in terms of disk
storage space. The database designer decides how the data elements correlate and what data
must be stored.
The main objectives of database design in DBMS are to produce logical and physical designs
models of the proposed database system.
The logical model concentrates on the data requirements and the data to be stored
independent of physical considerations. It does not concern itself with how the data will be
stored or where it will be stored physically.
The physical data design model involves translating the logical DB design of the database
onto physical media using hardware resources and software systems such as database
management systems (DBMS).
Database designing
Logical model – This stage is concerned with developing a database model based on
requirements. The entire design is on paper without any physical implementations or
specific DBMS considerations.
Physical model – This stage implements the logical model of the database taking into
account the DBMS and physical implementation factors.
Implementation
Data conversion and loading – this stage of relational databases design is concerned
with importing and converting data from the old system into the new database.
Testing – this stage is concerned with the identification of errors in the newly
implemented system. It checks the database against requirement specifications.
1. Normalization
2. ER Modelling
24
3.3.1 ER Diagram
An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities”
such as people, objects or concepts relate to each other within a system. ER Diagrams are
most often used to design or debug relational databases in the fields of software engineering,
business information systems, education and research. Also known as ERDs or ER Models,
they use a defined set of symbols such as rectangles, diamonds, ovals and connecting lines to
depict the interconnectedness of entities, relationships and their attributes. They mirror
grammatical structure, with entities as nouns and relationships as verbs.
ER diagrams are related to data structure diagrams (DSDs), which focus on the relationships
of elements within entities instead of relationships between entities themselves. ER diagrams
also are often used in conjunction with data flow diagrams (DFDs), which map out the flow
of information for processes or systems.
Database design: ER diagrams are used to model and design relational databases, in
terms of logic and business rules (in a logical data model) and in terms of the specific
technology to be implemented (in a physical data model.) In software engineering, an ER
diagram is often an initial step in determining requirements for an information systems
project. It’s also later used to model a particular database or databases. A relational
database has an equivalent relational table and can potentially be expressed that way as
needed.
25
26
27
3.4 USER INTERFACE DESIGN
User Interface (UI) Design focuses on anticipating what users might need to do and ensuring
that the interface has elements that are easy to access, understand, and use to facilitate those
actions. UI brings together concepts from interaction design, visual design, and information
architecture.
Choosing Interface Elements
Users have become familiar with interface elements acting in a certain way, so try to be
consistent and predictable in your choices and their layout. Doing so will help with task
completion, efficiency, and satisfaction.
Interface elements include but are not limited to:
Input Controls: buttons, text fields, checkboxes, radio buttons, dropdown lists, list
boxes, toggles, date field
Navigational Components: breadcrumb, slider, search field, pagination, slider, tags,
icons
Informational Components: tooltips, icons, progress bar, notifications, message boxes,
modal windows
Containers: accordion
There are times when multiple elements might be appropriate for displaying content. When
this happens, it’s important to consider the trade-offs. For example, sometimes elements that
can help save you space, put more of a burden on the user mentally by forcing them to guess
what is within the dropdown or what the element might be.
28
29
30
31