1 / 13

Software Engineering

Explore the steps in software engineering, from system analysis to testing. Learn about development models, modularity, and implementation phases. Dive into coupling and cohesion concepts for efficient software design.

amarilyn
Download Presentation

Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Engineering The Software Life Cycle Development Process Models Modularity

  2. The Software Life Cycle • Develop the system • If obsolete stop usage • If not obsolete use the system • Then modify the system • Then test to see if obsolete

  3. System Development • System Development broken down into 4 parts • Analysis • Design • Implementation • Testing

  4. Development Process Models - Waterfall Model - Incremental Model

  5. Waterfall Model • One phase cannot be started before the other is completed

  6. Incremental Model • Process developed in series of steps • When first group is completed second is started

  7. Analysis • Define the user (one or multiple) • Define the needs (expectations) • Define the requirements (rules/additions) • Define the methods (methods to meet the requirements

  8. Design Phase • Modularity • A) package is divided into small groups (modules) • B) each Module is designed, tested and linked • Tools • A) structure chart • a) shows steps to break down package • b) shows interaction between parts

  9. Coupling A measuring of how tightly modules are bound to each other Cohesion Measures how closely the processes are related Modularity

  10. Coupling • Data coupling (sends min data, best form) • Stamp coupling (sends structures) • Control coupling (sends flags) • Global coupling (uses global variables, worst form) • Content Coupling (refers directly to data)

  11. Cohesion • Functional Cohesion (one process) • Sequential Cohesion (two or more related tasks) • Communicational Cohesion (combines processes on the same data) • Procedural Cohesion (combines unrelated processes linked by control flow) • Temporal Cohesion (combines unrelated processes that always occur together) • Logical Cohesion (combines related processes only by the controlling entity) • Coincidental Cohesion (combines unrelated processes)

  12. Implementation Phase • Tools • A) flowchart given to show logical flow of data • B) a Pseudocode is written (partly in English and partly in logic) that describes an algorithm • Code • A code is written in a language specific to the project

  13. Testing • Black Box Testing • Done by the engineer who ha no idea what is inside the program and how it works • White Box Testing • Done by the programmer who knows everything about the program • Hardest and most tedious step of system development

More Related