CS314: Course Summary
|
|
- Harold Young
- 8 years ago
- Views:
Transcription
1 CS314: Course Summary Prof. Robert B. France Dept. of Computer Science Colorado State University Robert B. France 1 1
2 Software Development Issues Explored - 1 Software engineering basics Why do we need to engineer software? Object-Oriented Programming review (OOP) What is Object-Oriented Programming? Software development processes Why do we need to pay attention to how we develop software? Robert B. France 2 2
3 Software Development Issues Explored - 2 Requirements modeling and analysis Why do we need to model and analyze the problem? User-interface design Why do we need to pay attention to usability and utility of software? Software design Why do we need to describe our designs in a non-programming language such as the UML? Why do we need design principles? Systematic software testing Why do we need systematic testing techniques? Why is ad-hoc testing not always good enough? Robert B. France 3 3
4 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 4 4
5 Why engineer software? Many modern systems are complex. Consequences of software errors are more critical today. Failures can lead to loss of lives, loss of investments and assets, loss of reputation, loss of privacy. Organization at survivability vab often dependent on mission-critical ca software systems It is not good enough that systems produce the correct result; they also have to be secure, highly-available, safe, fault-tolerant, evolvable, Complexity of software often requires developers to work in teams to develop software. Robert B. France 5 5
6 Key Ideas Programming-in-the-large vs. Programming-in-the small programming-in-the-small skills focus on how to put together lines of code that correctly implement a wellunderstood solution Programming-in-the-large focus on how to architect large systems so that they are evolvable, flexible, safe, secure, Software engineering is all about problem solving Software engineering focuses on controlling essential complexity and reducing accidental complexity Robert B. France 6 6
7 Key Observations - 1 Untrained people can hack something together that (apparently) works Software evolves (change is inevitable for useful systems). The later errors are identified the more expensive they are to correct. The source of many errors can be traced back to lack of attention ti to getting the right requirements. Programming is less error prone than design. Robert B. France 1-7 7
8 Key Observations - 2 Change is more difficult than it appears Problem is not always well-defined A good software engineer is one who has the knowledge to choose the right tools for the task at hand There are many software engineering tools, techniques and methods; each has its strengths and limitations; none are applicable in all situations There is no software development silver bullet Robert B. France 8 8
9 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 9 9
10 Key Idea A good OO program is one in which object collaborate to accomplish functional goals Everything is not done in main() Objects do more than just get() and set() attributes Guidelines for distributing responsibility are captured in patterns such as the GRASP patterns Robert B. France 10 10
11 GRASP Patterns of Responsibility Assignment Cohesion Expert Creator Low Coupling Controller 11
12 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 12 12
13 Key Idea In order to improve as software developers we need to pay attention to the process we use Allows us to learn from our mistake Brings us closer to an engineering discipline, where quality can be replicated through use of proven, repeatable processes Robert B. France 13 13
14 Process Models Code and Fix Waterfall Iterative/Incremental Unified Process Software delivered in increments over a number of iterations Each iteration is timeboxed ed Robert B. France 14 14
15 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 15 15
16 Key Ideas Requirements activities focuses on the problem NOT a solution to the problem The purpose is to develop a deep understanding di of fthe problem so that twe can build appropriate solutions Both functional and non-functional (system attributes) requirements must be elicited and analyzed Robert B. France 16 16
17 Requirements Activities Elicitation: extracting requirements from customers and users Analysis: modeling and examining requirements to gain deeper understanding Specification: detailed documentation of requirements Validation: requirements are validated against customer/user needs Requirements management: activities related to documenting, controlling and tracking requirements and changes to requirements Robert B. France 17 17
18 Requirements Models Modeling required behavior (dynamic models) Use Cases: Focus only on interactions between system and direct users Modeling problem concepts and their relationships (static models) Class Model: Classes represent ese problem concepts, NOT programming language concepts Robert B. France 18 18
19 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 19 19
20 Key Ideas Software development must focus on the needs of the customer Proper attention to both usability and utility is needed Utility: Does the system provide the raw capabilities to allow the user to achieve their goal? Usability: Does the system allow the user to learn and to use the raw capabilities easily? Robert B. France 20 20
21 Key Principles Ensure that the user always knows what he or she can and should do next. Provide good feedback including effective error messages. Ensure that the user can always get out, go back or undo an action. Ensure that the UI s appearance is uncluttered. Consider the needs of different groups of users. Provide all necessary help. Be consistent. Robert B. France 21 21
22 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 22 22
23 Key Idea Describe solution in a language other than a programming language UML Use techniques and tools that are based on proven principles Use patterns to help improve the flexibility of your solution Robert B. France 23 23
24 Formality and Rigor Separation of concerns Separation in time Separation of views Separation of parts Separation of qualities Abstraction Key Principles Reusability Generality Incrementality Robert B. France 24 24
25 Key Concepts Abstraction Functional abstraction Data abstraction Information hiding Encapsulation Cohesion Coupling Robert B. France 25 25
26 Design Models Static models Design class models: Describe solution concepts and their relationships Dynamic models Sequence models: Describes how objects interact to accomplish a functional goal Used to describe how requirements use cases are realized in a design Other models not covered in this class: State and Activity models Robert B. France 26 26
27 Course Overview Software engineering basics Object-Oriented Programming review (OOP) Software development processes Requirements modeling and analysis User-interface design Software design Systematic software testing Robert B. France 27 27
28 Key Ideas Use test criteria to determine whether your test cases adequately cover the program input space Separate testing concerns: unit vs. integration vs. system vs. alpha vs. beta vs acceptance testing Robert B. France 28 28
29 Testing Terminology Testing terminology is not standardized. Failure: invalid behavior A failure occurs when a program executing on input data produces incorrect output. Defect, error: cause of a failure Some texts make a distinction between errors and defects (e.g., see course text), where an error is a behavior by the programmer (e.g., a bad decision) that leads to a defect in software. Fault: an incorrect intermediate state that may be entered during program execution a failure occurs only if a fault happens during execution A fault occurs only if an error exists in the program 29 29
30 Testing Terminology (2) Analysis: a search for failures by experimentation (e.g., testing) or static analysis. Defect removal (debugging): search for errors and their repair. Test case: a set of values for the input variables of a program Test set: a finite set of test cases Test oracle: determines whether a test produced correct outputs
31 Levels of Program Testing Testing-in-the-small Unit testing: testing a procedure, function, or class. Testing-in-the-large Integration testing: testing connections between units and components. System testing: test entire system. Acceptance testing: ti testing ti to decide whether to purchase the software
32 Levels of Program Testing (2) Alpha testing: system testing by a user group within the developing organization. Beta testing: system testing by select customers. Regression testing: retesting after a software modification
33 White-box testing criteria Statement coverage Edge coverage Condition coverage Path coverage Robert B. France 33 33
34 Wrap-up This course covers just the tip of the software engineering iceberg UML continues to evolve current standard is 2.2 and work is ongoing on an updated version there will be a more formal version called fuml which provides support for executing UML Component-based ddevelopment Service-oriented architectures User interface design Testing web-services, GUI applications, Formally modeling and analyzing software using mathematical techniques Robert B. France 34 34
35 Future of Software Engineering? Model-driven software development focus on raising the level of abstraction at which software is developed; support automated generation of code from models in particular domains Aspect-oriented development focus on managing complexity that arises when software features interact focus on applying models at runtime to manage runtime adaptation of software Robert B. France 35 35
36 This is not the end Robert B. France 36 36
Basic Testing Concepts and Terminology
T-76.5613 Software Testing and Quality Assurance Lecture 2, 13.9.2006 Basic Testing Concepts and Terminology Juha Itkonen SoberIT Contents Realities and principles of Testing terminology and basic concepts
More informationIT3205: Fundamentals of Software Engineering (Compulsory)
INTRODUCTION : Fundamentals of Software Engineering (Compulsory) This course is designed to provide the students with the basic competencies required to identify requirements, document the system design
More informationSoftware Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).
0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems
More informationCS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.
CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping
More informationIT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3
Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 INTRODUCTION This course is designed to provide the students with the basic competencies required to identify requirements, document
More informationCS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development
More informationKarunya University Dept. of Information Technology
PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main
More informationTo introduce software process models To describe three generic process models and when they may be used
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
More informationHow To Model Software Development Life Cycle Models
Various Software Development Life Cycle Models Sahil Jindal, Puneet Gulati, Praveen Rohilla Dronacharya College of Engineering, India Abstract:An SDLC model is a conceptual framework describing different
More informationSoftware Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
More informationTesting Introduction. IEEE Definitions
Testing Introduction IEEE Definitions Software testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationMANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info
MANUAL TESTING (Complete Package) WEB APP TESTING DB TESTING MOBILE APP TESTING We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info START DATE : TIMINGS : DURATION :
More informationObjectives. The software process. Basic software process Models. Waterfall model. Software Processes
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
More informationSoftware Development: The Waterfall Model
Steven Zeil June 7, 2013 Contents 1 Software Development Process Models 2 1.1 Components of the Waterfall Model................................. 2 1.1.1 What is a requirement?. 2 1.1.2 Testing..........
More informationChapter 8 Software Testing
Chapter 8 Software Testing Summary 1 Topics covered Development testing Test-driven development Release testing User testing 2 Program testing Testing is intended to show that a program does what it is
More informationChapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
More informationCREDENTIALS & CERTIFICATIONS 2015
THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2015 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 3 Software Design
More informationSoftware testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
More information1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...
1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering Software is intangible Hard to understand
More informationSOFTWARE PROCESS MODELS
SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation
More information2. Analysis, Design and Implementation
2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,
More informationSoftware Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University
Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or
More informationSoftware Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci
Software Engineering Software Development Process Models Lecturer: Giuseppe Santucci Summary Modeling the Software Process Generic Software Process Models Waterfall model Process Iteration Incremental
More informationTRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
More informationISTQB Certified Tester. Foundation Level. Sample Exam 1
ISTQB Certified Tester Foundation Level Version 2015 American Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged. #1 When test cases are designed
More informationContents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
More informationDevelopment Methodologies
Slide 3.1 Development Methodologies Prof. Dr. Josef M. Joller jjoller@hsr.ch Development Methodologies Prof. Dr. Josef M. Joller 1 Session 3 Slide 3.2 SOFTWARE LIFE-CYCLE MODELS Development Methodologies
More informationwww.iacpe.com Knowledge, Certification, Networking
www.iacpe.com Knowledge, Certification, Networking Page : 1 of 95 Rev. 01- Feb 2016 IACPE No 19, Jalan Bilal Mahmood 80100 Johor Bahru Malaysia Introduction to Software Engineering The International of
More informationChapter 7: Software Engineering
Chapter 7: Software Engineering Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Chapter 7: Software Engineering 7.1 The Software Engineering
More informationCMSC 435: Software Engineering Course overview. Topics covered today
CMSC 435: Software Engineering Course overview CMSC 435-1 Topics covered today Course requirements FAQs about software engineering Professional and ethical responsibility CMSC 435-2 Course Objectives To
More informationObject Oriented Design
Object Oriented Design Kenneth M. Anderson Lecture 20 CSCI 5828: Foundations of Software Engineering OO Design 1 Object-Oriented Design Traditional procedural systems separate data and procedures, and
More information2. Analysis, Design and Implementation
2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:
More informationCREDENTIALS & CERTIFICATIONS 2016
THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2016 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 5 Software Design
More informationModule 10. Coding and Testing. Version 2 CSE IIT, Kharagpur
Module 10 Coding and Testing Lesson 26 Debugging, Integration and System Testing Specific Instructional Objectives At the end of this lesson the student would be able to: Explain why debugging is needed.
More informationSoftware Processes. Topics covered
Software Processes cmsc435-1 Topics covered Systems vs. software engineering Software process models Process iteration Process activities Computer-aided software engineering cmsc435-2 What is a system?
More informationChapter 13: Program Development and Programming Languages
15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning
More informationChapter 1 The Systems Development Environment
Your Objects of SA&D Study Chapter 1 The Systems Development Environment 2011 by Prentice Hall: J.A.Hoffer et.al., Modern Systems Analysis & Design, 6 th Edition 1/55 2/55 Course Content Fundamental of
More informationChapter 17 Software Testing Strategies Slide Set to accompany Software Engineering: A Practitioner s Approach, 7/e by Roger S. Pressman Slides copyright 1996, 2001, 2005, 2009 by Roger S. Pressman For
More informationRapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1
Rapid software development 1 Objectives To explain how an iterative, incremental development process leads to faster delivery of more useful software To discuss the essence of agile development methods
More informationSoftware Engineering UNIT -1 OVERVIEW
UNIT -1 OVERVIEW The economies of ALL developed nations are dependent on software. More and more systems are software controlled. Software engineering is concerned with theories, methods and tools for
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,
More informationSoftware Engineering. Christopher Simpkins chris.simpkins@gatech.edu. Chris Simpkins (Georgia Tech) CS 2340 Objects and Design CS 1331 1 / 16
Software Engineering Christopher Simpkins chris.simpkins@gatech.edu Chris Simpkins (Georgia Tech) CS 2340 Objects and Design CS 1331 1 / 16 Software Engineering Definition 3.2760 from ISO/IEC/IEEE 24765:2010(E)
More informationSoftware Engineering 2014-15
Software Engineering 2014-15 Theme leader Kung-Kiu Lau Today s presenter John Sargeant Course Units: ACS: Software Engineering COMP61511 Software Engineering Overview ( Overview ) COMP61521 Component-based
More informationChapter 3. Technology review. 3.1. Introduction
Technology review Chapter 3 3.1. Introduction Previous chapter covers detail description about problem domain. In this chapter I will discuss the technologies currently available to solve a problem in
More informationModellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003
Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 18-19 The Unified Process Static dimension Glossary UP (Unified
More informationThe Rap on RUP : An Introduction to the Rational Unified Process
The Rap on RUP : An Introduction to the Rational Unified Process Jeff Jacobs Jeffrey Jacobs & Associates phone: 650.571.7092 email: jeff@jeffreyjacobs.com http://www.jeffreyjacobs.com Survey Does your
More informationUmbrella: A New Component-Based Software Development Model
2009 International Conference on Computer Engineering and Applications IPCSIT vol.2 (2011) (2011) IACSIT Press, Singapore Umbrella: A New Component-Based Software Development Model Anurag Dixit and P.C.
More informationAgile Testing (October 2011) Page 1. Learning Objectives for Agile Testing
Agile Testing (October 2011) Page 1 Learning Objectives for Agile Testing "Certification is the by-product; Learning is the product." Agile Testing should: Compare and contrast agile testing with traditional
More informationSoftware Process for QA
Software Process for QA Basic approaches & alternatives CIS 610, W98 / M Young 1/7/98 1 This introduction and overview is intended to provide some basic background on software process (sometimes called
More informationLecture 3 Software Development Processes
Lecture 3 Software Development Processes Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 2, 2008 Lecture Overview
More informationService Oriented Architecture Professional (SOACP)
Service Oriented Architecture Professional (SOACP) Training Programme The roots of service-orientation can be traced back to the early days of modern computing. It took several years for Service Oriented
More informationSoftware Testing. System, Acceptance and Regression Testing
Software Testing System, Acceptance and Regression Testing Objectives Distinguish system and acceptance testing o How and why they differ from each other and from unit and integration testing Understand
More informationOnline Master s Programme in Computer Science
School of Computer Science Online Master s Programme in Computer Science Module Descriptions Advanced Database The aim of this module is to enhance your understanding and knowledge of selected current
More informationModule 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur
Module 2 Software Life Cycle Model Lesson 3 Basics of Software Life Cycle and Waterfall Model Specific Instructional Objectives At the end of this lesson the student will be able to: Explain what is a
More informationAdvanced Test-Driven Development
Corporate Technology Advanced Test-Driven Development Software Engineering 2007 Hamburg, Germany Peter Zimmerer Principal Engineer Siemens AG, CT SE 1 Corporate Technology Corporate Research and Technologies
More informationSoftware Engineering. Software Testing. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Testing Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To discuss the distinctions between validation testing and defect t testing To describe the
More informationEmpirical study of Software Quality Evaluation in Agile Methodology Using Traditional Metrics
Empirical study of Software Quality Evaluation in Agile Methodology Using Traditional Metrics Kumi Jinzenji NTT Software Innovation Canter NTT Corporation Tokyo, Japan jinzenji.kumi@lab.ntt.co.jp Takashi
More informationAssuming the Role of Systems Analyst & Analysis Alternatives
Assuming the Role of Systems Analyst & Analysis Alternatives Nature of Analysis Systems analysis and design is a systematic approach to identifying problems, opportunities, and objectives; analyzing the
More informationHow to realize software evolution of existing BOSS via ZTE SEEM
How to realize software evolution of existing BOSS via ZTE SEEM Zhan Zhang Abstract Due to long-term construction and accumulation for different purposes, telecom carriers normally have very complex IT
More informationA Comparison of SOA Methodologies Analysis & Design Phases
202 A Comparison of SOA Methodologies Analysis & Design Phases Sandra SVANIDZAITĖ Institute of Mathematics and Informatics, Vilnius University Abstract. Service oriented computing is a new software engineering
More informationTonight s Speaker. Life of a Tester at Microsoft Urvashi Tyagi Software Test Manager, Microsoft
Tonight s Speaker Life of a Tester at Microsoft Urvashi Tyagi Software Test Manager, Microsoft You will learn about what a software tester does at Microsoft, how the role interfaces with program managers
More informationIntroduction to Software Engineering
What is Software Engineering Introduction to Software Engineering Prof. Lyle N. Long lnl@psu.edu http://www.personal.psu.edu/lnl Sources of Material What is software? Software Engineering, 7 th Edition,
More informationNational University of Ireland, Maynooth MAYNOOTH, CO. KILDARE, IRELAND. Testing Guidelines for Student Projects
National University of Ireland, Maynooth MAYNOOTH, CO. KILDARE, IRELAND. DEPARTMENT OF COMPUTER SCIENCE, TECHNICAL REPORT SERIES Testing Guidelines for Student Projects Stephen Brown and Rosemary Monahan
More informationSoftware Engineering. What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software engineering and to explain its importance To set out the answers
More informationEngineering Process Software Qualities Software Architectural Design
Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical
More informationHow To Understand Software Engineering
PESIT Bangalore South Campus Department of MCA SOFTWARE ENGINEERING 1. GENERAL INFORMATION Academic Year: JULY-NOV 2015 Semester(s):III Title Code Duration (hrs) SOFTWARE ENGINEERING 13MCA33 Lectures 52Hrs
More informationSoftware Engineering. What is a system?
What is a system? Software Engineering Software Processes A purposeful collection of inter-related components working together to achieve some common objective. A system may include software, mechanical,
More informationSoftware Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program.
Software Testing Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program. Testing can only reveal the presence of errors and not the
More informationLecture Objectives. Software Life Cycle. Software Engineering Layers. Software Process. Common Process Framework. Umbrella Activities
Software Life Cycle Lecture Objectives What happens in the life of software To look at the life cycle of a software To understand the software process and its related elements To relate to the different
More information(BA122) Software Engineer s Workshop (SEW)
Training for the Business Analyst (BA122) Software Engineer s Workshop (SEW) Duration: 4 days CDUs (Continuing Development Units): 28 Description: A practical workshop covering the role of the Business-Systems
More informationProcess Models and Metrics
Process Models and Metrics PROCESS MODELS AND METRICS These models and metrics capture information about the processes being performed We can model and measure the definition of the process process performers
More information10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design
Session # 3 Contents Systems Analysis and Design 2 1 Tiers of Software Development 10/4/2013 Information system development project Realistic behavior 3 Information system development project System Development
More informationSOMA, RUP and RMC: the right combination for Service Oriented Architecture
SOMA, RUP and RMC: the right combination for Service Oriented Architecture WebSphere User Group, Bedfont, 4th March, 2008 Keith Mantell Senior Solution Architect IBM Rational keith_mantell@uk.ibm.com March
More informationGoing Faster: Testing The Web Application. By Adithya N. Analysis and Testing of Web Applications Filippo Ricca and Paolo Tonella
Testing Web Applications Testing Web Applications By Adithya N. Going Faster: Testing The Web Application Edward Hieatt and Robert Mee (IEEE Software) Analysis and Testing of Web Applications Filippo Ricca
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2007 Vol. 6, No. 1, January-February 2007 CM Configuration Change Management John D.
More informationOracle Insurance Policy Administration System Quality Assurance Testing Methodology. An Oracle White Paper August 2008
Oracle Insurance Policy Administration System Quality Assurance Testing Methodology An Oracle White Paper August 2008 Oracle Insurance Policy Administration System Quality Assurance Testing Methodology
More informationProgram Understanding in Software Engineering
Taming the complexity: The need for program understanding in software engineering Raghvinder S. Sangwan, Ph.D. Pennsylvania State University, Great Valley School of Graduate Professional Studies Robert
More informationTechnical Writing - Software Engineering Life Cycle Review
CS212: HARD SKILLS Announcements Overview motivation solitary programming engineering and software engineering software life cycle development models modularity documentation quality, legality, 1. Motivation
More informationBusiness-Driven Software Engineering Lecture 3 Foundations of Processes
Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary
More informationPlan-Driven Methodologies
Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a
More informationIntroduction to Automated Testing
Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases
More informationModellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003
Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 20-21 The Unified Process Dynamic dimension Two dimensions Content
More informationA Configuration Management Model for Software Product Line
A Configuration Management Model for Software Product Line Liguo Yu 1 and Srini Ramaswamy 2 1 Computer Science and Informatics Indiana University South Bend South Bend, IN 46634, USA ligyu@iusb.edu 2 Computer
More informationApplying Agile Methods in Rapidly Changing Environments
Applying Agile Methods in Changing Environments 7/23/2002 1 Applying Agile Methods in Rapidly Changing Environments Peter Kutschera IBM Unternehmensberatung GmbH Am Fichtenberg 1, D-71803 Herrenberg Steffen
More informationTopics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
More informationKeywords Class level metrics, Complexity, SDLC, Hybrid Model, Testability
Volume 5, Issue 4, April 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com A Review of Static
More informationCS 487. Week 8. Reference: 1. Software engineering, roger s. pressman. Reading: 1. Ian Sommerville, Chapter 3. Objective:
CS 487 Week 8 Reading: 1. Ian Sommerville, Chapter 3. Objective: 1. To check the understandibility of the students in life cycle and process model for development of a software product. 2. To check if
More informationCertified Software Quality Engineer (CSQE) Body of Knowledge
Certified Software Quality Engineer (CSQE) Body of Knowledge The topics in this Body of Knowledge include additional detail in the form of subtext explanations and the cognitive level at which the questions
More informationAn Easier Way for Cross-Platform Data Acquisition Application Development
An Easier Way for Cross-Platform Data Acquisition Application Development For industrial automation and measurement system developers, software technology continues making rapid progress. Software engineers
More informationA Capability Maturity Model (CMM)
Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability
More informationSoftware Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 7 Integrated Object-Oriented Methodologies: OPEN and FOOM 1 Object-oriented Process, Environment and Notation (OPEN) First introduced in
More information10.1 Determining What the Client Needs. Determining What the Client Needs (contd) Determining What the Client Needs (contd)
Slide 10..1 CHAPTER 10 Slide 10..2 Object-Oriented and Classical Software Engineering REQUIREMENTS Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu Overview Slide 10..3
More informationFoundations of Model-Driven Software Engineering
Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software
More informationSoftware Development Process
Software Development Process 台 北 科 技 大 學 資 訊 工 程 系 鄭 有 進 教 授 2005 copyright Y C Cheng Software development process Software development process addresses requirements, expectations and realities simultaneously
More information9 Research Questions Resolved
217 9 Research Questions Resolved "All truths are easy to understand once they are discovered; the point is to discover them." Galileo Galilei. 9.1 Main Contributions In section 1.6 the thesis introduced
More informationA Software Engineering Process for Operational Space Weather Systems. S. Dave Bouwer, W. Kent Tobiska Space Environment Technologies www.spacewx.
A Software Engineering Process for Operational Space Weather Systems S. Dave Bouwer, W. Kent Tobiska Space Environment Technologies www.spacewx.com Transitioning Research Models into Operations Software
More informationRequirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK
IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational
More informationA Survey of Software Development Process Models in Software Engineering
, pp. 55-70 http://dx.doi.org/10.14257/ijseia.2015.9.11.05 A Survey of Software Development Process Models in Software Engineering Iqbal H. Sarker 1, Faisal Faruque 1, Ujjal Hossen 2 and Atikur Rahman
More informationA. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.
Processing Models Of SDLC Mrs. Nalkar Sanjivani Baban Asst. Professor, IT/CS Dept, JVM s Mehta College,Sector 19, Airoli, Navi Mumbai-400708 Nalkar_sanjivani@yahoo.co.in Abstract This paper presents an
More information