Download presentation
Presentation is loading. Please wait.
Published byPiers Oliver Modified over 9 years ago
1
CS 160: Software Engineering October 8 Class Meeting
Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
2
Midterm Review What is software engineering? Complexity and change
Collaboration, communication, and coordination Processes and methodologies _
3
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 _
4
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 _
5
Midterm Review, cont’d Deploying web applications (.war files)
Manual deployment to Tomcat Tomcat web application manager Development and deployment with NetBeans _
6
Midterm Review, cont’d Project phases Waterfall model
Agile software development _
7
Midterm Review, cont’d Requirements Use cases Elicitation
Functional and nonfunctional Use cases UML use case diagrams Use case descriptions _
8
Midterm Review, cont’d Git Version control system File states
Clone, push, pull Add, commit Conflict resolution GitHub SmartGit
9
Midterm Review, cont’d Conceptual design Problem statement
Product objectives and features Major modules _
10
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
11
Midterm Review, cont’d Model-View-Controller architecture
Controller (servlets) View (JSPs) Model (JavaBeans) objects Loose coupling and parallel development
12
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
13
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
14
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
15
Midterm Review, cont’d MySQL Workbench View and manipulate table data
EER diagrams Forward and reverse engineering _
16
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
17
Example Midterm Questions
Briefly describe the contents of each of the following: Requirements specification Software prototype Conceptual design Design document
18
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.
19
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 _
20
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. _
21
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
22
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.
23
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’
24
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.
25
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.