3. June 21, 2017 3
Agenda
•Introduction
- What is project
- Why Project
- Domain choice of Project?
- Domain v/s Platform?
- Project v/s Product
- learning’s of Project
• SDLC
- Project Planning
- Project Estimation
- Software Models
•Case study
- OOAD Development approach for Student registration
4. June 21, 2017 4
Introduction
• What is Project?
•A project is a temporary effort to create a unique product or
service. Projects usually include constraints and risks regarding cost,
schedule or performance outcome..
The future depends on what we do in the present - Mahatma Gandhi
5. June 21, 2017 5
Introduction
• What is Project?
Success is the sum of small efforts, repeated day in and day out.
- Robert Collier
6. June 21, 2017 6
Introduction
• Why Project?
• Understand academic concepts in practical manner
The theoretical concepts are volatile and imaginary.
-This is Real and practical experience.
It helps to learn the many more tools and packages,
which are old and new and also current running tools.
It teaches about the team work and how we have to
interact with our teammates.
This is the basic step or foundation to enter into the
Industry.
I can not do everything, but I can do something. I must not fail to do the
something that I can do -Helen Keller
7. June 21, 2017 7
Project Overview
• Domain choice of the project ?
The difference between a successful person and others is not a lack of
strength, not a lack of knowledge, but rather a lack of will.-Vince Lambardi
8. June 21, 2017 8
Introduction
• Domain v/s Platform ?
Domain Platform
It is a field study that
defines a set of common
requirement Terminology
and functionality for any
software program
constructed to solve a
problem in the area of
computer programming.
EX: PLM, CRM, RETAIL
A platform is a “Blue print for
the evolution of popular
software or specification.”
It depends a standard around
which a system can be
developed.
EX: Java platform
.Net platform
People rarely succeed unless they have fun in what they are doing.-Dale
Carnegie
9. June 21, 2017 9
Introduction
• Project v/s Product ?
Do what you can, with what you have, where you are. -Theodore Roosevelt
10. June 21, 2017 10
Introduction
• Project Learning’s ?
Anyone who has never made a mistake has never tried anything new.
-Albert Einstein
11. June 21, 2017 11
Excursion of Project -SDLC
In Earlier Days,
A person who sacrificed his sleep,
forgot his family,
forgot his food,
forgot laughter were called “SADHU”
But now they are called…
-Software Engineer
12. June 21, 2017 12
SDLC
• What is Project Planning?
•The proposal will include the general time and work schedule for the
project. This must to give a clear and precise indication of all that
involved in doing the project.
Husband - hey dear, I am logged in.
Wife - would you like to have some snacks?
Husband - hard disk full.
13. June 21, 2017 13
SDLC
• Project Estimation?
• Prediction of duration/resource/cost to complete
project
• Function point analysis
• COCOMO
• Parametric Estimation
• Wideband Delphi
• SLIM
• Fibonacci series estimation in Agile so on
Wife - have you brought the saree.
Husband - Bad command or file name
14. June 21, 2017 14
SDLC
• Function Point Analysis?
• It is designed to estimate and measure the time, and thereby the
cost, of developing new software applications and maintaining existing
software applications.
• It was developed by A.J. Albrecht of the IBM Corporation in the
early 1980s
• Function Point measured in term of
• Inputs
• Outputs
• Files
• Inquires
• Interfaces
Wife -but I told you about it in morning
Husband -erroneous syntax, abort, retry,
cancel.
15. June 21, 2017 15
SDLC
• Acronyms
FP: Function Point
ILF: Internal Logical File.
EIF: External Interface file
EI : External Inputs
EO: External Outputs
EQ: External Enquiries
RET: Record Element Type
DET: Data Element Type
FTR: File Type Reference
GSC: General System Characteristic
VAF: Value Added Factor
LOC: Line of code
Wife -hae bhagwan !forget it where's your salary.
Husband - file in use, read only, try after some time.
16. June 21, 2017 16
SDLC
• Five Major Components?
•Data Sections
• ILF(Internal Logical Files)
• EIF(External Interface Files)
•Transaction Sections
• EI(External Inputs)
• EO(External Outputs)
• EQ(External Inquires)
Wife - at least give me your credit card, I can do some
shopping.
Husband - sharing violation, access denied.
17. June 21, 2017 17
SDLC
• Data section:
Data section is further divided into:
1. Internal Logical Files (ILF’s) –
a user identifiable group of logically related data
that resides entirely within the applications boundary and is
maintained through external inputs.
2. External Interface Files (EIF’s) –
a user identifiable group of logically related data
that is used for reference purposes only. The data resides
entirely outside the application and is maintained by another
application. The external interface file is an internal logical
file for another application.
Wife - i made a mistake in marrying you.
Husband - data type mismatch.
18. June 21, 2017 18
SDLC
Transaction Section:
Transaction section uses data section, that is, it
maintains information of ILF and EIF. Excuse me for the short
acronyms I am using everywhere, like the ILF and EIF there's
acronym list at top for everything. All the down 3 components
adds, modifies, deletes ,retrieves or process information
contained in ILF and EIF so are termed as Transaction Section.
1.External Inputs:
It is an elementary process in which data crosses the
boundary from outside to inside. This data may come from a data
input screen or another application. The data may be used to
maintain one or more internal logical files.
Wife - you are useless.
Husband - by default.
19. June 21, 2017 19
SDLC
2. External Outputs (EO):
It is an elementary process in which derived data passes across
the boundary from inside to outside. Additionally, an EO may update
an ILF.
3. External Inquiry (EQ):
It is an elementary process with both input and output components
that result in data retrieval from one or more internal logical files and
external interface files.
The input process does not update any Internal Logical Files, and the
output side does not contain derived data. The graphic below
represents an EQ with two ILF's and no derived data
Wife -who was there with you in the car this morning?
Husband - system unstable press ctrl, alt, del to
Reboot.
20. June 21, 2017 20
SDLC
General System
Characteristic
Brief Description
1. Data
communications
How many communication facilities are there to
aid in the transfer or exchange of
information with the application or system?
2. Distributed data
processing
How are distributed data and processing
functions handled?
3. Performance Was response time or throughput required by
the user?
4. Heavily used
configuration
How heavily used is the current hardware
platform where the application will be
executed?
5. Transaction rate How frequently are transactions executed daily,
weekly, monthly, etc.?
6. On-Line data entry What percentage of the information is entered
On-Line?
7. End-user
efficiency
Was the application designed for end-user
efficiency?
21. June 21, 2017 21
SDLC
8. On-Line update How many ILF’s are updated by On-Line
transaction?
9. Complex processing Does the application have extensive logical
or mathematical processing?
10. Reusability Was the application developed to meet one
or many user’s needs?
11. Installation ease How difficult is conversion and installation?
12. Operational ease How effective and/or automated are start-
up, back-up, and recovery procedures?
13. Multiple sites Was the application specifically designed,
developed, and supported to be installed
at multiple sites for multiple
organizations?
14. Facilitate change Was the application specifically designed,
developed, and supported to facilitate
change?
22. June 21, 2017 22
SDLC
All the GSC have ratings from 0 to 5. So, the VAF formulae is something
like this VAF = 0.65 + ((sum of all GSC factor)/100).
Wife - what is the relation between you & your
Receptionist?
Husband - the only user with write permission
23. June 21, 2017 23
SDLC
Steps for coming out with a FP
• Counting the ILF, EIF, EI, EQ, RET, DET, FTR (this is basically all
sections discussed above): This whole FP count will be called as
"unadjusted function point
• Then put rating values 0 to 5 to all 14 GSC. Adding total of all 14 GSC to
come out with total VAF. Formula for VAF = 0.65 + (sum of all GSC
factor/100).
• Finally, make the calculation of Adjusted function point. Formula: Total
function point = VAF * Unadjusted function point.
• Make an estimation how many function points you will do per day. This is
also called as "Performance factor".
• On basis of performance factor, you can calculate Man/Days.
Wife - what is my value in your life?
Husband - unknown virus detected.
24. June 21, 2017 24
SDLC
Rating Tables:
•EI Rating Table
1.Data Elements
1.FT
R
1 to 4 5-15 >15
Less than 2 3 3 4
2 3 4 6
>2 4 6 6
• EO Rating Table
Data Elements
FTR 1 to 5 6-19 >19
< 2 4 4 5
2 or 3 4 5 7
>3 5 7 7
25. June 21, 2017 25
SDLC
• EQ Rating Table
Data Elements
FTR 1 to 5 6-19 >19
< 2 3 3 4
2 or 3 3 4 6
>3 4 6 6
•ILF Rating Table
Data Elements
RET 1 to 19 20-50 51 or more
1 RET 7 7 10
2 to 5 7 10 15
>6 10 15 15
26. June 21, 2017 26
SDLC
•EIF Rating Table
Data Elements
RET 1 to 19 20-50 51 or more
1 RET 5 5 7
2 to 5 5 7 10
>6 7 10 10
Wife - do you love me or your computer?
Husband - Too many parameters.
27. June 21, 2017 27
SDLC
Simple Customer Project
This is a simple project requirement where we are supposed
only to do the customer form and with address details of it. Following is the
screen.
There are 2 ILFs in the above screen:
1. The customer ILF.
2. The Customer Address ILF.
• There are no EIFs in the above form
Wife - i will go to my dad’s house.
Husband - program performed illegal
operation, it will Close.
28. June 21, 2017 28
SDLC
ILF Customer
Description Number of DET Number of RET
There are total 10 DETs, all add and update buttons,
even the credit check button, the address list box,
check box active, all text boxes.
There is only one RET, the customer addresses. Note i
have not included the credit check as RET as they
are not Sub-elements (Child elements of Customer
ILF).
10 1
So according to the above ILF ranking table Total function 7
EI Customer
Description Number of DET Number of FTR
There are total 10 DETs, all add and update buttons,
even the credit check button, the address list box,
check box active, all text boxes.
There are 2 FTRs, one is the address and the second is
the credit card information.
10 2
Referring ranking table above Total FP 4
29. June 21, 2017 29
SDLC
EO Customer
No EO for this screen. As Customer system is not sending any
information to external system which will add or update the
external system.
EQ Customer
No EQ for this screen. At this moment there is no reports section
here. Please note the display of customer addresses is not
counted as EQ.
Section Name Function Point Count
ILF Customer 7
ILF Customer Address 7
EIF credit card information 5
EI Customer 5
Total Unadjusted Function Points
(UAF)
24
30. June 21, 2017 30
SDLC
General System Characteristics Value(0-5)
Data communications 1
Distributed data processing 1
Performance 4
Heavily used configuration 0
Transaction rate 1
On-Line data entry 0
End-user efficiency 4
On-Line update 0
Complex processing 0
Reusability 3
Installation ease 4
Operational ease 4
Multiple sites 0
Facilitate change 0
Total 22
31. June 21, 2017 31
SDLC
So using formulae:
Value added Factor (VAF):
VAF = 0.65 + [ (Ci) / 100]
VAF = 0.65 + [(sum of all GSC factor)/100]
. = 0.65 + (22/100)
= 0.87.
This factor affects the whole FP like anything, be very particular with
this factor. So now, calculating the
FP = VAF * UAF;
Total FP = Value added Factor * Unadjusted FP
FP = 0.87 * 24
= 20.88
= rounded to 21 FP.
Wife - I will leave you forever.
Husband -close all programs and log out for
another User.
33. June 21, 2017 33
SDLC
Waterfall Model
• Requirements – defines needed
information, function, behavior,
performance and interfaces.
• Design – data structures, software
architecture, interface
representations, algorithmic details.
• Implementation – source code,
database, user documentation,
testing.
Wife -it is worthless talking to you.
Husband -shut down the computer.
34. June 21, 2017 34
SDLC
V-Shaped SDLC Model
• A variant of the Waterfall that
emphasizes the verification and
validation of the product.
• Testing of the product is
planned in parallel with a
corresponding phase of
development
35. June 21, 2017 35
SDLC
Spiral SDLC Model
Wife - I am going
Husband -Its now safe to turn off your computer.
36. June 21, 2017 36
Excursion of Project- Design
and Code
37. June 21, 2017 37
Case study
•OOAD -SDLC Process?
• Requirement Analysis.
Use case diagram
Context diagram
• Analysis
Use case diagram.
Analysis Class diagram
• System Design
Subsystems
Overall interaction:
Sequence Diagram/ Collaboration diagram /Activity Diagram
38. June 21, 2017 38
Case study
• Requirement Analysis.
Use case diagram
Context diagram
•Object Design.
Object Modeling :Class Diagram
Dynamic Modeling : State Chart Diagram
Functional Modeling Data flow Diagram
•Object Mapping with Database
•Implementation: Java
•Deployment: Deployment diagram
•Testing
39. June 21, 2017 39
Requirement Analysis
• Requirement Analysis.
The software to be designed is a program that can be used to maintain a student registration
process. The system should be distributed in nature. it should process following functionalities.
. Authentication
. Administrative Process
. Course Catalogue
. Admission Process
. Student Evaluation
. Registration Of Subjects
. Expected Reports
40. June 21, 2017 40
Analysis
• Analysis : Use Cases for a Student Registration Process
41. June 21, 2017 41
Analysis
• Analysis : Use Cases for a Student Registration Process
Course Catalogue
Use Case: add/edit course, add/edit subject,add/edit fee structure and save max
marks defined
Description:
the official person should allow to add course, list of subjects and fee structure
defined for the course and also maximum marks alloted for each subject.
Use-case Diagram:
42. June 21, 2017 42
Analysis
• Analysis : Use Cases for a Student Registration Process
Course Catalogue
Pre condition: NA
Post condition: Course and Subjects are available
Flow of Events:
Primary Flow:
Official Enter Degree
Add/edit new course for each degree and subjects for each course
Save maximum marks defined for each course
Alternate Flow: These details can be directly saved through backend
43. June 21, 2017 43
Analysis
• Analysis : Use Cases for a Student Registration Process
Course Catalogue
Pre condition: NA
Post condition: Course and Subjects are available
Flow of Events:
Primary Flow:
Official Enter Degree
Add/edit new course for each degree and subjects for each course
Save maximum marks defined for each course
Alternate Flow: These details can be directly saved through backend
44. June 21, 2017 44
Analysis
• Analysis : Use Cases for a Student Registration Process
Admission Process:
Use Case: Save/Edit Register to Course, save/edit acadamic info, save/edit personal info of student
and also payment info.
Description:
In the admission process, first student submit all his record with fee amount. The fee amount can
be paid as Cash, credit card or cheque. Then Registration process begins by validating his/her
eligibilty. validation of eligibilty involves his previous record verification along with fee paid for the
course. If the student find eligible, his/her personal and as well as academic information saved.
Finally he will get registerd to course. Now, he will be the registered student for the 'XYZ'
institute.
Usecase Diagram:
45. June 21, 2017 45
Analysis
• Analysis : Use Cases for a Student Registration Process
Admission Process:
46. June 21, 2017 46
Analysis
• Analysis : Use Cases for a Student Registration Process
Admission Process:
Pre condition: Student should have previous records and eligible to pay fee
Post condition: Registered Student
Flow of Events:
Primary Flow:
Registration process starts by saving Student personal/acadamic information by clerk
Clerk, Obtain Fee for the course from student and save the details
Payment may be through Cash or Card or Cheque
At the end of the Process, Student will be having Rollnum and as a student of particular department
Alternate Flow: In case, If he/she not paid fee or find in-eligible in previous submited record, the
person cannot be registered
47. June 21, 2017 47
Analysis
• Analysis : Use Cases for a Student Registration Process