130 likes | 186 Views
Asper School of Business University of Manitoba. Systems Analysis & Design. Instructor: Bob Travica. Systems development life cycle & development methodologies. Updated: September 2018. Outline. Systems development life cycle System development methodology Structured methodology
E N D
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica Systems development life cycle & development methodologies Updated: September 2018
Outline • Systems development life cycle • System development methodology • Structured methodology • Object-oriented methodology • Objects and Classes • Inheritance • Specialization/Generalization • Polymorphism 3510 Systems Analysis & Design * Bob Travica
Plan Use & Maintain Develop Systems development life cycle (SDLC) • SDLC: process of planning, building, using, and updating an information system. 3510 Systems Analysis & Design * Bob Travica
System development methodology • SD Methodology • Guidelines for developing system. • Kind of knowledge. • Two kinds of methodologies • Structured (since 1970s) • Newer ones focused on rapid development 3510 Systems Analysis & Design * Bob Travica
Structured methodology(“Waterfall”) MAINTAIN DURING PRODUCTION PHASE * INSTALLATION, TESTING Also called “Waterfall” methodology 3510 Systems Analysis & Design * Bob Travica
Project Planning Analysis P P Installation, Testing Object oriented methodology -Unified Process Terms matching structured methodology (P) * P P P Development activities are similar to Waterfall but they are run many times on system parts added incrementally. Iteration = One run of Analysis, Design, Implementation, Deployment within a UP phase. A phase has 1 or more iterations. 3510 Systems Analysis & Design * Bob Travica
Structured vs. OO Methodology 3510 Systems Analysis & Design * Bob Travica
Object – key concept • Object: Software entity with data (attributes) and methods (associated behaviors, or functions). • Object encapsulates data and processes. Object’s data are private, inaccessible directly to other objects. • Examples of objects • Problem domain objects (student, customer) • User interface (buttons, text boxes) 3510 Systems Analysis & Design * Bob Travica
Object examples • Objects are associated and interact via messages – • callsforapplying some function on data (e.g., read). 3510 Systems Analysis & Design * Bob Travica
Object – An instance of class with specified Values of Attributes (specific data) Class Name 12005 09/10/2003 Attributes 16/10/2003 Functions CRUD functions Class • Class: Definition of object properties and behavior. Like a skeleton od database record (metadata) plus applicable functions (write, read, change…). • Objects are instances of a class (e.g., Customer object is an instance of a Customer class). 3510 Systems Analysis & Design * Bob Travica
Inheritance and Specialization/Generalization • Inheritance: Property of OO systems allowing for attributes and methods to be shared among objects. • Reduces system development costs. • Inheritance enables a special association between classes called Specialization/Generalization 3510 Systems Analysis & Design * Bob Travica
Inheritance & Specialization/ Generalization (Cont.) • Generalization represented by arrows from subclasses to superclass. • Class “generalizes” attributes & methods of subclasses. Parent class or Super-class • Specialization: Subclasses inherit attributes and operations of the superclass, plus have some of their own. • Subclasses “specialize” the superclass. Children classes or Sub-classes 3510 Systems Analysis & Design * Bob Travica
Same message ”Calculate price” triggers methods specific to subclasses. Inheritance and Polymorphism • Polymorphism: Generally, many forms of something. The ability of subclasses to react differently to the same message. -vehicleMakeModel -price +calcPrice() dealerMarkup annualAmortization 3510 Systems Analysis & Design * Bob Travica