Needing computer science homework completed
W2 Replies, W3 Assignment #1 & W3 Assignment #2
_____________________________________
Examples and Readings:
.ppt files are the Readings
ParkingFinder.com is a type of e-business exchange that does business entirely on the Internet. The system connects parking space landlords and space tenants all over the world in an online market and manages the entire booking process and payments.
For a person to offer parking spaces (landlord), he/she must register with ParkingFinder.com. The person must provide a current physical address and telephone number as well as a current e-mail address. The system will then maintain an open account for this person. Access to the system as a landlord is through a secure, authenticated portal.
A landlord can list parking spaces on the system through a special Internet form. Information required includes all of the pertinent information about the parking space, the asking price, and documents showing that the landlord has the right to rent the space. A landlord may list as many spaces as desired. Parking spaces listed by a landlord need to be verified that the landlord owns them, before they can be visible to the public. The system maintains an index of all parking spaces in the system so that tenants can use the search engine to search for parking spaces. The search engine allows searches of parking spaces by location. At the end of each month, a check is mailed to each landlord for the spaces that have been rented.
People wanting to rent parking spaces (potential tenants) come to the site and search for the space they want. When they decide to book, they must open an account with a credit card to pay for the parking space. They need to select the space they want to book, the time slot for the renting period and the vehicle license plate number. The system maintains all of this information on secure servers. The tenants can, if they want, enter their review and ratings of the parking space. The same functionality can be accessed through mobile app, which can be downloaded and installed from Apple Store and Google Play Store.
Week 3:
6. Develop a
sequence diagram for the use case
Book a Parking Space (10 points)
7. Develop a
design class diagram (see Figure 10-19 from the textbook for example) that includes classes, attributes, methods, and navigation visibility for the use case
Book a Parking Space (10 points)
Submit the sequence diagram and the design class diagram together with the SSD, Domain Model Class diagram that you use to develop the design models.
Need 2 Paragraphs for each DQ
DQ#1 – Domain Model Class Diagram vs. Design Class Diagram
Explain how domain model class diagram is different from design class diagram.
DQ#2 – Sequence Diagram and SSD
How does a sequence diagram differ from a System Sequence Diagram (SSD)? Which information do you need to be able to extend a System Sequence Diagram to a Sequence Diagram?
DQ#3 – Designing with CRC Cards vs. Sequence Diagrams
What is the difference between designing with CRC cards and designing with sequence diagrams? Which technique would you prefer? Why?
DQ#4 – Use case controller
What is the purpose of the use case controller?
WEEK 2 REPLIES
Dillon DQ1
The objective of systems analysis is to thoroughly understand the organization’s informational needs or requirements and to document those requirements in a set of specifications. Systems design is the bridge process that takes us from requirements to solution. The objective of system design is to define, organize, and structure the components of the final solution system (Satzinger et. al 2012).
Sources
Satzinger, J. W., Jackson, R. B., & Burd, S. D. (2012).
Systems analysis and design in a Changing World. Course Technology, Cengage Learning.
Pengfei DQ2
User-interface design is concerned with designing the interface that allows users to interact with the system. It includes designing screens, menus, buttons, and other visual elements that users see and interact with. System-interface design, on the other hand, is concerned with the interfaces between the system and other systems or components. It includes designing the protocols, formats, and messages used for communication.
Several diagrams developed during the analysis phase can be used for user-interface and system-interface design. Use case diagrams can be used for both. Use case diagrams show the interactions between the user and the system, which can be used to design the user interface. Use cases can also show the interactions between the system and other systems, which can be used to design the system interface.
Sequence diagrams can also be used for both user-interface and system-interface design. Sequence diagrams show the interactions between objects or components, which can be used to design the flow of control in the user interface and the messages exchanged in the system interface.
Finally, class diagrams can be used for system-interface design. Class diagrams show the classes and relationships between them, which can be used to design the data structures and objects used in the system interface.
Overall, while user-interface design is focused on designing the visual elements that users interact with, system-interface design is focused on designing the interfaces between the system and other systems or components. The use case, sequence, and class diagrams developed during the analysis phase can be used to aid in both types of design.
Majin DQ3
Both the design types are sort of similar but at the same time, there are distinct variations between them. The architectural design on one hand is a type of rough and brief blueprint for a new system or an existing system. This type of design simply gives what the project is expected to present and what kind of taskings and functions this system is capable of demonstrating. This design doesn’t go in very deep into the details but gives an idea of the initial structure and outline of the system. It also gives an idea of what type of materials will be required and the precise estimation of closeout and cost factors on the selected project. Before diving into detailed design, the developers and analysts always make sure that the architectural design is prepared and approved for execution. The other type of design i.e. detail design presents deeper and elaborative features, functions, and capabilities of the system to be made. It gives more thorough information on every component of the system that is mentioned in the architectural design. The architectural design conveys a big picture of the system while the detailed design goes more inner into the system giving information such as specific amount and budget for the necessary materials, comprehensive drawings, et cetera. In short, the detailed design gives the in-depth specifications of the system being developed or modified.
Kevin DQ4
My biggest critique would mostly be towards the National University SOAR page as in my opinion is very outdated and could be improved upon. My inputs:
Functionality: The user should be able to accomplish all tasks such as view or add classes in less than 5 clicks.
Usability: The user interface design needs be updated and should be compatible across all devices such as phones, tablets, and personal computers. The user should be able to clearly identify the task they want to accomplish on the screen.
Reliability: The system should be able to be utilized with 99% uptime.
Performance: The system should be responsive to user inputs in 5ms and should be able to support more than 100 users simultaneously at any given time.
Supportability: The website and database must be designed with upgrades in mind.
CIS320
Systems Analysis and Integration
Week 3 – Project Planning and Project Management
*
Systems Analysis and Design in a Changing World, 6th Edition
*
Chapter 9
Overview
This chapter focuses on the project planning and project management.
Covered in CIS/310 – Technology Project Management
Outline
Principles of Project Management
Activities of SDLC Core Process 1:
Identify the Problem and Obtain Approval
Activities of SDLC Core Process 2:
Plan and Monitor the Project
Systems Analysis and Design in a Changing World, 6th Edition
*
Systems Analysis and Design in a Changing World, 6th Edition
*
Principles of Project Management:
The Need for Project Management
Standish Group CHAOS Report shows too many IT project fail (only 32% completely successful)
Reasons for failure
Undefined project management practices
Poor IT management and poor IT procedures
Inadequate executive support for the project
Inexperienced project managers
Unclear business needs and project objectives
Inadequate user involvement
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
The Role of the Project Manager
Project Management
Organizing and directing other people to achieve a planned result within a predetermined schedule and budget
The processes used to plan the project and then to monitor and control it.
Project Manager
Great need for effective project managers
Internally managing people and resources
Externally conducting public relations
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Project Manager & Project Stakeholders
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
“Traditional” Project Management
Body of Knowledge (PMBOK)
PMPOK is organized into 9 knowledge areas:
Project Scope Management
Project Time Management
Project Cost Management
Project Quality Management
Project Human Resource Management
Project Communications Management
Project Risk Management
Project Procurement Management
Project Integration Management
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
“Agile” Project Management vs. “Traditional” Project Management
Agile Scope Management
Scope is not well understood, but needs to be controlled
Agile Time Management
Schedule must be flexible due to changes
Agile Cost Management
Costs are more difficult to estimate
Agile Risk Management
Higher risk aspects of project are completed first
Agile Quality Management
Quality assessed after each iteration
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Activities of Core Process 1:
Identify Problem and Obtain Approval
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Activities of Core Process 2:
Plan and Monitor the Project
Systems Analysis and Design in a Changing World, 6th Edition
*
Summary
Project management is an important and challenging career role. Information systems projects do not have a great success rate, and project management knowledge and skills are valued and needed to improve this record.
Project management is directing other people to achieve a planned result on schedule and on budget. Project managers have internal and external responsibilities.
Project managers work with clients, who fund the project, an oversight committee which approves and reviews progress, and users who will directly interact with the system.
The discipline of project management is organized into the Project Management Body of Knowledge (PMBOK) that includes nine knowledge areas. Project managers should study and digest this body of knowledge.
The SDLC in this text includes two Core Processes that involve the project manager: 1) Identify the problem and obtain approval and 2) Plan and monitor the project.
The core process Identify the problem and obtain approval includes the following activities: 1) identify the problem, 2) quantify project approval factors, 3) perform risk and feasibility analysis, and 4) review with client and obtain approval.
The core process Plan and monitor the project includes the following activities: 1) establish the project environment, 2) schedule the work, 3) staff and allocate resources, 4) evaluate work processes, and 5) monitor progress and make corrections.
CIS320
Systems Analysis and Integration
Week 3 – Use Case Realizations
*
Systems Analysis and Design in a Changing World, 6th Edition
*
Chapter 11
Overview
This chapter focuses on the Design Process, proceeding use case by use case, and within each use case, layer by layer
Outline
Detailed Design of Multilayer Systems
Use Case Realization with Sequence Diagrams
Systems Analysis and Design in a Changing World, 6th Edition
*
Systems Analysis and Design in a Changing World, 6th Edition
*
Detailed Design of Multilayer Systems
CRC Cards focuses on the business logic, also known as problem domain layer of classes
Three layers include view layer, business logic/problem domain layer, and data access layer
Questions that come up include
How do objects get created in memory?
How does the user interface interact with other objects?
How are objects handled by the database?
Will other objects be necessary?
What is the lifespan of each object?
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Use Case Realization with Sequence Diagrams
Use case realization—the process of elaborating the detailed design of a use case with interaction diagrams
Two types of interaction diagrams
UML sequence diagram
UML communication diagram
Sequence diagrams, aka use case realization sequence diagrams, extend the system sequence diagram (SSD) to show:
View layer objects
Domain layer objects (usually done first)
Data access layer objects
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Start with System Sequence Diagram (SSD)
Use case Create customer account
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Sequence Diagram to show View Layer and Part of Problem Domain Layer
Systems Analysis and Design in a Changing World, 6th Edition
This is a two layer architecture, as the domain class Customer knows about the database and executes SQL statements for data access
Three layer design would add a data access class to handle the database resulting in higher cohesiveness and loose coupling
Note :CustomerForm is an object of the CustomerForm class, :CustomerHandler is an object of the CustomerHandler class playing the role of a controller stereotype (both underlined becuase they are objects)
aC:Customer is an object of the Customer class known by reference variable named aC
Note: the create message to aC:Customer points to the object symbol to indicate create
*
Systems Analysis and Design in a Changing World, 6th Edition
*
Overview of Detailed Design Steps
Shown previously in Chapter 10
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Create Customer Account Use Case
Start with domain model for Customer Account Subsystem
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Create Customer Account Use Case
First cut design class diagram for use case
Select needed classes, elaborate attributes, add controller, and add navigation visibility
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Create Customer Account Use Case
First cut sequence diagram expanding SSD, adding controller, and adding needed classes
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Create Customer Account Use Case
Add messages and activation to complete collaboration
This is just the domain layer
These domain classes handle data access, so this is a two layer architecture
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Developing a Multilayer Design
View Layer
With users, there is always a view layer. Add forms or pages
Data Access Layer
Persistent classes need some mechanism for storing and retrieving their state from a database
Separate layer required when the business logic is complex and there is a need to separate connection to database and SQL from the domain classes.
For each domain class, add a data access class to get data and save data about an instance
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Adding Data Access Layer
Example of a use case
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Adding View Layer
Fill shopping Cart use case
Sequence diagram just shows View interaction with the controller
View classes don’t need to even know about the domain or data access layer
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Designing with UML Communication Diagrams
Shows the same information as a sequence diagram
Symbols used in a communication diagram:
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Communication Diagram for Fill Shopping Cart Use Case
This diagram should match the domain layer sequence diagram shown earlier
Many people prefer them for brainstorming
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Updating the Design Classes
Design class diagram (DCD) focuses on domain layer
When an object of a class receives a message, that message becomes a method in the class on the DCD
If :InventoryItem receives the message updateQty(qty), then a method signature is added to InventoryItem:
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Updated Design Class Diagram for Domain Layer
After Create customer account use case and Fill shopping cart use case
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Summary
This chapter went into more detail about use case realization and three layer design to extend the design techniques from last chapter
Three layer design is an architectural design pattern, part of the movement toward the use of design principles and patterns.
Use case realization is the design of a use case, done with a design class diagram and sequence diagrams. Using sequence diagrams allows greater depth and precision than using CRC cards.
Use case realization proceeds use case by use case (use case driven) and then for each use case, it proceeds layer by layer
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
*
Summary (continued)
Starting with the business logic/domain layer, domain classes are selected and an initial design class diagram is drawn.
The systems sequence diagram (SSD) from analysis is expanded by adding a use case controller and then the domain classes for the use case.
Messages and returns are added to the sequence diagram as responsibilities are assigned to each class.
The design class diagram is then updated by adding methods to the classes based on messages they receive and by updating navigation visibility.
Simple use case might be left with two layers if the domain classes are responsible for database access. More complex systems add a data access layer as a third layer to handle database access
Systems Analysis and Design in a Changing World, 6th Edition
[removed]