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

Lecture 3.1.1 Objective and Levels of Software

The document discusses

Uploaded by

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

Lecture 3.1.1 Objective and Levels of Software

The document discusses

Uploaded by

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

UNIVERSITY INSTITUTE OF COMPUTING

UNIT-3
Bachelor of Computer Applications
Software Engineering
(21CAT-312/21SCT-312/22CAT-213/22SCT-213)

DISCOVER . LEARN . EMPOWER


Vision of the Department
• To be a Centre of Excellence for nurturing computer professionals with strong
application expertise through experiential learning and research for matching the
requirements of industry and society instilling in them the spirit of innovation and
entrepreneurship.
Mission of the Department
• M1. To provide innovative learning centric facilities and quality-oriented
teaching learning process for solving computational problems.
• M2. To provide a frame work through Project Based Learning to support
society and industry in promoting a multidisciplinary activity.
• M3. To develop crystal clear evaluation system and experiential learning
mechanism aligned with futuristic technologies and industry.
• M4. To provide doorway for promoting research, innovation and
entrepreneurship skills incollaboration with industry and academia.
• M5. To undertake societal activities for upliftment of rural/deprived sections of
the society.
Course Outcomes
• CO1:Apply software development life cycle and select appropriate SDLC model
for software development as per requirement of project.
• CO2:Analyze different software development process models and software
requirements specifications for different projects.
• CO3:Develop software requirements specifications document and data flow
diagram to describe flow of information of the software project.
• CO4:Design or develop test cases to perform testing of their code by using black
box and white box testing techniques and document the analysis.
• CO5:Criticize and compare various design approaches and use modern
engineering tools necessary for software project management.
Syllabus of Unit 3rd
Topics to be Covered
• Introduction of Software Design
• Objective of Software Design
• Software Design Process
Introduction of Software Design
• Software design is a mechanism to transform user requirements into some suitable
form, which helps the programmer in software coding and implementation. It
deals with representing the client's requirement, as described in SRS (Software
Requirement Specification) document, into a form, i.e., easily implementable
using programming language.
• The software design phase is the first step in SDLC (Software Design Life Cycle),
which moves the concentration from the problem domain to the solution domain.
In software design, we consider the system to be a set of components or modules
with clearly defined behaviors & boundaries.
Elements of a System
• Architecture – This is the conceptual model that defines the structure, behavior,
and views of a system. We can use flowcharts to represent and illustrate the
architecture.
• Modules – These are components that handle one specific task in a system. A
combination of the modules makes up the system.
• Components – This provides a particular function or group of related functions.
They are made up of modules.
• Interfaces – This is the shared boundary across which the components of a
system exchange information and relate.
• Data – This is the management of the information and data flow.
Levels of Software Design
• The software design process can be divided into the following three levels of
phases of design:
• Interface Design
• Architectural Design
• Detailed Design
Levels of Software Design
• Interface Design: Interface design is the specification of the interaction between a system and its
environment. this phase proceeds at a high level of abstraction with respect to the inner workings
of the system i.e, during interface design, the internal of the systems are completely ignored and
the system is treated as a black box. Attention is focused on the dialogue between the target system
and the users, devices, and other systems with which it interacts. The design problem statement
produced during the problem analysis step should identify the people, other systems, and devices
which are collectively called agents. Interface design should include the following details:
• Precise description of events in the environment, or messages from agents to which the system
must respond.
• Precise description of the events or messages that the system must produce.
• Specification of the data, and the formats of the data coming into and going out of the system.
• Specification of the ordering and timing relationships between incoming events or messages, and
outgoing events or outputs.
Levels of Software Design
• Architectural Design: Architectural design is the specification of the major
components of a system, their responsibilities, properties, interfaces, and the
relationships and interactions between them. In architectural design, the overall
structure of the system is chosen, but the internal details of major components are
ignored. Issues in architectural design includes:
• Gross decomposition of the systems into major components.
• Allocation of functional responsibilities to components.
• Component Interfaces
• Component scaling and performance properties, resource consumption properties,
reliability properties, and so forth.
• Communication and interaction between components.
Levels of Software Design
• Detailed Design: Design is the specification of the internal elements of all major
system components, their properties, relationships, processing, and often their
algorithms and the data structures. The detailed design may include:
• Decomposition of major system components into program units.
• Allocation of functional responsibilities to units.
• User interfaces
• Unit states and state changes
• Data and control interaction between units
• Data packaging and implementation, including issues of scope and visibility of
program elements
• Algorithms and data structures
Objective of Software Design
• The following objectives describe what is software design in software
engineering.
Objective of Software Design
• Correctness: A good design should be correct, which means that it should
correctly implement all of the system's features.
• Efficiency: A good software design should consider resource, time, and cost
optimization parameters.
• Understandability: A good design should be easy to grasp, which is why it
should be modular, with all parts organized in layers.
• Completeness: The design should include all components, such as data structures,
modules, and external interfaces, among others.
• Maintainability: A good software design should be flexible when the client issues
a modification request.
Objective of Software Design
• Usability: It is accessed by considering the factors such as human factor, overall
aesthetics, consistency and documentation.
• Functionality: It evaluates the feature set and capabilities of the program.
• Performance: It is measured by considering processing speed, response time,
resource consumption, throughput and efficiency.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy