UNIT 5 EMBEDDED SYSTEM DEVELOPMENT

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Software Life Cycle Requirements analysis System design Program design Program implementation (coding) Unit testing Integration testing System testing.
Lecture # 2 : Process Models
Multimedia Specification Design and Production 2013 / Semester 1 / week 7 Lecturer: Dr. Nikos Gazepidis
Software Project Management
CS487 Software Engineering Omar Aldawud
© 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. System design techniques Design methodologies. Requirements and specification. 1.
Modeling the Process and Life Cycle CSCI 411 Advanced Database and Project Management Monday, February 2, 2015.
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
© 2000 Morgan Kaufman Overheads for Computers as Components System design techniques zDesign methodologies. zRequirements and specification.
CS 325: Software Engineering January 13, 2015 Introduction Defining Software Engineering SWE vs. CS Software Life-Cycle Software Processes Waterfall Process.
Software Process Models
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 2 Software Processes.
CS 501: Software Engineering
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Software Life Cycle Model
1 CMPT 275 Software Engineering Software life cycle.
Chapter 2 The process Process, Methods, and Tools
Teaching material for a course in Software Project Management & Software Engineering – part II.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Systems Analysis and Design in a Changing World, Fourth Edition
Software Engineering - Abdul Majeed. What is software? Definition of Software Engineering Software Process Generic view of Software Engineering Software.
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 2 Software Processes.
Lecture 2 System Development Lifecycles. Building a house Definition phase Analysis phase Design phase Programming phase System Test phase Acceptance.
Software Development Life Cycle (SDLC)
V-Shaped Software Development Life Cycle Model. Introduction: Variation of water fall model. Same sequence structure as water fall model. Strong emphasis.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Chapter 2: The Process. What is Process? Software Engineering Process is the glue that holds the technology layers together and enables rational and timely.
Advanced Software Engineering Dr. Cheng
SDLC and Related Methodologies
Announcements/Assignments
Software Development - Methodologies
Software Development.
Introduction to Systems Analysis and Design
Software Development Life Cycle Waterfall Model
Methodologies and Algorithms
Lecture 3 Prescriptive Process Models
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Chapter 1: Introduction to Systems Analysis and Design
Fundamentals of Information Systems, Sixth Edition
Software Development methodologies
Software Life Cycle “What happens in the ‘life’ of software”
CS 5150 Software Engineering
Chapter 1 The Systems Development Environment
Software Processes (a)
Software development life cycle models
Software Process Models
Software Process Models
System design techniques
Life Cycle Models PPT By :Dr. R. Mall.
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Methodologies For Systems Analysis.
Software life cycle models
Process Models Coming up: Prescriptive Models.
Software Process Models
CS101 Introduction to Computing Lecture 20 SW Development Methodology
CHAPTER 10 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Chapter 1: Introduction to Systems Analysis and Design
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
MANAGING THE DEVELOPMENT AND PURCHASE OF INFORMATION SYSTEMS
SDLC and Related Methodologies
Software Engineering Lecture 17.
SDLC (Software Development Life Cycle)
Chapter 1: Introduction to Systems Analysis and Design
SOFTWARE ENGINEERING CS-5337: Introduction
Presentation transcript:

UNIT 5 EMBEDDED SYSTEM DEVELOPMENT

INTRODUCTION Design issues and techniques. Case studies INTRODUCTION Design issues and techniques. Case studies . Complete design of examples embedded systems

3 GOALS OF DESIGN PROCESS *Time to market. * Design. * Quality.

TIME TO MARKET : Customer always want new features. The product that comes first that wins the market.. Even the customer preferences for the feature generations of the product. The PROFITABLE MARKET LIFE OF some products is 3 to 6 months.. If we get delay for release for the product then we can never make the money for ever. Example : calculators and school bags . Which always should sale in the correct season to grab the money .if we fail we cannot get money so we want to wait for the another season.

DESIGN COST: Consumer products are cost sensitive. Industrial buyers are more concerned about the COST. Designing cost differs from the manufacturing cost- deals about the cost of engineers salaries,computers used in design. Only one or a few copies of embedded system can be build. So design cost can be DOMINATE the MANUFACTURING COSTS. MANUFACTURING COSTS: it tells about the higher volume consumer devices based on the time to market pressures.

QUALITY: Customer not only want their products fast and cheap they also want them to be right. During the design of the product to obtain the high quality product at the end it should have the correctness and reliability and usability

Process change over time . They change due to external and internal forces . Customer may change , requirements change,products change, available components change. People learn to do things better ,they move on to other projects and others comes in and also the companies are brought . Software engineers have spent a lot of time on thinking about the software design processes. Much of this thinking has been motivated by the mainframe computers such as databases. But embedded applications inspired about the software design processes.

Design flow is the sequence of steps to be followed during a design. DESIGN FLOWS: Design flow is the sequence of steps to be followed during a design. Some of the design steps can be performed by tools such as COMPILERS or CAD systems. Other steps can be performed by hand. May be partially or fully automated. Use tools to transform, verify design. Design flow is one component of methodology. Methodology also includes management organization, etc.

WATER FALL MODEL Early model for software development. The first model proposed for the software development process . Introduced by ROYCE.

Major phases of water fall model. requirements architecture coding testing maintenance

Waterfall model steps Requirements: determine basic characteristics. Architecture: decompose into basic modules. Coding: implement and integrate. Testing: exercise and uncover bugs. Maintenance: deploy, fix bugs, upgrade.

Water fall model represents the one way flow of work and the information from the higher level of abstraction. With the limited amount of feed back to the next higher level of abstraction. Top down design is ideal because it employs the good fore knowledge of implementation during the early design phases. It requires an bottom up feed back for most of the design projects. As a result , the waterfall model is today considered as the unrealistic design process.

Waterfall model critique Only local feedback---may need iterations between coding and requirements, for example. Doesn’t integrate top-down and bottom-up design. Assumes hardware is given.

SPIRAL MODEL: system feasibility specification prototype initial system enhanced system requirements design test

An alternative model of software development called the spiral model. While the waterfall model assumes that the system is built once in its entirety . The spiral model assumes that the several versions of the systems will be built . Early systems will be simple mock ups . As the design progresses , more complex systems will be constructed. At each level of design ,the designers go through the requirements,construction and testing phases. At the later stages when more complete versions of the systems are constructed.

Each phase requires more work, widening the design spiral . This successive refinement approach helps the designers understand the system they are working on through the series of the design cycles. The cycles at the top of the spiral are very small and short . While the final cycles at the bottom add detail learned from the earlier cycles of the spiral . The spiral model is more realistic than the waterfall model because of MULTIPLE ITERATIONS are often necessary to add enough detail to complete a design . However in spiral model having too much long of spiral takes more time to design with the major requirement.

SUCCESSIVE REFINEMENT MODEL : specify specify architect architect design design build build test test initial system refined system Overheads for Computers as Components 2nd ed.

HARDWARE/SOFTWARE DESIGN FLOW requirements and specification architecture software design hardware design integration testing © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed.

Embedded computing systems often involve the design of the hardware as well as software . The above diagram shows the design methodology for a combined hardware/software project. Front end activities such as specifications and architecture simultaneously consider hardware and the software aspects. Back end integration and testing consider the entire systems . In the middle ,however ,development of the hardware and software components can go on independently.

CONCURRENT ENGINEERING: when designing the large systems people may lose track of complete design flow and have each designers take a narrow view of his /her role in the design flow. CONCURRENT ENGINEERING attempts to broader approach and optimize the total flow. REDUCED DESIGN TIME is an important goal for an concurrent engineering. It tries to eliminate the “over-the-wall “design steps in which one designer performs an isolated task and then throws the result over the wall to the next designer ,with the little interaction between the two . Concurrent engineering requires eliminating the wall between the design and manufacturing.

CONCURRENT ENGINEERING ELEMENTS : CROSS FUNCTIONAL TEAMS: It includes members from various disciplines involved in the process, including manufacturing,hardware and software design ,marketing and so on. CONCURRENT PRODUCT REALIZATION : Doing several things at once,such as designing various subsystems simultaneously .It is critical to reducing the design time. INCREMENTAL INFORMATION SHARING: As soon as new information is available about the new product it is shared and integrated into the design .They are important to the effective sharing of information in the timely fashion.

INTEGRATED PROJECT MANAGEMENT: It ensures that someone is responsible for the entire project. EARLY AND CONTINUAL SUPPLIER INVOLVEMENT: It makes the best use of suppliers capabilities. EARLY AND CONTINUAL CUSTOMER FOCUS: It ensures that the product best meets the customer’s needs.