Software engineering.pptx

431 views 15 slides Mar 28, 2023
Slide 1
Slide 1 of 15
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15

About This Presentation

unit-1 notes


Slide Content

Software engineering Unit - 1

Emergence of Software Engineering    Early Computer Programming (1950s): Programs were being written in assembly language. Programs were limited to  about a few hundreds of lines of assembly code. Every programmer developed his own style of writing programs: according to his intuition  (exploratory programming).

High-Level Language Programming (Early 60s) High-level languages such as FORTRAN, ALGOL, and COBOL were introduced: This reduced software development efforts greatly. Software development style was still exploratory. Typical program sizes were limited to a few thousands of lines of source code.

Control Flow-Based Design (late 60s) Size and complexity of programs increased further: Programmers found To over come with this problem, experienced programmers advised: ``Pay particular attention to the   design of the program's control structure.'’                A program's control structure indicates: the sequence in which the program's instructions are executed . Using  flow charting technique: A program having a difficult(messy) flow chart representation: Many programmers  had extensively used assembly languages.

Data-Flow Oriented Design The computers became more powerful and faster with the introduction of Very Large Scale Integrated Circuits (VLSI),  Therefore, various significant developments like networking and GUIs came into existence. A new technique known as data -flow-oriented technique came into existence as the complexity of software could not be dealt with using control flow based design. In data flow oriented design technique, the flow of data through business functions or processes is represented using Data Flow Diagram (DFD).

Object Oriented Design The process of software development has revolutionized by object oriented design technique. It not only includes the best features of structured programming but also some new and powerful features such as encapsulation, data abstraction, inheritance and polymorphism. These new features have broadly helped in the development of well-designed and high-quality software. Object oriented design technique allow reusability of the code. They led to faster software development and high quality programs. But they are easier to adapt and scale, that is large systems can be created by assembling reusable subsystems.

EVOLUTIONARY MODEL : successive model Combination of iterative and incremental model. Here, we break our into smaller parts. Prioritize those parts and deliver to customer one by one.

RAD MODEL Rapid Application Development Linear Sequential, Short cycle (60 – 90 days) RAD Model makes heavy use of reusable software components with an extremely short development cycle.

ChALLENGES : For large projects, sufficient resource are needed for rapid cycle Strong commitment from developers and customer Presupposes modular solution Reusability sometimes implies loss of performance

Following phases are Business Modelling Data Modelling Process modelling Application Modelling Testing and turnover

Business Modelling Information flow among business function is defined by answering questions like What data drivers the business process What data is generated Who generates it Where does the information go, Who process it and so on.

Data Modelling Refined into a set of data objects (entities) that are needed to support the business. The attributes ( character of each entities) are identified and the relation between the data object is defined. Process modelling Data modelling phase are transformed to achive the data flow necessary to implement a business function. Processing descriptions are created for adding, modifying, deleting, or retrieving a data object .

Application Modelling automated tools are used to facilities construction of the software, Even they use the 4 th GL techniques. Testing and turnover Many of the programming components have already been tested since RAD emphasis reuse. This reduces the overall testing time. But new part must be tested, and all interfaces must be fully exercised.

Spiral model Iterative prototyping, with framework activities For example: First circuit: Specification Second circuit : prototype Third circuit : product release Include development and maintance

CHALLENGES: Hard to show controllability (Size and timing of each circuit) Risk assessment is fundamental Model fairly new (less experience)
Tags