Introduction to Software Engineering
|
|
- Christine Hodges
- 5 years ago
- Views:
Transcription
1 Chapter 1 Introduction to Software Engineering
2 Content 1. Introduction 2. Components 3. Layered Technologies 4. Generic View of Software Engineering 4. Generic View of Software Engineering 5. Study of Different Models 6. Process Technology
3 1. Introduction What is Software? Software is nothing but a collection of computer programs and related documents that are intended to provide desired features, functionalities and better performance. Software products may be: 1.Generic-That means developed to be sold to range of different customers. 2.Custom-That means developed for a single customer according to their specifications.
4 Evolution of Software Engineering Early Computer Programming High level language Programming Control flow-based design Data structure-oriented design Data flow-oriented design Object-oriented design Web-based design
5 2. Components Any software consist of three major components Programs, Documents, Operating Procedure. Programis one part of entire software. Documentationconsists of various Manuals.(SRS and Different diagrams) Procedurerepresent instructions for initial setup.(user guide, Installation guide)
6 3. Layered Technologies Softwareengineering is discipline in which theories, methods and tools are applied to develop professional software product. SoftwareEngineering Layers
7 Layered Technologies (Continued..) A qualitymanagement is a backbone of software engineering technology. Processdefines the framework for timely delivery of software Here Actual Methodof implementation is carried out with the help of analysis, design, coding and testing. Toolsare used to bring automation in software development process.
8 Software Characteristics Software is engineered, not manufactured. -In software development process, problems can be rectified. Software does not ware out. -Software cant be replaced by another components like Hardware. Most software is custom built rather than being assembled from components. -In Hardware components such as ICs, capacitors and registers are assembled according to design but this is not done while building software.
9 4. Generic View of Software Engineering Common Process Framework: It is characterized by Process Framework Activities, Task sets and Umbrella Activities. Process Framework Activities: 1.Communication 4. Constructions 2.Planing 5. Deployment (feedback of customer) 3.Modeling Task Set: The task set defines the actual work done in order to achieve the software objective. It is divided to : 1.Collection of software engineering work task 2. Project milestones 3. Software quality assurance points
10 Common Process Framework (Continued) Umbrella Activities : 1.Software project tracking and control (Progress and schedule) 2.Risk Management (may affect project outcomes) 3. SQA (to maintain quality) 4. Formal technical review (remove errors) 5. Software configuration management 6. Work product preparation and production (to create models, log, documentation) 7. Reusability management 8. Measurement.
11 5. Study of Different Models Software Development Life Cycle (SDLC): A framework that describes the activities performed at each stage of a software development project.
12 Phases of SDLC 1. Software Requirement Analysis 2. System Analysis and Design 3. Code Generation 4. Code Testing 5. Implementation 6. Maintenance
13 Phases of SDLC (1) Software Requirement Analysis: This process is also known as feasibility study. In this phase, the development team visits the customer and studies their system. They investigate the need for possible software automation in the given system. By the end of the feasibility study, the team furnishes a document that holds the different specific recommendations for the candidate system. It also includes the personnel assignments, costs, project schedule, target dates etc... The requirement gathering process is intensified and focused specially on software. To understand the nature of the program(s) to be built, the system engineer or "Analyst" must understand the information domain for the software, as well as required function, behavior, performance and interfacing. The essential purpose of this phase is to find the need and to define the problem that needs to be solved
14 Phases of SDLC (2) System Analysis and Design: 1. High Level Design (HLD) List of modules and a brief description of each module. Brief functionality of each module. Interface relationship among modules. Dependencies between modules (if A exists, B exists etc). Database tables identified along with key elements. Overall architecture diagrams along with technology details. 2. Low Level Design (LLD) Detailed functional logic of the module, in pseudo code. Database tables, with all elements, including their type and size. All interface details. All dependency issues Complete input and outputs for a module. A software development model is thus created. Analysis and Design are very crucial in the whole development cycle. Any glitch in the design phase could be very expensive to solve in the later stage of the software development. The logical system of the product is developed in this phase.
15 Phases of SDLC (3) Code Generation: The design must be translated into a machine-readable form. The code generation step performs this task. If the design is performed in a detailed manner, code generation can be accomplished without much complication. Programming tools like compilers, interpreters, debuggers etc... are used to generate the code. Different high level programming languages like C, C++, Pascal, Java are used for coding. With respect to the type of application, the right programming language is chosen.
16 Phases of SDLC (4) Testing: Once the code is generated, the software program testing begins. Different testing methodologies are available to detect the bugs that were committed during the previous phases. Different testing tools and methodologies are available. Some companies build their own testing tools that are tailor made for their own development operations.
17 Phases of SDLC (5) Installation : Installation of the product in its operational environment.
18 Phases of SDLC (6) Maintenance: After the software is released and the client starts using the software, maintenance phase is started. 3 things happen - Bug fixing, Upgrade, Enhancement Bug fixing bugs arrived due to some untested scenarios. Upgrade Upgrading the application to the newer versions of the software. Enhancement - Adding some new features into the existing software.
19 Types of Process flows Linear Process flow Iterative Process flow Evolutionary Process flow Parallel Process flow
20
21 SOFTWARE LIFE CYCLE MODELS Waterfall Model / Linear Sequential Model Prototype Model Rapid Application Development (Rad) Model Evolutionary Process Models: Incremental Model Spiral Model Concurrent Development Model
22 Waterfall Model
23 Waterfall Model The project is divided in to separate distinct phases Each next phase starts after finishing the previous phase. Each phase communicate to next through pre specified output When an error is detected or revision is required it is traced back to one previous phase at a time, until it gets resolved at some earlier phase
24 Waterfall Strengths Easy to understand, easy to use Provides structure to inexperienced staff Milestones are well understood Sets requirements stability Good for management control (plan, staff, track) Works well when quality is more important than cost or schedule
25 Waterfall deficiencies All requirements must be known upfront Deliverables created for each phase are considered frozen(unmoving) reduce flexibility Can give a false impression of progress Does not reflect problem-solving nature of software development iterations of phases Integration is one big bang at the end Little opportunity for customer to preview the system (until it may be too late)
26 When to use the Waterfall Model Requirements are very well known Product definition is stable i.e. Deliverables of each Phase can be frozen. Technology is understood New version of an existing product Porting an existing product to a new platform.
27 Prototyping Model Co m m un icat ion communication Quick plan Q u ick p lan Modeling Quick design Mo d e lin g Q u ick d e sig n Deploym ent Deployment D e live r y delivery & Fe e db& ack feedback Con st r u ct io n Construction o f pof r prototype o t e
28 Prototyping Model This model uses constant user interaction, early in the requirements gathering stage to produce a prototype. Developers build a prototype during the requirements phase Prototype is evaluated by end users Users give corrective feedback Developers further refine the prototype Whentheuserissatisfied,theprototypecode is brought up to the standards needed for a final product.
29 Prototyping Steps A preliminary project plan is developed An partial high-level paper model is created The model is source for a partial requirements specification A prototype is built with basic and critical attributes to show how the eventual software system look like, how input screens and output reports would look like. The designer builds the database user interface algorithmic functions Continue.
30 Prototyping Steps (continued) The designer demonstrates the prototype, the user reviews and evaluates for problems, more features and suggests improvements. Based on feedback the prototype is improved and sent for review. This loop continues until the user is satisfied Finally software product is created based on the prototype.
31 Prototyping Strengths Customers can see the system requirements as they are being gathered Developers learn from customers Amoreaccurateendproduct Unexpected requirements accommodated Allows for flexible design and development Steady, visible signs of progress produced Interaction with the prototype stimulates awareness of additional needed functionality
32 Prototyping Weaknesses The customer may want the prototype delivered. Insufficient analysis User confusion of prototype and finished system Developer misunderstanding of user objectives Excessive development time of the prototype Expense of implementing prototyping
33 When to use Prototyping Requirements are unstable or have to be clarified Where we have a user who can give feedback. Can be used as the requirements clarification stage of a waterfall model Develop user interfaces New, original development
34 Evolutionary Process models Incremental model Spiral model Concurrent Development model
35 Incremental SDLC Model Combines elements of Linear and Parallel process flows Construct a partial implementation of a total system Then slowly add increased functionality The incremental model prioritizes requirements of the system and then implements them in groups. Each subsequent release of the system adds function to the previous release, until all designed functionality has been implemented.
36 Incremental SDLC Model increment # n C o m m u n i c a t i o n P l a n n i n g M o d e l i n g analysis design C o n s t r u c t i o n code t est D e p l o y m e n t d e l i v e r y f e e d b a c k increment # 2 delivery of nt h increment C o m m u n i c a t i o n P l a n n i n g increment # 1 M o d e l i n g analysis design C o n s t r u c t i o n code t est D e p l o y m e n t d e l i v e r y f e e d b a c k delivery of 2nd increment C o m m u n i c a t i o n P l a n n i n g M o d e l i n g analysis design C o n s t r u c t i o n code t est D e p l o y m e n t d e l i v e r y f e e d b a c k delivery of 1st increment project calendar time
37 Incremental Model Strengths Develop high-risk or major functions first Each release delivers an operational product Customercanrespondtoeachbuild Uses divide and conquer breakdown of tasks Initial product delivery is faster Customers get important functionality early Risk of changing requirements is reduced
38 Incremental Model Weaknesses Requires good planning and design Requires early definition of a complete and fully functional system to allow for the definition of increments Well-defined module interfaces are required (some will be developed long before others) Total cost of the complete system is not lower
39 When to use the Incremental Model Funding, schedule, program complexity, or need for early realization of benefits. Mostoftherequirementsareknownupfront but are expected to evolve over time A need to get basic functionality to the market early On projects which have lengthy development schedules Onaprojectwithnewtechnology
40 Spiral Model It is an evolutionary software process model that couples the iterative nature of prototyping and the controlled and systematic aspects of the linear sequential model It provides the potential for rapid development of incremental versions of the software. Software is developed in a series of incremental releases. During early iterations, the incremental release might be a paper model or prototype. During later iterations, increasingly more complete versions of the engineered system are produced.
41 Spiral Model
42 Spiral Model Task Regions 1. Customer communication tasks required to establish effective communication between developer and customer. 2. Planning tasks required to define resources, timelines, and other project related information. 3. Risk analysis tasks required to assess both technical and management risks. 4. Engineering tasks required to build one or more representations of the application. Continue
43 Spiral Model Task Regions (continued..) 5. Construction and release tasks required to construct, test, install, and provide user support (e.g., documentation and training). 6. Customer evaluation tasks required to obtain customer feedback based on evaluation of the software representations created during the engineering stage and implemented during the installation stage.
44 Alternative view of Spiral model Examine the project entry point axis Concept development project starts at the core of the spiral New development project If the concept is to be developed into an actual product Product enhancement project when process is inactive, but starts when change is initiated Product maintenance project using customer feedback
45 Alternative view of Spiral model
46 Spiral Model Strengths Provides early indication of risks, without much cost Users see the system early because of rapid prototyping tools Critical high-risk functions are developed first The design does not have to be perfect Users can be closely tied to all lifecycle steps Early and frequent feedback from users Cumulative costs assessed frequently
47 Spiral Model Weaknesses Time spent for evaluating risks too large for small or low-risk projects Time spent planning, resetting objectives, doing risk analysis and prototyping may be excessive The model is complex Risk assessment expertise is required Spiral may continue indefinitely Developers must be reassigned during nondevelopment phase activities May be hard to define objective, verifiable milestones that indicate readiness to proceed through the next iteration
48 When to use Spiral Model When creation of a prototype is appropriate When costs and risk evaluation is important For medium to high-risk projects Long-term project commitment unwise because of potential changes to economic priorities Users are unsure of their needs Requirements are complex New product line Significant changes are expected (research and exploration)
49 Concurrent Development model Also called concurrent engineering Constitutes a series of framework activities, software engineering action, tasks and their associated states All activities exist concurrently but reside in different states It defines a network of activities. Each activity on the network exists simultaneously with other activities Event generated at one point in the process trigger transitions among the states
50 Concurrent Development model n o n e M o d e lin g a c t iv it y U n d e r d e v e lo p m e n t r e p r e s e n t s t h e s t at e o f a s o f t w a r e e ng i n ee r in g a c t iv i t y o r t as k A w a it in g c h a n g e s U n d e r r e v ie w U n d e r r e v is io n B a s e lin e d D o n e
51 Concurrent Development model Usage Often used as the paradigm for the development of client/server applications A client/server system is composed of a set of functional components. When applied to client/server, the concurrent process model defines activities in two dimensions A System dimension -issues are addressed using three activities: design, assembly, and use A Component dimension -addressed with two activities: design and realization Applicable to all types of software development
52 Rapid Application Development Model (RAD) An incremental software process model Having a short development cycle High-speed adoption of the waterfall model using a component based construction approach Creates a fully functional system within a very short span time of 60 to 90 days Multiple software teams work in parallel on different functions Modeling encompasses three major phases: Business modeling, Data modeling and process modeling Construction uses reusable components, automatic code generation and testing
53 Rapid Application Development (RAD) Model Team # n Mo d e lin g business modeling data modeling process modeling Communicat ion Team # 2 Modeling business modeling dat a modeling process modeling Co n st ru ct io n component reuse automatic code generation testing Planning Team # 1 Modeling business modeling dat a modeling process modeling Const ruct ion component reuse aut omat ic code generat ion t est ing Deployment int egrat ion delivery feedback Const ruct ion component reuse aut omat ic code generat ion t est ing days
54 RAD Strengths Reduced cycle time and improved productivity with fewer people means lower costs Time-box approach reduce cost and schedule risk Customer involved throughout the complete cycle minimizes risk of not achieving customer satisfaction and business needs Focus moves from documentation to code Uses modeling concepts to capture information about business, data, and processes.
55 RAD Weaknesses Requires a number of RAD teams Requires commitment from both developer and customer for rapid-fire completion of activities Not suited when technical risks are high Accelerated development process must give quick responses to the user Hard to use with inherited systems Requires a system that can be modularized
56 When to use RAD Reasonably well-known requirements When we have CASE and other modeling tools User involved throughout the life cycle Project can be time-boxed Functionality delivered in increments High performance not required Low technical risks System can be modularized
57 Component Based Development Object-oriented technologies provide the technical framework for this type of model Incorporates many of the characteristics of the spiral model It is evolutionary in nature demanding an iterative approach The engineering activity begins with the identification of candidate classes
58 Component Based Development
59 6. Process Technology The process models must be adapted for use by a software project team For that, process technology tools have been developed to help software organizations Process technology tools allow a software organization to build an automated model of the common process framework, task sets, and umbrella activities This model (or network), can be analyzed to determine typical work flow and examine alternative process structures for reducing development time or cost
60 Process Technology (Continued..) Other process technology tools can also be used to allocate, monitor and control the tasks defined as part of the process model The process technology tool can also be used to coordinate the use of other computer-aided software engineering (CASE) tools that are appropriate for a particular work task
61 Product and Process If the process is weak, the end product will undoubtedly suffer, but an obsessive overreliance on process is also dangerous People derive as much (or more) satisfaction from the creative process as they do from the end product
System Development Life Cycle Methods/Approaches/Models
Week 11 System Development Life Cycle Methods/Approaches/Models Approaches to System Development System Development Life Cycle Methods/Approaches/Models Waterfall Model Prototype Model Spiral Model Extreme
More informationThis tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.
i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give
More informationSystems Analysis & Design
Systems Analysis & Design Dr. Ahmed Lawgali Ahmed.lawgali@uob.edu.ly Slide 1 Systems Analysis & Design Course Textbook: Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition
More informationSoftware Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1
Software Processes Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be
More informationIncremental development A.Y. 2018/2019
Incremental development A.Y. 2018/2019 Incremental development Interleaves the activities of specification, development, and validation. The system is developed as a series of versions (increments), with
More informationTopic 01. Software Engineering, Web Engineering, agile methodologies.
Topic 01 Software Engineering, Web Engineering, agile methodologies. 1 What is Software Engineering? 2 1 Classic Software Engineering The IEEE definition: Software Engineering is the application of a disciplined,
More informationCMSC 435: Software Engineering Section 0201
CMSC 435: Software Engineering Section 0201 Atif M. Memon (atif@cs.umd.edu) 4115 A.V.Williams building Phone: 301-405-3071 Office hours Tu.Th. (11:00am-1:00pm) Don t wait, don t hesitate, do communicate!!
More informationCS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS 1. Explain iterative waterfall and spiral model for software life cycle and various activities
More informationSoftware Process. Software Process
Software Process What is SW process? Definition, Development, Support phases Process models: Waterfall Prototyping Spiral, Incremental & iterative (best practices) UP process model What is it? How does
More informationSpecifying and Prototyping
Contents Specifying and Prototyping M. EVREN KIYMAÇ 2008639030 What is Specifying? Gathering Specifications Specifying Approach & Waterfall Model What is Prototyping? Uses of Prototypes Prototyping Process
More informationDarshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1
Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than
More informationSystems Analysis and Design in a Changing World, Fourth Edition
Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, 4th Edition Learning Objectives Explain the purpose and various phases of the systems development
More informationIntroduction to Software Engineering
Introduction to Software Engineering Gérald Monard Ecole GDR CORREL - April 16, 2013 www.monard.info Bibliography Software Engineering, 9th ed. (I. Sommerville, 2010, Pearson) Conduite de projets informatiques,
More informationISSN: [Kaur* et al., 6(10): October, 2017] Impact Factor: 4.116
IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY COMPARATIVE ANALYSIS OF SOFTWARE DEVELOPMENT MODELS Sandeep Kaur* *Department of computer Science & Engineering, Guru Nanak Dev
More informationModule - 3. System Development Models and System Analysis and Design
Module - 3 System Development Models and System Analysis and Design 3.1 Terminologies 3.11 Various Terminologies used in System Development Models and System Analysis and Design are defined in below section.
More informationDilbert Scott Adams. CSc 233 Spring 2012
Dilbert Scott Adams CSc 233 Spring 2012 Dilbert Scott Adams CSc 233 Spring 2012 2 Dilbert Scott Adams CSc 233 Spring 2012 3 prerequisites CSc 233 Spring 2012 I thought we had agreed long ago that the Department
More informationRequirements and Design Overview
Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions
More informationSoftware Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution
Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Introduction software development projects are large and complex a phased approach to control it is necessary
More informationSystems Analysis and Design
Systems Analysis and Design Michael Brydon Summer 2003 Slide 1 Introduction to the Course Course structure Lectures: material from the Dennis text Labs: in-lab assignments, demonstrations, and consulting
More informationReducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping
Coping with change Change is inevitable in all large software projects. Business changes lead to new and changed system requirements New technologies open up new possibilities for improving implementations
More information*ANSWERS * **********************************
CS/183/17/SS07 UNIVERSITY OF SURREY BSc Programmes in Computing Level 1 Examination CS183: Systems Analysis and Design Time allowed: 2 hours Spring Semester 2007 Answer ALL questions in Section A and TWO
More informationSoftware Engineering Lifecycles. Controlling Complexity
Software Engineering Lifecycles Class url:http://laser.cs.umass.edu/courses/cs320.spring11/ Controlling Complexity Separation of Concerns Planning Ahead Do a little work now to make later work easier The
More informationOBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis
UNIT I INTRODUCTION OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis Design Implementation Testing Maintenance
More informationSoftware Development Chapter 1
Software Development Chapter 1 1. Introduction Software Applications are increasingly used to tackle problems that concern everyday life : Automatic Bank tellers Airline reservation systems Air traffic
More informationProcess Models. Projects Process. Common Process Models. Typical Student Process Model. Waterfall Model
Process Models A process model specifies a general process, usually as a set of stages This model will be suitable for a class of projects i.e. a model provides generic structure of the process that can
More informationBuilding the User Interface: The Case for Continuous Development in an Iterative Project Environment
Copyright Rational Software 2002 http://www.therationaledge.com/content/dec_02/m_uiiterativeenvironment_jc.jsp Building the User Interface: The Case for Continuous Development in an Iterative Project Environment
More informationVO Software Engineering
Administrative Issues Univ.Prof. Dr. Peter Auer Chair for Information Technology Email: auer@unileoben.ac.at Lecture Thursday 10:15 11:45 Project Lab Montag 16:00 19:00 Literature Helmut Balzert, Lehrbuch
More information((MARKS)) (1/2/3...) ((QUESTIO N)) ((OPTION_ A)) What is Software?
SNJB s Late Sau. KBJ COE, Chandwad Department of Computer Engg PART I : Software development process, language and software development environments, language and software design methods, languages and
More informationLecture 7: Software Processes. Refresher: Software Always Evolves
Lecture 7: Software Processes What is a Software Development Process? The Lifecycle of a Software Project Agile vs. Disciplined Some common approaches: RUP, SCRUM, XP, ICONIX, Where UML fits in (next lecture)
More informationProcess of Interaction Design and Design Languages
Process of Interaction Design and Design Languages Process of Interaction Design This week, we will explore how we can design and build interactive products What is different in interaction design compared
More informationAdministrivia. Added 20 more so far. Software Process. Only one TA so far. CS169 Lecture 2. Start thinking about project proposal
Administrivia Software Process CS169 Lecture 2 Added 20 more so far Will limit enrollment to ~65 students Only one TA so far Start thinking about project proposal Bonus points for proposals that will be
More informationHistory of object-oriented approaches
Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented
More informationUser-Centered Development
Software Lifecycle CS470 User-Centered Development User-centered development refers to a design process for creating a system that meets the needs of the user Users should be included in the design process
More informationCS51 SOFTWARE ENGINEERING UNIT I SOFTWARE PRODUCT AND PROCESS
CS51 SOFTWARE ENGINEERING UNIT I SOFTWARE PRODUCT AND PROCESS Software engineering paradigm: The framework activities will always be applied on every project... BUT the tasks (and degree of rigor) for
More informationSecond. Incremental development model
3 rd Stage Lecture time: 8:30 AM-2:30 PM Instructor: Ali Kadhum AL-Quraby Lecture No. : 4 Subject: Software Engineering Class room no.: Department of computer science Second. Incremental development model
More informationChapter 1: Introduction to Systems Analysis
Systems Analysis and Design With UML 2.0 An Object-Oriented Oriented Approach, Second Edition Chapter 1: Introduction to Systems Analysis and Design Alan Dennis, Barbara Wixom, and David Tegarden 2005
More informationHigher National Unit specification: general information. Graded Unit 2
Higher National Unit specification: general information This Graded Unit has been validated as part of the HND Computing: Software Development. Centres are required to develop the assessment instrument
More informationSOFTWARE LIFE-CYCLE MODELS 2.1
SOFTWARE LIFE-CYCLE MODELS 2.1 Outline Software development in theory and practice Software life-cycle models Comparison of life-cycle models 2.2 Software Development in Theory Ideally, software is developed
More informationDEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS SOFTWARE ENGINEERING
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK TWO MARKS UNIT I SOFTWARE PROCESS AND PROJECT MANAGEMENT 1. What is software engineering? Software engineering
More informationManaging Change and Complexity
Managing Change and Complexity The reality of software development Overview Some more Philosophy Reality, representations and descriptions Some more history Managing complexity Managing change Some more
More informationVETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6403 SOFTWARE ENGINEERING II year/ IV sem CSE (Regulation 2013) UNIT 1- SOFTWARE PROCESS AND PROJECT
More informationAssuring Certainty through Effective Regression Testing. Vishvesh Arumugam
Assuring Certainty through Effective Regression Testing Vishvesh Arumugam Agenda Introduction The Problem Magnitude Management Regression Test Efficiency Solution and Approach Test Suite Maintenance Determining
More informationSoftware Verification and Validation (VIMMD052) Introduction. Istvan Majzik Budapest University of Technology and Economics
Software Verification and Validation (VIMMD052) Introduction Istvan Majzik majzik@mit.bme.hu Budapest University of Technology and Economics Dept. of Measurement and Information s Budapest University of
More informationSoftware Engineering Principles
1 / 19 Software Engineering Principles Miaoqing Huang University of Arkansas Spring 2010 2 / 19 Outline 1 2 3 Compiler Construction 3 / 19 Outline 1 2 3 Compiler Construction Principles, Methodologies,
More informationIntroduction to System Analysis and Design
Introduction to System Analysis and Design - Dr. Mahmoud Abu-Arra - Mr. Ahmad Al-Ghoul Learning Objectives Explain systems development tools, including modeling, prototyping, and CASE tools Discuss and
More informationObject-Oriented Systems. Development: Using the Unified Modeling Language
Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 3: Object-Oriented Systems Development Life Cycle Goals The software development process Building high-quality software
More informationModern Software Engineering Methodologies Meet Data Warehouse Design: 4WD
Modern Software Engineering Methodologies Meet Data Warehouse Design: 4WD Matteo Golfarelli Stefano Rizzi Elisa Turricchia University of Bologna - Italy 13th International Conference on Data Warehousing
More informationQualification Specification for the Knowledge Modules that form part of the BCS Level 4 Software Developer Apprenticeship
Qualification Specification for the Knowledge Modules that form part of the BCS Level 4 Software Developer Apprenticeship BCS Level 4 Diploma in Software Development Methodologies BCS Level 4 Diploma in
More informationANZSCO Descriptions The following list contains example descriptions of ICT units and employment duties for each nominated occupation ANZSCO code. And
ANZSCO Descriptions The following list contains example descriptions of ICT units and employment duties for each nominated occupation ANZSCO code. Content 261311 - Analyst Programmer... 2 135111 - Chief
More informationImproved Database Development using SQL Compare
Improved Database Development using SQL Compare By David Atkinson and Brian Harris, Red Gate Software. October 2007 Introduction This white paper surveys several different methodologies of database development,
More informationSoftware processes. Objectives. Contents
2 Software processes Objectives The objective of this chapter is to introduce you to the idea of a software process a coherent set of activities for software production. When you have read this chapter
More informationSOFTWARE ARCHITECTURE & DESIGN INTRODUCTION
SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION http://www.tutorialspoint.com/software_architecture_design/introduction.htm Copyright tutorialspoint.com The architecture of a system describes its major components,
More informationHigher National Unit specification: general information. Graded Unit title: Computing: Networking: Graded Unit 2
Higher National Unit specification: general information This Graded Unit has been validated as part of the HND Computing: Networking. Centres are required to develop the assessment instrument in accordance
More information1. i. What are the 3 major components of a information system and show their relationship input output
Higher National Diploma in Information Technology First Year, Second semesterexamination-2011 IT2005: System Analysis and Design Answer Script No. of pages: 11 1. i. What are the 3 major components of
More informationPlanning for Information Network
Planning for Information Network Lecture 2: The network design methodology Assistant Teacher Samraa Adnan Al-Asadi 1 Contents The PPDIOO network lifecycle. Benefits of the lifecycle approach to network
More informationObjectives. Connecting with Computer Science 2
Objectives Learn how software engineering is used to create applications Learn some of the different software engineering process models Understand what a design document is and how it should be used during
More informationThe requirements engineering process
3 rd Stage Lecture time: 8:30-12:30 AM Instructor: Ali Kadhum AL-Quraby Lecture No. : 5 Subject: Software Engineering Class room no.: Department of computer science Process activities The four basic process
More informationGraded Unit title: Computing: Networking: Graded Unit 2
SQA Advanced Unit specification: general information for centres This graded unit has been validated as part of the SQA Advanced Diploma in Computing: Networking. Centres are required to develop the assessment
More informationWhite Paper. Incorporating Usability Experts with Your Software Development Lifecycle: Benefits and ROI Situated Research All Rights Reserved
White Paper Incorporating Usability Experts with Your Software Development Lifecycle: Benefits and ROI 2018 Situated Research All Rights Reserved Learnability, efficiency, safety, effectiveness, memorability
More informationSoftware Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 8 Agile Methodologies: XP 1 extreme Programming (XP) Developed by Beck in 1996. The first authentic XP book appeared in 1999, with a revised
More informationGradational conception in Cleanroom Software Development
Gradational conception in Cleanroom Software Development Anshu Sharma 1 and Shilpa Sharma 2 1 DAV Institute of Engineering and Technology, Kabir Nagar, Jalandhar, India 2 Lovely Professional University,
More informationSoftware Testing and Maintenance
Software Testing and Maintenance Testing Strategies Black Box Testing, also known as Behavioral Testing, is a software testing method in which the internal structure/ design/ implementation of the item
More informationImplementing ITIL v3 Service Lifecycle
Implementing ITIL v3 Lifecycle WHITE PAPER introduction GSS INFOTECH IT services have become an integral means for conducting business for all sizes of businesses, private and public organizations, educational
More informationCSC Advanced Object Oriented Programming, Spring Overview
CSC 520 - Advanced Object Oriented Programming, Spring 2018 Overview Brief History 1960: Simula first object oriented language developed by researchers at the Norwegian Computing Center. 1970: Alan Kay
More information1.264 Midterm Exam Solutions Fall, Name:
1.264 Midterm Exam Solutions Fall, 2006 Name: Exam guidelines: 1. 80 minutes are allowed to complete the exam. 2. Open notes, open book. 3. No laptop computers or calculators are allowed. 4. No cell phones
More informationExamples. Object Orientated Analysis and Design. Benjamin Kenwright
Examples Object Orientated Analysis and Design Benjamin Kenwright Outline Revision Questions Group Project Review Deliverables Example System Problem Case Studey Group Project Case-Study Example Vision
More informationAgile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process
Agile Accessibility Ensuring accessibility throughout the Agile development process Presenters: Andrew Nielson, CSM, PMP, MPA Ann Marie Davis, CSM, PMP, M. Ed. Cammie Truesdell, M. Ed. Overview What is
More informationSOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming
SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming Slide 1 Lesson Objectives Understand major activities of software projects Understand the place of these in different lifecycle models
More informationDatabase Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 9 Database Design Objectives In this chapter, you will learn: That successful database design must reflect the information
More information(Objective-CS605 Software Engeenring-II)
Which one of the following is NOT a useful indicator of software quality? Correctness Code size (Page 67) Maintainability Integrity Usability Which one of the following does not belong to a strategy for
More informationUNIT 1-SOFTWARE PROCESS AND PROJECT MANAGEMENT
PART A (2 MARKS) UNIT 1-SOFTWARE PROCESS AND PROJECT MANAGEMENT 1. What is software engineering? Software engineering is a discipline in which theories, methods and tools are applied to develop professional
More informationCASE TOOLS LAB VIVA QUESTION
1. Define Object Oriented Analysis? VIVA QUESTION Object Oriented Analysis (OOA) is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary
More informationSoftware change. Software maintenance
Software change 1 Software change is inevitable New requirements emerge when the software is used The business environment changes Errors must be repaired New equipment must be accommodated The performance
More informationAbout HP Quality Center Upgrade... 2 Introduction... 2 Audience... 2
HP Quality Center Upgrade Best Practices White paper Table of contents About HP Quality Center Upgrade... 2 Introduction... 2 Audience... 2 Defining... 3 Determine the need for an HP Quality Center Upgrade...
More informationManaging the development and purchase of information systems (Part 2)
Managing the development and purchase of information systems (Part 2) (Week 14, Thursday 4/12/2007) BUS3500 - Abdou Illia, Spring 2007 1 LEARNING GOALS Describe alternative systems development methodologies
More informationCh 1: The Architecture Business Cycle
Ch 1: The Architecture Business Cycle For decades, software designers have been taught to build systems based exclusively on the technical requirements. Software architecture encompasses the structures
More informationIntroduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process
Quatrani_Ch.01.fm Page 1 Friday, October 27, 2000 9:02 AM Chapter 1 Introduction What Is Visual Modeling? The Triangle for Success The Role of Notation History of the UML The Role of Process What Is Iterative
More informationQuality Management Plan (QMP)
Quality Management Plan for LEMA Family Accountability System Version 3.3 Quality Management Plan (QMP) PROJECT TITLE LEMA FAMILY ACCOUNTABILITY SYSTEM TEAM NO #04 TEAM MEMBERS & ROLES NAME ROLES Teawon
More informationThe Analysis and Proposed Modifications to ISO/IEC Software Engineering Software Quality Requirements and Evaluation Quality Requirements
Journal of Software Engineering and Applications, 2016, 9, 112-127 Published Online April 2016 in SciRes. http://www.scirp.org/journal/jsea http://dx.doi.org/10.4236/jsea.2016.94010 The Analysis and Proposed
More informationCOSC 310: So*ware Engineering. Dr. Bowen Hui University of Bri>sh Columbia Okanagan
COSC 310: So*ware Engineering Dr. Bowen Hui University of Bri>sh Columbia Okanagan 1 Admin A2 is up Don t forget to keep doing peer evalua>ons Deadline can be extended but shortens A3 >meframe Labs This
More informationThe software lifecycle and its documents
The software lifecycle and its documents Supplementary material for Software Architecture course B. Meyer, May 2006 Lifecycle models Origin: Royce, 1970, Waterfall model Scope: describe the set of processes
More informationDESIGN AND TECHNOLOGY
Qualification Accredited A LEVEL NEA Marking Criteria April 2017 DESIGN AND TECHNOLOGY H404, H405 and H406 For first teaching in 2017 www.ocr.org.uk/gcsedesignandtechnology A Level Design and Technology
More informationCOMP6471 WINTER User-Centered Design
COMP6471 WINTER 2003 User-Centered Design Instructor: Shahriar Ameri, Ph.D. Student: Pedro Maroun Eid, ID# 5041872. Date of Submission: Monday, March 10, 2003. (Week 9) Outline Outline... 2 ABSTRACT...3
More informationUser Experience Metric (UXM) and Index of Integration (IoI): Measuring Impact of HCI Activities
User Experience Metric (UXM) and Index of Integration (IoI): Measuring Impact of HCI Activities Anirudha Joshi, Industrial Design Centre, IIT Bombay Design 1 Sanjay Tripathi, Tech Mahindra Ltd. Outsourced
More informationHigher National Unit specification: general information. Graded Unit title: Computer Science: Graded Unit 2
Higher National Unit specification: general information This Graded Unit has been validated as part of the HND Computer Science. Centres are required to develop the assessment instrument in accordance
More informationTerms, Methodology, Preparation, Obstacles, and Pitfalls. Vulnerability Assessment Course
Terms, Methodology, Preparation, Obstacles, and Pitfalls Vulnerability Assessment Course All materials are licensed under a Creative Commons Share Alike license. http://creativecommons.org/licenses/by-sa/3.0/
More informationMeltem Özturan misprivate.boun.edu.tr/ozturan/mis515
Meltem Özturan misprivate.boun.edu.tr/ozturan/mis515 1 2 1 Selecting the Best Alternative Major Activities in the Analysis Phase Gather information Define system requirements Prototype for feasibility
More informationTopics. CS5714 Usability Engineering. Typical Software Engineering LC. An Iterative, Evaluation- Centered Life Cycle For Interaction Development
CS5714 Usability Engineering An Iterative, Evaluation- Centered Life Cycle For Interaction Development Copyright 2004 H. Rex Hartson Deborah Hix Topics Connections of user interaction development to engineering
More informationSoftware Prototyping Animating and demonstrating system requirements. Uses of System Prototypes. Prototyping Benefits
Software Prototyping Animating and demonstrating requirements Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 8 Slide 1 Uses of System Prototypes
More informationPERSPECTIVE. End-to-end test automation A behaviordriven and tool-agnostic approach. Abstract
PERSPECTIVE End-to-end test automation A behaviordriven and tool-agnostic approach Anand Avinash Tambey Product Technical Architect, Infosys Abstract In today s fast changing world, IT is under constant
More informationPROTOTYPING 29/11/2017. Presented by: Shuchita Singh
PROTOTYPING 29/11/2017 Presented by: Shuchita Singh Outline Requirement Analysis Overview Prototyping Life cycle of Prototyping Types of prototyping techniques Advantages and Disadvantages Case Studies
More informationQuality Management Plan (QMP)
Quality Management Plan (QMP) UDM United Direct Marketing Team 09 Fall Semester Chun-Ling Chen Project manager/ Prototyper Chun-Pei Su Lifecycle Planner Shao-yen Cheng System Architect Yuan-Chang Chang
More informationFor presentation at the Fourth Software Engineering Institute (SEI) Software Architecture Technology User Network (SATURN) Workshop.
For presentation at the Fourth Software Engineering Institute (SEI) Software Architecture Technology User Network (SATURN) Workshop. The authors can be reached at cb@mitre.org or ioannis @Mitre.org. In
More informationSix Sigma in the datacenter drives a zero-defects culture
Six Sigma in the datacenter drives a zero-defects culture Situation Like many IT organizations, Microsoft IT wants to keep its global infrastructure available at all times. Scope, scale, and an environment
More informationOO Project Management
OO Project Management Twin Cities Java User s Group November 17, 1999 Mary Poppendieck Poppendieck.LLC Object Oriented Development Objects Simulate the Real World Example: Process Control On/Off Switch
More informationCS 490 Design Exhibition Fall 2010
CS 490 Design Exhibition Fall 2010 Sanjeev Setia http://www.cs.gmu.edu/~setia/cs490/ Course Objectives Provide students an opportunity to work on a semester long project Project more substantial than a
More informationChapter 12 Developing Business/IT Solutions
Chapter 12 Developing Business/IT Solutions James A. O'Brien, and George Marakas. Management Information Systems with MISource 2007, 8 th ed. Boston, MA: McGraw-Hill, Inc., 2007. ISBN: 13 9780073323091
More informationDESIGN AND TECHNOLOGY
Qualification Accredited GCSE (9 1) NEA Marking Criteria April 2017 DESIGN AND TECHNOLOGY J310 For first teaching in 2017 www.ocr.org.uk/gcsedesignandtechnology GCSE Design and Technology Iterative Design
More information18-642: Software Development Processes
18-642: Software Development Processes 9/6/2017 Coding Is Essentially 0% of Creating Software http://e.ubmelectronics.com/2013embeddedstudy/index.html 2 Old-School Waterfall Development Cycle Bugs SPECIFY
More informationSoftware Engineering with Objects and Components Open Issues and Course Summary
Software Engineering with Objects and Components Open Issues and Course Summary Massimo Felici Software Engineering with Objects and Components Software development process Lifecycle models and main stages
More information