Pan African Enetwork Project: Course Name: Pgdit
Pan African Enetwork Project: Course Name: Pgdit
OP Sangwan
Copyright Amity University
1
Faculty Profile
M Sc (Computer Science)
M Tech (Computer Science)
CCNA (Cisco certified Network Associate)
CCNA (Cisco certified )
Ph D (CSE) (Thesis Submitted)
Publications
International/ National Journal = 8 (including ACM, ISJKE)
International/ National Conference = 9 (including Springer)
Waterfall Model
Prototype Model
Iterative Enhancement Model
Evolutionary Development Model
Spiral Model
Rapid Application Development (RAD) Model
Waterfall Model
Requirement
Design
Implementation
andunittesting
Integr ationand
systemtesting
Operation &
Maintenance
Prototype Model
It is also known as throw away model.
It is developed as per the current available
requirement.
The code for the prototype model is thrown
away; however the experience gathered from
developing the prototype helps in developing the
actual system.
Prototype Model
Linear model
Rapid
Architectural
design
Detailed
design
Implementation
and unit testing
Integration
and testing
Operation and
Maintenance
9
This model is useful for projects using new technology that is not
well understood. This is also used for complex projects where all
functionality must be delivered at one time, but the requirements are
unstable or not well understood at the beginning.
10
Outline
description
Specification
Initial
version
Development
Intermediate
versions
Validation
Final
version
Spiral Model
Phases of Spiral Model
Planning: Determination of objectives, alternatives and
constraints.
Risk Analysis: Analyze alternatives and attempts to
indentify and resolve the risks involved
Development: Product development and testing
product.
Assessment: Customer evaluation
Copyright Amity University
Spiral Model
13
Prototype is refined
Requirements
Planning
User
Description
Construction
Cut over
14
15
Software Requirements
Analysis and Specification
Requirement Engineering
Requirements describe
What
not
How
Problem Statement
Requirements
Elicitation
Requirement
Engineering
Requirements
Analysis
Requirements
Documentation
SRS
Requirements
Review
Requirement Engineering
Requirement Engineering is the disciplined application of proven principles,
methods, tools, and notations to describe a proposed systems intended
behavior and its associated constraints.
SRS may act as a contract between developer and customer.
State of practice
Requirements are difficult to uncover
Requirements change
Over reliance on CASE Tools
Tight project Schedule
Communication barriers
Market driven software development
Lack of resources
19
Requirement Engineering
Example
A University wish to develop a software system for the student result
management of its PGDIT Programme. A problem statement is to be
prepared for the software
20
Types of Requirements
Known
Requirements
Unknown
Requirements
Undreamed
Requirements
Requirements
Functional
Non-Functional
21
Types of Requirements
Functional requirements describe what the software has to do. They are often called
product features.
Non Functional requirements are mostly quality requirements. That stipulate how well the
software does, what it has to do.
Availability
Reliability
Usability
Flexibility
Maintainability
Portability
Testability
For Users
For Developers
22
Types of Requirements
User and system requirements
User requirement are written for the users and include functional
and non functional requirement.
The user
system requirements are the parts of software
requirement and specification (SRS) document.
23
Types of Requirements
Interface Specification
Important for the customers.
TYPES OF INTERFACES
Procedural
interfaces
(also
Programming Interfaces (APIs)).
called
Application
Data structures
Representation of data.
24
Feasibility Study
Is cancellation of a project a bad news?
As per IBM report, 31% projects get cancelled before they are
completed, 53% over-run their cost estimates by an average of 189% &
for every 100 projects, there are 94 restarts.
25
Feasibility Study
Technical feasibility
Is it technically feasible to provide direct communication
connectivity through space from one location of globe to
another location?
Is it technically feasible to design a programming
language.
26
Feasibility Study
Feasibility depends upon non technical Issues like:
Are the projects cost and schedule assumption realistic?
Does the business model realistic?
Is there any market for the product?
27
Feasibility Study
Purpose of feasibility study
evaluation or analysis of the potential impact of a proposed project or
program.
Feasibility Study
Focus of feasibility studies
How big is the gap between the original cost & schedule
targets & current estimates?
Is the business model for software justified when the
current cost & schedule estimate are considered?
Have the major risks to the project been identified & can
they be surmounted?
Is the specifications complete & stable enough to
support remaining development work?
29
Feasibility Study
Focus of feasibility studies
Have users & developers been able to agree on a
detailed user interface prototype? If not, are the
requirements really stable?
Is the software development plan complete & adequate
to support further development work?
30
Requirements Elicitation
Perhaps
Most difficult
Most critical
Most error prone
Most communication intensive
Succeed
31
Requirements Elicitation
1. Interviews
2. Brainstorming Sessions
3. Quality Function Deployment
Normal Requirements
Expected Requirements
Exciting Requirements
Often Interchanged
But they are different
32
Requirements Elicitation
Types of questions.
1.
2.
3.
4.
33
Requirements Elicitation
5. Possible benefits
6. Satisfied with current policies
7.How are you maintaining the records of previous students?
8. Any requirement of data from other system
9. Any specific problems
10. Any additional functionality
11. Most important goal of the proposed development
At the end, we may have wide variety of expectations from the proposed
software.
34
Requirements Analysis
35
Steps
Develop prototype
(optional)
Model the
Requirements
Finalize the
Requirements
Administrator
Marks Entry
Operator
Subject Information
Entry
Student Information
Entry
Result Management
System
Student Information
Reports generated
Marks Entry
Student performance
Reports generated
37
Process
the
Connect process
Symbol
Name
Source or sink
Data Store
Leveling
Function
A source of system inputs or
sink of system outputs
A repository of data, the
arrowhead indicate net
input and net outputs
to store
Data Dictionaries
Data Dictionaries are simply repositories to store
information about all data items defined in DFD.
Includes :
Name of data item
Aliases (other names for items)
Description/Purpose
Related data items
Range of values
Data flows
Data structure definition
40
Entity-Relationship Diagrams
Entity-Relationship Diagrams
It is a detailed logical representation of data for an organization and uses three
main constructs.
Entities
Relationships
Attributes
Entities
Fundamental thing about which data may be
maintained. Each entity has its own identity.
Entity Type is the description of all entities to which a
common definition and common relationships and attributes
apply.
41
Entity-Relationship Diagrams
Consider an insurance company that offers both home
and automobile insurance policies .These policies are
offered to individuals and businesses.
POLICY
home
Automobile
POLICY
CUSTOMER
individual
businesses
CUSTOMER
42
Relationships
A relationship is a reason for associating two entity types.
Binary relationships
involve two entity types
A CUSTOMER is insured by a POLICY. A POLICY CLAIM is made against a
POLICY.
Insured
by
POLICY
Made
Against
POLICY
CLAIM
43
EMPLOYEE
completes
COURSE
Degree of relationship
It is the number of entity types that participates in that relationship.
Unary
Binary
Ternary
Unary relationship
Is
Married
to
Person
One to One
Employee
Manages
One to many
45
Binary Relationship
EMPLOYEE
Is
assigned
PARKING
PLACE
One to One
PRODUCT
LINE
Contains
PRODUCT
Registers
for
COURSE
One to many
STUDENT
Many to many
46
Ternary relationship
Vendor
Part
Ships
Ware House
Movie
Is
Stocked
as
Video Tape
47
Attributes
Each entity type has a set of attributes associated with it.
An attribute is a property or characteristic of an entity that is
of interest to organization.
Attribute
48
49
Address
Name
Student_ID
Phone_No
STUDENT
Vendors quote prices for several parts along with quantity of parts.
Draw an E-R diagram.
Vendor
Quoteprice
quantity
Parts
price
50
Requirements Documentation
This is the way of representing requirements in a
consistent format
SRS serves many purpose depending upon who is writing
it.
---
written by customer
written by developer
Requirements Documentation
Nature of SRS
Basic Issues
Functionality
External Interfaces
Performance
Attributes
Design constraints imposed on an Implementation
53
SRS Should
-- Correctly define all requirements
-- not describe any design details
-- not impose any additional constraints
Characteristics of a good SRS
An SRS Should be
Correct
Unambiguous
Complete
Consistent
54
Verifiable
Modifiable
Traceable
55
Requirements Documentation
Correct
An SRS is correct if and only if every requirement stated therein is one
that the software shall meet.
Unambiguous
An SRS is unambiguous if and only if, every requirement stated therein
has only one interpretation.
Complete
An SRS is complete if and only if, it includes the following elements
(i) All significant requirements, whether related to functionality,
performance, design constraints, attributes or external interfaces.
56
Requirements Documentatio
(ii) Responses to both valid & invalid inputs.
(iii) Full Label and references to all figures, tables and diagrams in the SRS and
definition of all terms and units of measure.
Consistent
An SRS is consistent if and only if, no subset of individual requirements
described in it conflict.
57
Requirements Documentation
Verifiable
An SRS is verifiable, if and only if, every requirement stated therein
is verifiable.
Modifiable
An SRS is modifiable, if and only if, its structure and style are such
that any changes to the requirements can be made easily, completely, and
consistently while retaining structure and style.
Traceable
An SRS is traceable, if the origin of each of the requirements is clear
and if it facilitates the referencing of each requirement in future development
or enhancement documentation.
58
Requirements Documentation
Organization of the SRS
IEEE has published guidelines and standards to organize an SRS.
First two sections are same. The specific tailoring occurs in section-3.
1. Introduction
1.1
Purpose
1.2 Scope
1.3 Definition, Acronyms and abbreviations
1.4 References
1.5 Overview
59
Requirements Documentation
2. The Overall Description
2.1
Product Perspective
2.1.1 System Interfaces
2.1.2 Interfaces
2.1.3 Hardware Interfaces
2.1.4 Software Interfaces
2.1.5 Communication Interfaces
2.1.6 Memory Constraints
2.1.7 Operations
2.1.8 Site Adaptation Requirements
60
Requirements Documentation
2.2
2.3
2.4
2.5
2.6
Product Functions
User Characteristics
Constraints
Assumptions for dependencies
Apportioning of requirements
3. Specific Requirements
3.1
External Interfaces
3.2
Functions
3.3
Performance requirements
3.4
Logical database requirements
3.5
Design Constraints
3.6
Software System attributes
3.7
Organization of specific requirements
3.8
Additional Comments.
61
Requirements Validation
Check the document for:
Completeness & consistency
Conformance to standards
Requirements conflicts
Technical errors
Ambiguous requirements
62
SRS document
Organizational
standards
Organizational
knowledge
List of problems
Validation
process
Approved actions
63
Distribute
Distribute
SRS
SRS
documents
documents
Read
Read
documents
documents
Organize
Organize
review
review
Revise
Revise
document
document
Follow
Follow up
up
actions
actions
64
Requirements Validation
Problem actions
Requirements clarification
Missing information
find this information from stakeholders
Requirements conflicts
Stakeholders must negotiate to resolve this conflict
Unrealistic requirements
Stakeholders must be consulted
Security issues
Review the system in accordance to security standards
65
Review Checklists
Redundancy
Completeness
Ambiguity
Consistency
Organization
Conformance
Traceability
66
Thank You
Please forward your query
To: [email protected]
CC:
[email protected]
69