©Brooks/Cole, 2003 Chapter 10 Software Engineering.

Slides:



Advertisements
Similar presentations
Lecture 6: Software Design (Part I)
Advertisements

10 Software Engineering Foundations of Computer Science ã Cengage Learning.
Ch 3 System Development Environment
Information Systems Analysis and Design
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Essentials of Systems Analysis and Design Fourth Edition Joseph S. Valacich Joey F.
Chapter 1 The Systems Development Environment
© Prentice Hall CHAPTER 9 Application Development by Information Systems Professionals.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Jump to first page 1 System Design (Finalizing Design Specifications) Chapter 3d.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 15 Finalizing.
Computers: Tools for an Information Age
Chapter 1 Principles of Programming and Software Engineering.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Chapter 2: Developing a Program Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved.
1-1 © Prentice Hall, 2007 Chapter 1: The Object-Oriented Systems Development Environment Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Copyright 2006 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Third Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Introduction to Computer Technology
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Tenth Edition by J. Glenn Brookshear Chapter.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 1.1.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter 1 The Systems.
DCT 1123 PROBLEM SOLVING & ALGORITHMS INTRODUCTION TO PROGRAMMING.
Continuation From Chapter From Chapter 1
System Implementation System Implementation - Mr. Ahmad Al-Ghoul System Analysis and Design.
The Design Discipline.
CIS 321—IS Analysis & Design
Chapter 15 Systems Development. 2 Learning Objectives When you finish this chapter, you will  Understand the systems development life cycle.  Be able.
Chapter 7 Software Engineering Objectives Understand the software life cycle. Describe the development process models.. Understand the concept of modularity.
Chapter 7 Software Engineering Objectives Understand the software life cycle. Describe the development process models. Understand the concept of modularity.
Pertemuan 5 Pengembangan Teknologi Informasi Matakuliah: H0402/PENGELOLAAN SISTEM KOMPUTER Tahun: 2005 Versi: 1/0.
Chapter 1: The Object-Oriented Systems Development Environment Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
Chapter 16 Quality Assurance Through Software Engineering Systems Analysis and Design Kendall & Kendall Sixth Edition.
The Program Development Cycle
1-1 © Prentice Hall, 2007 Chapter 1: The Object-Oriented Systems Development Environment Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
Copyright © 2015 Pearson Education, Inc. Chapter 7: Software Engineering.
Programming Lifecycle
COP 3530 PROGRAM, FILE & DATA STRUCTURES Syllabus Syllabus Lab Information Lab Information Overrides Overrides Questions? Questions?
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
SE: CHAPTER 7 Writing The Program
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
Software Engineering 1 Some Definitions Lesson 2.
Top-Down Design and Modular Development. The process of developing methods for objects is mostly a process of developing algorithms; each method is an.
Chapter 7 Software Engineering Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Introduction to Computer Application (IC) MH Room 517 Time : 7:00-9:30pm.
Chapter 10 Software Engineering. Understand the software life cycle. Describe the development process models. Understand the concept of modularity in.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Program Development Cycle
Software Engineering and Object-Oriented Design Topics: Solutions Modules Key Programming Issues Development Methods Object-Oriented Principles.
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
SOFTWARE ENGINEERING Lecture 6 Networks and Communication Department 1.
1-1 © Prentice Hall, 2004 Chapter 1: The Object-Oriented Systems Development Environment Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
Computer Science: A Structured Programming Approach Using C1 Objectives ❏ To design and implement programs with more than one function ❏ To be able to.
Chapter 10 Software Engineering. Understand the software life cycle. Describe the development process models. Understand the concept of modularity in.
Software Design and Development Development Methodoligies Computing Science.
C_ITIP211 LECTURER: E.DONDO. Unit 1 : The Systems Development Environment.
Chapter 7: Software Engineering
Chapter 15 Finalizing Design Specifications
Chapter 15 Finalizing Design Specifications
System Design and Modeling
System Design.
Software Engineering Summarized Slides.
Software engineering Lecture 6 Networks and Communication Department.
Chapter 15 Finalizing Design Specifications
Qbasic Modular Programming.
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
CS310 Software Engineering Lecturer Dr.Doaa Sami
Presentation transcript:

©Brooks/Cole, 2003 Chapter 10 Software Engineering

©Brooks/Cole, 2003 Understand the software life cycle. Describe the development process models. Understand the concept of modularity in software engineering. Understand the importance of quality in software engineering. After reading this chapter, the reader should be able to: O BJECTIVES Understand the role of documentation in software engineering.

©Brooks/Cole, 2003 SOFTWARELIFECYCLESOFTWARELIFECYCLE 10.1

Figure 10-1 System life cycle

©Brooks/Cole, 2003 Figure 10-2 System development phases

©Brooks/Cole, 2003 Analysis phase ► Four steps in the analysis phase:  Define the user  Define the needs  Define the requirement  Define the methods

©Brooks/Cole, 2003 Design phase ► The design phase defines how the system will accomplish what was defined in the analysis phase.  Modularity ( 模組化 ):  Tools : example -- a structure chart ► A structure chart shows how to break your package into logical steps; each step is a separate module.

©Brooks/Cole, 2003 Implementation phase ► In the implementation phase, you create the actual programs. ► Tools:  Flowchart  Pseudocode ► Coding:  The choice of the language is based on the efficiency of the language for that particular application.

©Brooks/Cole, 2003 Testing phase ► The testing phase can be a time-consuming part of program development.  Black box testing ► Black box testing is done by the system test engineer and the user.  White box testing ► White box testing is the responsibility of the programmer.

©Brooks/Cole, 2003 DEVELOPMENTPROCESSMODELSDEVELOPMENTPROCESSMODELS 10.2

Figure 10-3 Waterfall model

©Brooks/Cole, 2003 Waterfall model ► Figure 10.3 ► The development process flows in only one direction. ► A phase cannot be started until the previous phase is completed. ► Advantage: each phase is completed before the next phase starts ► Disadvantage: the difficulty in locating a problem

©Brooks/Cole, 2003 Figure 10-4 Incremental model ► The process is developed in a series of steps.

©Brooks/Cole, 2003 MODULARITYMODULARITY 10.3

Modularity ► Modularity  To break a large project into smaller parts that can be understood and handled easily  To divide a large program into small programs that can communicate with each other ► Tools : a structure chart and a class diagram  A structure chart shows how to break your package into logical steps; each step is a separate module.  A class diagram is used in object-oriented programming to show the relationships between classes.

©Brooks/Cole, 2003 Modularity ► Modularity  Coupling ( 結合 ) : ► Coupling is a measure of how tightly two modules are bound to each other.  Cohesion ( 結合力 ) : ► Cohesion is a measure of how closely the processes in a program are related.

©Brooks/Cole, 2003 QUALITYQUALITY 10.4

Quality ► Definition: Quality software  Software that satisfies the user ’ s explicit ( 明示的 ) and implicit ( 暗示的 ) requirements, is well documented, meets the operating standards of the organization, and runs efficiently on the hardware for which it was developed.

©Brooks/Cole, 2003 Figure 10-5 Quality factors

©Brooks/Cole, 2003 Figure 10-6 Quality circle

©Brooks/Cole, 2003 DOCUMENTATIONDOCUMENTATION 10.5

Documentation ► User documentation ► System documentation  Documentation in the analysis phase  Documentation in the design phase  Documentation in the implementation phase  Documentation in the testing phase ► Documentation as an ongoing process  If the package is modified, all modifications and their relationships with the original package must also be documented.

©Brooks/Cole, 2003 Key terms ► Analysis phase ► Black box testing ► Design phase ► Efficiency ► Flexibility ► Flowchart ► Implementation phase ► Incremental model ► Modularity ► Modules ► Pseudocode ► Quality circle ► Quality software ► Reliability ► Reusability ► Security ► Software engineering ► Software life cycle ► Structure chart ► System documentation ► Testing phase ► Waterfall model ► White box testing