Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Software Engineering Dr. Basem Alkazemi

Similar presentations


Presentation on theme: "Introduction to Software Engineering Dr. Basem Alkazemi"— Presentation transcript:

1 Introduction to Software Engineering Dr. Basem Alkazemi bykazemi@uqu.edu.sa http://www.uqu.edu.sa/page/ar/137690

2 Course Assessment Group Project (30%) Midterm (20%) Course Work (10%) Final (40%)

3 Objectives Develop the necessary skill for building and managing complex software systems. Establish organizational structure and team work capabilities. Explore a number of tools to help in facilitating software project management and task scheduling

4 Reading List Software Engineering 8 th ed by Ian Sommerville. Data Structures and Algorithms in Java 2 nd edition by Michael T. Goodrich & Roberto Tamassia. http://java.sun.com/docs/books/tutorial/

5 What is Software Engineering Is the establishment of framework to manage software development and produce systems that is of high quality and satisfy customer requirements within the planned time frame and budget.

6 What is System A system is a collection of interrelated components that interact together in order to provide a set of services to their intended users. It encompass functional and non- functional properties that developers need to consider in order to serve the right application.

7 Hardware/Software

8 Software Problems Developed usually in an Ad-Hoc manner. Source code is tangled and highly coupled. Software is not delivered. Software is delivered but late. Software is delivered but never used. Software is delivered on time but without any documentations. Rapid technology change. Change customer requirements.

9 Why Projects Fail Unrealistic goals. Inaccurate of needed resources. Ambiguous customer requirements. Poor project management. Inappropriate team skills.

10 Software Development Stages Requirement analysis and specification Architectural design Detailed system design Implementation Testing Deployment Maintenance

11 Software Process Model Waterfall Model V-Model Evolutionary Model Phase Development Model Spiral Model Component-based Model

12 Waterfall Model

13 V-Model

14 Evolutionary Model Iteration 1Iteration 3Iteration 2Iteration 4 Req/spec Design Code Test Req/spec Design Code Test Req/spec Design Code Test Req/spec Design Code Test New Req

15 Phase Development Model

16 Spiral Model PLAN DEVELOP AND TEST DETERMINE GOALS, ALTERNATIVES, CONSTRAINTS EVALUATE ALTERNATIVES AND RISKS Requirements, life-cycle plan Budget 1 Alternatives 1 Constraints 1 Risk analysis 1 2 3 4 Constraints 2 3 4 Budget 2 3 4 Alternatives 2 3 4 Prototype 1 Proto- type 2 Proto- type 3 Proto- type 4 Concept of operation Software requirements Validated requirements Development plan Integration and test plan Software design Validated, verified design Detailed design Code Unit test System test Acceptance test Implementation plan start

17 Component-based Model Req/spec Design Code Test Explore Available Components Select Components Assemble System Examine Component 1 2 12 34 2 1


Download ppt "Introduction to Software Engineering Dr. Basem Alkazemi"

Similar presentations


Ads by Google