spmp online photo gallery
DESCRIPTION
what is online photo gallery? all these questions solved in these document.TRANSCRIPT
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
1
7. FLOW CHART 11
8. DFDS 12
8.1 Context level 12
8.2 Level 1 13
8.3 Data Dictionary 14
9. UML DIGRAMS 15
9.1 Use Case diagram 15
9.2 Class and Object diagram 16
9.3 Sequence diagram 17
9.4 Collaboration diagram 18
9.5 Activity diagram 19
9.6 State diagram 20
9.7 Deployment diagram 21
9.8 Component diagram 22
TABLE OF CONTENTS PAGE NO.
1. INTRODUCTION 2
1.1 Objectives 2
1.2 Major Function 2
2. PROJECT ESTIMATE 4
2.1 Estimation technique used 4
2.2 Effort, Resource, Cost and Project duration estimate 4
3. SCHEDULE 5
3.1 Task Network Representation 5
3.2 Gantt chat 5
3.3 PERT chart 6
4. PROJECT RESOURCE 7
4.1 People/Staff 7
4.2 Hardware and Software 7
4.3 Special resource 7
5. STAFF ORGANIZING 8
5.1 Team Structure 8
5.2 Management reporting 8
6. RISK MANAGEMENT PLAN 9
6.1 Risk Analysis 9
6.2 Risk Identification 10 6.3 Risk Estimation
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
2
1. INTRODUCTION
The SPMP (Software Project Management Plan) is created for the e-Hotel Project. The Purpose of this
document is to ensure that SWOT analysis have properly been done with respect to the cost and benefit
analysis for the Online Photo Gallery project.
1.1 Objectives
Used to store photos for lifetime.
Can be shared with public or private.
Visitors belonging to access category which has access permission "Write" or Read are allowed: to
post or download photos.
1.2 Major Functions
User can download or share photos.
Guest can view photos which marked as public.
User can comment or like any of photos.
Report on Online Photo Gallery:
Online Photo Gallery is an online application, which is used to display and Download photos of users. Users
can register online for being a member in the photo gallery and each user can upload the photo of their photo
under the respective categories. They can host their photo sell for fixed price. Photo lovers have to go to the
photo exhibition to collect their favorite photos. But now-a-days they are not getting enough time to get
surfing websites for downloading his/her favourite photos.
Online Photo Gallery is application software and it is very helpful for the photo lovers and others who want to
know the addresses where this kind of photos will we sold. This application helps the end-users to search their
photos and they can purchase the selected photos. The end-user can also get the information about the photo
exhibition and the respective information about user.
Photo Gallery brings you an opportunity to view online categorized photos at our Online Photo Gallery we
bring you details of all photos. The Online Photo Gallery is updated daily, so the user can view and buy the
latest collection of contemporary photo online from anywhere in the world. You can view and buy the latest
photo collection available at the premium section.
Proposed system is an Image Gallery. According to designate we can create an account. Our proposed system
has the following advantages:
User friendly Interface
Fast access to database
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
3
Less error
Storage Capacity
Some Specifications of project:
User should be able to register and log in.
Once user logged in, his Homepage should be seen.
On Homepage user should see:
o Albums
o Specials
o Menu
o Identification
On clicking any of his album user should see album details and images in particular album.
On clicking any of the image should be shown with greater resolution and user can download image
also.
Image and album should have remove option. On clicking it album or image should be removed from
database (Only by Admin).
Registration: Users can register within a minute and upload their photos. And creates own albums.
Login: Users can login after registration or also login via Facebook or Google+ securely with our
authorization application.
Share: User also shares their photos on Facebook, Twitter, Tumbler and Google+. By clicking on their
buttons.
Privacy: User can publish their photos Private or Public. Private photos only visible to the uploader and
Public visible to all users.
Freeware: Users can download or save picture which shared as public. And feel free to comment or
rate pictures.
Categories: Default pictures categorized in different-different manners such as Games, Nature and
Babies etc.
Platforms: Website also accessible from smart phones and Tablets with compact features.
Premium: Some pictures categorized as specials which guests cant download they have to register
first and then login.
Resolutions: Pictures available in different resolutions such as different for HDTv, Desktops and for
Smart Phones.
User Interface: Online photo gallery website provides users a simplify interface which also provides
features such as search. With the help of search user can easily find his favourite photos.
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
4
2. PROJECT ESTIMATE
2.1 Estimation techniques used
The COCOMO cost estimation model is used by thousands of software project managers, and is based on a study of hundreds of software projects. Unlike other cost estimation models, COCOMO is an open model, so all of the details are published, including:
The underlying cost estimation equations Every assumption made in the model (e.g. "the project will enjoy good management") Every definition (e.g. the precise definition of the Product Design phase of a project) The costs included in an estimate are explicitly stated (e.g. project managers are included, secretaries
aren't)
2.2 Effort, Resource, Cost and Project duration estimate
The basic COCOMO equations take the form: Suppose size is 200 KLOC,
Organic 2.4(200)1.05
= 626 staff-months
Semi-Detached 3.0(200)1.12
= 1,133 staff-months
Embedded 3.6(200)1.20
= 2,077 staff-months
Duration = 75% * 12.1 Months=9.1Months
Effort Adjustment Factor = EAF = 1.34*1.09 * 1.43 = 2.09
Effort = 2.94 * (2.09) * (8)1.0997 = 60.4 Person-Months
Average staffing = (60.4 Person-Months) / (9.1 Months) = 6.7 people
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
5
3. SCHEDULE
3.1 Task network representations
A task network, also called an activity network, is a graphic representation of the task flow for a project. It is sometimes used as the mechanism through which task sequence and dependencies are input to an automated project scheduling tool.
Name February March April
Survey
Requirements
Diagrams Flow charts
DFD diagrams
UML diagrams
Report created
1.2
Requirement Analysis
1.3
Feasibility Study
1.1
Cost Estimated
1.4
Time Duration
1.5
Flowchart 1.7
Risk Analysis
1.6
DFDs 1.8
UML Diagrams
1.9
Finish
H/w and S/w Resources
1.3.1
3.2 Gantt chat
Gantt chart is a special type of bar chart where each bar represents an activity. The bars are drawn along a
time line. The length of each bar is proportional to the duration of time planned for the corresponding activity.
It is mainly used to allocate resources to activities. The resources allocated to activities include staff,
hardware, and software.
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
6
3.3 PERTT Chart A PERT chart is a graphic representation of a project's schedule, showing the sequence of tasks, which tasks
can be performed simultaneously, and the critical path of tasks that must be completed on time in order for
the project to meet its completion deadline.
The PERT chart of this application is:
Requirements
Analysis
2,5,6
Implementation
5,10,15
Feasibility
study
2,4,6
Information
gathered
3,4,5
Flow chart
4,5,6
Finish
10,15,20
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
7
4. PROJECT RESOURCE
These are those resources which are used to develop this online project.
4.1 People/Staff Project managers cannot, and must not, do everything. They must rely on the project team to complete the project work. They are rely on their resources the major one is Human Resource and some others are machines, printers a room for meetings (to what to do or not), Internet connectivity and servers. 4.2 Hardware and Software
Hardware specifications are:
One monitor
One keyboard
One mouse
Hard disk
1GB Hard Disk Space
Software specifications are:
O.S. Platform Windows XP /Vista/7/8/8.1
C.MS. Tool Piwigo
.Net Framework 3.5 or Later
Web Browser like Mozilla Firefox
4.3 Special resource
Additional resources:
Internet
One domain name
Hosting from any Internet domain registrar website.
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
8
5. STAFF ORGANIZING
The staff hierarchy, in which the departments are revenue consumers, and their managers are responsible for activities that support line functions (such as maintenance, designing). While both hierarchies have their own chains of command, a manager may have direct control over staff employees but a staff manager may have no such power over the line employees. In modern practice, however, the difference in the two hierarchies is not so clear-cut and jobs often have elements of the both types of functions. 5.1 Team Structure
Team structure refers to the composition of an individual team or of a multi-team system. Team
structure is an integral part of the teamwork process. A properly structured patient team is an
enabler for and the result of effective communication, leadership, situation monitoring, and mutual
support. A website designer might be working with business managers and network specialists to
create a application for presenting internal management information on sales - both as part of the
same project.
5.2 Management reporting
Management reporting is the process of providing agency management with timely, accurate and
relevant information that is designed to assist the strategic and operational management of an
agency.
Project Manager
System Administrator Technical
Hardware
Software
Maintenance
Enhancements Conversion
Testing
Interfaces
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
9
6. RISK MANAGEMENT PLAN
A Risk Management Plan is a document that a project manager prepares to foresee risks, estimate impacts, and define responses to issues. It also contains a risk assessment matrix. A risk is "an uncertain event or condition that, if it occurs, has a positive or negative effect on a project's objectives."
6.1 Risk Analysis
Risk analysis is a technique used to identify and assess factors that may jeopardize the success of a
project or achieving a goal.
In the project, theres a table where you can analyses the risks:
List the potential risks Assign a probability to each risk (1 is low, 5 is high) Assess the severity should the risk occur (1 is low, 5 is high) Give each risk a score (probability times severity)
6.2 Risk Identification
In the project plan template, theres a table where you can analyses the risks:
List the potential risks Assign a probability to each risk (1 is low, 5 is high) Assess the severity should the risk occur (1 is low, 5 is high) Give each risk a score (probability times severity)
6.3 Risk Estimation
When estimating a project it is important to understand what stage the project is in as this will
determine the level of project estimation accuracy required. For example, if the project is in the
initiation stage, the project estimate may have an accuracy of 50%. Determine the specific effect that
each risk may have on your projects product, schedule, and resource performance. When evaluating these
effects, do the following:
Consider the effect of a risk on the total project rather than on just part of it. Taking one
week longer than you planned to complete an activity may cause you to miss intermediate
milestones (and cause the personnel waiting for the results of that activity to sit idle).
Consider the combined effect of related risks. The likelihood that your schedule will slip is
greater if three activities on the same critical path have a significant risk of delay rather than
just one.
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
10
RISK FACTOR
QUALITATIVE RISK RANKING GUIDELINES
LOW
MEDIUM
HIGH
TECHNOLOGY - Conventional/off-the- shelf
- Extensive previous facility application
- Little or no testing required
- Proven state of the art
- Some previous facility or site application
- Some proof of application testing required
- Unproven/new
- Little or no previous facility or site application
- Extensive proof of principle testing required
- Complex/highly engineered
INTERFACES - Little or no impact from other site programs
- Established and mature interfaces and working relationships used
- Potential impact from other site operations, programs or contractors
- Some new interfaces must be established and managed
- Potential MAJOR impact from other site operations, or contractors
- Multiple and/or complex interfaces required which may include competing objectives
TIME/SCHEDULE - No known schedule constraints
- Predecessor and successor actions are simple and clearly identified and understood.
- No assumptions with regard to performance
- Resources identified, committed and under facility control
- Some schedule constraints exist by won't affect completion date
- Assumptions have been validated
- Multiple schedule constraints/compressed schedule
- Activities developed only to conceptual level (multiple invalidated assumptions)
LABOR - Low to moderate skill
- Readily available
- Gradual buildup
- Moderate/high skill
- Restricted availability
- Phased buildup
- Moderate/high skill
-Severely restricted availability
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
11
7. FLOW CHART:
A flowchart is a graphical representation of decisions and their respective results mapped out in
individual shapes that were first developed by Herman Goldstine and John von Neumann in the
1940's. Flowcharts provide a step-by-step diagram for mapping out complex situations, such as
programming code or troubleshooting problems with a computer. The picture to the right shows an
image from Microsoft Visio, a popular program used to design and create flowcharts and diagrams.
Flow Chart for Online Photo Gallery:
START
Online Photo Gallery
Categories
Albums
Specials
Menu
Identification
Retrieve Information
End
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
12
8. DFDs
DFD (Data Flow Diagram)
A data-flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system. DFDs can also be used for the visualization of data processing (structured
design).
On a DFD, data items flow from an external data source or an internal data store to an internal data store or an external data sink, via an internal process.
Level 0 or Context Level
A System Context Diagram (SCD) is a diagram that defines the boundary between the system, or
part of a system, and its environment, showing the entities that interact with it. This diagram is a
high level view of a system.
Level 0 for Online Photo Gallery:
Member Photo Gallery
0 User
Admin
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
13
LEVEL 1
Level 1 DFDs aim to give an overview of the full system. They look at the system in more detail.
Major processes are broken down into sub-processes. Level 1 DFDs also identifies data stores that
are used by the major processes. When constructing a Level 1 DFD, we must start by examining the
Context Level DFD. We must break up the single process into its sub-processes. We must then pick
out the data stores from the text we are given and include them in our DFD.
Level 1 DFD for Online Photo Gallery
Users
Add Photos
0.1
Create Category
0.2 Change Theme
0.3
Delete Comments
0.4 Post Comments
0.5
Remove Users
0.6
Admin
Like Photos
0.9 Post
Comments 0.8
Add Albums
0.7
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
14
Data Dictionary
A data dictionary is a collection of descriptions of the data objects or items in a data model for
the benefit of programmers and others who need to refer to them. A first step in analyzing a
system of objects with which users interact is to identify each object and its relationship to
other objects.
Admin
Field Name
Data type Constraint Description
Admin_id
Number
Primary key
Admin id, Auto generated
Admin_name
Varchar
Not null
Name of Admin
Password
Varchar2
Not null
Login Password for Admin
Contact_no
Number
Not null
Landline or mobile number
Email_id
Varchar2 Not null
Any email id
User
Field Name
Data type Constraint Description
User_id
Number
Primary key
Admin id, Auto generated
User_name
Varchar
Not null
Name of Admin
Password
Varchar2
Not null
Login Password for Admin
Activation_date
Date
Not null
Starting date
Contact_no
Number
Not null
Landline or mobile number
Email_id
Varchar2 Not null
Any email id
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
15
9 UML DIAGRAMS
The Unified Modeling Language (UML) is a general-purpose modeling language in the field of
software engineering, which is designed to provide a standard way to visualize the design of a
system.
9.1 Use Case diagram A use case is a methodology used in system analysis to identify, clarify,
and organize system requirements.. An actor is a role played by a user with respect to the
system use. It is possible that the same user may play the role of multiple actors. Each actor can
participate in one or more use cases.
Online Photo Gallery
Registration
getprofile
View Gallery
Search By Name
Login
Guest
Admin
Member
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
16
9.2 Class and Object diagram
A class diagram is an illustration of the relationships and source code dependencies among
classes in the Unified Modeling Language (UML). In this context, a class defines the methods
and variables in an object, which is a specific entity in a program or the unit of code
representing that entity. An object diagram in the Unified Modeling Language (UML), is a
diagram that shows a complete or partial view of the structure of a modeled system at a
specific time.
User + Name
+ E-mail
+ PhoneNumber
+ addpost()
+ likepost()
+ commentpost()
Admin
+ Name
+ E-mail
+PhoneNumber
+State
+ editpost() + commentpost() + checkpost() + deletepost() + createcategory() + changetheme()
User
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
17
9.3 Sequence diagram A Sequence diagram is an interaction diagram that shows how processes operate with one another and what is their order. It is a construct of a Message Sequence Chart. A sequence diagram shows object interactions arranged in time sequence. The lifeline indicates the existence of the object at any particular point of time. The rectangle drawn on the lifetime is called the activation symbol and indicates that the object is active as long as the rectangle exists.
Browser Login Dashboard Online Photo Gallery
Login
View site
Login
Add post
update
Delete post
update
Change theme
update
Create Category
update
Success
Update apply
Website Updated
Admin
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
18
9.4 Collaboration diagram
A Collaboration Diagram is a diagram that shows object interactions organized around the objects and their links to each other. Unlike a Sequence Diagram, a Collaboration Diagram shows the relationships among the objects. Sequence diagrams and collaboration diagrams express similar information, but show it in different ways. It is an interaction diagram that shows, for one system event defined by one Use Case, how a group of objects collaborate with one another. Unlike a Sequence Diagram, a collaboration diagram shows relationships among object roles and it does not express time as a separate dimension. Therefore, the messages in a collaboration diagram are numbered to indicate their sequence.
User
Admin
4. verifyLogin() 8. showUserList()
2. showLogin() 5.showOptions()
3. Login() 6. selectOption()
ViewUsersUI
ViewUsers
User Admin
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
19
9.5 Activity diagram
Activity diagrams are graphical representations of workflows of stepwise activities and actions
with support for choice, iteration and concurrency. In the Unified Modeling Language, activity
diagrams are intended to model both computational and organizational processes (i.e.
workflows). Activity diagrams show the overall flow of control.
The below is the Registration activity diagram for Online Photo Gallery website is to provide
details about how new user or admin registration to the website.
[Enter Username and Password]
Get Details
[Submit]
Validate Data
Rejected
Error
Accepted
yes
or no
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
20
9.6 State diagram
A state diagram is a type of diagram used in computer science and related fields to describe the
behavior of systems. State diagrams require that the system described is composed of a finite
number of states; sometimes, this is indeed the case, while at other times this is a reasonable
abstraction. Many forms of state diagrams exist, which differ slightly and have different
semantics.
Modified items need uploaded
New photo to be uploaded
More new photos
AddDiscussionBoardPhoto
UpdateListPhotos
No new discussion photos. Modified items need uploading
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
21
9.7 Deployment diagram
The deployment diagram specifies a set of constructs that can be used to define the execution
architecture of systems that represent the assignment of software artifacts to nodes. Nodes are
connected through communication paths to create network systems of arbitrary complexity.
Nodes are typically defined in a nested manner, and represent either hardware devices or
software execution environments. Artifacts represent concrete elements in the physical world
that are the result of a development process.
Workstation Web Server
Presentation Layer
Database Layer
User
Browser
-
Sumit Kumar (1310013) Software Engineering Lab (BTCS-606)
22
9.8 Component diagram The Component Diagram helps to model the physical aspect of an Object-Oriented software system. It illustrates the architectures of the software components and the dependencies between them. Those software components including run-time components, executable components also the source code components.
Database Server Web Server
Presentation Layer
Database Interface
Web Browser
MySQL Database
Log File
User