Question
Overview Using the object-oriented design skills that you have learned to this point, each student will create a very high-level design of a software product.
Overview
Using the object-oriented design skills that you have learned to this point, each student will create a very high-level design of a software product. You will need to create a single PDF that contains the following:
1. a domain model (don't spend more than 30 minutes on this)
2. a list of possible software classes
a. give a brief (2 or 3 sentence) description of the responsibilities for each class
3. a UML class structure diagram of a single subsystem that you think eill be especially important
a. includes about 3-5 classes
b. indicates relationships between classes with multiplicity and navigation
c. shows class attributes that you can discern from the problem description
d. If there are any other important subsystems with which this subsystem interacts, you may represent each subsystem as a named box (i.e. a "class" without attributes).
The total document size, including diagrams, should not exceed 3-5 pages.
For the description of the software classes, think in terms of what services methods in the class would provide to a client. A broad statement describing a class' responsibilities as "This class contains/holds/manages/controls/handles X/Y/Z" where X/Y/Z are some class attributes is too vague. You need to be more specific and describe what the class' interface will allow a client to do with X, Y, or Z.
Feel free to work with each other during the remainder of the class session when you start this exercise and before the next class to develop ideas and strategies. However, each individual student is responsible for submitting in the course dropbox a copy of his or her own design by the start of the next class. This activity will contribute 5% to your final grade. If you make a good faith effort to develop a quick first-cut design, you can expect to receive 4 or 5 points, even if the design itself is suboptimal. The goal is to start you thinking about object-oriented software design so that you will soon move to design at a higher level than individual classes.
Our discussion of your designs will be done in phases. In the first phase, small groups (3-4 students each) will create consensus designs that incorporate the best aspects of the individual student designs. Since you will have to discuss your individual design with your team be sure to have a hard copy or a way to display the design in the team session. As time permits, several teams will present their designs to the class as a whole (two or three minutes per presentation). In the final phase, we revisit the problem and the designs to look for differences and commonalities across the designs.
System Description
Medical imaging systems are essential aspects of the delivery of quality medical care. Medical professionals require access to the images and reports generated from imaging studies performed on their patients. You are part of a team responsible for the design of a new Picture Archiving and Communication System (PACS) product for Imaging Medical Systems (IMS). Typically, PACS are large hospital-based systems. IMS would like to open up a new market aimed at medical practices where they have a small (< 5) number of conventional radiograph and other medical imaging modalities, such as ultrasound.
Mini-PACS (M-PACS) Requirements
The system must interface with medical imaging devices from a variety of manufacturers. This means that the system must handle proprietary interfaces and image formats, the older ACR-NEMA specification, and the current DICOM standard. This variety of interfaces specifies different hardware, communication protocols and image formats.
The system does not control the imaging devices. This is done by the imaging device's own controller. The system will accept images from the imaging devices and allow the user to organize the image storage within the M-PACS.
Internally, the system will store images using the DICOM standard.
The system must be able to associate patient information, such as name, age, primary diagnosis, etc., with individual images. This information will be entered at the M-PACS.
The system must allow the user to group multiple images together to form a study and put multiple studies together as a larger study.
The system must maintain access control for three classes of user: technician, physician, and administrator. The exact access to be allowed each user class is still under discussion by the IMS marketing group.
The system must allow the user to retrieve and display images and studies.
The system must allow the user to perform image manipulations such as window/level, bone enhancement, and false coloring. The system should provide for easy extension to the image manipulation toolbox as new algorithms are developed. Note: the algorithms have different implementations for different medical imaging modalities. Manipulations can be done on individual images or on an entire study.
The marketing group expects the need for the M-PACS to interface to a dictation and transcription system that IMS is also developing. This will allow reduced resolution images to be inserted into reports.
Deliverables
If you are drawing your UML class structure diagram by hand, scan it or take a photo of it, and add it in your word processor document before creating the PDF or concatenate a PDF of the image to the PDF that you will submit.
Hints
You have neither enough time nor enough information to do a complete design for this system. You are to do a quick design that covers the requirements specified above. There will be many details that you will not be able to specify. At this stage that is fine. You will need to learn how to work at different levels of abstraction based on the detail needed and the information that is available to you.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started