SE 2730 Final Review
|
|
- Johnathan Cooper
- 5 years ago
- Views:
Transcription
1 SE 2730 Final Review 1. Introduction 1) What is software: programs, associated documentations and data 2) Three types of software products: generic, custom, semi-custom Why is semi-custom product more and more popular? 3) What is software engineering: an engineering discipline concerning with all aspects of software production. 4) Software engineering vs. computer science vs. system engineering 5) Why is software engineering so important? 6) What is good software? 2. Generic Software Process maintainable, dependable, efficient, acceptable OR F.U.R.P.S.+: Features, Usability, Reliability, Performance, Scalability 1) What is a software process: a set of activities whose goal is the development or evolution of software 2) Four generic activities: specification, development, validation and evolution Specification answers the question of WHAT instead of HOW! Development: high-level design, detailed design, implantation (coding, unit test, integration test, system test) Validation vs. Verification Evolution: fix, add, change, port, improve 3) CASE: Computer-Aided Software Engineering 3. Time Management (Personal Software Process) 1) How to avoid time overrun? Target and Estimate 2) The problem with target: unknown feasibility, unpredictable results, not repeatable, pressure 3) Basis for team estimation: previous project experience; assume average developers 4) Basis for individual work: time record record time in major activity categories record time in a standard way record completed tasks in standard units: for future estimation! 5) Word Breakdown System (WBS): continue decomposing till all tasks are under 2-4 hours duration 6) Construction Cost Model (COCOMO) 1: 4. Requirements What do we need for the estimation? program size in KLOC What can we estimate? total effort in person-month, development time and people required Problem with COCOMO: need to have good estimation of the project size 1) User requirement (definition) vs. System requirement (specification) 2) functional requirements vs. non-functional requirements vs. domain requirements 3) SMART requirements: specific, measurable, attainable, realizable, traceable
2 5. Requirement Engineering 1) Requirement engineering process: feasibility study elicitation and analysis specification validation 2) feasibility study: a short focused study (2-3 weeks) Organizational objective, technical, economic, operational, schedule, legal and political 3) Elicitation and analysis: work with customers on gathering domain, services and constraints information stakeholder problems Elicitation and analysis process: discoveryclassification and organizationprioritization and negotiationdocumentation Iterative: business req. user req. system req. Interview: closed, open, mixed Ethnography: observations and contextual interview i. Benefits? ii. Issues? Scenarios: real-life example of how a system can be used i. basic structure ii. How to write a good scenario? simple sentence; no conditions; observables only; specific message 4) Specification: requirement specification items and use case model use case: generalization of a collection of scenarios i. actors vs. stakeholders ii. Basic structure: how to document exceptions? iii. Writing guide: verb-noun name; distinguish actors actions from system s actions; active voice; complete; NO user interface; 2-3 pages; scenario writing guides also apply use case diagram: i. UML: Unified Modeling Language ii. four components: actors, use cases, system boundary box, relationships iii. primary actors on the left, secondary actors on the right iv. <<include>>: (1). multiple base cases share the same inclusion case OR (2). the inclusion case is an important part of the base case v. <<extend>>: the extension case consists of additional behavior that can incrementally augment the behavior of the base use case. Goal of refining use cases: completeness and correctness 5) Requirement validation: 6. HCI Design Review: SMART requirements i. guidelines for effective review Prototyping: quickly generate something that can be validated by users i. throw away ii. fast iii. for requirement elicitation, validation, design, etc. 1) CLI, UI, MCI, HCI, GUI
3 2) What is HCI: input and display devices 3) Limitations of people: memory, stress, physical limitation 4) Three golden rules 7. Architectural Design Place users in control i. Use modes judiciously (modeless) (1). application and system modal ii. Allow users to use either the keyboard or mouse (flexible) iii. Allow users to change focus (interruptible) iv. Display descriptive messages and text (helpful) v. Provide immediate and reversible actions, and feedback (forgiving) vi. Provide meaningful paths and exits (navigable) vii. Accommodate users with different skill levels (accessible) viii. Make the user interface transparent (facilitative) ix. Allow users to customize the interface (preferences) x. Allow users to directly manipulate interface objects (interactive). Reduce users memory load i. Relieve short-term memory (remember) ii. Rely on recognition, not recall (recognition) iii. Provide visual cues (inform) iv. Provide defaults, undo, and redo (forgiving) v. Provide interface shortcuts (frequency) vi. Use real-world metaphors (transfer) vii. User progressive disclosure (context) viii. Promote visual clarity (organize) Make the user interface consistent i. Sustain the context of users tasks (continuity) ii. Maintain consistency within and across products (experience) iii. Keep interaction results the same (expectations) iv. Provide aesthetic appeal and integrity (attitude) v. Encourage exploration (predictable) 1) What is architectural design: decompose into sub-systems and identify the control and communications among sub-systems 2) When should it be performed: early stage of design; in parallel with later stage of specification 3) Non-functional requirement is the key to make architectural design decisions! Performance: Localize critical operations and minimize communications; Use large rather than fine-grain components. Security: Use a layered architecture with critical assets in the inner layers. Safety: Localize safety-critical features in a small number of sub-systems. Availability: Include redundant components and mechanisms for fault tolerance. Maintainability: Use fine-grain, replaceable components. 4) Architectural design conflicts: examples and what to do 5) How to use a block diagram to demonstrate your architecture design 6) Architecture style: generic reusable architectural models Repository
4 Client server Layered For each: features, examples, advantages and disadvantages 7) How to combine architecture styles 8. Class Diagrams 1) What are analysis and design phase? 2) Object models: object classes and their relationships 3) Differences among domain, design and implementation level class diagrams 4) How to draw a domain level class diagram given the requirements? Step 1: identify objects i. Name identification method: how to perform it? ii. Class name: nouns Step 2: identify associations i. description: one or two words verb phrase ii. navigation: open arrow pointing to B if A knows B and B doesn t know A iii. multiplicity on each end of the association: 0..1, 1, *, 1..* Step 3: refine relationships i. inheritance: is-a relationship (1). make sure child is not simply an instance of the parent (2). problems with multiple inheritance ii. aggregation: part-of relationship (1). still need to show multiplicities (2). composition: if A doesn t exist, B cannot exist. Step 4: add major attributes and operations i. attributes are none_phrases connected by _ ii. most attributes can be identified during name identification process iii. if A and B have association/aggregation relationship, don t list B as an attribute of A! iv. operations are verb phrases or nouns if value-returning v. use verb identification method to identify operations 5) CRC (Class Responsibility Collaboration) method What should be included in a CRC card CRC design process 6) Object oriented design process 7) High cohesion and low coupling: Cohesion: i. Coincidental cohesion (worst): partition randomly. ii. Logical cohesion: logically categorized to do the same thing. iii. Temporal cohesion: grouped by when they are processed. iv. Procedural cohesion: grouped because they always follow a certain sequence of execution. v. Communicational cohesion: operate on the same data. vi. Functional cohesion (best): single well defined task per module Coupling: i. Content coupling (Worst/highest): public attributes or goto statement ii. Common coupling: global variable
5 iii. Control coupling: module A controls B via control flag iv. Stamp coupling: pass composite data structure and use only part of it v. Data coupling (Best/lowest): a list of simple parameters and use all of them 9. Software testing, verification and validation 1) Two V&V approaches: Static: inspections and review. Dynamic: software testing; execution based. 2) Human makes error; a fault is the representation of an error; failure occurs when a fault executes. Three conditions necessary for a failure to be observed: reachability, infection and propagation. 3) Testing vs. debugging: testing finds failures while debugging look for faults causing those failures. 4) Cost of fixing a defect grows exponentially. 5) You should not test your own code! 6) What is a test case? inputs and expected outputs Also include ID, purpose, pre and post conditions in test documents. 7) Activities of test engineering: Test design: know the requirements and/or the structure of the system Test automation: write scripts, build test harness and stubs Test execution Test evaluation: compare actual outputs with expected outputs; also need automation. 8) Test case design techniques: Functional testing (black-box): i. need to know requirement specification ii. should be able to trace back to all requirements: traceability iii. start early: right after requirement specification is done. iv. Partition testing: (1). Partition same behaviors into one equivalence class. (2). ONLY one test case is generated from one equivalence class. v. Boundary testing: testing on the edge and both sides of the edge of legal input values. Structural testing (white-box) i. need to know the structure of the program ii. use different types of coverage criteria iii. Benefits: (1). Explicitly state the extent to which the software is tested (2). Makes testing management more meaningful Black-box vs. white-box: neither is perfect; we should use both. 9) V model: the design of different levels of testing is based on different stages of development. 10) Testing levels: Unit testing: i. done together with coding ii. mainly white-box testing iii. test harness: simulating other parts of the system (the environment) iv. test stub: minimal function implementations to check the logic of calling functions and interfaces between calling and called functions.
6 Module/subsystem testing: i. test the subsystem as a whole. ii. starting from this level, we mainly use black-box testing. Integration testing: i. done incrementally as new subsystems are added. ii. focus on the interfacing iii. a good time to tune for performance System testing: i. after the system is completed ii. focus on non-functional requirements (also should validate the functional requirements) Acceptance testing: i. customer testing ii. alpha test vs. beta test 11) Regression testing: ensure fixing a bug does not introduce new bugs. often automated: nightly build and test regression test suites are growing as new ways to break a system are discovered 12) Test plan and management: Start early! Make sure there is enough time scheduled for testing. Traceability is important! 10. Software process models (A.K.A. software life cycle models) 1) Software process: structure set of activities required to develop a software system 2) software process model: an abstract representation of a software process 3) Waterfall model: The result of each phase is document(s) that are approved ( signed off ). The following phase will not start until the previous phase is finished. Freeze output documents(s) after one phase is finished. No going back. In reality: phased may overlap; may rewind back to the previous phase. Advantages: i. simple ii. easy to manage. why? iii. similar to other engineering process models Problem: hard to adapt to changes! When to use: requirements are fixed; changes are limited; part of a larger project with other engineering fields involved. 4) Evolutionary development: Develop the system in many small but complete iterations. Each iteration results in a working deliverable. Present each deliverable to the customer for feedback. Allow intermediate corrections of requirements, specifications, and plans to make sure that the project is targeting the right direction. Examples: i. Exploratory development
7 (1). Start with well-understood part of the requirements (2). Add new features as proposed by the customer. ii. throwaway prototyping (1). mainly for experimenting when a. Customers don t know exactly what they want b. We want to analyze the usability of an HCI c. We are not sure if a particular approach to solving a problem will work d. We have multiple approaches to solving a problem and we want to experiment to see which is better. (2). NEVER use the prototype in the actual deliverable! Problems: i. lack of process visibility ii. systems are often poorly structured iii. may need special skills 5) Component-based development: Based on systematic reuse where systems are integrated from existing components or COTS (Commercial-off-the-shelf) systems. Process stages i. Requirement analysis ii. Component assessment and specification iii. Requirements modification iv. System design with reuse v. Development, integration and testing. Advantages: i. Reduce the amount of software to be developed ii. Reduce costs and risks iii. Usually faster delivery of the software Problem: requirement compromises are inevitable. 6) Costs of software engineering activities: 11. Ethics Roughly 60% of costs are development costs, 40% are testing costs. For custom software, evolution costs often exceed development costs. Costs vary depending on the type of system being developed and the requirements of system attributes such as performance and system reliability. Distribution of costs depends on the process model that is used. 1) Issues of professional responsibility: Confidentiality Competence Intellectual property right Computer misuse 2) ACM/IEEE Code of Ethics: 8 principles
Usability and User Interface Design
Usability and User Interface Design Minsoo Ryu Hanyang University Design for Usability Usability of a computer system is a combination of factors: User interface design Functionality Performance Help systems
More informationComputer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation
Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation Yan Shi SE 2730 Lecture Notes Verification and Validation Verification: Are
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 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 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 information350 Index 2005 GOAL/QPC
Index abstract testing, 274 acceptance criteria, 270 acceptance tests, 270 activity diagrams, 113, 114, 174-175, 321 actor catalog, 144 actor description, 144 actor hierarchy, 148 actor map, 59, 114, 144,
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 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 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 informationCertified Software Quality Engineer Preparation On Demand, Web-Based Course Offered by The Westfall Team
Certified Software Quality Engineer (CSQE) Preparation course is an on demand, web-based course design to be a comprehensive, in-depth review of the topics in the ASQ s Certified Software Quality Engineer
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 informationInformation Systems. Software Engineering. MCQ - Part 2
Information Systems & Software Engineering MCQ - Part 2 Information Systems & Software Engineering MCQ - Part 2 Changes made to the system to reduce the future system failure chances is called Preventive
More informationSample Exam Syllabus
ISTQB Foundation Level 2011 Syllabus Version 2.9 Release Date: December 16th, 2017. Version.2.9 Page 1 of 46 Dec 16th, 2017 Copyright 2017 (hereinafter called ISTQB ). All rights reserved. The authors
More informationTopic : Object Oriented Design Principles
Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities
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 informationTest Automation. Fundamentals. Mikó Szilárd
Test Automation Fundamentals Mikó Szilárd 2016 EPAM 2 Blue-chip clients rely on EPAM 3 SCHEDULE 9.12 Intro 9.19 Unit testing 1 9.26 Unit testing 2 10.03 Continuous integration 1 10.10 Continuous integration
More informationExamination Questions Time allowed: 1 hour 15 minutes
Swedish Software Testing Board (SSTB) International Software Testing Qualifications Board (ISTQB) Foundation Certificate in Software Testing Practice Exam Examination Questions 2011-10-10 Time allowed:
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 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 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 informationChapter 7: Software Engineering. Copyright 2015 Pearson Education, Inc.
Chapter 7: Software Engineering Chapter 7: Software Engineering 7.1 The Software Engineering Discipline 7.2 The Software Life Cycle 7.3 Software Engineering Methodologies 7.4 Modularity 7.5 Tools of the
More informationAdvanced Software Engineering: Software Testing
Advanced Software Engineering: Software Testing COMP 3705(L4) Sada Narayanappa Anneliese Andrews Thomas Thelin Carina Andersson Web: http://www.megadatasys.com Assisted with templates News & Project News
More informationCS6403 SOFTWARE ENGINEERING Year / Sem : II / IV Sub. Code &Subject : CS6403 SOFTWARE ENGINEERING QUESTION BANKWITH ANSWERS
CS6403 SOFTWARE ENGINEERING Year / Sem : II / IV Sub. Code &Subject : CS6403 SOFTWARE ENGINEERING QUESTION BANKWITH ANSWERS UNIT 1-SOFTWARE PROCESS AND PROJECT MANAGEMENT 1. What is software engineering?
More informationh(p://ihm.tumblr.com/post/ /word- cloud- for- hci- human- computer- interacbon CS5340 Human-Computer Interaction ! January 31, 2013!
h(p://ihm.tumblr.com/post/105778492/word- cloud- for- hci- human- computer- interacbon CS5340 Human-Computer Interaction January 31, 2013 Today s Class Administrivia User-centered Design Establishing Requirements
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 informationIn this Lecture you will Learn: Testing in Software Development Process. What is Software Testing. Static Testing vs.
In this Lecture you will Learn: Testing in Software Development Process Examine the verification and validation activities in software development process stage by stage Introduce some basic concepts of
More informationQUESTION BANK UNIT 1 SOFTWARE PROCESS AND PROJECT MANAGEMENT Part A
QUESTION BANK UNIT 1 SOFTWARE PROCESS AND PROJECT MANAGEMENT Part A 1. What is software engineering?[apr MAY 2010] Software engineering is a discipline in which theories, methods and tools are applied
More informationChapter 1: Principles of Programming and Software Engineering
Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without
More informationProgress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development
Progress Report Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) CS 4354 Summer II 2014 Jill Seaman So far we have learned about the tools used in object-oriented
More informationSOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV
1 SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV 12 th June, 2013 Instructor Information 2 Course Instructor:
More information5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered
Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process
More informationRoll No. :. Invigilator's Signature :.. CS/MCA/SEM-4/MCA-401/ SOFTWARE ENGINEERING & TQM. Time Allotted : 3 Hours Full Marks : 70
Name : Roll No. :. Invigilator's Signature :.. CS/MCA/SEM-4/MCA-401/2012 2012 SOFTWARE ENGINEERING & TQM Time Allotted : 3 Hours Full Marks : 70 The figures in the margin indicate full marks. Candidates
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 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 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 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 ENGINEERING DECEMBER. Q2a. What are the key challenges being faced by software engineering?
Q2a. What are the key challenges being faced by software engineering? Ans 2a. The key challenges facing software engineering are: 1. Coping with legacy systems, coping with increasing diversity and coping
More informationChapter 4 Objectives
Chapter 4 Objectives Eliciting requirements from the customers Modeling requirements Reviewing requirements to ensure their quality Documenting requirements for use by the design and test teams 4.1 The
More informationSoftware Engineering (CSC 4350/6350) Rao Casturi
Software Engineering (CSC 4350/6350) Rao Casturi Testing Software Engineering -CSC4350/6350 - Rao Casturi 2 Testing What is testing? Process of finding the divergence between the expected behavior of the
More informationCHAPTER 9 DESIGN ENGINEERING. Overview
CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative
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 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 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 information1) Software Engineering
1) Software Engineering a) Software: Programs, documentation and configuration data which is needed to make programs operate correctly. i) Two types of Software Products: (1) Generic Products: Eg: word
More informationObjectives. Architectural Design. Software architecture. Topics covered. Architectural design. Advantages of explicit architecture
Objectives Architectural Design To introduce architectural design and to discuss its importance To explain the architectural design decisions that have to be made To introduce three complementary architectural
More informationImplementation Architecture
Implementation Architecture Software Architecture VO/KU (707023/707024) Roman Kern ISDS, TU Graz 2017-11-15 Roman Kern (ISDS, TU Graz) Implementation Architecture 2017-11-15 1 / 54 Outline 1 Definition
More informationBusiness Analysis for Practitioners - Requirements Elicitation and Analysis (Domain 3)
Business Analysis for Practitioners - Requirements Elicitation and Analysis (Domain 3) COURSE STRUCTURE Introduction to Business Analysis Module 1 Needs Assessment Module 2 Business Analysis Planning Module
More informationLecture 8 Requirements Engineering
Lecture 8 Requirements Engineering Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 18, 2008 Lecture Overview
More informationProgress Report. Object-Oriented Software Development: Requirements elicitation and analysis. Object-oriented analysis, design, implementation
Progress Report Object-Oriented Software Development: Requirements elicitation and analysis CS 4354 Fall 2012 Jill Seaman So far we have learned about the tools used in object-oriented design and implementation
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 informationTesting. ECE/CS 5780/6780: Embedded System Design. Why is testing so hard? Why do testing?
Testing ECE/CS 5780/6780: Embedded System Design Scott R. Little Lecture 24: Introduction to Software Testing and Verification What is software testing? Running a program in order to find bugs (faults,
More informationOverview. State-of-the-Art. Relative cost of error correction. CS 619 Introduction to OO Design and Development. Testing.
Overview CS 619 Introduction to OO Design and Development ing! Preliminaries! All sorts of test techniques! Comparison of test techniques! Software reliability Fall 2012! Main issues: There are a great
More informationSeminar report Software reuse
A Seminar report On Software reuse Submitted in partial fulfillment of the requirement for the award of degree of Bachelor of Technology in Computer Science SUBMITTED TO: www.studymafia.com SUBMITTED BY:
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 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 informationCertified Tester Foundation Level(CTFL)
Certified Tester Foundation Level(CTFL) ISTQB : International Software Testing Qualifications Board Heading: The International Software Testing Qualifications Board (ISTQB) is an internationally recognized
More information1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake
Sample ISTQB examination 1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake 2 Regression testing should
More informationChapter 9 Quality and Change Management
MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Chapter 9 Quality and Change Management Pearson Education Limited 2007 Topics
More informationPearson Education 2007 Chapter 9 (RASD 3/e)
MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Chapter 9 Quality and Change Management Pearson Education Limited 2007 Topics
More informationArchitectural Design
Architectural Design Objectives To introduce architectural design and to discuss its importance To explain the architectural design decisions that have to be made To introduce three complementary architectural
More informationSoftware Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 11/10/2015
Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 11/10/2015 http://cs.gsu.edu/~ncasturi1 Class announcements Final Exam date - Dec 1 st. Final Presentations Dec 3 rd. And
More informationDarshan Institute of Engineering & Technology for Diploma Studies
REQUIREMENTS GATHERING AND ANALYSIS The analyst starts requirement gathering activity by collecting all information that could be useful to develop system. In practice it is very difficult to gather all
More informationKINGS COLLEGE OF ENGINEERING
KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING ACADEMIC YEAR 2011 2012(ODD SEMESTER) QUESTION BANK Subject Code/Name : CS1310-Object Oriented Analysis and Design Year/IV Sem
More informationObject-Oriented Analysis and Design Using UML
Object-Oriented Analysis and Design Using UML Student Guide - Volume 1 OO-226 Rev C D61808GC10 Edition 1.0 D62408 Copyright 2003, 2009, Oracle and/or its affiliates. All rights reserved. Disclaimer This
More informationQA Best Practices: A training that cultivates skills for delivering quality systems
QA Best Practices: A training that cultivates skills for delivering quality systems Dixie Neilson QA Supervisor Lynn Worm QA Supervisor Maheen Imam QA Analyst Information Technology for Minnesota Government
More informationLecture Chapter 2 Software Development
Lecture Chapter 2 Software Development Large Software Projects Software Design o Team of programmers o Cost effective development Organization Communication Problem Solving Analysis of the problem Multiple
More informationTesting is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.
i About the Tutorial Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not. Testing is executing a system in order
More informationIPM 10/11 T1.6 Discount Evaluation Methods
IPM 10/11 T1.6 Discount Evaluation Methods Licenciatura em Ciência de Computadores Miguel Tavares Coimbra Acknowledgements: Most of this course is based on the excellent course offered by Prof. Kellogg
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 informationSoftware Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/17/2015
Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 09/17/2015 http://cs.gsu.edu/~ncasturi1 Requirement Elicitation 2 Requirement Engineering First step for understanding the
More informationLecture 16: (Architecture IV)
Lecture 16: (Architecture IV) Software System Design and Implementation ITCS/ITIS 6112/8112 091 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte Oct.
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 informationCS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam
CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam MIDTERM EXAMINATION 2010 Question No: 1 ( Marks: 1 ) - Please choose one By following modern system engineering
More informationObject-Oriented Systems Analysis and Design Using UML
10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand
More informationSoftware Engineering Fall 2014
Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 11/10/2014 Final Exam date - Dec 10 th? Class announcements Final Presentations Dec 3 rd. And Dec 8 th. Ability
More informationChapter 11, Testing. Using UML, Patterns, and Java. Object-Oriented Software Engineering
Chapter 11, Testing Using UML, Patterns, and Java Object-Oriented Software Engineering Outline Terminology Types of errors Dealing with errors Quality assurance vs Testing Component Testing! Unit testing!
More informationHuman-Computer Interaction IS4300
Human-Computer Interaction IS4300 1 Ethnography Homework I3 2 1 Team Projects User analysis. Identify stakeholders (primary, secondary, tertiary, facilitating) For Primary Stakeholders Demographics Persona(s)
More informationINSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad
INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad - 500 043 INFORMATION TECHNOLOGY COURSE DESCRIPTION FORM Course Title Course Code Regulation Course Structure Course Coordinator SOFTWARE
More informationSOFTWARE ENGINEERING
Subject Code: 10IS51 I.A. Marks : 25 Hours/Week : 04 Exam Hours: 03 Total Hours : 52 Exam Marks: 100 PART A UNIT 1 6 Hours Overview: Introduction: FAQ's about software engineering, Professional and ethical
More informationChapter 6 Architectural Design. Chapter 6 Architectural design
Chapter 6 Architectural Design 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process for identifying
More informationTesting. Unit, integration, regression, validation, system. OO Testing techniques Application of traditional techniques to OO software
Testing Basic ideas and principles Traditional testing strategies Unit, integration, regression, validation, system OO Testing techniques Application of traditional techniques to OO software Testing-11,
More informationSecurity Engineering for Software
Security Engineering for Software CS996 CISM Jia An Chen 03/31/04 Current State of Software Security Fundamental lack of planning for security Most security issues come to light only after completion of
More information06. Analysis Modeling
06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches
More informationSE 1: Software Requirements Specification and Analysis
SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 U Waterloo SE1 (Winter 2006)
More information5 Object Oriented Analysis
5 Object Oriented Analysis 5.1 What is OOA? 5.2 Analysis Techniques 5.3 Booch's Criteria for Quality Classes 5.4 Project Management and Iterative OOAD 1 5.1 What is OOA? How to get understanding of what
More informationImplementing A Final Regression Testing Process
Implementing A Final Regression ing Process Jeff Tatelman SQuAD Conference 2007 March 15th, 2007 Final Regression ing Definition The testing of software after a modification has been made to ensure that
More informationLecture 1. Chapter 6 Architectural design
Chapter 6 Architectural Design Lecture 1 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process
More informationArchitectural Design. Architectural Design. Software Architecture. Architectural Models
Architectural Design Architectural Design Chapter 6 Architectural Design: -the design the desig process for identifying: - the subsystems making up a system and - the relationships between the subsystems
More informationHuman-Computer Interaction: An Overview. CS2190 Spring 2010
Human-Computer Interaction: An Overview CS2190 Spring 2010 There must be a problem because What is HCI? Human-Computer interface Where people meet or come together with machines or computer-based systems
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 informationUNIT-V SOFTWARE QUALITY AND USABILITY CHAPTER 12. VIEW LAYER: Designing Interface Objects. At the end of this chapter, students should be able to
UNIT-V SOFTWARE QUALITY AND USABILITY CHAPTER 12 VIEW LAYER: Designing Interface Objects OBJECTIVES : At the end of this chapter, students should be able to Identifying View (or User interface ) classes
More informationTypes of Software Testing: Different Testing Types with Details
Types of Software Testing: Different Testing Types with Details What are the different Types of Software Testing? We, as testers are aware of the various types of Software Testing such as Functional Testing,
More informationSample Question Paper. Software Testing (ETIT 414)
Sample Question Paper Software Testing (ETIT 414) Q 1 i) What is functional testing? This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type
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 informationManual Testing. Software Development Life Cycle. Verification. Mobile Testing
10 Weeks (Weekday Batches) or 12 Weekends (Weekend batches) To become a Professional Software Tester To enable the students to become Employable Manual Testing Fundamental of Testing What is software testing?
More informationMinsoo Ryu. College of Information and Communications Hanyang University.
Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based
More information1: Specifying Requirements with Use Case Diagrams
Outline UML Design Supplement 1: Specifying Requirements with Use Case Diagrams Introduction Use Case Diagrams Writing Use Cases Guidelines for Effective Use Cases Slide adapted from Eran Toch s lecture
More informationLecture 9 Requirements Engineering II
Lecture 9 Requirements Engineering II Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 23, 2008 Announcements
More informationRequirements. CxOne Standard
Requirements CxOne Standard CxStand_Requirements.doc November 3, 2002 Advancing the Art and Science of Commercial Software Engineering Contents 1 INTRODUCTION... 1 1.1 OVERVIEW... 1 1.2 GOALS... 1 1.3
More informationSRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR
SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.sc(CST) Semester / Year : VI(EVEN)/III Subject
More information