Professional Documents
Culture Documents
np
.
.
System includes other two activities: these are feedback and control.
.
arjun00.com.np 1
Website :- https://www.arjun00.com.np
.
.
1. Components
2. Interrelated components
3. Boundary
4. Purpose
5. Environment
6. Interfaces
7. Constraints
8. Input
9. Output
.
arjun00.com.np 2
Website :- https://www.arjun00.com.np
.
.
Analysis
Analysis is a process of inspecting, clearing, transforming and
modeling the data with the goal of highlighting useful information,
suggesting conclusions and supporting decision making.
.
arjun00.com.np 3
Website :- https://www.arjun00.com.np
.
.
Design
Design means the process of originating and developing a plan for
a product, structure, system, or component. Design is the planning that
lays the basis for making of the system. It means applied arts and
engineering.
Design is used for either the final (solution) plan (e.g. proposal,
drawing, model, description) or the result of implementing that plan in
the form of the final product of a design process.
.
arjun00.com.np 4
Website :- https://www.arjun00.com.np
.
.
of creating or altering systems, models and the methodologies that people use to
develop the system. The concept generally refers to computer or information
systems. The SDLC (system development life cycle) consists the following steps:
To recognize or find out the need one take from the following:
1. Survey
2. Initial Investigation: Survey means to collect the information from a
large group of people by different ways like directly asking the questions,
giving the question sheet (generally with tick mark option) to give the answers
and collect information by these answers. Group discussion is also a solution
to get the data.
Initial investigation is done to find out that whether the request for
improving the system is valid or not and it should also be feasible.
2. Impetus for System Change
Impetus for system change means the force for change the system,
basically two things are responsible for change in the system:
a. Customers, venders etc.
.
arjun00.com.np 5
Website :- https://www.arjun00.com.np
.
.
There are also several different factors which may force for the
changes. For example, high rate of labor turnover, high rejection rate
of finished product, different suspicious activities of employees.
3. Feasibility Study
The result of feasibility study is called the "formal proposal" or the
"report". This report consist the known things and the things which is going
to be happened.
c. Detail of Findings: The details about the findings are given in this
step. In details of finding full description is available regarding the
different information of existing system.
4. Analysis
Analysis is the process of breaking a complex logic into smaller
parts to gain a better understanding and feedback by performing
different operations to improve the system. The technique has been
applied in the study of system design. Analysis is a process of
inspecting, clearing, transforming, and modeling the data with the
.
arjun00.com.np 6
Website :- https://www.arjun00.com.np
.
.
5. Design
Design is the planning that lays the basis for the making of the
system. It means applied arts and engineering. Design means the
process of originating and developing a plan for a product, structure,
system, or component.
Design is used for either the final (solution) plan (e.g., proposal,
drawing, model, description) or the result of implementing that plan
in the form of the final product of a design process.
Design is the most creative and challenging phase.
6. Implementation
Implementation is the execution, or practice of a plan, a
method, or any design for doing something. As such,
implementation is the action that must follow any preliminary
thinking in order for something to actually happen. In an
information technology context, implementation encompasses all
the processes involved in getting new software or hardware
operating properly in its environment, including installation,
configuration, running, testing, and making necessary changes.
The word deployment is sometimes used to mean the same thing.
7. Post Implementation
A post-implementation is an assessment and review of the
completed working solution. Any systems have the characteristics
of "aging" (means after some time giving problems to user). The
solution to avoid this problem is to give the periodic maintenance
to the system.
There are three purposes for a post-implementation Review.
.
arjun00.com.np 7
Website :- https://www.arjun00.com.np
.
.
8. Project Termination
Mainly there are two reasons for terminating the project:
.
arjun00.com.np 8
Website :- https://www.arjun00.com.np
.
.
SDLC Phases:
The development of a new information system involves several different, but
related activities. These activities, or phases, usually include planning, analysis,
design, implementation, and maintenance/support.
Phase 1: Planning
In the planning phase, project goals are determined and a high-level plan for the
intended project is established. Planning is the most fundamental and critical
organizational phase. The three primary activities involved in the planning phase
are as follows:
Phase 2: Analysis
In the analysis phase, end user business requirements are analyzed and project
goals converted into the defined system functions that the organization intends to
develop. The three primary activities involved in the analysis phase are as follows:
.
arjun00.com.np 9
Website :- https://www.arjun00.com.np
.
.
Phase 3: Design
In the design phase, we describe the desired features and operations of the system.
This phase includes business rules, pseudo-code, screen layouts, and other
necessary documentation. The two primary activities involved in the design phase
are as follows:
1. Designing of IT infrastructure
2. Designing of system model
In this phase, the specialist recommends the kinds of clients and servers needed on
a cost and time basis, and technical feasibility of the system. Also, in this phase,
the organization creates interfaces for user interaction. Other than that, data models
and entity relationship diagrams (ERDs) are also created in the same phase.
Phase 4: Implementation
In this phase, all the documents from the previous phase are transformed into the
actual system. Along with that the built system is tested for any technical errors,
bugs and defects, and the final system is deployed to the client environment. The
activities performed in this phase are:
• Development of IT infrastructure
• Testing of the final system using techniques like alpha testing, beta testing etc.
.
arjun00.com.np 10
Website :- https://www.arjun00.com.np
.
.
Phase 5: Maintenance
.
arjun00.com.np 11
Website :- https://www.arjun00.com.np
.
.
1. Functional properties
These appear when all the parts of a system work
together to achieve some objective. For example, a
bicycle has the functional property of being a
transportation device once it has been assembled
from its components.
2. Non-Functional Properties
These relate to the behaviour of the system in its
operational environment. Examples are reliability,
performance, safety, and security. They are often critical
for computer-based systems as failure to achieve some
arjun00.com.np 12
Website :- https://www.arjun00.com.np
.
.
a. Reliability:
Reliability is the probability that a system performs
correctly during specific time duration. During this
correct operation, no repair is required or
performed, and the system adequately follows the
defined performance specifications. Reliability may
be divided as software reliability and Hardware
reliability.
Software Reliability is defined as the probability of
failure-free software operation for a specified
period of time.
Hardware Reliability is the ability of hardware to
perform its functions for some period of time
without any issue.
b. Performance:
Performance of a system includes the speed and
accuracy. It is combined form of how fast is the
system and how accurate is the result.
c. Security
The security of a system is its ability to resist attack.
This could be either software which include
resistance against malwares and hackers or
hardware which include resistance against
environmental factors such as dust, water,
temperature etc.
arjun00.com.np 13
Website :- https://www.arjun00.com.np
.
.
d. Usability
This property reflects how easy it is to use the
system. It depends on the technical system
components, its operators, and its operating
environment.
e. Repairability
This property reflects how easy it is to fix a problem
with the system once it has been discovered. It
depends on being able to diagnose the problem,
access the components that are faulty, and modify
or replace these components.
System Engineering:
Systems engineering is an interdisciplinary field of
engineering and engineering management that focuses on how to
design, integrate, and manage complex systems over their life
cycles.
arjun00.com.np 14
Website :- https://www.arjun00.com.np
.
.
Information system:
An information system is defined as the software/hardware that
helps organize and analyze data.
TPS are aimed at improving the routine business activities on which all
organizations depend. They substitute computer-based processing for
manual procedure. TPS assists in carrying out the day-to-day, high-
volume activities/transactions of the organization. These transactions
are processed using standard operating procedures. There are hardly
any exceptions to these procedures. These routines are embedded in
the computer programs that control the entry of data, processing of
details, storage, and presentation of data and information.
arjun00.com.np 15
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 16
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 17
Website :- https://www.arjun00.com.np
.
.
The information required at this level is used for making short term
decisions and plans for the organization. Information like sales analysis
for the past quarter/yearly production details etc. fall under this
category. MIS caters to such information needs of the organization. Due
to its capabilities to fulfill the managerial information needs of the
organization, MIS have become a necessity for all big organizations.
And due to its vastness, most of the big organizations have separate
MIS departments to look into the related issues and proper functioning
of the system.
arjun00.com.np 18
Website :- https://www.arjun00.com.np
.
.
Advantages:
• It facilitates planning
• It minimizes information overload by changing the larger amount
of data in to summarize form.
• MIS encourages decentralization by making necessary change in
the organizational plans and procedures.
• It brings coordination as it connects all decision centers in the
organization.
• It makes control easier as MIS serves as a link between managerial
planning and control.
• MIS assembles, process, stores, retrieves, evaluates and
disseminates the information.
• MIS allows managers to make different types of reports about a
company activities.
Disadvantages:
arjun00.com.np 19
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 20
Website :- https://www.arjun00.com.np
.
.
Advantages:
• Reduced decision cycle time, increased employee productivity
and more timely information for decision making.
• Improved decision making effectiveness and better decisions.
Improved communication and collaboration among decision
makers.
• Gaining a competitive advantage from computerized decision
support.
arjun00.com.np 21
Website :- https://www.arjun00.com.np
.
.
• Cost saving from labor savings in making decisions and from lower
infrastructure or technology costs.
• Increase decision maker satisfaction.
• Promote learning Increase organizational control.
Disadvantages:
arjun00.com.np 22
Website :- https://www.arjun00.com.np
.
.
Management Process:
2. Organizing
3. Leading
4. Controlling
arjun00.com.np 23
Website :- https://www.arjun00.com.np
.
.
Supporting Process:
2. configuration management(CM)
Configuration management is a systems engineering process
for establishing and maintaining consistency of a product's
performance, functional, and physical attributes with its
requirements, design, and operational information throughout its
life.
3. Verification
The goal of software verification is to determine whether
the product under construction is being built to match its
specification.
4. Audit
.
arjun00.com.n 24
p
Website :- https://www.arjun00.com.np
.
.
System Structure:
The structure of the system is composed of mainly five elements
and they are:
Input
Process
Output
Feedback
Control
arjun00.com.n 25
p
Website :- https://www.arjun00.com.np
.
.
Environment
arjun00.com.n 26
p
Website :- https://www.arjun00.com.np
.
.
arjun00.com.n 27
p
Website :- https://www.arjun00.com.np
.
.
arjun00.com.n 28
p
Website :- https://www.arjun00.com.np
.
.
Some of the Popular SDLC models are Waterfall Model, Prototype Model, RAD
Model Agile Model etc.
1. Waterfall Model:
Also known as the traditional methodology, waterfall is a sequential and
linear flow for developing a system application. The process is outlined by a
series of finite stages, each of which must be fully completed before
moving on to the next one. The Waterfall approach follows this order:
requirements, design, execution, testing, and release.
Advantages:
→Easy to implement and understand
→Suitable for small projects
Disadvantages:
→ Very complex if we want to go back once the stage is finished. I.e.
hard to go back and make changes.
→ More time consuming and high risk.
2. Prototyping Model:
3. RAD Model
RAD stands for Rapid Application Development Model. This methodology
focuses on building applications in very short amount of time. It is a high
.
arjun00.com.np 29
Website :- https://www.arjun00.com.np
.
.
• Planning
• Requirements Analysis
• Design
• Coding
• Unit Testing and
• Acceptance Testing.
CASE Tools:
It stands for Computer-Aided Software Engineering tools. CASE tools
are used to support a wide variety of SDLC activities. CASE tools can be
used to help in the project identification and selection, project initiation
and planning, analysis and design phases and/or in the implementation and
maintenance phases of the SDLC. CASE tools helps programmers and
analysts do their jobs more efficiently and more effectively by automating
routine tasks.
.
arjun00.com.np 30
Website :- https://www.arjun00.com.np
.
.
Examples:
flowchart maker, Creative Pro Office, Doxygen, Accept 360,
Animated software design, Cscope for searching code in C,
etc
arjun00.com.np 31
Website :- https://www.arjun00.com.np
.
.
1. Direct measures
→Direct measures include software processes like cost and effort
2. Indirect measures.
→Indirect measures include products like functionality, quality,
arjun00.com.np 32
Website :- https://www.arjun00.com.np
.
.
This metrics is one of simplest and earliest metrics that is used for
computer program to measure size. Size Oriented Metrics are also used
for measuring and comparing productivity of programmers. It is a direct
measure of a Software. The size measurement is based on lines of code
(LOC) computation. The lines of code are defined as one line of text in a
source file.
For Example:
arjun00.com.np 33
Website :- https://www.arjun00.com.np
.
.
Advantages:
Disadvantages:
arjun00.com.np 34
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 35
Website :- https://www.arjun00.com.np
.
.
→Once the CAV is calculated the function point can be calculated as:
Productivity = FP / person-month
Quality = Number of faults / FP
Cost = $ / FP
Documentation = Pages of documentation / FP
arjun00.com.np 36
Website :- https://www.arjun00.com.np
.
.
For Example:
No of user i/p = 50
No of user o/p = 40
No of user enquiries = 35
No of user files = 06
No of external Interface = 04
Now calculating the raw function point i.e. FP count for an average
project:
arjun00.com.np 37
Website :- https://www.arjun00.com.np
.
.
Now, we need to calculate the complexity adjustment factor for all the
14 questions which is in the range of 0 to 5. Let us consider the
complexity adjustment factor to be 3 as it is the average value.
So,
= 42.
Finally,
arjun00.com.np 38
Website :- https://www.arjun00.com.np
.
.
Example
For example, suppose that 50 defects were found during QA/testing
stage and 40 defects were resolved by the development team at the
moment of measurement. The DRE would be calculated as:
40
DRE = ∗ 100 %
50
= 80 %
Types of Metrics:
arjun00.com.np 39
Website :- https://www.arjun00.com.np
project. They enable a software project manager.to:
.
arjun00.com.np 40
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 41
Website :- https://www.arjun00.com.np
.
.
the extent to which a program is supposed to perform its function (how much it is
trustable) with the required precision.
4. Usability: Usability means that how much the system is usable, the labor
required to understand, operate, prepare input and interpret output of a
program.
6. Testability: The quality system should be able to give the correct result for
almost any input. Testability means that the system is capable for the required
testing of the programs for their functionality.
7. Portability: Portability makes the system to run the program from one platform
to other or to different hardware.
9. Error Tolerance: Error tolerance describes that how much a system is capable
or sufferable or endurable (during error occurs). Error tolerance is the Damage
done when program encounters an error.
10. Security: This factor gives the control and protection of programs and
database from the unauthorized users.
12. Reusability: Reusability is the factor by which the program or its parts can be
used as building blocks or as prototypes for other programs.
arjun00.com.n 42
p
Website :- https://www.arjun00.com.np
.
.
13. Operability. It is the quality factor which ensures the ease of programs
operation.
arjun00.com.np 43
Website :- https://www.arjun00.com.np
.
.
Requirement Analysis
Introduction:
The objective of this phase is to define in more detail the system inputs,
processes, outputs and interfaces. At the end of this phase the system’s
processes will be defined at the functional level, meaning the functions to be
performed will be known, but not necessarily how they will be performed.
• Portability
• Security
• Maintainability
• Reliability
• Scalability
• Performance
• Reusability
• Flexibility
The most important part in SDLC is communication. During SDLC period, there is
more than a single person working on the software project; communication
becomes one of the most important steps in ensuring the success of the project.
It’s is one of the most important measures for each project to ensure “that each
stakeholder communicates their thoughts clearly and concisely in a form that
everyone else understands.” This is because the lack of communications while
developing the software causes communication breakdowns and can negatively
impact the progress of development. “Indeed, most practitioners in the software
engineering field argue that poor communication and changing requirements are
.
arjun00.com.np 44
Website :- https://www.arjun00.com.np
.
.
the primary causes of cost overruns and late product delivery in the software
engineering industry.”
Requirements define the needs of the project to provide best of its utility and
benefits. If they aren’t clear or analysis is not done properly, it might lead to
failure of the project no matter how well the concept and design is.
→Interviewing
arjun00.com.np 45
Website :- https://www.arjun00.com.np
.
.
If the analyst does not discover any kind of the important requirements in early
phase, then this might bring different kinds of problems in later phases such as
design and implementation phase.
Also the analyst should carefully determine who is included in the requirements-
gathering process. The choice to include (or exclude) someone is significant;
involving someone in the process implies that the analyst views that person as an
important resource and values his or her opinions. You must include all of the key
stakeholders (the people who can affect the system or who will be affected by the
system). This might include managers, employees, staff members, and even some
customers and suppliers.
There are many different methods used by systems analysts to gather the
information required to design an information system. So analyst can gather
(collect) information by using following techniques:
Questionnaires:
arjun00.com.n 46
p
Website :- https://www.arjun00.com.np
.
.
Attitudes are what people in the organization say they want (in a new
system); beliefs are what people think is actually true; behavior is what
organization members do; and characteristics are properties of people or
things.
Advantages:
Disadvantages:
Advantages:
arjun00.com.np 47
Website :- https://www.arjun00.com.np
.
.
2. Whole world can be covered and the questions can be sent to any part
of the world.
3. Respondents get enough time to think and answer the question.
Disadvantages:
1. It is quite hard for the stakeholders to use e-mails if they are not familiar
with it.
2. People may not be good at opening documents and editing those sent
by the analyst.
3. Low percentage of return.
4. Lack of response from someone can bias results
Interviewing:
Interviews are the formal meetings where the analyst can collect
information about the working of the present system and the requirement
of any planned replacement.
Advantages:
arjun00.com.np 48
Website :- https://www.arjun00.com.np
.
.
observe what subjects but also study their body language and
expression.
3. It is an effective technique for getting information about complex
subjects and for sensing the feelings underline opinions.
4. Generally people prefer being interviewed rather than filling up lengthy
questionnaires.
5. Interviews permit the system analyst to adapt or revise questions for
each individuals.
Disadvantages:
1. This method requires more time and money for its conduction.
2. Time-consuming, it takes long preparation time.
3. Success highly dependent on analyst’s human relations skills
4. May be impractical due to location of interviewees.
Team of experts visits the client’s organization or workplace. They observe the
actual working of the existing installed systems. The direct approaches of
interviewing and questionnaires provide valuable user feedback based on the
questions asked of them; however, there are times when direct observation may
be better suited in requirement gathering. To get a better understanding of a user
in their in current work environment, the analyst may observe the user
themselves. User observation is helpful in assisting the analyst by getting a full
grasp of how the user interacts with the system, firsthand. When the objective is
to improve a task, the analyst can observe the user and how their surroundings
affect their interaction with the system. Sometimes stakeholders may find it
difficult in explaining what exactly what their tasks consists of and what their
requirements may be, observing the user in cases like these will help provide the
requirements. User observation may also be useful in validating data that had
arjun00.com.np 49
Website :- https://www.arjun00.com.np
.
.
While there are many advantages to use observation, there are some
disadvantages associated as well. As previously mentioned, observations should
take place during peak, normal, and low business times. However, it may still be
difficult to capture enough information in one of these sessions. There may be the
need for multiple sessions to verify that facts collected were constant, rather than
isolated incidents.
3. Prototyping:
The user will still be sitting side by side with the analyst, providing them
requirements as the analysts enters them into a working system. This will allow
the user to instantly see the outcome of their requirements. At this point the user
may change some of their requirements. They may see that what they provided
was not what they had in mind. A form may appear cluttered with information; at
this point the user can go back and adjust their information. This may also be the
case in when the user forgets important information; they may not realize it until
they actually see a working version of the system. The user and analyst will
continue to go through different iterations, until all specifications are complete.
The last prototype will be used as a model to build the actual system.
Some of the disadvantages of prototyping is the user will pay too much attention
to details on the screens, rather than what the prototype is meant to
arjun00.com.np 50
Website :- https://www.arjun00.com.np
.
.
A software requirement document not only fulfills the needs of all the
stakeholders (business, users) but also helps in minimizing overall development
time and costs.
arjun00.com.np 51
Website :- https://www.arjun00.com.np
.
.
DFD symbols:
arjun00.com.np 52
Website :- https://www.arjun00.com.np
.
.
Data Flow
A dataflow is data that are in motion and moving as a unit from one place in a
system to another. A data flow is depicted as an arrow. The arrow is labeled with
a meaningful name for the data in motion; for example, customer order, sales
receipt or paycheck.
Process
A process is the work or actions performed on data so that they are transformed,
stored, or distributed. The symbol for a process is a rectangle with rounded
corners. Inside the rectangle are written both the number of the process and a
name, which indicates what the process does. For example, the process may
generate paychecks, calculate overtime pay, or compute grade-point average.
Data Store
A data store is data at rest. A data store may represent one of many different
physical locations for data, including a file folder, one or more computer-based
file(s), or a notebook. The symbol for a data store is a rectangle with the right
vertical line missing. Its label includes the number of the data store (e.g. D1 and
D2) and a meaningful label, such as student file, transcript, etc.
Source/Sink is the origin and/or destination of the data (outside of the system).
Source/sinks are sometimes referred to as external entities because they are
outside the system and define the system’s boundaries. Data must originate
outside a system from one or more sources, and the system must produce
information to one or more sinks. It is drawn as a square symbol. The name states
what the external agent is. Because they are external, many characteristics are
not of interest to us. A person, organization, or system that is external to the
system but interacts with it.
arjun00.com.np 53
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 54
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 55
Website :- https://www.arjun00.com.np
.
.
DFD Levels:
➔ Context Diagram
o Overview of the organizational system
➔ Level-0 DFD
o Representation of system’s major processes at high level of
abstraction
➔ Level-1 DFD
o Results from the decomposition of level 0 diagram
➔ Level-n DFD
o Results from decomposition of level n-1 diagram.
Context Diagram:
Context diagram shows the system boundaries, external entities that interact with
the system, and major information flows between entities and the system. It is
the first DFD in every business process. It shows the context into which the
business process fits. It also shows the overall business process as just one
process (process 0). It shows all the external entities that receive information
from or contribute information to the system.
arjun00.com.np 56
Website :- https://www.arjun00.com.np
.
.
Note: only one process symbol and no data stores are shown in context
diagram.
Level-0 DFD:
Level-0 DFD shows the system’s major processes, data flows, and data stores at a
high level of abstraction.
It shows all the major processes that comprises the overall system- the internal
components of process 0. It also shows how the major processes are interrelated
by data flows. It shows external entities and the major processes with which they
interact. It adds data stores.
Note: processes are labeled 1.0, 2.0, etc. These will be decomposed into more
primitive (lower-level) DFDs.
arjun00.com.np 57
Website :- https://www.arjun00.com.np
.
.
Level-1 DFD:
Level-1 DFD shows the sub-processes of one of the processes in the level-0 DFD.
Generally, one level 1 diagram is created for every major process on the level 0
diagram. It shows all the internal processes that comprises a single process on the
level 0 diagram. It also shows how information moves from and to each of these
processes.
If a parent process is decomposed into, for example, three child processes, these
three child processes wholly and completely make up the parent process.
Note: processes are labeled 1.1, 1.2, 4.1, 4.2 etc. These can be further
decomposed in more primitive (lower-level) DFDs if necessary. Sources and sinks
are optional on level-1 diagrams.
.
arjun00.com.np 58
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 59
Website :- https://www.arjun00.com.np
.
.
Level-n DFD
Level-n DFD shows the sub-processes of one of the processes in the level n-1 DFD.
It shows how information moves from and to each of these processes.
Fig: level-2 diagram showing the decomposition of process 4.3 from the level-1
diagram for process 4.0
Data flow diagrams are categorized as either logical or physical. A logical data
flow diagram focuses on the business and how the business operates. It is not
concerned with how the system will be constructed. Instead, it describes the
business events that take place and the data required and produced by each
event. Conversely, a physical data flow diagram shows how the system will be
implemented, including the hardware, software, files, and people involved in the
system.
Logical DFD
arjun00.com.n 60
p
Website :- https://www.arjun00.com.np
.
.
Physical DFD
• Physical DFD depicts how the system will be implemented (or how the
current system operates).
• The processes represent the programs, program modules, and manual
procedures.
• The data stores represent the physical files and databases, manual files.
• It show controls for validating input data, for obtaining a record, for
ensuring successful completion of a process, and for system security.
• Clarifying which processes are manual and which are automated: Manual
processes require detailed documentation and automated process require
computer programs to be developed.
.
arjun00.com.np 61
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 62
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 63
Website :- https://www.arjun00.com.np
.
.
Advantages of DFDs:
• Since they are easily understood by users (i.e presented in a non-technical
format), they are easier to validate for correctness. It is therefore easy to
determine whether requirements are correct. The probability of a better
system is increased.
• It is argued that a picture can convey meaning more quickly than more
traditional methods such as textual narrative.
• Further understanding of the inter-relatedness of systems and subsystems
are developed.
• Provides a means of analysis of a proposed system to determine if the
necessary data are processes have been defined.
• It is used as a part of system documentation files.
Disadvantages:
• For large systems it can be a time consuming and complex task to produce
all necessary levels of DFDs.
• It can be difficult to read and understand what is going on at a first glance.
• The symbols used are not common to all DFDs. Different models use
different symbols for the structure of a DFD.
To illustrate this, symbols are used. They are connected together to show what
happens to data and where it goes.
Note that system flow charts are very similar to data flow diagram. Data flow
diagrams do not include decisions, they just show the path that data takes, where
it is held, processed, and then output.
SFD symbols:
.
arjun00.com.np 64
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 65
Website :- https://www.arjun00.com.np
.
.
Decision Tables:
Decision tables are a concise visual representation for specifying which actions to
perform depending on given conditions. They are algorithms whose output is a
set of actions. A decision table is an excellent tool to use in both testing and
requirements management.
Decision tables are used when the process is logically complex involving large
number of conditions and alternate solutions.
It is useful in situations where the resulting actions depend on the occurrence of
one or several combinations of independent conditions.
A company’s employees are paid bonuses if they work more than a year in the
company and achieve individually agreed targets.
Try to list out all the conditions and actions mentioned in the requirements.
Hopefully, you would have listed out the conditions as listed below.
Conditions:
Actions / Outcome :
• Bonus payment?
arjun00.com.np 66
Website :- https://www.arjun00.com.np
.
.
Structured English:
Structure English is derived from structured programming language which gives
more understandable and precise description of process. It is based on procedural
logic that uses construction and imperative sentences designed to perform
operation for action.
→It is best used when sequences and loops in a program must be considered and
the problem needs sequences of actions with decisions.
→It does not have strict syntax rule. It expresses all logic in terms of sequential
decision structures and iterations.
→Intention is to give precise description of a process.
arjun00.com.np 67
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 68
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 69
Website :- https://www.arjun00.com.np
.
.
Data dictionary:
arjun00.com.np 70
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 71
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 72
Website :- https://www.arjun00.com.np
.
.
Advantages:
Disadvantages:
arjun00.com.np 73
Website :- https://www.arjun00.com.np
.
.
ER-Diagram:
arjun00.com.np 74
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 75
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 76
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 77
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 78
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 79
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 80
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 81
Website :- https://www.arjun00.com.np
.
.
Example:
arjun00.com.np 82
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 83
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 84
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 85
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 86
Website :- https://www.arjun00.com.np
.
.
Here all the fields are functionally dependent on the primary key.
arjun00.com.np 87
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 88
Website :- https://www.arjun00.com.np
.
.
Object Modeling:
arjun00.com.np 89
Website :- https://www.arjun00.com.np
.
.
Class Diagram
Class Notation
1. Class Name
o The name of the class appears in the first partition.
2. Class Attributes
o Attributes are shown in the second partition.
o The attribute type is shown after the colon.
o Attributes map onto member variables (data members) in code.
3. Class Operations (Methods)
o Operations are shown in the third partition. They are services the
class provides.
o The return type of a method is shown after the colon at the end of
the method signature.
o The return type of method parameters is shown after the colon
following the parameter name.
o Operations map onto class methods in code
arjun00.com.np 90
Website :- https://www.arjun00.com.np
.
.
Class Relationships
Simple Association:
Aggregation:
arjun00.com.np 91
Website :- https://www.arjun00.com.np
.
.
Composition:
Dependency (Realization):
Relationship Names
arjun00.com.np 92
Website :- https://www.arjun00.com.np
.
.
The +, -, # symbols before an attribute and operation name in a class denote the
visibility of the attribute and operation.
Multiplicity
How many objects of each class take part in the relationships and multiplicity can
be expressed as:
• Exactly one - 1
• Zero or one - 0..1
• Many - 0..* or *
• One or more - 1..*
• Exact Number - e.g. 3..4 or 6
• Or a complex relationship - e.g. 0..1, 3..4, 6.* would mean any number of
objects other than 2 or 5
arjun00.com.np 93
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 94
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 95
Website :- https://www.arjun00.com.np
.
.
It is essential to analyze the whole system before starting with drawing a use case
diagram, and then the system's functionalities are found. And once every single
functionality is identified, they are then transformed into the use cases to be used
in the use case diagram. Other than use cases, it also contains the actors and the
relationships between the actor and the use cases. Basically, an actor is an
external entity i.e. person that interacts with the system. An actor can interact
with multiple use cases.
Example:
arjun00.com.np 96
Website :- https://www.arjun00.com.np
.
.
Example 2:
The View Items is further extended by several use cases such as; Search Items,
Browse Items, View Recommended Items, Add to Shopping Cart, Add to Wish list.
All of these extended use cases provide some functions to customers, which
allows them to search for an item. The View Items is further extended by several
use cases such as; Search Items, Browse Items, View Recommended Items, Add to
Shopping Cart, Add to Wish list. All of these extended use cases provide some
functions to customers, which allows them to search for an item.
Both View Recommended Item and Add to Wish List include the Customer
Authentication use case, as they necessitate authenticated customers, and
simultaneously item can be added to the shopping cart without any user
authentication.
arjun00.com.np 97
Website :- https://www.arjun00.com.np
.
.
Sequence Diagram:
The sequence diagram represents the flow of messages in the system and is also
termed as an event diagram. It portrays the communication between any two
lifelines as a time-ordered sequence of events, such that these lifelines took part
at the run time. In UML, the lifeline is represented by a vertical bar, whereas the
message flow is represented by a vertical dotted line that extends across the
bottom of the page.
Lifeline
arjun00.com.np 98
Website :- https://www.arjun00.com.np
.
.
Actor
A role played by an entity that interacts with the subject is called as an actor. It is
out of the scope of the system. It represents the role, which involves human users
and external hardware or subjects.
arjun00.com.np 99
Website :- https://www.arjun00.com.np
.
.
Activation
arjun00.com.np 100
Website :- https://www.arjun00.com.np
.
.
Messages
The messages depict the interaction between the objects and are represented by
arrows. They are in the sequential order on the lifeline. The core of the sequence
diagram is formed by messages and lifelines.
arjun00.com.np 101
Website :- https://www.arjun00.com.np
.
.
Note
Sequence Fragments
arjun00.com.np 102
Website :- https://www.arjun00.com.np
.
.
Types of fragments
1. alt: alternative multiple fragments: The one fragment for which the
condition is true will execute.
2. Opt: optional. It is just like alt but with only one trace.
3. Loop: fragments are run multiple time.
arjun00.com.np 103
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 104
Website :- https://www.arjun00.com.np
.
.
Quality Assurance
Introduction:
What is Quality?
Quality is defined as the product or services that should be "fit for use and
purpose."
Quality is all about meeting the needs and expectations of customers concerning
functionality, design, reliability, durability, and price of the product.
a. Testing: Systems testing is an expensive but critical process that can take as
much as 50 percent of the budget for program development. The common
view of testing held by users is that it is performed to prove that there are
no errors in a program. However, this is virtually impossible, since analysts
cannot prove that software is free and clear of errors. Therefore, the most
useful and practical approach is with the understanding that testing is the
.
arjun00.com.np 105
Website :- https://www.arjun00.com.np
.
.
➔ performed by developers
➔ performed in virtual environment.
➔ Involves both black and white box testing.
➔ This is a long process then beta testing.
➔ Performed by customers.
➔ Performed in real environment.
➔ Involve black box testing only.
➔ This is short process then alpha testing.
Black Box Testing: in black box testing, the knowledge of internal working
structure (code) is not required. i.e. only GUI is required for this testing.
arjun00.com.np 106
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 107
Website :- https://www.arjun00.com.np
.
.
vendor claims the system does and how it is accomplished. Then they test the
software against those claims. If no serious discrepancies or failures are
encountered, they will certify that the software does what the documentation
claims. They do not, however, certify that the software is the right package for a
certain organization. That responsibility remains with the organization and its
team of analysts.
The following six characteristics can define the quality of the software:
1. Functionality
Quality of software is defined as how effectively the software interacts with other
components of the system. The software must provide appropriate functions as
per requirement, and these functions must be implemented correctly.
2. Reliability
3. Usability
Usability of software is defined as its ease of use. Quality of the software is also
identified as how easily a user can understand the functions of the software and
how much efforts are required to follow the features.
4. Efficiency
5. Maintainability
Maintainability is also one of the significant factors to define the quality of the
software. It refers to identify the fault and fix in the software. It should be stable
when the changes are made.
arjun00.com.np 108
Website :- https://www.arjun00.com.np
.
.
6. Portability
Inspection:
arjun00.com.np 109
Website :- https://www.arjun00.com.np
.
.
The term software engineering is the product of two words, software, and
engineering.
arjun00.com.np 110
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 111
Website :- https://www.arjun00.com.np
.
.
The features that good software engineers should possess are as follows:
→High motivation.
→Intelligence.
→Discipline, etc.
2. To minimize software cost: Software needs a lot of hard work and software
engineers are highly paid experts. A lot of manpower is required to develop
software with a large number of codes. But in software engineering,
programmers project everything and decrease all those things that are not
.
arjun00.com.np 112
Website :- https://www.arjun00.com.np
.
.
4. Handling big projects: Big projects are not done in a couple of days, and
they need lots of patience, planning, and management. And to invest six
and seven months of any company, it requires heaps of planning, direction,
testing, and maintenance. No one can say that he has given four months of
a company to the task, and the project is still in its first stage. Because the
company has provided many resources to the plan and it should be
completed. So to handle a big project without any problem, the company
has to go for a software engineering method.
arjun00.com.np 113
Website :- https://www.arjun00.com.np
.
.
The Waterfall Model was the first Process Model to be introduced. It is also
referred to as a linear-sequential life cycle model. It is very simple to understand
and use. In a waterfall model, each phase must be completed before the next
phase can begin and there is no overlapping in the phases.
The Waterfall model is the earliest SDLC approach that was used for software
development.
arjun00.com.np 114
Website :- https://www.arjun00.com.np
.
.
arjun00.com.np 115
Website :- https://www.arjun00.com.np
.
.
Advantages:
2. Easy to manage due to the rigidity of the model. Each phase has specific
deliverables and a review process.
4. Works well for smaller projects where requirements are very well understood.
Disadvantages:
5. Not suitable for the projects where requirements are at a moderate to high
risk of changing. So, risk and uncertainty is high with this process model.
Evolutionary model:
It is a very suitable model because of user feedback and other factors that make
the model very suitable for the development of complete Software. The user
.
arjun00.com.np 116
Website :- https://www.arjun00.com.np
.
.
feedback is very helpful for the development of the next stage because after the
completion of one stage we get the feedback to the user, the user feedback is
very essential for the development of the next phase.
If you want any changes in the software requirements, all changes will be applied
within a time.
In the evolutionary model, all work divided into smaller chunks. These chunks
present to the customer one by one. The confidence of the customer increased.
This model also allows for changing requirements as well as all development done
into different pieces and maintains all the work as a chunk.
arjun00.com.np 117
Website :- https://www.arjun00.com.np
.
.
Advantages:
1. The big advantage of the evolutionary model is that the user has checked
every stage during the development and it is helpful in achieving customer
confidence.
2. There are fewer chances of errors because all the modules are well seen.
3. It helps to reduce the risk of software projects.
4. It also reduces the cost of development.
5. Minimize serious problems during testing.
Disadvantages:
Spiral Model:
Spiral model is one of the most important Software Development Life Cycle
models, which provides support for Risk Handling. In its diagrammatic
representation, it looks like a spiral with many loops. The exact number of loops
of the spiral is unknown and can vary from project to project. Each loop of the
spiral is called a Phase of the software development process. The exact number
of phases needed to develop the product can be varied by the project manager
depending upon the project risks. As the project manager dynamically determines
the number of phases, so the project manager has an important role to develop a
product using spiral model.
he Radius of the spiral at any point represents the expenses(cost) of the project
so far, and the angular dimension represents the progress made so far in the
current phase.
.
arjun00.com.np 118
Website :- https://www.arjun00.com.np
.
.
Each phase of Spiral Model is divided into four quadrants as shown in the above
figure. The functions of these four quadrants are discussed below-
arjun00.com.np 119
Website :- https://www.arjun00.com.np
.
.
A risk is any adverse situation that might affect the successful completion of a
software project. The most important feature of the spiral model is handling
these unknown risks after the project has started.
Advantages of Spiral Model: Below are some of the advantages of the Spiral
Model.
• Risk Handling: The projects with many unknown risks that occur as the
development proceeds, in that case, Spiral Model is the best development
model to follow due to the risk analysis and risk handling at every phase.
• Good for large projects: It is recommended to use the Spiral Model in large
and complex projects.
• Flexibility in Requirements: Change requests in the Requirements at later
phase can be incorporated accurately by using this model.
• Customer Satisfaction: Customer can see the development of the product
at the early phase of the software development and thus, they habituated
with the system by using it before completion of the total product.
Disadvantages of Spiral Model: Below are some of the main disadvantages of the
spiral model.
• Complex: The Spiral Model is much more complex than other SDLC models.
• Expensive: Spiral Model is not suitable for small projects as it is expensive.
• Too much dependable on Risk Analysis: The successful completion of the
project is very much dependent on Risk Analysis. Without very highly
experienced expertise, it is going to be a failure to develop a project using
this model.
• Difficulty in time management: As the number of phases is unknown at the
start of the project, so time estimation is very difficult.
arjun00.com.np 120