Presentation is loading. Please wait.

Presentation is loading. Please wait.

In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani www.sadighim.ir Chapter 1.

Similar presentations


Presentation on theme: "In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani www.sadighim.ir Chapter 1."— Presentation transcript:

1 In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani www.sadighim.ir Chapter 1

2 Outline People and their responsibilities Good software Software life cycle; Software process What is SE? Why SE? / Importance Software development model Few related concepts

3 People and their responsibilities Sponsors: those who pay or decides Users Operators: those who keep a system operational Developers: those who make Maintainers: those who fix errors, change an d upgrade Vendors: those who distribute and sell

4

5 Good software For end user For sponsor For maintainer For vendor For developer Mutual effects

6

7 Software life cycle; Software process Requirement specification Development Analysis Design Implement Test Deployment Evolution Retirement

8

9 What is SE? By definition: Systematic approach to development, operation, maintenance and retirement of software By its goals: Production of good software, on time and on cost. By terms: Software Engineering

10

11

12 Why SE? Historical background Improving role and importance More requests Decreasing hardware costs; increasing hardware power More investments Software attributes (such as invisibility) Expensive and not simple production Lack of human experts

13

14 Software development model A model is a symbol of reality (chapter 12) A software development model introduces: Phases and the framework of each phase Products of each phase Criteria for moving from one phase to the other Syntax and semantics for related notations

15

16 Water fall model

17 Spiral model

18 Fountain model

19 Object oriented model

20 V model

21 Rapid application development model

22 Capability maturity model سطحنامفرايند 1 بدوي (initial) پراكنده. 2 قابل تكرار (repeatable) موفقيت ‌ هاي توليد قابل تكرار هستند. 3 تعريف شده (defined) به خوبي مشخص و درك شده؛پ تعريف شده در رويه ‌ هاي استاندارد؛ با ابزارها و روش ‌ ها؛ تنها كميت قابل پيش ‌ بيني است. 4 مديريت شده به لحاظ كميت (quantitatively managed) استفاده از اندازه ‌ گيري ‌ هاي دقيق؛ زير فرايندهاي كنترل شده؛ كيفيت قابل پيش ‌ بيني است. 5 بهينه شونده (optimizing) رشد مداوم؛ رشد محصول و رشد فنّاوري؛ هم فرايندهاي تعريف شده و هم مجموعه استانداردهاي سازماني؛ هردو هدفِ فعاليت ‌ هاي رشدِ قابل اندازه ‌ گيري هستند. Table 1-1

23 Repetitive and incremental

24 Continuation of activities

25 Method, methodology and approach Method: instruction and set of steps Methodology: set of documented methods; which may be added by educational plan and contents, workshops and tools Approach: selected model and method or methodology by a person or company

26 Table 1-2 Agile Unified Process (AUP) Constructionist design methodology (CDM) Dynamic Systems Development Method Enterprise Unified Process (EUP) Extreme Programming (XP) since 1999 Flowcharting ICONIX Process (use case driven object modeling with UML) Information Engineering (IE/IEM) Jackson Structured Programming Metaprogramming, subject of Charles Simonyi's doctoral thesis MPMM Object Oriented Design using Prototype Methodology (OODPM) since 1994 Open Unified Process Praxis Rational Unified Process (RUP) Scrum (development) Structured programming since 1969 Structure System Analysis and Design Method (SSADM) System Development Methodology Top-down programming Virtual finite state machine (VFSM) since 1990's Waterfall model


Download ppt "In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani www.sadighim.ir Chapter 1."

Similar presentations


Ads by Google