Sad
Sad
14.What are the dataflow diagrams? How are they different from
structure charts?
1. Structure Chart :
Structure Chart represents the hierarchical structure of modules. It represents
the software architecture that means the various modules making up the system
and the dependency. Structure chart representation can be easily implemented
using some common programming language. The main focus in the structure
chart is on the module structure of the software.
2. Flow Chart :
Flowchart is a graphical representation of an algorithm. Programmers often use it
as a program-planning tool to solve a problem. It makes use of symbols which
are connected among them to indicate the flow of information and processing.
Flow chart is a convenient technique to represent the flow of control in a
program.
It is generally used by
It is generally used with object-oriented
structured programming
programming paradigm such as C++,
languages such as C,
Java, Python, etc.
COBOL, FORTRAN, etc.
Decomposition approach is
Composition approach is used here.
used here.
8.Explain the need for software measures and describe various metrics.
NEED OF SOFTWARE MEASUREMENT Measurements are a key element for
controlling software engineering processes. By controlling, it is meant that one
can assess the status of the process, observe the trends to predict what is likely
to happen, and take corrective action for modifying our practices. Measurements
also play their part in increasing our understanding of the process by making
visible relationships among process activities and entities involved. Lastly,
measurements improve our processes by modifying the activities based on
different measures.
Types of Software Metrics
Process Metrics
Some metrics help to improve the software development process. For example,
there may be bugs or defects when you are developing software. Your ability to
effectively and timely resolve them will determine how well the development
progresses and how well the software will be maintained after being delivered to
the customer.
Project Metrics
When software is in development, it is considered a project for a team and is
called a product at the end of development. That's how the software is described
as a project.
1.Cost of developing software: A customer's budget shouldn't be exceeded
by the cost of the software. Developers should take note of the increasing cost of
software and come up with effective strategies to prevent it from happening.
2.Schedule of Software Development: The customer should receive the
software within the specified timeframe. In developing the project, it should be
divided into modules, and each module should be given a limit of 2-3 days. If this
is not going well and this limit is exceeded, you need to develop new strategies
to complete the project on time.
3.Staffing Pattern: In a project, team members should be active and not take
too many holidays. They should also have the right skill set needed for the
project.
Product Metrics
The whole software can be considered a product, so we have some metrics we
can use to measure its relevant aspects. Here are some other software metrics
which we can use:
1.Size Oriented Metrics: By analyzing your software production size, you can
normalize quality and productivity measures. We can then develop a set of
simple size-oriented metrics using LOC(Line of Code) as the normalization value.
2.Function Point (FP) Metrics: An application's functionality is measured and
used as a standardization value. A measure of the function is called Function
Point. It cannot be directly measured; indirect measures must determine it.
3. Halstead's Software Metrics: The software metrics should reflect how
algorithms are implemented or expressed in different languages but not
executed on a specific platform. These metrics are therefore computed statically
from the code.
Advantages of Software Metrics
Contribute to improving return on investment.
Better control and visibility of the SDLC process
Enhances the quality and quantity of production
During this process, you will learn about various test techniques and methods.
Software size and cost can be determined.
2. Interaction Model:
The interaction perspective model explains how components of the system each
other.
There are three types of interactions:
a. User interaction: It involves user input and user output. It interacts with the
user and helps to identify user requirements.
b. System interaction: It is the interaction between the system which is to be
developed and other systems.
c. Component interaction: It interacts with different components of the same
system and helps understand whether the proposed system can provide the
required system performance.
3. Structural Model:
The structural perspective model represents a system's organization in terms of
the parts that build the system and their relationships. Structural models can be
static models or dynamic models. The static models represent the structure of
the system design, and the dynamic models represent the system's organization
during execution.
4. Behavioural Model:
It is the behavioural perspective model that represents the dynamic behaviour of
the system. There are two types of behavioural models:
a. Data-driven modeling
It means data that comes in has to be processed by the system. Data-driven
modes are the first graphical software models. Data-driven models represent the
actions, which include processing input data and generating an associated
output.
b. Event-driven modeling
It means that an event occurs that triggers the system, and that event may have
associated data. This model represents the response of the system to external
and internal events.