CS 160: Software Engineering October 8 Class Meeting

Slides:



Advertisements
Similar presentations
Introduction to Databases
Advertisements

©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
11 3 / 12 CHAPTER Databases MIS105 Lec14 Irfan Ahmed Ilyas.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Chapter 4: Database Management. Databases Before the Use of Computers Data kept in books, ledgers, card files, folders, and file cabinets Long response.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
CS 160: Software Engineering August 25 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
CS 160: Software Engineering August 27 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Page 1 ISMT E-120 Introduction to Microsoft Access & Relational Databases The Influence of Software and Hardware Technologies on Business Productivity.
IST Databases and DBMSs Todd S. Bacastow January 2005.
PHASE 3: SYSTEMS DESIGN Chapter 7 Data Design.
The Design Discipline.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
PowerDesigner 与对象建模. 2 Why Using UML? Visually define and communicate the structure and behavior of an application Represent systems using Object-Oriented.
CS 157B: Database Management Systems II May 8 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron Mak
Chapter 1 Overview of Database Concepts Oracle 10g: SQL
1 Chapter 1 Overview of Database Concepts. 2 Chapter Objectives Identify the purpose of a database management system (DBMS) Distinguish a field from a.
CS 160: Software Engineering September 10 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.
4/2/03I-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Software Architecture and Design Readings: Ambler, Chap. 7 (Sections to start.
CMPE 226 Database Systems September 16 Class Meeting Department of Computer Engineering San Jose State University Fall 2015 Instructor: Ron Mak
CS 174: Web Programming September 23 Class Meeting Department of Computer Science San Jose State University Fall 2015 Instructor: Ron Mak
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CS 174: Web Programming September 21 Class Meeting Department of Computer Science San Jose State University Fall 2015 Instructor: Ron Mak
Chapter 9 Moving to Design
Information System Development Courses Figure: ISD Course Structure.
CS 235: User Interface Design September 22 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler
CS 160: Software Engineering October 1 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Chapter 7 System models.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
CS 160: Software Engineering October 15 Class Meeting
System models l Abstract descriptions of systems whose requirements are being analysed.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
CS 160: Software Engineering October 6 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Systems Analysis and Design in a Changing World, 3rd Edition
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
MANAGING DATA RESOURCES ~ pertemuan 7 ~ Oleh: Ir. Abdul Hayat, MTI.
CS 160: Software Engineering September 3 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
CS 151: Object-Oriented Design September 5 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron Mak
CS 151: Object-Oriented Design October 15 Class Meeting Department of Computer Science San Jose State University Fall 2013 Instructor: Ron Mak
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
CS 160 and CMPE/SE 131 Software Engineering February 16 Class Meeting Department of Computer Science Department of Computer Engineering San José State.
CS 160 and CMPE/SE 131 Software Engineering February 18 Class Meeting Department of Computer Science Department of Computer Engineering San José State.
CS 160 and CMPE/SE 131 Software Engineering February 25 Class Meeting Department of Computer Science Department of Computer Engineering San José State.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
CS 160 and CMPE/SE 131 Software Engineering March 10 Class Meeting Department of Computer Science Department of Computer Engineering San José State University.
CS 160 and CMPE/SE 131 Software Engineering March 8 Class Meeting Department of Computer Science Department of Computer Engineering San José State University.
CS 160 and CMPE/SE 131 Software Engineering March 15 Class Meeting Department of Computer Science Department of Computer Engineering San José State University.
CS 160 and CMPE/SE 131 Software Engineering May 12 Class Meeting Department of Computer Science Department of Computer Engineering San José State University.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Introduction to Database Programming with Python Gary Stewart
System Architecture CS 560. Project Design The requirements describe the function of a system as seen by the client. The software team must design a system.
Data Resource Management Data Concepts Database Management Types of Databases Chapter 5 McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies,
CS4222 Principles of Database System
Review for Final, Fall 2010 Close book, Close notes
CMPE 280 Web UI Design and Development October 24 Class Meeting
CS 174: Server-Side Web Programming February 12 Class Meeting
Analysis models and design models
CMPE/SE 131 Software Engineering March 9 Class Meeting
CMPE/SE 131 Software Engineering March 7 Class Meeting
Presentation transcript:

CS 160: Software Engineering October 8 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak www.cs.sjsu.edu/~mak

Midterm Review What is software engineering? Complexity and change Collaboration, communication, and coordination Processes and methodologies _

Midterm Review Web application architecture Client-server Static and dynamic web pages Web development tools and technologies Tomcat and NetBeans Servlets, JSPs, and JavaBeans MySQL relational database manager _

Midterm Review, cont’d Servlets JavaServer Pages (JSP) Application logic Redirection to other servlets or to JSPs JavaServer Pages (JSP) Translated to servlets by Tomcat _

Midterm Review, cont’d Deploying web applications (.war files) Manual deployment to Tomcat Tomcat web application manager Development and deployment with NetBeans _

Midterm Review, cont’d Project phases Waterfall model Agile software development _

Midterm Review, cont’d Requirements Use cases Elicitation Functional and nonfunctional Use cases UML use case diagrams Use case descriptions _

Midterm Review, cont’d Git Version control system File states Clone, push, pull Add, commit Conflict resolution GitHub SmartGit

Midterm Review, cont’d Conceptual design Problem statement Product objectives and features Major modules _

Midterm Review, cont’d Analysis model System design Functional model Analysis object model Dynamic model System design Subsystem decomposition, partitioning, and layering Framework classes and the initial thread of control Loose coupling vs. high cohesion

Midterm Review, cont’d Model-View-Controller architecture Controller (servlets) View (JSPs) Model (JavaBeans) objects Loose coupling and parallel development

Midterm Review, cont’d Server-side architecture Multilayered Data access layer Unified Modeling Language (UML) Package, class, and sequence diagrams Aggregations, compositions, and inheritance Attributes and methods

Midterm Review, cont’d Data repository Data modeling Data independence, redundancy, inconsistency, access, disparity, concurrency, security, and integrity Data modeling Conceptual, logical, and physical models Entities and relationships One-to-one, one-to-many, many-to-many Normalization: 1NF and 2NF ER diagrams

Midterm Review, cont’d MySQL relational database management system (RDBMS) Command-line interface SQL Create and drop databases and tables Query tables Joining tables Insert, update, and delete record

Midterm Review, cont’d MySQL Workbench View and manipulate table data EER diagrams Forward and reverse engineering _

Midterm Review, cont’d JDBC Java connection to a database connection pool Statements and prepared statements Query, insert, update, delete records Result sets Object-relational mapping JavaBeans

Example Midterm Questions Briefly describe the contents of each of the following: Requirements specification Software prototype Conceptual design Design document

Example Midterm Questions, cont’d Consider the use case where a user moves a file from one directory into another within the file system. Suppose you implemented it with a graphical user interface (GUI) based on the model-view-controller (MVC) architecture. The user does the file move by dragging the image of a document on the screen with the mouse from one folder image into another. Identify the model, the view, and the controller objects. Draw a UML sequence diagram of the interaction described by this use case.

Example Midterm Questions, cont’d Model File system components Physical files and directories that exist on disk View GUI objects Folders and documents as shown on the screen _

Example Midterm Questions, cont’d Controller The interface (“bridge”) between the GUI and the file system. The code that translates the GUI actions to operations on the underlying file system. _

Example Midterm Questions, cont’d User Source Folder Destination Folder GUI-FS Bridge File System select document confirm selection start drag send source folder and source document info detach document from source folder send move command with source file path and destination directory path send destination folder info end drag display document in destination folder confirm file move confirm file move

Example Midterm Questions, cont’d Suppose a teaching assistant for this CS 160 class wanted to build a relational database to keep track of the project teams. His first attempt at the database consists of a single table, as shown in the ER diagram.

Example Midterm Questions, cont’d For each of the following queries, either write the SQL statement to perform the query based on this database, or explain why the query would be difficult to do. What are the name and URL of team Alpha’s product? SELECT product_name, product_URL FROM team WHERE team_name = ‘Alpha’

Example Midterm Questions, cont’d Who’s on team Beta? Which team is Mary Jones on and what is her project grade? Difficult (tedious, at least) to do because of the repeated student fields. Each first name/last name pair would need to be listed separately in the SELECT clause. Also difficult to do because the test for Mary Jones would have to be duplicated for each student in the row and then OR’d together.

Example Midterm Questions, cont’d Normalize to 2NF the project team database. Remember that each student on a particular project team will receive the same project grade. PK FK