0% found this document useful (0 votes)
5 views5 pages

Software Design Process

The Software Design Process involves planning how to transform requirements into a functional system, divided into three design levels: Interface Design, Architectural Design, and Detailed Design. Each level focuses on different aspects, from user interaction to system structure and internal components. The process includes phases such as understanding project requirements, research, and prototyping to ensure the final software meets user and business needs.

Uploaded by

Dr Joshua Tom
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)
5 views5 pages

Software Design Process

The Software Design Process involves planning how to transform requirements into a functional system, divided into three design levels: Interface Design, Architectural Design, and Detailed Design. Each level focuses on different aspects, from user interaction to system structure and internal components. The process includes phases such as understanding project requirements, research, and prototyping to ensure the final software meets user and business needs.

Uploaded by

Dr Joshua Tom
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

Software Design Process

Software Design Process is the phase where developers plan how to turn a set of requirements
into a working system. Like a blueprint for the software. Instead of going straight into writing
code, developers break down complex requirements into smaller, manageable pieces, design
the system architecture, and decide how everything will fit together and work.

The software design process can be divided into the following three levels or phases of design:

Software Design Levels

1. 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:

1. Precise description of events in the environment, or messages from agents to which the
system must respond.

2. Precise description of the events or messages that the system must produce.

1
3. Specification of the data, and the formats of the data coming into and going out of the
system.

4. Specification of the ordering and timing relationships between incoming events or


messages, and outgoing events or outputs.

2. 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:

1. Gross decomposition of the systems into major components.

2. Allocation of functional responsibilities to components.

3. Component Interfaces.

4. Component scaling and performance properties, resource consumption properties,


reliability properties, and so forth.

5. Communication and interaction between components.

The architectural design adds important details ignored during the interface design. Design of
the internals of the major components is ignored until the last phase of the design.

3. Detailed Design

Detailed 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:

1. Decomposition of major system components into program units.

2. Allocation of functional responsibilities to units.

3. User interfaces.

4. Unit states and state changes.

5. Data and control interaction between units.

6. Data packaging and implementation, including issues of scope and visibility of program
elements.

7. Algorithms and data structures.

2
Software Design Phases

The Actual Software Design process travel through the one end to another end of making and
Software well with completion of requirements and the phases which included in the same that
are bellow:

Software Design Phases

1. Understanding Project Requirements

Before jumping into the design, the first step is to make sure the team understands what the
users need, what the business goals are, and any potential challenges. This understanding sets
the foundation for creating a design that meets both user and business needs.

2. Research, Analysis, and Planning

During this phase, the team gathers data through methods like interviews, surveys, and focus
groups. This helps get a clearer picture of what the users want and allows the team to design
with the user in mind, ensuring the software will truly meet their needs.

3. Designing the Software

In the design phase, the team starts creating visual elements like wireframes, user stories, and
flow diagrams to map out how the system will work. Based on the feedback, prototypes are
created and fine-tuned to make sure the design is moving in the right direction.

4. Technical Design

3
After gathering feedback, the team gets into more details with the technical design. This phase
involves creating a thorough technical document that outlines exactly how the software will be
implemented, including specific components and how they will work together.

5. User Interface Design

The focus here is on making sure the software is easy to use. UI designers work on the visual
elements, navigation, and overall user experience to ensure the interface is intuitive and
friendly.

6. Prototyping

Prototypes are created to visualize the design and functionality before the full development
process begins. These can range from simple wireframes (low fidelity) to fully interactive models
(high fidelity) depending on the stage of development.

Elements of Software Design

Good software design is built on several core element that work together to create effective
system.

Software Design Process

4
1. 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.

A solid architecture verify the system is flexible, stable, and easy to maintain over time.

2. Modules: Modules as the building blocks of the system. Each one handles a specific task or
feature. Breaking a system into smaller modules makes it easier to develop, test, and maintain
the system.

These are components that handle one specific task in a system. A combination of the modules
makes up the system.

3. Components: This provides a particular function or group of related functions. They are made
up of modules. Organizing the system into components helps keep the code clean and makes
the system more adaptable.

4. Interfaces: These are smaller units within modules that focus on specific functions. This is the
shared boundary across which the components of a system exchange information and relate.

5. Data: Data is at the heart of any system. It’s all about how information is stored, accessed,
and shared. This is the management of the information and data flow.

You might also like