Uploaded by mlwbderjonno Nai

SRS RPC(1)

advertisement
Chapter1:Introduction
Chapter includes:
 Introduction
 Purpose of the project
 Scope of work
 Glossary
 References
 System overview
3
RPC
1.1 Introduction:
This document is about the project of “Research Portal on Cloud”. It
represents the overall description about the project. Already there are
some research portals which contain only research paper and some tools.
But this project will provide some important tools that will help the
researchers whose are in the research field and they will get a storage
service to store documents. The students also may be benefited using this
portal. Speciality of this portal is that it provides services based on Cloud
Computing. So, the purpose of the document is to help the user to inform
about these issues.
1.2 Purpose of the Project
The main objective of this document is to illustrate the requirements of the
project “Research Portal on Cloud”. The document gives the
detailed description of the both functional and non-functional
requirements. The document is developed after a number of
consultations with the stakeholders and considering the complete
requirement specifications. The final product of the team will be meeting
the requirements of this document. Another purpose is to know the user
about Cloud Computing.
Cloud computing is rapidly becoming a new computing paradigm that
fundamentally alters the landscape of computing services. Cloud based
services such as IaaS (Infrastructure-as-a-Service), PaaS (Platform-as-aService), and SaaS (Software-as-a-Service) are ideally suited for any
computing devices like computer and other devices and services where
performance, affordability, scalability, availability, and elasticity are critical
metrics. Many potential uses have been proposed to integrate this powerful
paradigm into these computing devices and services.
4
RPC
The purpose of the document is to help the stakeholders to inform about
the project, why they use this project, how they will be benefited using this
project and know about the benefit of using Cloud Computing. It already
informed that the project is especially for researcher. Now the question is
that how they will be benefited using this project. It is known to all that for
research, researcher need an environment and it will take two or three
days to create this environment. But the user of this project will get the
prepared environment that will save his valuable time.
1.3 Scope of Work:
The project will be a web based system. This system will be designed to
reduce the user difficulties by providing some essential tools. The scope of
the project can be described by discussing the following issuesVirtualization Technology: Virtualization is software technology which
uses a physical resource such as a server and divides it up into virtual
resources such as virtual machines. Virtualization allows users to
consolidate physical resources, simplify deployment and administration
and reduce power and cooling requirements.
Virtualization Storage: Storage virtualization is a concept and term used
within computer science. Specifically, storage systems may
use virtualization concepts as a tool to enable better functionality and more
advanced features within and across storage systems.
Broadly speaking, a 'storage system' is also known as a storage array
or disk array or a filer. Storage systems typically use special hardware and
software along with disk drives in order to provide very fast and reliable
storage for computing and data processing.
Multiplatform Services: Cloud services can be run in various platforms. So
it is also a big scope to work in cloud computing. The may be run in various
types of platforms.
5
RPC
1.4 Glossary
Cloud
Cloud computing is the delivery of computing as a
service rather than a product, whereby shared
resources, software over a network.
Software
Requirements
Specification
A document that completely describes all of the
functions of a proposed system and the constraints
under which it must operate. For example, this
document.
Stakeholder
The persons are included with this project.
Database
Collection of all the information monitored by this
system.
Multiple
viewpoints
Analyze the questioners with stake holders.
Functional
Requirement
External interface requirement
Non Functional
Requirement
Internal project requirement.
1.5 References
1. http://docs.openstack.org/essex/
2. https://github.com/puppetlabs/puppetlabs-openstack
3. www.ubuntu.com/sites//openstack-deployment.pdf
6
RPC
4.http://www.en.wikipedia.org/wiki/Software_requirements_specification
5.http://requirements.seilevel.com/blog/2010/10/using-softwarerequirements-models-together-for-completeness.html
6.http://trireme.com/whitepapers/process/requirements/requirements_
modelling_what.html
7. [Book] Software Engineering - A Practitioners Approach 7th Edition by
Pressman
1.6 System Overview
This chapter gives user an overall idea about the project. The next
chapter, the Overall Description section, of this document gives an
overview of the functionality of the product. Inception is described in this
section.
The third chapter, Requirements Elicitation section, of this document is
written primarily for the developers and describes in technical terms the
details of the quality function deployment which describes the normal,
expected and exciting requirements.
The fourth chapter, Software Requirements Modeling section represents
the proper diagram and requirements model. This chapter is very
important for both user and developer to understand about the project.
Next chapter, it will be clear about the inception.
7
RPC
Chapter2:
Requirements
Inception
Chapter includes:
 Stakeholder identification
 Recognizing viewpoints
 Working towards
collaboration
 Requirements questionnaire
8
RPC
This chapter, inception describes the intended users of the system
and primitive requirements gathered from their point of view. The chapter
includes stakeholder’s identification, extracting their view point and
working towards the collaboration.
2.1 Inception:
This chapter describes the inception of the project “Research Portal
on Cloud”. In software industry requirements engineering is one of the
most important parts of software engineering process. Requirements
engineering gives us the proper scenarios what the
customer
wants,
analyzing needs and feasibility, negotiating a reasonable solution.
Inception is the initial step of requirements engineering which makes us
understand “how does a software project get started?” In software
industries, a software project begins when a business need is identified. So
the first step is the need to understand the customer needs. The
development team needs to figure out a rough feasibility analysis, not only
the customer’s need but also with the people who are apparently involved
with the introducing system. This stage is called inception. Inception
involves the following phases:




Identifying Stakeholders
Recognizing multiple viewpoints
Working towards collaboration
Asking the First Questions
2.2 Identifying Stakeholders:
The stakeholders and users who are most immediately involved in
“Research Portal on Cloud” are identified in this section. The stakeholders
of a software project are those people or positions, who are directly or
indirectly affected or effected by the project. The identified stakeholders
can be divided into following groups.
9
RPC






Researcher
Student
Teacher
Institute
Developer
Service provider
Researcher: Researchers are one of the major stakeholders of the project
because they will use the environment and store their research papers into
the IIT Research Portal.
Student: Students, who directly interact with the software, will be
benefited from this project. So they are also stakeholders of our project.
Teacher: Teachers will use this software hence; teachers are also
stakeholders like other researchers.
Institute: Institute authority is one of the major stakeholders of our
software because they will operate and maintain the system. We have to
follow the institute rules and regulations strictly. So Institute authority is
also our stakeholder.
Developer: Developers are developing this system and will be working for
further development. They are the most attracted by the programmability
of a system. Hence the main need is a good API for the system. The API can
be developed by the core system development team or can be developed by
third party vendors.
Service provider: Service provider will finance the project and it has some
rules and regulations to maintain our system. We have to follow them
strictly. So service provider is also our stakeholder.
10
RPC
2.3 Recognizing Viewpoints:
Each of the stakeholders possesses their own views about the intended
project. This is because; different stakeholders will achieve different
benefits out of this project. So we have to recognize the requirements from
multiple points of view. In order to collect those viewpoints various
discussion and formal question and answer sessions were conducted. To
the best of our understanding, their viewpoints are as followsResearcher:







User friendly interface and easy to use
Strong authentication system
Provide full environment
Provide platform and operating system
Reliable data transfer
Response time
Reliability
Student/Teacher:








Documents are stored categorically
System uptime
High availability instances
Scalability
Research environment
Storage service
Provide C++, Java, Python, LaTex and CPLEX library
Provide operating system
Institute:





11
Provide more resources [tutorials]
Provide all possible tools related to research
Secured System
Authentication System
Instances availability
RPC
Developer:





Easy to develop
No ambiguous requirements
User response
Support from other stakeholders
Open Source technology
Service Provider:







Proper solution to support customer
Performance issues
Availavility of all requriments within the budget
Efficient and error free system
Minimum maintenance cost
Easy to maintain and operate the system
Provide secured system
2.4 Working towards collaboration:
In our project, we have different types of stakeholders such as Students,
Teachers, and Authorities etc. So, we have different opinions about the
requirements. The opinion about a particular requirement may be common
or different among the developers. For this reason, we combine those
requirements and satisfy our stakeholders. In this step we followed the
steps stated below.
 Gather the common and conflicting requirements discussing
with the stakeholders
 Make final decision from which the requirements should be
implemented and show this to the client and other
stakeholders.
12
RPC
Common Requirements:








User friendly and secure system
Authentication system
Instances availability
Provide all possible tools
Reliable data transfer
System uptime
Easy to use and sustainable performing server system
Connectivity whenever necessary
Conflicting Requirements:






Access system (by browser or putty, vnc)
Research data store format
Maintenance cost
Faster download system
No ambiguous requirements
Availability of all requirements within the budget
Final requirements
We finally gathered common and conflict requirements based on their
priority. These final requirements are:











13
User friendly interface and secure system
Authentication system
High availability of instances
Scalability
Storage service
Connectivity and reliable data transfer
Access from anywhere by any computer
Secure software tool and environment
Provide more resources (tutorials) and Journal (if possible)
Provide all possible tools as possible
Full fill the requirements within the budget
RPC
2.5 Requirements questionnaire
For gathering requirements for the project “Research Portal on
Cloud”, we set our first set of context-free questions focuses on the
customer and other stakeholders, overall project goals and benefits. Next
set of questions helped us to gain a better understanding of problem and
allows the customer to voice his or her perception about the solution. The
final set of questions focused on the effectiveness of the communication
activity itself. We followed the following questions to gather all possible
requirements.
 What would be the expected features as a researcher?
 How would you characterize good output that would be
generated by a successful solution?
 What problems will face by the solution?
 Can you show me the business environment in which the solution
will be used?
 Will special performance issues or constraints affect the way the
solution is approached?
 What is the minimum bandwidth and system requirements to
take this service?
 What type of data do you usually need to store in the research
portal?
 Can you tell me about the specific environment where you will do
the research.
 What specific features, tools or database management system do
you require for the research
 Do you want to tell me anything else?
 What are suggestion on how can the application be used more
effectively?
 Are there any relevant points related to your research that were
missed?
 Do you really require the Cloud service for your research?
These all above are the main part of this chapter. The chapter gives a
normal idea about the project and some requirements. It will be clear about
all the requirements and other functional productivity in the next chapter.
14
RPC
Chapter3:
Requirements
Elicitation for RPC
Chapter includes:
 Collaborative Requirements gathering
 Quality function Deployment
 Usage Scenarios
 Functional Requirements
 Nonfunctional Requirements
15
RPC
This chapter describes the eliciting requirements of “Research Portal on
Cloud”. Elicitation is a task that helps the customer to define what is
required. To complete the elicitation step we face many problems like
problems of scope, problems of volatility and problems of understanding.
However, this is not an easy task. To help overcome these problems, we
have worked with the Eliciting requirements activity in an organized and
systematic manner.
3.0 Eliciting Requirements of Research Portal on
Cloud:
Unlike inception where Q&A (Question and Answer) approach is used,
elicitation makes use of a requirements elicitation format that combines
the elements of problem solving, elaboration, negotiation, and specification.
It requires the cooperation of a group of end-users and developers to elicit
requirements .To elicit requirements we completed following four tasks.




Collaborative Requirements Gathering
Quality Function Deployment
Usage Scenarios
Elicitation work products
3.1 Collaborative Requirements Gathering:
Many different approaches to collaborative requirements gathering have
been proposed. Each makes use of a slightly different scenario .We
completed following steps to do it.
 The meetings were conducted with the researchers, teachers and
students of BIT first batch to understand the requirements. They
were questioned about their requirements and expectations from the
cloud service system.
 They were asked about the problems faced at the time of doing
research.
16
RPC
 Defining mechanism (such as preparing questionnaires and scenario)
which was used for collecting requirements.
 At last we selected our final requirements list from the meetings.
3.2 Quality Function Deployment:
If we want to provide much attention on product requirements analysis we
need conduct the QFD (Quality function deployment) in this respect. QFD
provides three basic form of requirements .These are-
Normal
Requirements
Expected
Requirements
Exciting
Requirements
3.2.1 Normal Requirements:
Normal requirements consist of objectives and goals that are stated during
the meeting with the customers. Normal requirements of our project are:





User friendly interface
Accessible via the Internet.
Authentication system
High availability of instances
Storage service
Help feature to explain what they are looking for
17
RPC
3.2.2 Expected Requirements:
These requirements are implicit to the system and may be so fundamental
that the customer does not explicitly state them .Their absence will be a
cause for dissatisfaction.








Well secured system
Decrease the human work
Provide all possible tools and operating system
The system shall enable the Administrator to change user
passwords.
The system shall allow the user to log in based upon an assigned
login id and password.
The system shall enable administrators to add, edit or delete an
item.
The user interface of the system shall be easy to use and shall
make use of drop-down boxes, radio buttons, and other selectable
fields wherever possible instead of fields that require the user to
type in data.
Password recovery system
3.2.3 Exciting requirements:
These requirements are for features that go beyond the customer's
expectations and prove to be very satisfying when present.
 The user interface should provide appropriate error messages for
invalid input as well as tool-tips and online help
 The user interface should follow standard web practices such that the
web interface is consistent with typical internet applications.
 Offer log in with mobile phone
 Faster download system
 Enrich the portal with eBooks, research related tutorials and Journal.
18
RPC
3.3 Usage Scenarios:
At first user can authenticate in our system by creating an account. If a user
already has an account, user will log in the system with their password and
username. Then our system will permit to use this portal.
Here user will get two available services:
 Storage
 Environment
Storage: In storage, user can upload any file .If uploaded files are available;
user can view files .They also can download and delete files, whenever they
want.
Environment: User will get the following services SaaS (Software as a Service)
 PaaS (Platform as a Service)
 IaaS (Infrastructure as a Service)
SaaS: In SaaS, user will get a list of available software. They select their
needed software and use. If needed software is not existing, request for
these instances.
PaaS: In PaaS, user will get a list of available platform. User selects their
needed platform and use. If needed platform is not existing, request for
these instances.
IaaS: In IaaS, user will get a list of available operating system. User selects
their needed platform and use.
19
RPC
3.4 Functional Requirements
This section describes specific feature of cloud computing. It includes
the input, process, output and all other internal processing task.
Cloud Computing is a new concept on Web Portal base system. In this
system more than one device are connected with internal cloud. Multiple
users can use instances at the same time. The functional requirements are3.4.0 User Interfaces
Service Models:
3.4.1 Cloud Software as a Service (SaaS).
The capability provided to the consumer is to use the provider’s
applications running on a cloud infrastructure. The applications are
accessible from various client devices through a thin client interface such
as a web browser (e.g., web-based email). The consumer does not manage
or control the underlying cloud infrastructure including network, servers,
operating systems, storage, or even individual application capabilities, with
the possible exception of limited user-specific application configuration
settings.
3.4.2 Cloud Platform as a Service (PaaS).
The capability provided to the consumer is to deploy onto the cloud
infrastructure consumer-created or acquired applications created using
programming languages and tools supported by the provider. The
consumer does not manage or control the underlying cloud infrastructure
including network, servers, operating systems, or storage, but has control
over the deployed applications and possibly application hosting
environment configurations.
20
RPC
3.4.3 Cloud Infrastructure as a Service (IaaS).
The capability provided to the consumer is to provision processing,
storage, networks, and other fundamental computing resources where the
consumer is able to deploy and run arbitrary software, which can include
operating systems and applications. The consumer does not manage or
control the underlying cloud infrastructure but has control over operating
systems.
3.5 Non-Functional Requirements
Non-functional requirements are external characteristics of a project
or software. Non-functional requirements are often called qualities of a
system. Other terms for non-functional requirements are "constraints",
"quality attributes" and “quality goals". Non-functional requirements may
exist for the following attributes. Often these requirements must be
achieved at a system-wide level rather than at a unit level.
3.5.1 Performance
Cloud Computing services can optimize the time and performance both.
One can execute any process from anywhere by using cloud. No memory
limitation, no processing delay or software limitation.
3.5.2 Reliability
Cloud system must be reliable to its user.
3.5.3 Availability
First time cloud contains limited user. But it will be extended as a large
system in near future. Instances must be available to our entire user. This is
our main challenge. Instances availability may hamper in pick hour when a
number of user are entire on a same cloud.
21
RPC
3.5.4 Maintainability
There must have a project maintain team. Whole work is observed by the
team member in every time. Project must be maintainable. If one can
include any feather or update the whole project that must be performed
correctly.
3.5.5 Security
Security is a very important issue on cloud computing. Cloud admin team
must confirm the data security of this system. Is also secured that the
passing request is absolute same and executed process must send to the
same client
22
RPC
Chapter4: Software
Requirements Models
Chapter includes:
 Scenario Based Models
 Flow Models
 Class Models
 Behavioral Models
23
RPC
This chapter describes all the requirements for the project
RPC. We know that there are five types of requiremets modeling.
Scenario based model is about understanding the project. Data model
and class based modeling give a clear concept of understanding about
information and data of the project. Finally DFD and Behavioral
model gives the logical information of the project. All models are
describing in the below-
4.1 Scenario Based Models
Introduction: Scenario based modeling of the requirements model are
the first part of the model that is developed. They serve as input for the
creation of other modeling elements. In our project, it is used to understand
how the software will be used.
Scenario:
A normal user wants to use an environment for their research and wants a
storage service where they can upload their work documents. For this
system, user has to go through an authentication system by logging in or
signing up. If they are eligible, they will get use all services.
Here user will get storage and environment services. In storage services
they can upload files, able to view the uploaded files. They can download
and delete files, whenever they want. They can also modify their files.
In environment, user will get SaaS, PaaS and IaaS services. SaaS is a service
where user will get many types of software whose are needed for
researching, such as – Latex, MS word, MS Visio, Visual paradigm, Origin
pro, Gantt Chart etc. PaaS is also a service like SaaS where user will get
necessary platforms, such as – C, C++, Java, C#, Python etc. In IaaS,
operating system services like Windows, Linux are offered for the user.
When any instance is unavailable then the user will request for this
software. Admin panel will create this instance.
Admin can login to the system and modify the Dashboard.
24
RPC
4.1.1 Use Cases: Use cases are used to understand how the software will
be used, what will be the input etc. The use cases for RPC are






Authentication
Storage
SaaS
PaaS
IaaS
Dashboard Modification
4.1.2 Use Case Diagram: In RPC, use case diagrams are used in the
sense that how the users are interacts with the software. The following
diagram is described the overall use case diagram for RPC
Figure: Use case for RPC
25
RPC
Authentication: User login to the RPC by using their user id and password.
Use case Name:
Use case No:
Primary Actor:
Secondary Actor:
Description:
Precondition:
Trigger:
Events:
Priority:
When available:
Frequently of use:
Channel to actors:
Goal in context:
Authentication
1
User(students/ teachers /
researchers)
Institute, Service Provider
User has to login to authenticate
himself/herself
Must take the digital Id
To use environment and store
documents
Checking the validity of users.
Essential, must be implemented
First increment
Many times per day
Via graphical interface
Non validate user not access to the
system
Use case diagram for authentication: In RPC, how user and admin will
login or logout is described by the following model.
Figure: Authentication
26
RPC
System maintenance: Admin can add, delete and modify user from RPC
and the use case diagram is
Figure: System maintenance
Storage: upload files to RPC and download, view files from RPC.
Use case Name:
Use case No:
Primary Actor:
Secondary Actor:
Description:
Precondition:
Trigger:
Events:
Priority:
When available:
Frequently of use:
Channel to actors:
Goal in context:
27
Storage
2
User(students/ teachers /
researchers)
Institute, Service Provider
User can upload, view, download
and delete documents
Must logged in
To storing documents and using for
the next time
If valid user can modify.
Essential, must be implemented
First increment
Many times per day
Via graphical interface
Stored data to use for future
RPC
Use case diagram for storage: User can upload files to RPC and download,
view, and delete files. The diagram is
Figure: Storage
Storage Maintenance: Admin have the ability to add or delete files.
Figure: Storage maintenance
28
RPC
SaaS: User uses the software via the internet such as MS word, Latex etc.
Use case Name:
Use case No:
Primary Actor:
SaaS
3
User(students/ teachers /
researchers)
Institute, Service Provider
User can use software
User have to log in
Provide the software services
Get output through the cloud
services
Essential, must be implemented
First increment
Many times per day
Via graphical interface
Use software without installation
Secondary Actor:
Description:
Precondition:
Trigger:
Events:
Priority:
When available:
Frequently of use:
Channel to actors:
Goal in context:
Use case diagram for SaaS: User login to RPC for using software and
after using exit from the system. The diagram is
Figure: SaaS
29
RPC
PaaS: User uses the platform via the internet such as C, C++, and Java etc.
Use case Name:
Use case No:
Primary Actor:
PaaS
4
User(students/ teachers /
researchers)
Institute, Service Provider
User can use platform
User have to log in
Provide the platform services
Get output through the cloud
services
Essential, must be implemented
First increment
Many times per day
Via graphical interface
Use software without installation
Secondary Actor:
Description:
Precondition:
Trigger:
Events:
Priority:
When available:
Frequently of use:
Channel to actors:
Goal in context:
Use case diagram for PaaS: User login to RPC for using software and
after using exit from the system. The diagram is
Figure: PaaS
30
RPC
IaaS: User uses the infrastructure via the internet such as Linux, Windows
etc.
Use case Name:
Use case No:
Primary Actor:
IaaS
5
User(students/ teachers /
researchers)
Institute, Service Provider
User can use operating system
User have to log in
Provide the operating system
services
Get output through the cloud
services
Essential, must be implemented
First increment
Many times per day
Via graphical interface
Use software without installation
Secondary Actor:
Description:
Precondition:
Trigger:
Events:
Priority:
When available:
Frequently of use:
Channel to actors:
Goal in context:
Use case diagram for IaaS: User login to RPC for using platform and
after using exit from the system. The diagram is
Figure: IaaS
31
RPC
Dashboard Modification: Admin can interact to the system via dashboard.
Use case Name:
Use case No:
Primary Actor:
Description:
Precondition:
Trigger:
Events:
Priority:
When available:
Frequently of use:
Channel to actors:
Goal in context:
SaaS
6
Admin, Institute
User can use software
Admin have to log in
Modify dashboard
Adding new instances or modify
anything
Essential, must be implemented
First increment
Many times per day
Via graphical interface
Modify instances or other parts
whenever it need to do
Use case diagram for dashboard modification: Dashboard can be brand
able depending on the service holder. Admin modify the dashboard due to
their business purposes. The diagram is
Figure: Dashboard modification
32
RPC
4.1.3 Activity Diagram: The activity diagram represents the
actions and decisions that occur as some function is performed. Text based
diagram such as use case may not impart information in a clear and concise
manner. For this reason, graphical model such as activity diagram are used.
So the activity diagram for the use case is as follows
Authentication: First check the availability of user account. If the
account exists, the system takes input. Correct information is required for
logged in. Otherwise the user should retry.
e
Figure: Activity diagram of authentication for RPC
33
RPC
Dashboard Modification: Admin can modify the dashboard. Admin
logged into the system by correct ID and password. If the information is
correct, admin will login to the system and dashboard is viewed. Then
admin have two choice, Environment and storage.
Figure: Activity diagram of dashboard modification for RPC
34
RPC
SaaS: After login to the system, user will request for necessary software.
Then, the system provides the software to the user. After completion, user
leaves the software and exit from the system. User can also see the list of
available software and request for new software which are not available to
the system.
Figure: Activity diagram of SaaS for RPC
35
RPC
PaaS: After login to the system, user will request for necessary platform.
Then, the system provides the platform to the user. After completion, user
leaves the platform and exit from the system. User can also see the list of
available platform and request for new platform.
Figure: Activity diagram of PaaS for RPC
36
RPC
IaaS: After login to the system, user will request for necessary
infrastructure. Then, the system provides the infrastructure to the user.
After completion, user leaves the infrastructure and exit from the system.
User can also see the list of available infrastructure and request for new
infrastructure.
Figure: Activity diagram of IaaS for RPC
37
RPC
Storage: In storage services, user can upload files, they are able to view
the uploaded files. They can download and delete files whenever they want.
They can modify their files.
Figure: Activity diagram of Storage for RPC
38
RPC
4.1.4 Swimlane Diagram:
Swimlane diagram represents the
flow of actions and decisions and indicates which actors perform each. It
represents the flow of activities described by the use case and also
indicates which actor or analysis class has responsibility for the action. In
RPC, to indicate the flow of the use case and responsibility of actors, use
this diagram.
Authentication: To authenticate, check account availability in the
system level and if account exists, the work of sign up is in the interface
level.
Figure: Swimlane diagram of authentication for RPC
39
RPC
SaaS: For checking availability, the system take the responsibility. User
can select and use the software as needed are the responsibility of the user
and here the actor is user. After completion, user can exit from the system.
Figure: Swimlane diagram of SaaS for RPC
40
RPC
PaaS: For checking availability, the system take the responsibility. User
can select and use the platform as needed are the responsibility of the user.
User can see the list of the platform in the interface and has the
responsibility to view the list of platform.
Figure: Swimlane diagram of PaaS for RPC
41
RPC
IaaS: The system take the responsibility for checking availability. User can
select and use the infrastructure as needed are the responsibility of the
user. User can see the list of the infrastructure in the interface and has the
responsibility to view the list of infrastructure.
Figure: Swimlane diagram of IaaS for RPC
42
RPC
Dashboard Modification: Admin can interact with the system via the
dashboard. Dashboard can be brand able depending on the service holder.
Admin can modify the dashboard due to their business purposes.
Figure: Swimlane diagram of dashboard modification for RPC
43
RPC
Storage: Selection of files are the responsibility of the user. User can
upload files to RPC and download, view, and delete files. Admin can add
new user or delete user from the system.
Figure: Swimlane diagram of Storage for RPC
44
RPC
Conclusion: This chapter describes what will be the input or output of
the project. This is used to understand how the user used the software. The
responsibility of the actor and the flow of the analysis class are described
here. The next chapter will describe the activity diagram for the system.
4.2 Data Models
Introduction: A software engineer or analyst defines all data object
that are processed within the system, the relationship between the data
object and other information that is pertinent to the relationships. To find
relationship from one entity to others, E-R diagram is used in RCP.
E-R Diagram: It represents the relationship between the entities to
entity, entity to attributes etc. In RPC, it indicates how one entity are
related to the others.
Figure: E-R diagram for RPC
45
RPC
4.3 Class Based Models:
Introduction: Class based modeling represents the object that the
system will manipulate, the operations that will be applied to the objects to
effect the manipulations, relationships between the objects, the
collaborations that occur between the classes that are defined. To effect the
manipulations, relationships between the objects, these model are used.
Now analyzing the main scenario or the story to get classes:
A normal user wants to use an environment for his research and wants a
storage service where he can upload his work documents. For this system,
user has to go through an authentication system by logging in or signing up.
And if he is eligible only then he will get use all services.
Here user will get storage and environment services. In storage services he
can upload any file, then also able to view the uploaded files. He also can
download and delete any file, if he wants. He can modify his data.
In environment, he will get SaaS, PaaS and IaaS services. SaaS is a service
where user will get many types of software whose are needed for
researching, such as – Latex, MS word, MS Visio, Visual paradigm, Origin
pro, Gantt Chart etc. PaaS is also a service like SaaS where user will get
necessary platforms, such as – C, C++, Java, C#, Python etc. In IaaS, he will
get operating system services like Windows, Linux etc.
When any instance is unavailable, the user will request for this software.
Admin panel will create this instance. User also can create any instance if
he feels very necessary.
Admin can modify the Dashboard. He can add, delete and edit any
instance. He also can create any instance.
Here the probable classes are





User
Admin
Environment
Storage
Authentication
46
RPC












View files
Upload
Download
Service
SaaS
PaaS
IaaS
Software
Platform
Operating System
Instance
Database
4.3.1 Identifying analysis classes and attributes:
Step1: Identifying and categorize all nouns.
Analysis classes manifest themselves in one of the following ways.
1. External entities: User, Admin, SaaS, PaaS, IaaS, Database,
Instance
2. Things: View, upload, download
3. Occurrences Or Events: Service, upload, view, download,
Authentication
4. Roles: Researcher, student
5. Organizational Units: Institute
6. Places: Platform, storage, environment
7. Structures: Environment, Operating System
Step2: Selection of potential Class
Selection Characteristics:






Retained information
Needed services
Multiple attributes
Common attributes
Common operations
Essential requirements
47
RPC
Potential Classes
User
Admin
Storage
Authentication
Login/Sign up
Upload
View/Download
SaaS
PaaS
IaaS
Database
Service
Institute
Characteristics Number that
Applies
Accepted: All apply
Accepted: All apply
Accepted: All apply
Accepted: All apply
Rejected: 3 fails, attribute of
authentication
Rejected: 3 fails, attribute of
Storage
Rejected: 3 fails, attribute of
Storage
Accepted: All apply
Accepted: All apply
Accepted: All apply
Accepted: All apply
Accepted: All apply
Rejected: 4,5,6 fails
Finally the potential classes are:









User
Admin
Authentication
Storage
SaaS
PaaS
IaaS
Database
Service
48
RPC
4.3.2 Class Cards:
Class Name: User
Methods:
Attributes:
ChangePassword( ); String
ID: Bigint
CreateAccount( ); void
Username: String
BlockAccount():void
Password: String
CheckServiceAvailability():void
Name: String
RequestForInstances():void
Type: String
Class Name: Admin
Methods:
Attributes:
ChangePassword( ); String
ID : Bigint
CreateAccount( ); void
Username: String
BlockUser():void
Password: String
ModifyDashboard():void
Name: String
Type: String
49
RPC
Class Name: Authentication
Methods:
Attributes:
SignUp( ); Void
AuthenticationNumber : Bigint
SignIn( ); void
User(Object)
SignOut( );void
DB(Object)
Class Name: Service
Methods:
Attributes:
CreateInstances():void
InstanceName:String
ModifyInstances( ); void
InstanceType: String
ShowAvailability( ); Void
Class Name: Database
Methods:
Attributes:
SetAttribute():void
QueryString: String
GetAttribute(): void
StoreData():void
Cra
50
RPC
4.3.3 Class Responsibility Collaborator Modeling:
CRC modeling provides a simple means for identifying and organizing the
classes that are relevant to system or product requirements. Here it helps
to find the dependencies of the class.
Figure: CRC model for RPC
51
RPC
4.3.4 CRC Card: The combinations of CRC cards are represent the
CRC diagram.
Conclusion: This chapter helps to find the dependency of one class to
other. It also requires for identifying or organizing the class. In data
modeling, how data are stored in database are seen.
52
RPC
4.4 Flow Oriented Models
Data Flow Diagram:
Introduction: In RPC, DFD provide additional insight into system
requirements and flow. It simply takes an input-process-output view of a
system. The purpose of the data flow diagram is to provide a semantic
bridge between users and systems developers.
Level-0 DFD:
Level-1 DFD:
53
RPC
Level-2 DFD:
Conclusion: This chapter describes the flow of one process to other and
defined by the different level. After DFD, evaluate all use cases to fully
understand the sequence of interaction within the system.
54
RPC
4.5 Behavioral Models
4.5.1 Sequence Diagram:
Introduction: Sequence diagram indicates how events cause transitions
from object to object. It is a short hand version of the use case. It represents
key classes and the events that cause behavior to flow from class to class.
SaaS: The sequence diagram for SaaS is
Figure: sequence diagram of SaaS for RPC
55
RPC
PaaS: The sequence diagram for PaaS is
Figure: sequence diagram of PaaS for RPC
56
RPC
IaaS: The sequence diagram for IaaS is
Figure: sequence diagram of IaaS for RPC
57
RPC
Authentication: The sequence diagram for authentication is
Figure: sequence diagram of authentication for RPC
58
RPC
Storage: The sequence diagram for storage is
Figure: sequence diagram of Storage for RPC
59
RPC
Dashboard Modification: The sequence diagram for dashboard
modification is-
Figure: sequence diagram of dashboard modification for RPC
Conclusion: The sequence diagram represents behavior without noting
the classes involved. It represents the behavior, by describing how class
move from state to state.
60
RPC
4.5.2 State Diagram:
Introduction: Two different characterizations of states must be
consider the state of its class as the system performs it function and the
state of the system as observed from the outside as the system performs
the function. Here in RPC, how the class are performs it function are
described.
SaaS: The state diagram for SaaS is
Figure: State diagram of SaaS for RPC
61
RPC
PaaS: The state diagram for PaaS is
Figure: sequence diagram of PaaS for RPC
IaaS: The state diagram for IaaS is
62
RPC
Authentication: The state diagram for authentication is
Figure: State diagram of authentication for RPC
63
RPC
Database: The state diagram for database is
Figure: State diagram of Database for RPC
64
RPC
Storage: The state diagram for Storage is
Conclusion: In this chapter, how class performs their function, how an
object take to make a transition from one active state to other are
described here.
65
RPC
5. Conclusion
The proposed project stands for a Research Portal on Cloud. This
project may reduce time and energy both because user can excess any data
from anywhere in their network.
In our project, we have established a basic understanding of the
problem, the nature of the solution that is desired and the effectiveness of
preliminary communication and collaboration between the stake-holders
and the software team. More studies and communication will help both
side (developer and client) to understand the future prospect of the project.
Our team believes that the full functioning document will help us to define
that future prospect.
…..End….
66
RPC
Download