Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

NAME: TEJAS NAIK

ROLL NO: 67 SECTION :A


6\6\7667
SUBJECT: SOFTWARE ENGINEERING LAB
COURSE CODE : CT2356 REG NO:
20010270

PRACTICAL NO :01

AIM : Introduction to software Engineering Fundamentals ,UML and star


UML.

THEORY:
Software is a set of instructions data or program used to operate computers
and execute specific tasks. It is opposite of hardware ,which describes the
physical aspects of a computer. Software is a generic term used to refer to
applications ,scripts and program that run on a device.

SOFTWARE ENGINEERING
Software engineering is the establishment and use of sound engineering
principles in order to obtain economically software that is reliable and works
efficiently on real machines.
On other hand , it can be defined as the application of systematic disciplined ,
quantizable approach to the development operation , and maintenance of
software.

Characteristics of Software Engineering


Software characteristics are classified into six major components.
 Functionality: Refers to the degree of performance of the software
against its intended purpose.
 Reliability: Refers to the ability of the software to provide desired
functionality under the given conditions.
 Usability: Refers to the extent to which the software can be used with
ease.
 Efficiency: Refers to the ability of the software to use system resources
in the most effective and efficient manner.
 Maintainability: Refers to the ease with which the modifications can be
made in a software system to extend its functionality, improve its
performance, or correct errors.
 Portability: Refers to the ease with which software developers can
transfer software from one platform to another, without (or with
minimum) changes. In simple terms, it refers to the ability of software to
function properly on different hardware and software platforms without
making any changes in it.

Classification of Software Engineering


Software can be applied in countless fields such as business, education, social
sector, and other fields.It is classified according to the range of potential of
applications. These classifications are listed below.

 System software: This class of software manages and controls the


internal operations of a computer system. It is a group of programs,
which is responsible for using computer resources efficiently and
effectively.
 Real-time software: This class of software observes, analyzes, and
controls real world events as they occur. Generally, a real-time system
guarantees a response to an external event within a specified period of
time.
 Business software: This class of software is widely used in areas
where management and control of financial activities is of utmost
importance. The fundamental component of a business system
comprises payroll, inventory, and accounting software that permit the
user to access relevant data from the database. These activities are
usually performed with the help of specialized business software that
facilitates efficient framework in business operations and in
management decisions.
 Web-based software: This class of software acts as an interface
between the user and the Internet. Data on the Internet is in the form of
text, audio, or video format, linked with hyperlinks.
Unified Modeling Language (UML):
Unified Modeling Language (UML) is a general purpose modelling language.
The main aim of UML is to define a standard way to visualize the way a system
has been designed. It is quite similar to blueprints used in other fields of
engineering.

UML is not a programming language, it is rather a visual language. We use UML


diagrams to portray the behavior and structure of a system. UML helps
software engineers, businessmen and system architects with modelling, design
and analysis. The Object Management Group (OMG) adopted Unified
Modelling Language as a standard in 1997.

Goal of UML
1. Provide users with a ready-to-use, expressive visual modeling language
so they can develop and exchange meaningful models.
2. Provide extensibility and specialization mechanisms to extend the core
concepts.
3. Be independent of particular programming languages and development
processes.
4. Provide a formal basis for understanding the modeling language.
5. Encourage the growth of the OO tools market.

Types Of UML Diagrams


Structural Diagrams
1. Class Diagram
Class diagrams are the most common diagrams used in UML. Class diagram
consists of classes, interfaces, associations, and collaboration. Class diagrams
basically represent the object-oriented view of a system, which is static in
nature.
2. Object Diagram
Object diagrams can be described as an instance of class diagram. Thus, these
diagrams are more close to real-life scenarios where we implement a system.
3. Component Diagram
Component diagrams represent a set of components and their relationships.
These components consist of classes, interfaces, or collaborations. Component
diagrams represent the implementation view of a system.
4. Deployment Diagram
Deployment diagrams are a set of nodes and their relationships. These nodes
are physical entities where the components are deployed.Deployment
diagrams are used for visualizing the deployment view of a system. This is
generally used by the deployment team.

Behavioral Diagrams
5. Use Case Diagram
Use case diagrams are a set of use cases, actors, and their relationships. They
represent the use case view of a system.
6. Sequence Diagram
A sequence diagram is an interaction diagram. From the name, it is clear that
the diagram deals with some sequences, which are the sequence of messages
flowing from one object to another.
7. Activity Diagram
Activity diagram describes the flow of control in a system. It consists of
activities and links. The flow can be sequential, concurrent, or branched.

Introduction to StarUML
Open-source modeling software that is used in Unified Modelling Language
where system and software modeling is supported with the UML concept to
generate code for different languages by providing different types of UML
diagrams to develop a fast and flexible UML platform so that requirements and
design are given before starting the project where it is called as a big upfront
design approach for the users who require the software designs to improve
their project and hence to support their UML design diagrams in the system. In
this topic, we are going to learn about StarUML.
StarUML INTERFACE:
Conclusion:
In this practical ,I have studied about concept of software
engineering and star UML.

You might also like