Uploaded by MY ACCOUNT

cis673-s03-f1

advertisement
Software Design & Production methodologies
CIS 663
Instructor: Vassilka Kirova
CCS, IS, NJIT
Tel.: 973 596 2319
Email: kirova@cis.njit.edu
Email: kirova@cis.njit.edu
Practice Final Exam
Exam Length: 2 hours
50points = 100%
PROBLEM GROUP 1 (10 POINTS) – ANSWER 5 OF THE 7 QUESTIONS BELOW!
Note: There are more questions below to help you prepare better.
1. Architecture Specification
Which of the elements listed in the next
column are used for specifying software
architectures?
Elements
Selection
Components
Interfaces
Connectors
Actors
Ports/access points
Project plan
Roles
Software requirements
specification
Protocols
2. UML – Fill in the blanks
A UML diagram used to represent the classes of the system and their interrelationships
(including inheritance, aggregation, and associations) is called ………………………
These diagrams are the mainstay of object-oriented modeling and are used to show both
what the system can do during the. …………phase of software development process
and how the system will be structured and built as part of the ……….phase.
3. Use Cases
Is the textual description corresponding to and correct with respect to the UC diagram
shown below?
Circle the elements of the textual description that are wrong.
Assume the diagram is correct!
Office Security
System
Employee
open
door
reset
alarm
Security
Guard
Repair
Person
test
alarm
Use case 1: Open door
Goal: An Employee wants to unlock a door to pass from one
room to another.
Preconditions: Employee, Security Guard, Repair person
Success end condition: Employee has successfully opened the
door.
Failed end condition: Door remains closed and the Security
Guard on duty is notified.
Actors: open door, reset alarm, test alarm
Main scenario:
1. Employee’s identification and door identification is sent to
system
2. Door is unlocked
3. Employee opens door, passes through the door, and
recloses door
Extensions:
2a. Employee’s identification is not valid
2a1. System notifies Security Guard
1
4. Function Points
Calculate the function points (PM = 0.036*FP*PIF) for the system shown in
Appendix A. Assume the following FP and PIFs:
 The input functions (processes) are at medium level of difficulty -complexity=3 p/w
 Output functions (processes) are at simple level of difficulty -- complexity =2
p/w
 All COT functions (processes) are at advanced level of difficulty -complexity = 5 p/w
 PIFs are: distributed development – level of difficulty = 4; and rigorous extra
functional requirements –level of difficulty = 5, no other PIFs.
5. Architectures
What is the difference between
Reference architectures and
Specific System Architectures?
Answers
What is Product Line
Architecture (PLA)?
Is a typical PLA a reference or
specific system architecture?
Reference
Specific System
Architecture
6. Requirements
List at least 4 major types of non-functional
requirements.
Answer
7. Software Life-Cycle
Answer
List the major phases of a software product
life-cycle from the product inception to its
retirement.
Incremental
Development Model Questions
Provide a graphical outline of the
model
Answers
Analysis of Incremental
Development
a) Assumptions
8.
b) Improves
c) Does not
really improve
9.
Prototyping - Questions
Answers
Definition
Select all that apply
Prototype Types:
Evolutionary
Revolutionary
Throw-away
Horizontal
Diamond
Vertical
10.
Software process
a) What is a software lifecycle
(ANSI/IEF Std. 729-1983
definition)?
b) Name two well-known process
models and list their major
characteristics and
weaknesses.
Definition
Selection
11. Data Dictionary – User Interface
Write a DD entry (BNF only) for a data flow
(Login Info) that “caries” the simple login
screen shown below from a Customer to the
OPIS system. Specify only the shown data
elements (no need to decompose further).
Customer
ID:
PASSWORD
Login Info
pschott
******
OPIS
Login Info BNF
12. DFD – Find the Errors
Error
USER/CRT
Calculate
Tax
Book Order (BO)
Out of Print
Message
Customer Info
P1
Get & Check
BO
BO+
Book
Not
Available
BO & Publisher
Info
P3
Format
Out of Print
Message
Book, Publisher, Stock DB
User Info
Publisher
Stock
Info
Description
PROBLEM GROUP 2 (20 POINTS) -- MODELING
I)
II)
III)
Create a Static OOA Model that shall serve as an initial step in the development of an
Information Management application supporting the business operations of Seminar Company
Associates (SCA) described below. (If some information is not provided explicitly make
assumptions.)
Write an Object Dictionary entry for an object of your choice. Define the attributes of the selected
object using BNF notation. Specify the services ONLY by their names (NO need to write detailed
service specification).
Document a scenario – …….
SCA offers training courses. Client Companies call SCA and place orders for Courses. For every Client
SCA stores the following information: client company name, business id, address, phone, fax, e-mail
address, and company’s representative name. A client company may have from zero to many courses
organized for it at any moment of time. Each course is organized for one and only one client, however
external students may be added to the course in order to fill in the available seats. Each Course is
characterized by a course id, name, description, hours, start date, end date, and location (the address at
which the course runs).
SCA keeps track of each student's name (last, first), student id, address, and phone number. There are two
student types: client company employees and external students. The client company employees have a
badge number in addition to the common student attributes defined above. The external-students must also
have a credit card number stored for. Employee-students are related to one and only one client company. A
client company has many employee-students.
Each course has at list 5 students and max of 20 students. For a client company to order a course there
should be at list 5 employee students participating in it.
Students are issued Course Certificates for each course they take and successfully pass the examination at
the end of it. Every certificate is issued for a specific course, to a specific student; it has a unique id.
Students collect multiple certificates as they are very important for their carriers.
Courses are taught by instructors. Instructors are characterized by their social security number (SSN), name
(last, first), qualifications, address, and phone number. Every instructor teaches from zero to many courses.
Each course is taught by 1 or 2 instructors.
PROBLEM GROUP 3 (20
POINTS) – ANSWER ALL QUESTIONS!
Assume you are in charge of a software project responsible for the development of a Patient
Information System (PIS) and its smooth integration with a number of other hospital systems into
an overall Hospital Information System (HIS). Assume also you have a small distributed team,
which has a long experience in building and integrating software but not in the Healthcare
domain. The major concerns are “patient’s privacy” (security of information), and overall system
reliability and availability. The customer (the ABC hospital) would like to reserve its rights to
change the PIS requirements as well as the requirements on the information exchange between
PIS and the rest of the hospital systems, on an ongoing basis. The customer is also looking to
actively participate in defining PIS functionality and user interface, and would like to receive
ongoing feedback on the progress of the implementation.
a) (5 points) Draw a Context Model -- a context level Data Flow Diagram (DFD), or a high
level Use Case (UC) diagram (but not an architectural diagram!) -- for the Patient
Information System (PIS) only. PIS shall serve requests from the Physicians, other Hospital
Personal (assume for simplicity that they are one external entity/actor), Patients, and
Authorized Clients (e.g. patients’ relatives). You may make any reasonable assumptions
about the other hospital systems that are available and are to be integrated with PIS but your
model/diagram must include a Patient Admission System and an Image Storage System for
X-rays. (If you are to use DFD there is no need to show detailed data flows, show only highlevel conceptual information exchange flows).
b) (5 points) What process model would you select/recommend for the project at hand? Explain
why!
c) (4 points) What major non-functional requirements should be specified for the overall
integrated system?
d) (3 points) What major project influence factors are applicable/affecting this software
project?
e) (3 points) In absence of historical data it is still possible to provide good estimates of effort
using estimation models. One popular estimation model is COCOMO/COCOMO2. Even
though the system size is fundamental to the model the effort estimates are significantly
influenced by a number of “cost drivers.” What cost drivers would you consider for the
above development and integration project?
APPENDIX A: SUPPORT INFORMATION
Notice that some functional aspects of the system are intentionally omitted from the DFD
for simplicity. Use this diagram to calculate FP in question XX.
CDO-
USER/CRT
Record Company/CRT
CD Order (CDO)
RC_Order_Request
Get & Check
CDO
CDO &
Record Company(RC)
Invoice
Data
Genetare
Shipping
Record
Process
CDO
CDO+
Generate
Invoice
CD & RC
RC
Info
Stock
CD
Info
Details
OR +
Get & Check
Stock
Level
RC & OR Data
Check Stock
Generate RC
Order (RCO)
Invoice
Details
Invoice
Info
Shipping
Info
CD, Rrecord Companies,
Stock DB
Format
Record
Company
Order
Format
Invoice
Format
Shipping Info
Shipping
Form
SHIPPING/PRINTER
CD - Compact Disc
RC - Record Company
OR - Order Request
RCO
Invoice
Summary
RCO Summary
USER/CRT
RC
PRINTER
OR-
Download