Download presentation
Presentation is loading. Please wait.
Published byTabitha Goodman Modified over 9 years ago
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
5
Good software For end user For sponsor For maintainer For vendor For developer Mutual effects
7
Software life cycle; Software process Requirement specification Development Analysis Design Implement Test Deployment Evolution Retirement
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
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
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
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.