INFORMATION SYSTEMS @ X Activity Diagrams INFO415: Systems Analysis INFORMATION SYSTEMS @ X Example – Student Registration • Process is: Student Registration (which is part of an overall process: attend university) • What are major steps in student registration – they include: – Determine courses to take: • Based on program of study, year, prerequisites, elective interests, etc. – Enroll in courses – Pay for courses – Others? • Remember, we need to determine: how should the process work – what should the steps be? What information is required to make the process work effectively – what information is required to support each process step? • Example: Enroll in course INFO415: Systems Analysis INFORMATION SYSTEMS @ X Enroll in Course: Current situation (5 years ago) Student Professor Registrar Reg. Form Select Courses Reg. Form Review request Determine if prereqs. met Wait in line, usually in rain. Registration open yet? N Y Determine if space available in sections) taught N Can student enroll? Review forms for issues/errors Line up for professor Y Reg. Form Enroll student, update form Y Y Need another course? N Bring completed form to registrar table INFO415: Systems Analysis Form OK? Reg. Form N Reg. Form Key registration data into computer INFORMATION SYSTEMS @ X Enroll in Course: Proposed Process Student Banner Select Courses Sit at computer. Sip coffee. Authenticate user Registration open yet? N Y Supply user name and password Check that student has prereqs Input requested courses Y Check availability in requested sections Record results in database Need more courses? N Present student results of course requests INFO415: Systems Analysis INFORMATION SYSTEMS @ X Requirements • Answering the questions: – What does the system need to do – what are the functions, what business rules and logic must be implemented? – What information does the system need to contain? – What are the constraints under which the system must operate? INFO415: Systems Analysis INFORMATION SYSTEMS @ X Example: Functional Requirement Requirement number: F1 Requirement title: Check Course Prerequisites Requirement text: Describes the logic to be implemented to ensure that students have the proper prerequisites to take a given course. Requirement type: Functional - Processing Requirement details and constraints: The University has a set of rules that determine whether a student is eligible to take a given class. One rule is that in order to take a class, students are sometimes required to take other classes that give them the required foundation for the class. These rules must be enforced during the student enrollment process. The specific prerequisites to be implemented for each course can be found in the University calendar. During the enrollment process, the system will: •Retrieve the course the student wishes to enroll in •Retrieve the students course completion history to determine the courses taken and completed successfully by the student •Retrieve the prerequisites for the desired course •Determine if the student has the appropriate prerequisites for the course •If the student has the required prerequisites: Flag the course as OK, allow course to move to next step in the process (check enrollment) •If the student does not have the appropriate prerequisite courses: Retrieve override information Determine if instructor has given student permission (through override) to enroll in the course If yes, allow course to move to check enrollment step If no, end message to student that enrollment not allowed. • • • • • Revision date and reversion number: 10/15/2002 Version1.0 Criticality: Must INFO415: Systems Analysis INFORMATION SYSTEMS @ X Example: Functional Requirements Requirement number: F2 Requirement title: Course data Requirement text: Describes required system-maintained course data Requirement type: Functional - Data Requirement details and constraints: A course is an educational offering of the University. The system must maintain the following information regarding courses: •Course Title (e.g, INFO415) •Course description •Program of study. Each course is assigned to a given program (e.g., Biology, Information Systems, Business Administration) •Sections. A section is a defined as an ‘instance’ of a course assigned an instructor, a timeslot (e.g., ‘J’) and a classroom and an enrollment limit (e.g., 50 students). The system must allow multiple sections of a course to be taught. •Prerequisites. A prerequisite is another course that a student must take to be eligible to for a given course. Each course may have zero, one or many prerequisites •Etc…………. Revision date and reversion number: 10/15/2002 Version1.0 Criticality: Must INFO415: Systems Analysis INFORMATION SYSTEMS @ X Example: Technical Requirement Requirement number: T1 Requirement title: Enrollment service requirements Requirement text: Describes the technical service requirements to be placed on the system in terms of number on concurrent users and location of users. Requirement type: Technical Requirement details and constraints: •The student enrollment process must be able to allow 100 students to enroll concurrently. •The system must support students enrolling locally (in university computer labs) as well as remotely (e.g., from dorm rooms on campus or from homes) •The system must support ‘locking down’ the enrollment process to specific locations during peak registration periods. For example, the system must allow access only from specific computer lab computers during the freshman registration period Revision date and reversion number: 10/15/2002 Version1.0 Criticality: Must INFO415: Systems Analysis