0% found this document useful (0 votes)
28 views

SDLC

Uploaded by

Bipin Aryal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views

SDLC

Uploaded by

Bipin Aryal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 99

SDLC

(System Development Life


Cycle)
System
• The English word “SYSTEM” is Derived from the
Greek word “SYSTEMA” which means an
organized relationship among component.
• The collection of components or elements that
work together to perform specific task is called
system.
• The collection of units like input process and
output to perform specific task is known as
system.
Block Diagram of Automated System
Information
• The organized collection of processed data is
an information.
• Meaningful processed output of any computer
system is an information.
Information System
• The Computerized Information System is an
Organized set of Hardware, software and
different people to transform given data
resources in to meaningful and useful
information for the end user.
• Information system is interaction between user
and the machine which gathers data and given
information under control of the user.
Types of Information System
• Office Support System(OSS)
• Transaction Processing System(TPS)
• Management Information System(MIS)
• Decision Support System(DSS)
• Executive Information System(EIS)
Fig:-pyramid of information system
Reasons for SDLC
• The size of organization becoming larger due to
rapid rate of industrial development.
• Computer based processing enables the same data
to be processed in many ways based on needs.
• As the volume of data has increased and the
variety of information and their timeliness is now
of great importance
• Organization are distributed with many branches.
SDLC
• Introduction
SDLC is an Organized way of building an
Information System. SDLC defines a sequence of
task that must be carried out to build a new
System.
SDLC is a set of activities that Analyst, Designers
and User Carryout to Develop and Implement an
Information System.
SDLC(System Development Life Cycle)
System Study
• It involves studying a procedure or business in
order to identify its goals and purposes and
create systems and procedures that will
achieve them in an efficient way.
• Use cases are a widely used systems analysis
modelling tool for identifying and expressing
the functional requirements of a system.
Feasibility Study
• Cost Feasibility
• Time(Schedule) Feasibility
• Behavioral Feasibility
• Legal Contractual Feasibility
• Technical Feasibility
• Environmental Feasibility
• Economical Feasibility
• Operational Feasibility
• Management Feasibility
• Social Feasibility
System Analysis
• Systems Analysis. It is a process of collecting and
interpreting facts, identifying the problems, and
decomposition of a system into its components.
• System analysis is conducted for the purpose of
studying a system or its parts in order to identify
its objectives.
• It is a problem solving technique that improves the
system and ensures that all the components of the
system work efficiently to accomplish their
purpose.
System Analysis Specifications
• Goals and objectives of proposed system.
• Fundamental actions that must take place in the
software.
• Output to be produced.
• Input to be used.
• Processes to be performed.
• Interface to be provided.
• Performance requirement to be met.
• Organizational and other Constrain to be met.
Who is System Analyst???
• System Analyst is a chief Person in System
Development team who Analyzes and Design
new computerized Information System.
• System Analyst analyzes the Problems, Plan
Solution, Recommends Software and System,
and co-ordinates and Guides all other member
of Development team to meet Business
Requirement
System Analyst
• Role
Change Agent
Investigator and Motivator
Architect
Psychologist
Communicator
Expert
Intermediary and Diplomat
Responsibility of System Analyst
• Responsibility
Defining Requirements
Prioritizing Requirements
Analysis and Evaluation
Solving Problems
Drawing up Functional Specifications
Designing System
Evaluation system
Quality of System Analyst
• Knowledge of Organization
• Technical Knowledge
• Inter-Personal Communication Skill
• Character and Ethics
• Problem Solving Skill
1. Defining and Analyzing Problem
2. Consider and Evaluate many alternative
3. Choose best Alternative
• System Analysis and Design Skill
System Design Approach
• Top Down Approach
• Bottom up Approach
Top Down Methodology
• Top down is a system design style; the traditional
procedural languages use this methodology, inn which
design begins by specifying complex pieces and then
dividing them on to successively smaller pieces.
• The technique for designing a system using top down
methods is to write a main procedure that names all
the major functions it will need.
• Later, the programming teams looks at the
requirement of each of those functions and the
process is repeated.
• These compartmentalized sub-routines eventually will
perform actions so simple they can be easily and
concisely coded.
• When all the various sub-routines have been coded the
program is ready for testing.
Top down features
• Separating the low level work from the high level
abstractions leads to modular design.
• Fewer operating error(to reduce errors, because each
module has to be processed separately so
programmers gets large amount of time for
processing)Much less time consuming(Each
programmer evolves in a part of the big project.)
• Very optimized way of processing(each programmer
has to apply their own knowledge and experience to
their parts(module), so the project will become an
optimized one.)
• Easy to maintain(if an error occurs in the output, it is
easy to identify the error generated from which
module of entire program.
Bottom Up approach
• In bottom up approach the individual base elements of the
system are first specified in detail.
• These elements are then linked together to form larger sub
systems, which then in turn are linked, sometimes in many
levels, until a complete top level system is formed.
• This strategy often resembles a “seed” model, where by the
beginnings are small, but eventually grow in complexity and
completeness.
• Object oriented programming(OOP) is a programming
paradigm that uses “Objects” to design applications and
computer programs.
• This bottom up approach has one weakness that Good
intuition is necessary to decide the functionality that is to
be provided by the module.
• If a system is to be built from existing system, this approach
is more suitable as it starts from existing modules.
Bottom Up approach features
• Benefits are realized in the early phases.
• we can replace many manual processes with
early automation.
• Earlier returns on investments.
• High visibility of organizational changes.
• Higher impact to organization.
• Highly secured.
System Design
• It is a process of planning a new business
system or replacing an existing system by
defining its components or modules to satisfy
the specific requirements.
• Before planning, you need to understand the
old system thoroughly and determine how
computers can best be used in order to
operate efficiently.
Types of Design
• Logical Design pertains to an abstract representation of
the data flow, inputs, and outputs of the system. It
describes the inputs (sources), outputs (destinations),
databases (data stores), procedures (data flows) all in a
format that meets the user requirements.
• Physical Design Physical design relates to the actual input
and output processes of the system. It focuses on how
data is entered into a system, verified, processed, and
displayed as output.
• Architectural Design It is also known as high level design
that focuses on the design of system architecture. It
describes the structure and behavior of the system. It
defines the structure and relationship between various
modules of system development process.
• Detailed Design follows Architectural design and focuses
on development of each module.
Physical Design consists of the
following steps:
• Specifying the input/output media, designing
the database, and specifying backup
procedures.
• Planning system implementation.
• Devising a test and implementation plan, and
specifying any new hardware and software.
• Updating costs, benefits, conversion dates, and
system constraints.
System Development
• After designing a system then next step is to
convert in to the program. This process is
called the system development.
• Flowchart, algorithm, pseudo codes, DFD,
context diagram, E-R diagram are outlining the
procedure to develop the system.
• Now we are ready to code the instruction that
controls the computer during processing.
• Programming language is choose as per the
system analyst recommendation.
System Development contd…
# Process of system development
• Convert logical structure in to programs in
programming language.
• Database is created.
• User operational documents are written.
• User are trained.
• The internal documents are prepared.
System Testing
• System testing is an investigation conducted to
provided stakeholders with information about the
quality of product or service under tests.
• system testing also provides an objective,
independent view of the software to allow the
business to appreciate and understand the risk of
software implementation.
• Test techniques includes but not limited to, the
process of executing a program or application with
the intent of finding software bugs.
Software testing contd..
• System testing can also be stated as the
process of validating and verifying that a
software/program/application/product:
1. System meets the business and technical
requirements as per designing procedure.
2. System works as expected.
3. System can be implemented with the same
characteristics.
Software testing contd..
• Some testing methords as follows…
1. White box/glass box testing: this testing of
software is predicted on close examination of
procedural details. logical paths through the
software and collaboration between components
are tested by providing test case that exercise
specific set of conditions or loop. This testing used
when the tester has access to the internal
structure and algorithms including the codes that
implement these.
Software testing contd..
2. Black box testing: This testing treats the
software as a black box without any
knowledge of internal details. this method
includes : equivalent partitioning, boundary
value analysis, specification based testingetc.it
is also a entire system based testing that test
the functional behavior of the system.
Software testing contd..
• Others:
1. Unit testing: in this testing, each and every
individual units are tested individual testing to
ensure that they as working as per design
specification. In this testing the tester must
have a good detail design knowledge about
the unit he is testing on.
Software testing contd..
2. Integrated testing: This testing is carried out
generally after unit, that insure whether the
same unit or module working and
coordinating with the other module or unit
which is inter linked with each other or not.
So this testing is done after integrating the
inter-related units together to test the
behaviour of units after integration.
Software testing contd..
3. System testing: this testing is done after
integrating testing. After testing the behavior
of the units working as per design
specification the all integrated units are
connected together to form the entire system
and then testing individual integrated units
and individual units to find their behavior and
co-ordination among each other,
System Implementation
• Implementation involves testing the involve
system, converting from old system to new
one and training the user.this phase consist of
implementation of the system in to production
environmentand the resolution of problem
identified in testing phase. The new system
installed and operated with the old system
until it has been checked out.then the old
system is removed from theoperation and
newsystem takes thereafter.
Implementation category..
1. Direct Implementation: with the old system is
stopped and new system comes in to effect
but such implementation is very hazardous
because the end user might not have
sufficient knowledge to interact to the new
system. This type of implementation are
generally done for small sized system or the
system that do not have chance to loss the
costlier information.
Implementation category..
2. Parallel Implementation: In which old system
and new system goes side by side i.e.
paralelly. This sort of implementation is
effective because we can test the new system
by working without loosing the valuable data
as well as let the end user to be usual to the
new system. After ensuing that the user got
usual to the new system as well as the system
is up to date so the break through is done by
removing old system completely.
Implementation category..
3. Phased Implementation: In this, new system is
introduced partially one after another. This is
merely a good idea because we can correct
out our error efficiently so as to build a robust
system that we can check the mistake in each
component of the system and if it occurs we
can correct immediately. Therefore we can
introduce whole robust system effectively and
efficiently.
Implementation category..
4. Pilot implementation: In which new system is
installed for a few users, who evaluate and
help decide whether it is suitable for rest of
the system to implement or not. This method
is handy for new products, as it ensure
functionality at a level that can perform in real
operation.
System Maintenance
• When the system is implemented,
maintenance and modification begin. Like any
system, there is ageing process that required
periodic maintenance of hardware and
software if new system is contradict with
design specification, then changes have to be
made. The software and hardware also
required periodic maintenance so as to keep in
tune with design specification and to innovate
new idea in to the system.
System Maintenance contd..
• The content of the review will include:
1. Objective met
2. Cost
3. Performance
4. Standards
5. recomendation
System Maintenance contd..
• Types of maintenance:
1. Corrective Maintenance : It corrects the
runtime errors during the operation.
2. Adaptive Maintenance: It modify or add new
features in the system according to the
environmental changes.
3. Perfective Maintenance: It makes the system
perfect, up to date and improve the life of
system.
Documentation
• Documentation is not a separate stage, it requires
throughout the stages in the development process. It
consist of writing description and procedure about the
software. It consists of detail description about
software requirements specifications, feasibility
reports, software designing report, description about
input-output and processing mechanism, source
codes, comments, mannuals, guides, and effective
help desk. Moreover the documentation should
describe everything you have done sofar. it consist the
limitation of the software; demo to describe how to
run the software and the minimum requirements in
order to run smoothly
Importance of Documentation
• It is easy to remember the program logic and
instructions for the programmer during
programming.
• It helps to solve the best way solution.
• For the future reference to maintenance and
modify.
• Effective and easy use for the user.
Why documentation needed?
• It is means for transfer knowledge and detail
about description of the system.
• To help corporate audits and other
requirements of the organization.
• Needed for IT infrastructure management and
maintenance.
• Needed for migration to a new software
platform.
Types of Documentation
1. Internal Documentation : it is used by the system
analyst and the programmer during development
process . it is very useful for the development period
and also useful in future for the modification and
maintenance of the software. Example of internal
documentation
• SRS(System requirement specification)reports
content the detail description about actual
requirement and feasibility description about the
total benefits for the organization with effective
solution of right problem.
• Software design report:consist of logical as well as
physical design report.it consist the different tools
andtechniques use to solve the problem.
Types of Documentation contd..
• Source code and comments of the software
itself a part of document for the programmer
and comments are also used in the program. it
also includes Documentation for testing and
verification and maintenance.
External Documentation
• It is used by the user During the running time .
of the software. It includes the detail
Description in terms of manual, guide and help
files. It mainly deals with, How to use the
software effectively.
System Development Model
• Basically there are four different model of
SDLC.
1. Waterfall Model.
2. Prototype model.
3. Spiral model.
4. Agile Model
Water fall Model
• The model is sometime called as classical model.
• Waterfall model is a systematic and Sequential Model
to develop software that begins with customer
specification requirement progress through planning,
Modeling and construction. It is only appropriate if all
requirements are known.
• It is oldest type of model for software engineering.
• This takes the fundamental progress activity of
specification, Development, validation and evaluation
and represents them as separate progress phase such
as requirements specification, software design,
implementation, testing and so on.
Water fall Model
Requirements
Analysis and
Definition

System Design

Development

Testing

Maintenance
and
Implementation
Waterfall Model
1. Requirement Analysis and Definition: it is the first
step of water fall model. In this stage, the developer
should identify the actual requirements of the given
problem are analyzed and prioritized as per the
requirements of the problem. Finally these
requirements are stated as problem statement.
2. System Design: In this stage the system design
process partition the requirements to either
hardware and software systems. It Establish overall
system architecture. System Design involves
Identifying and Describing the fundamental software
system abstractions and their relationship
Water fall Model contd..
3. Implementation and Unit testing : During this stage the
system Design is realize as a set of programs or Program
unit testing involves verifying that each unit meets its
specification.
4. Integration and System Testing: The individual program
units or program are integrated and tested as complete
system to ensure that the software requirements have
been met. After Testing the software is delivered to the
customers.
5. Operation and Maintenance: The system is installed to the
desire location. The maintenance involves the correcting
errors which were not discovered in earlier stage of the life
cycle, Improve the Implementation of the system Units and
enhancing the system’s service as new requirement as
discovered
Water fall Model contd…
• Advantage
1. It is simple model and suitable for small size project.
2. It is Less Expensive.
• Disadvantage
1. It has no backtrack Mechanism.
2. It is not suitable for large size project.
3. It has lack of proper Documentation.
Prototype Model
• This is a iterative model of system Development which
is more appropriate for developing new system where
there is no clear idea of requirements, inputs and
outputs. Using prototyping, the programmers can built
early version of the system. These system are then
continuously modifies until the user is satisfy.
Prototyping is especially helpful in the situation where
there will be heavy user interaction with the system,
where the needed output is uncertain, and in some
decision support application where the logic is hard to
determine in advance. The developer interview the
user and designs an initial system using a data base
management system. The user works with the
Prototype and suggests the changes. This process
repeats until the user or developer satisfied
Prototype Model
Identify User Needs

Develop a Prototype

No
Prototype Acceptable

Ye
s
Use the Prototype
Prototype Model
1. Identify The User Needs: The System analyst
Interviews the user to obtain an idea of what is
required from the system.
2. Develop a Prototype: The system analyst working
with other information specialist, users one or more
prototyping tools to develop a prototype.
3. Determine If Prototype is acceptable: The analyst
educate the user in prototype use and provides an
opportunity from becoming familiar with the system.
The user advice the system analyst whether the
prototype is acceptable. If so, then the next step,
that is step 4is taken, else the prototype revised to
step 1,2,3 with better understanding of the user
requirements or needs.
Prototype Model
4. Use the Prototype: Finally in this step, The
Prototype becomes the operational System.
This approach is possible only when the prototyping
tools enables the prototype to contain all the
essential elements of the new system.
Prototype Model contd..
• Advantages
1. Communication between the system analyst and the user
are improve.
2. The expert can do a better job of determining User’s
need.
3. The user play a more active role in the system
Development.
4. The expert and the user spend less time and effort in
developing the system.
5. Implementation is much easier because the user knows
what to expect.
6. A system is Developed through Operational prototyping is
capable of easy adaptation.
• Disadvantage:
1. Because of the iterative nature of prototyping, there
is not definite deliverable or completion deadline.
2. Code inefficiencies may be drawback in terms of
functionality .
3. The computer-human Interface provided by certain
prototyping tools may not reflect good design
technique.
Spiral Model
• In this Model, process is represented as a spiral rather
than as a sequential of activities with backtracking.
Each loop in the spiral represent a phase in the
progress. It has no fixed phase such as specification
or design loop in the spiral are chosen depending on
what is required. Risk are explicitly accessed and
resolved throughout t and the process. Each loop in
the spiral represents a phase of software process.
Thus, The innermost loop might be concerned with
system feasibility, the next loop with system
requirement definition and analysis, the next loop
with system design and so on.
Spiral Model contd..
Spiral Model Contd..
1. Planning: The Project is reviewed and a decision made
whether to continue, plan are drawn up for the next
phase of the project.
2. Risk Analysis: for each of the identified project risks, a
detailed analysis carried out. Steps are taken to reduce
the risk. For example if there is a risk that the
requirement are inappropriate, a prototype system may
be developed.
3. Engineering or execution or development: After risk
evaluation, a development model for the system is
chosen. e.g. if user interface risk are dominant, an
appropriate development model might be evolutionary
prototyping. If safety risk are the main consideration,
Development based on formal transformation may be the
most appropriate and so on. The waterfall model may be
the most appropriate development model if the main
identified risk is sub-system integration.
Spiral Model Contd..
4. User Evaluation: Specific Objectives for the
phase of the project are defined by the
evaluation of users. Constrains on the process
and the product are identified. And a detailed
management plan is drawn up.
Spiral Model Contd..
• Advantage:
1. It Emphasize risks, which are often ignored.
2. It Emphasize quality.
3. It Emphasize risk reduction technique, like prototypes buy
vs build, etc.
4. It provides check points for considering project
cancellation.
5. It is effective for regular updating the system.
• Disadvantage:
1. Full scale risk analysis requires training, skill, and
considerable expenses, so it may appropriate only for
large project.
2. The model is relatively on test.
Agile Model
• The meaning of Agile is swift or versatile. “Agile process model"
refers to a software development approach based on iterative
development.
• Agile methods break tasks into smaller iterations, or parts do not
directly involve long term planning.
• The project scope and requirements are laid down at the
beginning of the development process.
• Plans regarding the number of iterations, the duration and the
scope of each iteration are clearly defined in advance.
• Each iteration is considered as a short time "frame" in the Agile
process model, which typically lasts from one to four weeks.
• The division of the entire project into smaller parts helps to
minimize the project risk and to reduce the overall project delivery
time requirements.
• Each iteration involves a team working through a full software
development life cycle including planning, requirements analysis,
design, coding, and testing before a working product is
demonstrated to the client.
Agile Model contd..
• The time to complete iteration is known as a Time
Box.
• Time-box refers to the maximum amount of time
needed to deliver iteration to customers.
• So, the end date for iteration does not change.
Though the development team can decide to
reduce the delivered functionality during a
Time-box if necessary to deliver it on time.
• The central principle of the Agile model is the
delivery of an increment to the customer after each
Time-box.
Steps Involve in Agile Model
• Planning
• Requirement Analysis
• Design
• Coding/Building
• Unit testing
• Acceptance testing
Figure
Principles of Agile model:
• To establish close contact with the customer during
development and to gain a clear understanding of
various requirements, each Agile project usually
includes a customer representative on the team.
• At the end of each iteration stakeholders and the
customer representative review, the progress made
and re-evaluate the requirements.
• Agile model relies on working software deployment
rather than comprehensive documentation.
• Frequent delivery of incremental versions of the
software to the customer representative in intervals of
few weeks.
• Requirement change requests from the customer are
encouraged and efficiently incorporated.
Principles of Agile model:
• It emphasizes on having efficient team members and
enhancing communications among them is given more
importance.
• It is realized that enhanced communication among the
development team members can be achieved through
face-to-face communication rather than through the
exchange of formal documents.
• It is recommended that the development team size should
be kept small (5 to 9 people) to help the team members
meaningfully engage in face-to-face communication and
have collaborative work environment.
• Agile development process usually deploy Pair
Programming. In Pair programming, two programmers work
together at one work-station. One does coding while the
other reviews the code as it is typed in. The two
programmers
Advantage and Disadvantage of Agile
Advantages:
• Working through Pair programming produce well written
compact programs which has fewer errors as compared to
programmers working alone.
• It reduces total development time of the whole project.
• Customer representatives get the idea of updated software
products after each iteration. So, it is easy for him to change
any requirement if needed.
Disadvantages:
• Due to lack of formal documents, it creates confusion and
important decisions taken during different phases can be
misinterpreted at any time by different team members.
• Due to the absence of proper documentation, when the
project completes and the developers are assigned to
another project, maintenance of the developed project can
become a problem.
Documentation
• Documentation is not a separate stage, it requires
through out the stage. It consist the written
description and procedures about the software. It
consist the detail description about the software
requirement specification, feasibility study, software
designing report, description about input and output
and process mechanism, source code comments,
manuals, guides and effective help des. Moreover the
documentation should describe everything you have
done so far. It consist the limitationof the software;
demo to describe how to run the softwareand he
minimum requirements in order to run it smoothly.
Importance of Documentation
• It is easy to remember the program logic and
instruction for the programmer during
programming.
• Helps to solve the best way solution.
• For the future reference to maintenance and
modify.
• Effective and easy use for the user.
Why documentation needed?
• It is a mean of transfer of knowledge and detail
about description of the system.
• Helps to corporate audits and other requirements
of the Organization.
• Needed for it infrastructure management and
maintenance.
• Needed for migration to new software platform.
Internal Documentation
• It is used by the system analyst and the
programmer during development process. It is
very useful for the development period and also
useful in future for the modification and
maintenance the system.
Examples for External
Documentation
• SRC(system requirements specification) repors
contents the detail description about the actual
requirements and the feasibility description about
total benefits for the organization with effective
solution of right problem.
• Software Design Report consist of logical as well as
physical design report.it consist the different tools and
technique use to solve the problems.
• Source code and Comments of the software itself a
part of the documents for the programmer and
comments are also used in programs. It also include
documentation for testing and verification and
maintenance.
External Documentation
• It is used by user during running time of software.
It includes the detail description in terms of
manuals, guide and help files. It mainly deals with
how to effective use of software.
Decision Table
• A Decision table allows us to identify the exact
course of action for given conditions. Decision
table provides unambiguous decisions, leading to
a good program design. A decision table generally
consist of two part : Condition and action.
Decision table preferred when one of the large
numbers of action is to be selected. The action
Selected Depend up on a large number of
conditions. For example: To find the maximum of
among 3 different numbers using Decision Table.
Condition Decision table example
A>B F F T T

B>C F T F F

A is Maximum X X X T
Actions

B is Maximum X T X X

C is Maximum T X X X
Decision Tree

• Decision Tree also does more or less same job as


decision table, except that, it follows the tree
structure and each node of the tree denotes
conditions. Decision tree is more user-friendly
because it provide a graphical hierarchical
diagrammatic view of the conditions and actions
Example

T A is Max
T
(A>B>C)

B is Max

(B>C)
B OR C is Max
F
F C is Max
Pseudo code
• Pseudo code is a kind of algorithm for solving a problem.
• the instruction of pseudo code are written by using English
phrase and mathematical expressions.
• It has no specific rules for writing instructions but are closer
to high level language instructions.
• Designer should have basic knowledge about high level
language instructions before writing pseudo codes.it is
independent of programming languages.

Pseudo codes for calculating simple interest


Start
Input Principal, Time, Rate
Calculate simpleinterest=(Principal*Time*Rate)/100
Output Simpleinterest
Stop
Case Tools
• Computer aided software engineering tools is automatic
computer based program that helps for software
engineering and SDLC process. It is very fast and
effective tools for the development of big scale
software. It help in analysis, design, implementation ,
testing and maintenance. Moreover it also help in
business planning, project management, user interface
designing, database designing, programming and
documentation. Now visual CASE is very popular which
provides different facilities such as code generation,
code conversion drag and dropped features etc. Oracle
2000 Designer, TOAD, Visual CASE, Rational Rose and
Cold fusion are the some of the popular visual case too.
Unified Modelling Language(UML)
• UML is a standardized general-purpose modelling language in
the field of Object-Oriented Software engineering. The
standard is managed, and was created by, the Object
Management Group. UML includes a set of graphic notation
techniques to create visual models of object-oriented
software. It is used to specify, visualize, modify, construct and
document the artefacts of an object-oriented
software-intensive system under development. UML offers a
standard way to visualize a system-intensive system under
development. UML offers a standard way to visualize a
system’s architectural blueprints, including elements such as
activities, actor, business processes, database schemas etc.
various notions are used to construct the case diagram, object
diagram, class diagram, activity diagram etc.
Use Case Diagram
• A use case in software Place item Belt
engineering is a description
of steps or actions between
a user (or “actor”) and a Computerized
software system which leads Cash
the user towards something
useful. The user or actor Shopkeeper Customer
Receipt
might be a person or
something more abstract,
Fig:1 Entity relation Diagram
such as an external software
system or manual process.
Use Case Diagram of Online Shopping
System
• Use cases are a software modelling technique that
helps developer determines which features to
implement and how to gracefully resolve errors.
Within systems engineering, use case used at a
higher level than within software engineering often
representing missions or stakeholder goals. A use
case diagram in the Unified Modelling
language(UML) is a type of behavioral diagram
defined by and created from a use-case analysis. It
purpose is to present a graphical overview of the
functionality provided by a system in terms of actors,
their goals(represented as use cases), and any
dependencies between those use cases. The main
purpose of a use case diagram is to show what
system functions are performed for which actor
Concept of System Design Tools
• Various system design are used during system
analysis and design phase of the system
development. Some of the most commonly
used tools are Algorithm, Pseudo code,
flowchart, Decision Table, Decision Tree,
Context Diagram Data Flow Diagram, Entity
Relationship Diagram, Unified Modelling
Language, Use case, CASE Tools etc.
Data Flow Diagram(DFD)
• A pictorial representation of any business activity
will be more effective than a narrative one. It is
easier to understand or grasp when being
explained and most important of all, it is much
more precise and less ambiguous than a narrative
one.

During the course of analysis, the system


Analyst(SA)has to gather enough information in
order to answer the following questions. It also
serves as a form of checklist
What are the process that makes up a system?
What data is used in each of the processes?
What and how is the data stored?
What data enters and leaves the system?
All the information gathered has to be recorded. For
this purpose, The SA will normally use the DFD.
A DFD is a diagrammatic representation of the flw of
data through a process\system or
sub-system/sub-system\sub-process. It shows what
happen to the data as it goes through a process. Like
a flowchart, a DFD also uses standard symbols and
notaitons.
DFD Components
• 1. Process: process shows what
system can do. Each process has
one or more than one inputs and
Library
produces one or more data Management
outputs. It is represented by process
circle. Each process has a unique
name.
• 2. Data Store: Data store is a
repository of data. It contains data Machine Codes
that is retained in the system.
Process can enter the data into
data store it retrieve data from
data store. Each data stored is
represented by thin line.
• 3. Data Flows: It is the flow of data between the
components of system. It represented by joining arrow
line from one component to another component. Flow
of data can take place between following components:
– between the process
– From data store to process
– From process to data.
– From source to process
– From process to sink
4. External Entities: External entities are outside
Customer
from system and they affect the system such as
vendors, customers suppliers etc. It is
represented by rectangle.
Level of DFD
1.Context Diagram: It is the highest Apply for Membership
level if DFD. It contains only one
process, representing the entire
system, the process is given the Applicant Membership
Issue System
symbol circle. The External entities
are denoted by rectangle. The flow of
issue
data is described by arrow. The Membership
context diagram of library
Figure 1.7: Context Diagram
membership is given below.

2. Data flow Diagram: The data flow diagram shows more detailed
data flow of the system. A single process of the context diagram is
divided into sub process and shows the data flow in details. It also
describes the data store facility and controlling mechanism too. We
include all the entities and data flows that appeal in the context
diagram of the system
Apply for Collect
Membership application

Member’s Database

Accept or reject
Applicant Verify

Issue Issue
membership membership

Figure 1.8: Data flow Diagram


Entity Relationship Diagram(ERD)

• The diagrammatic representation of entities


attributes and their relationship is described by ER-
diagram. The ER-diagram is an overall logical
structure of a database that can be expressed
graphically. It was developed to facilitated
database design and the simplicity and pictorial
clarity of this diagramming technique have done
great help in the designing part of database. The
basic component of ER- diagram are given below
1. Entity: An entity is a “thing” or “object” in the real
world that is distinguishable from other objects. For
example each values for some set of properties may Student
uniquely identify an entity. For example. If student is an
entity, is identified by registration number. It is
represented by rectangle.
2. Attribute: Attribute are properties possessed by one
entity or relationship. For example stu_no, stu_name, Roll no
stu_sub are the attribute of the entity student.
Attribute is represented by oval.
3. Relationship: A relationship is an association among
several entities and represents meaningful
dependencies between them. For example the Teach
association between teachers and student is teaching.
It is represented by diamonds
4. Lines: The flow of information is indicated by the lines
in ER-diagram. It is simply a line. It is connector of
entities, attributes and relationship.
Example of ER-diagram
Name
Address ID Name
Roll No

Study/T
Teacher
Student each

Faculty Subject
Class
Percentage

Figure 1.9: Entity Relationship Diagram

You might also like