SlideShare a Scribd company logo
1 of 28
Software Requirements
Introduction
 Before starting to design a software product, it is extremely important to understand the precise
requirements of the customer and to document them properly. In the past, many projects have
suffered because the developers started implementing something ‘without determining whether
they were building what the customer exactly wanted. Starting development activities with
improperly documented requirements is possibly the biggest mistake that one can commit
during a product development. Improperly documented requirements increase the number of
iterative changes required during the life cycle phases, and thereby push up the development
costs tremendously. They also set the ground for bitter customer-developer disputes and
protracted legal battles. Therefore, requirements analysis and specification is considered to be a
very important phase of software development and has to be undertaken with utmost care. Even
experienced analysts take considerable time to understand the exact requirements of the customer
and to document them. They know that without a clear understanding of proper documentation
of the problem, it is impossible to develop a satisfactory solution. The requirements analysis and
specification phase starts once the feasibility study phase is complete and the project is found to be
financially sound and technically feasible. The goal of the requirements analysis and specification
phase is to clearly understand the customer requirements and to systematically organize these
requirements in a specification document.
Requirement consists of the following two
activities:
1. Requirements gathering and analysis.
2. Requirements specification.
Data Flow
 A data flow model is diagramatic representation
of the flow and exchange of information within
a system. Data flow models are used to
graphically represent the flow of data in an
information system by describing the processes
involved in transferring data from input to file
storage and reports generation.
Data Flow Diagrams (DFD)
 It is a graphical representation of flow of data
through a system. It pictures a system as a network
of functional processes. The basis of DFD is a data
flow graph, which pictorially represents
transformation on data
Object-oriented modeling
 Object-oriented modeling is the process of preparing
and designing what the model’s code will actually
look like. During the construction or programming
phase, the modeling techniques are implemented by
using a language that supports the object-oriented
programming model.
 OOM consists of progressively developing object
representation through three phases: analysis,
design, and implementation. During the initial stages
of development, the model developed is abstract
because the external details of the system are the
central focus. The model becomes more and more
detailed as it evolves, while the central focus shifts
toward understanding how the system will be
constructed and how it should function.
Purpose of Models:
 Testing a physical entity before building it
 Communication with customers
 Visualization
 Reduction of complexity
Types of Models:
There are 3 types of models in the object oriented
modeling and design are: Class Model, State
Model, and Interaction Model.
Class Model
 The class model shows all the classes present in the
system. The class model shows the attributes and
the behavior associated with the objects. The class
diagram is used to show the class model.The class
diagram shows the class name followed by the
attributes followed by the functions or the methods
that are associated with the object of the class.Goal
in constructing class model is to capture those
concepts from the real world that are important to an
application.
State Model:
 State model describes those aspects of objects
concerned with time and the sequencing of
operations – events that mark changes, states
that define the context for events, and the
organization of events and states.Actions and
events in a state diagram become operations on
objects in the class model. State diagram
describes the state model.
Interaction Model
Interaction model is used to show the various
interactions between objects, how the objects
collaborate to achieve the behavior of the system
as a whole.
The following diagrams are used to show the
interaction model:
 Use Case Diagram
 Sequence Diagram
 Activity Diagram
Prototyping
 Prototyping is a process that enables developer to
create a small model of software. The standard
defines prototype as a preliminary form or instance
of a system that serves as a model for later stages
for the final complete version of the system
A prototype may be categorized as
follows:
1. A paper prototype, which is a model depicting
human machine interaction in a form that
makes the user understand how such interaction,
will occur.
2. A working prototype implementing a subset of
complete features.
3. An existing program that performs all of the desired
functions but additional features is
added for improvement.
 Prototype is developed so that customers, users and
developers can learn more about the problem. Thus,
prototype serves as a mechanism for identifying
software requirements. It allows the user
to explore or criticize the proposed system before
developing a full scale system.
Types of Prototype
1. Throw Away Prototype
2. Evolutionary Prototype
Throw Away Prototype
 In this technique, the prototype is discarded once its purpose is fulfilled and the final
system is built from scratch. The prototype is built quickly to enable the user to rapidly
interact with
a working system. As the prototype has to be ultimately discarded, the attention on its
speed, implementation aspects, maintainability and fault tolerance is not paid. In
requirements defining phase, a less refined set of requirements are hurriedly defined and
throw away prototype is constructed to determine the feasibility of requirement, validate
the utility of function, uncover missing requirements, and establish utility of user
interface. The duration of prototype building should be as less as possible because its
advantage exists only if results from its use are available in timely fashion.
Evolutionary Prototype
 In this, the prototype is constructed to learn about
the software problems and their solutions in
successive steps. The prototype is initially developed
to satisfy few requirements. Then, gradually, the
requirements are added in the same prototype
leading to the better understanding of software
system. The prototype once developed is used again
and again. This process is repeated till all
requirements are embedded in this and the complete
system is evolved
According to SOMM the benefits of
developing prototype are listed
 Communication gap between software
developer and clients may be identified.
 Missing user requirements may be
unearthed.
 Ambiguous user requirements may be
depicted.
 A small working system is quickly built to
demonstrate the feasibility and usefulness of
the application to management.
 It serves as basis for writing the specification
of the system
The sequence of prototyping is
seeing in following
On the basis of their functionality, the
requirements are classified into the following
two types:
 Functional Requirements
 Non-functional Requirements
Functional Requirements
 They define the factors like, I/O formats, storage
structure, computational capabilities, timing and
synchronization.
Non-functional Requirements
 They define the properties or qualities of a
product including usability, efficiency,
performance, space, reliability, portability etc.
Problems in SRS
 Complete requirements are difficult to uncover. In recent trends in engineering, the processes are automated
and it is practically impossible to understand the complete set of requirements during the commencement of
the project itself.
 Requirements are continuously generated. Defining the complete set of requirements in the starting is
difficult. When the system is put under run, the new requirements are obtained and need to be added to the
system. But, the project schedules are seldom adjusted to reflect these modifications. Otherwise, the
development of software will never commence.
 The general trends among software developer shows that they have over dependence on CASE tools.
Though these tools are good helping agents, over reliance on these Requirements Engineering Tools may
create false requirements. Thus, the requirements corresponding to real system should be understood and
only a realistic dependence on tools should be made.
 The software projects are generally given tight project schedules. Pressure is created from customer side to
hurriedly complete the project. This normally cuts down the time of requirements analysis phase, which
frequently lead to disaster(s).
 Requirements engineering is communication intensive. Users and developers have different vocabularies,
professional backgrounds and psychology. User writes specifications in natural language and developer
usually demands precise and well specified requirement.
 In present time, the software development is market driven having high commercial aspect. The software
developed should be a general purpose one to satisfy anonymous customer, and then, it is customized to suit
a particular application.
 The resources may not be enough to build software that fulfils all the customer’s requirements. It is left to
the customer to prioritize the requirements and develop software fulfilling important requirements.
Characteristics of SRS
1. Correct
2. Complete
3. Unambiguous
4. Verifiable
5. Consistent
6. Valid

More Related Content

Similar to SE-Lecture-4.pptx

Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptRayonJ1
 
Software Process and Requirement
Software Process and RequirementSoftware Process and Requirement
Software Process and Requirementcricket2ime
 
Software For Software Development Life Cycle
Software For Software Development Life CycleSoftware For Software Development Life Cycle
Software For Software Development Life CycleChristina Padilla
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1Badar Waseer
 
Software Engineering Assignment
Software Engineering AssignmentSoftware Engineering Assignment
Software Engineering AssignmentSohaib Latif
 
Softwareenggineering lab manual
Softwareenggineering lab manualSoftwareenggineering lab manual
Softwareenggineering lab manualVivek Kumar Sinha
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)MuhammadTalha436
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 MuhammadTalha436
 
Lecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxLecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxSeniorUsama
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and designRizwan Kabir
 

Similar to SE-Lecture-4.pptx (20)

3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 
Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.ppt
 
SE-Lecture-2.pptx
SE-Lecture-2.pptxSE-Lecture-2.pptx
SE-Lecture-2.pptx
 
Software process model
Software process modelSoftware process model
Software process model
 
Software Process and Requirement
Software Process and RequirementSoftware Process and Requirement
Software Process and Requirement
 
Software For Software Development Life Cycle
Software For Software Development Life CycleSoftware For Software Development Life Cycle
Software For Software Development Life Cycle
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1
 
Software Engineering Assignment
Software Engineering AssignmentSoftware Engineering Assignment
Software Engineering Assignment
 
Slcm sharbani bhattacharya
Slcm sharbani bhattacharyaSlcm sharbani bhattacharya
Slcm sharbani bhattacharya
 
Softwareenggineering lab manual
Softwareenggineering lab manualSoftwareenggineering lab manual
Softwareenggineering lab manual
 
Software models
Software modelsSoftware models
Software models
 
SE-03.pptx
SE-03.pptxSE-03.pptx
SE-03.pptx
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
Lecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxLecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptx
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and design
 
Software model
Software modelSoftware model
Software model
 
7 5-94-101
7 5-94-1017 5-94-101
7 5-94-101
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
software engineering
software engineering software engineering
software engineering
 

More from vishal choudhary (20)

SE-Lecture1.ppt
SE-Lecture1.pptSE-Lecture1.ppt
SE-Lecture1.ppt
 
SE-Testing.ppt
SE-Testing.pptSE-Testing.ppt
SE-Testing.ppt
 
SE-CyclomaticComplexityand Testing.ppt
SE-CyclomaticComplexityand Testing.pptSE-CyclomaticComplexityand Testing.ppt
SE-CyclomaticComplexityand Testing.ppt
 
SE-Lecture-7.pptx
SE-Lecture-7.pptxSE-Lecture-7.pptx
SE-Lecture-7.pptx
 
Se-Lecture-6.ppt
Se-Lecture-6.pptSe-Lecture-6.ppt
Se-Lecture-6.ppt
 
SE-Lecture-5.pptx
SE-Lecture-5.pptxSE-Lecture-5.pptx
SE-Lecture-5.pptx
 
XML.pptx
XML.pptxXML.pptx
XML.pptx
 
SE-Lecture-8.pptx
SE-Lecture-8.pptxSE-Lecture-8.pptx
SE-Lecture-8.pptx
 
SE-coupling and cohesion.ppt
SE-coupling and cohesion.pptSE-coupling and cohesion.ppt
SE-coupling and cohesion.ppt
 
SE-software design.ppt
SE-software design.pptSE-software design.ppt
SE-software design.ppt
 
SE1.ppt
SE1.pptSE1.ppt
SE1.ppt
 
SE-Lecture=3.pptx
SE-Lecture=3.pptxSE-Lecture=3.pptx
SE-Lecture=3.pptx
 
Multimedia-Lecture-Animation.pptx
Multimedia-Lecture-Animation.pptxMultimedia-Lecture-Animation.pptx
Multimedia-Lecture-Animation.pptx
 
MultimediaLecture5.pptx
MultimediaLecture5.pptxMultimediaLecture5.pptx
MultimediaLecture5.pptx
 
Multimedia-Lecture-7.pptx
Multimedia-Lecture-7.pptxMultimedia-Lecture-7.pptx
Multimedia-Lecture-7.pptx
 
MultiMedia-Lecture-4.pptx
MultiMedia-Lecture-4.pptxMultiMedia-Lecture-4.pptx
MultiMedia-Lecture-4.pptx
 
Multimedia-Lecture-6.pptx
Multimedia-Lecture-6.pptxMultimedia-Lecture-6.pptx
Multimedia-Lecture-6.pptx
 
Multimedia-Lecture-3.pptx
Multimedia-Lecture-3.pptxMultimedia-Lecture-3.pptx
Multimedia-Lecture-3.pptx
 
Multimedia-Lecture-1.pptx
Multimedia-Lecture-1.pptxMultimedia-Lecture-1.pptx
Multimedia-Lecture-1.pptx
 
Multimedia-Lecture-2.pptx
Multimedia-Lecture-2.pptxMultimedia-Lecture-2.pptx
Multimedia-Lecture-2.pptx
 

Recently uploaded

ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 

Recently uploaded (20)

ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 

SE-Lecture-4.pptx

  • 2. Introduction  Before starting to design a software product, it is extremely important to understand the precise requirements of the customer and to document them properly. In the past, many projects have suffered because the developers started implementing something ‘without determining whether they were building what the customer exactly wanted. Starting development activities with improperly documented requirements is possibly the biggest mistake that one can commit during a product development. Improperly documented requirements increase the number of iterative changes required during the life cycle phases, and thereby push up the development costs tremendously. They also set the ground for bitter customer-developer disputes and protracted legal battles. Therefore, requirements analysis and specification is considered to be a very important phase of software development and has to be undertaken with utmost care. Even experienced analysts take considerable time to understand the exact requirements of the customer and to document them. They know that without a clear understanding of proper documentation of the problem, it is impossible to develop a satisfactory solution. The requirements analysis and specification phase starts once the feasibility study phase is complete and the project is found to be financially sound and technically feasible. The goal of the requirements analysis and specification phase is to clearly understand the customer requirements and to systematically organize these requirements in a specification document.
  • 3. Requirement consists of the following two activities: 1. Requirements gathering and analysis. 2. Requirements specification.
  • 4. Data Flow  A data flow model is diagramatic representation of the flow and exchange of information within a system. Data flow models are used to graphically represent the flow of data in an information system by describing the processes involved in transferring data from input to file storage and reports generation.
  • 5.
  • 6.
  • 7. Data Flow Diagrams (DFD)  It is a graphical representation of flow of data through a system. It pictures a system as a network of functional processes. The basis of DFD is a data flow graph, which pictorially represents transformation on data
  • 8.
  • 9. Object-oriented modeling  Object-oriented modeling is the process of preparing and designing what the model’s code will actually look like. During the construction or programming phase, the modeling techniques are implemented by using a language that supports the object-oriented programming model.
  • 10.  OOM consists of progressively developing object representation through three phases: analysis, design, and implementation. During the initial stages of development, the model developed is abstract because the external details of the system are the central focus. The model becomes more and more detailed as it evolves, while the central focus shifts toward understanding how the system will be constructed and how it should function.
  • 11. Purpose of Models:  Testing a physical entity before building it  Communication with customers  Visualization  Reduction of complexity
  • 12. Types of Models: There are 3 types of models in the object oriented modeling and design are: Class Model, State Model, and Interaction Model.
  • 13. Class Model  The class model shows all the classes present in the system. The class model shows the attributes and the behavior associated with the objects. The class diagram is used to show the class model.The class diagram shows the class name followed by the attributes followed by the functions or the methods that are associated with the object of the class.Goal in constructing class model is to capture those concepts from the real world that are important to an application.
  • 14. State Model:  State model describes those aspects of objects concerned with time and the sequencing of operations – events that mark changes, states that define the context for events, and the organization of events and states.Actions and events in a state diagram become operations on objects in the class model. State diagram describes the state model.
  • 15. Interaction Model Interaction model is used to show the various interactions between objects, how the objects collaborate to achieve the behavior of the system as a whole. The following diagrams are used to show the interaction model:  Use Case Diagram  Sequence Diagram  Activity Diagram
  • 16. Prototyping  Prototyping is a process that enables developer to create a small model of software. The standard defines prototype as a preliminary form or instance of a system that serves as a model for later stages for the final complete version of the system
  • 17. A prototype may be categorized as follows: 1. A paper prototype, which is a model depicting human machine interaction in a form that makes the user understand how such interaction, will occur. 2. A working prototype implementing a subset of complete features. 3. An existing program that performs all of the desired functions but additional features is added for improvement.
  • 18.  Prototype is developed so that customers, users and developers can learn more about the problem. Thus, prototype serves as a mechanism for identifying software requirements. It allows the user to explore or criticize the proposed system before developing a full scale system.
  • 19. Types of Prototype 1. Throw Away Prototype 2. Evolutionary Prototype
  • 20. Throw Away Prototype  In this technique, the prototype is discarded once its purpose is fulfilled and the final system is built from scratch. The prototype is built quickly to enable the user to rapidly interact with a working system. As the prototype has to be ultimately discarded, the attention on its speed, implementation aspects, maintainability and fault tolerance is not paid. In requirements defining phase, a less refined set of requirements are hurriedly defined and throw away prototype is constructed to determine the feasibility of requirement, validate the utility of function, uncover missing requirements, and establish utility of user interface. The duration of prototype building should be as less as possible because its advantage exists only if results from its use are available in timely fashion.
  • 21. Evolutionary Prototype  In this, the prototype is constructed to learn about the software problems and their solutions in successive steps. The prototype is initially developed to satisfy few requirements. Then, gradually, the requirements are added in the same prototype leading to the better understanding of software system. The prototype once developed is used again and again. This process is repeated till all requirements are embedded in this and the complete system is evolved
  • 22. According to SOMM the benefits of developing prototype are listed  Communication gap between software developer and clients may be identified.  Missing user requirements may be unearthed.  Ambiguous user requirements may be depicted.  A small working system is quickly built to demonstrate the feasibility and usefulness of the application to management.  It serves as basis for writing the specification of the system
  • 23. The sequence of prototyping is seeing in following
  • 24. On the basis of their functionality, the requirements are classified into the following two types:  Functional Requirements  Non-functional Requirements
  • 25. Functional Requirements  They define the factors like, I/O formats, storage structure, computational capabilities, timing and synchronization.
  • 26. Non-functional Requirements  They define the properties or qualities of a product including usability, efficiency, performance, space, reliability, portability etc.
  • 27. Problems in SRS  Complete requirements are difficult to uncover. In recent trends in engineering, the processes are automated and it is practically impossible to understand the complete set of requirements during the commencement of the project itself.  Requirements are continuously generated. Defining the complete set of requirements in the starting is difficult. When the system is put under run, the new requirements are obtained and need to be added to the system. But, the project schedules are seldom adjusted to reflect these modifications. Otherwise, the development of software will never commence.  The general trends among software developer shows that they have over dependence on CASE tools. Though these tools are good helping agents, over reliance on these Requirements Engineering Tools may create false requirements. Thus, the requirements corresponding to real system should be understood and only a realistic dependence on tools should be made.  The software projects are generally given tight project schedules. Pressure is created from customer side to hurriedly complete the project. This normally cuts down the time of requirements analysis phase, which frequently lead to disaster(s).  Requirements engineering is communication intensive. Users and developers have different vocabularies, professional backgrounds and psychology. User writes specifications in natural language and developer usually demands precise and well specified requirement.  In present time, the software development is market driven having high commercial aspect. The software developed should be a general purpose one to satisfy anonymous customer, and then, it is customized to suit a particular application.  The resources may not be enough to build software that fulfils all the customer’s requirements. It is left to the customer to prioritize the requirements and develop software fulfilling important requirements.
  • 28. Characteristics of SRS 1. Correct 2. Complete 3. Unambiguous 4. Verifiable 5. Consistent 6. Valid