SOFTWARE DEVELOPMENT
By:
K.YesuBabu Setty
B.Siva
K.Bhavya
K.Bhargava sri sai
K.Rambabu
INDEX
Software system design and development
Development methodologies and tools
Software Design
Deriving a solution which satisfies
software requirements
Stages of Design
Problem understanding
Look at the problem from different angles to discover the
design requirements.
Identify one or more solutions
Evaluate possible solutions and choose the most appropriate
depending on the designer's experience and available resources.
Describe solution abstractions
Use graphical, formal or other descriptive notations to
describe the components of the design.
Repeat process for each identified abstraction
until the design is expressed in primitive terms.
The Design Process
Any design may be modelled as a directed graph made up of
entities with attributes which participate in relationships.
The system should be described at several different levels of
abstraction.
Design takes place in overlapping stages. It is artificial to
separate it into distinct phases but some separation is usually
necessary.
Phases in the Design Process
Architectural
design
Abstract
specificatio
n
Interface
design
Component
design
Data
structure
design
Algorithm
design
Sy stem
architecture
Software
specification
Interface
specification
Component
specification
Data
structure
specification
Algorithm
specification
Requirements
specification
Design activities
Design products
Design Phases
• Architectural design: Identify sub-systems.
• Abstract specification: Specify sub-systems.
• Interface design: Describe sub-system interfaces.
• Component design: Decompose sub-systems into components.
• Data structure design: Design data structures to hold problem data.
• Algorithm design: Design algorithms for problem functions.
Design
Computer systems are not monolithic: They are usually composed of
multiple, interacting modules.
Modularity has long been seen as a key to cheap, high quality
software.
The goal of system design is to decode:
What the modules are
What the modules should be
How the modules interact with one-another
Development: Teamwork
Code Green. Test Units.
Take help of Development Tools
You figured out you need a change in some part, you
could change it, but others’ code can break?
You hardly understand what your friend means by
variable baln or function register()
Your disc crashed and your codes are gone?
You’ve created too many folders like code_old
code_working, code_new2, code_final… now what?
How do you merge everybody’s code to a full-functional
system?
Understanding Your Responsibility
You need to
work with a
lot of people!
Waterfall Model
Spiral
Rad
Software Development tools
• * Compiler
• * Assembler
• * Linker and Locator
• * Debugger
• * Emulator
• * Simulator
• * Profiler
 Compiler :- Software program that converts source code that written in
high level programming language into low level language.
 Assembler:- An Assembler is software program that converts source
code written in assembly language into machine language.
 Linker and Locater:-
 A linker or link editor is a program that takes one or more objects
generated by compilers and assembles them into a single
executable program.
 Locater will produce an output file that contains a binary image
that can be loaded into the target ROM.
Profiler:- A Software Program that gathers information about a
program during execution.
Emulator:- An emulator is a piece of Hardware/Software that enables
one computer system to run programs that are written for another
computer system.
Simulator:- Simulator is a piece of Hardware/Software that simulates
another system. This tests the program on the development processor.
Software System Development Methodologies, tools, design and life cycle by K.YesuBabu Setty

Software System Development Methodologies, tools, design and life cycle by K.YesuBabu Setty

  • 1.
  • 2.
    INDEX Software system designand development Development methodologies and tools
  • 3.
    Software Design Deriving asolution which satisfies software requirements
  • 4.
    Stages of Design Problemunderstanding Look at the problem from different angles to discover the design requirements. Identify one or more solutions Evaluate possible solutions and choose the most appropriate depending on the designer's experience and available resources. Describe solution abstractions Use graphical, formal or other descriptive notations to describe the components of the design. Repeat process for each identified abstraction until the design is expressed in primitive terms.
  • 5.
    The Design Process Anydesign may be modelled as a directed graph made up of entities with attributes which participate in relationships. The system should be described at several different levels of abstraction. Design takes place in overlapping stages. It is artificial to separate it into distinct phases but some separation is usually necessary.
  • 6.
    Phases in theDesign Process Architectural design Abstract specificatio n Interface design Component design Data structure design Algorithm design Sy stem architecture Software specification Interface specification Component specification Data structure specification Algorithm specification Requirements specification Design activities Design products
  • 7.
    Design Phases • Architecturaldesign: Identify sub-systems. • Abstract specification: Specify sub-systems. • Interface design: Describe sub-system interfaces. • Component design: Decompose sub-systems into components. • Data structure design: Design data structures to hold problem data. • Algorithm design: Design algorithms for problem functions.
  • 8.
    Design Computer systems arenot monolithic: They are usually composed of multiple, interacting modules. Modularity has long been seen as a key to cheap, high quality software. The goal of system design is to decode: What the modules are What the modules should be How the modules interact with one-another
  • 9.
  • 10.
  • 11.
    Take help ofDevelopment Tools You figured out you need a change in some part, you could change it, but others’ code can break? You hardly understand what your friend means by variable baln or function register() Your disc crashed and your codes are gone? You’ve created too many folders like code_old code_working, code_new2, code_final… now what? How do you merge everybody’s code to a full-functional system?
  • 12.
    Understanding Your Responsibility Youneed to work with a lot of people!
  • 13.
  • 14.
  • 15.
  • 16.
    Software Development tools •* Compiler • * Assembler • * Linker and Locator • * Debugger • * Emulator • * Simulator • * Profiler
  • 17.
     Compiler :-Software program that converts source code that written in high level programming language into low level language.  Assembler:- An Assembler is software program that converts source code written in assembly language into machine language.  Linker and Locater:-  A linker or link editor is a program that takes one or more objects generated by compilers and assembles them into a single executable program.  Locater will produce an output file that contains a binary image that can be loaded into the target ROM.
  • 18.
    Profiler:- A SoftwareProgram that gathers information about a program during execution. Emulator:- An emulator is a piece of Hardware/Software that enables one computer system to run programs that are written for another computer system. Simulator:- Simulator is a piece of Hardware/Software that simulates another system. This tests the program on the development processor.