Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating...

68
Lab Manual ISC 480 IS Development Prepared by Latifa Al-Dhafeeri Reviewed by Dr.Kalim Qurishi

Transcript of Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating...

Page 1: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

Lab Manual

ISC 480 IS Development

Prepared by

Latifa Al-Dhafeeri

Reviewed by

Dr.Kalim Qurishi

Page 2: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 2

Table of Contents

Laboratory Hardware and Software/Tools Requirements ................................................... 5 Laboratory Schedule ........................................................................................................... 6 Laboratory Policy ................................................................................................................ 7 Laboratory Grading Policy ................................................................................................... 8 Introduction ......................................................................................................................... 9 Familiarity with Lab Hardware and Software tools ............................................................... 9 Laboratory Tools Setup ....................................................................................................... 9 Laboratory #1 Write up Scope Document & SRS Document ..............................................10 Laboratory #2 Introduction to StarUML ...............................................................................14 Laboratory #3 Use Case Diagram ......................................................................................21 Laboratory #4 Sequence Diagram ......................................................................................25 Laboratory #5 Activity Diagram ..........................................................................................28 Laboratory #6 State Machine Diagram ...............................................................................32 Laboratory #7 High Level Design .......................................................................................35 Laboratory #8 Data Flow Diagram ......................................................................................39 Laboratory #9 Class Diagram .............................................................................................46 Laboratory #10 Introduction to MS Project .........................................................................51 Laboratory #11 PERT chart and Gantt chart ......................................................................57 Appendix A: Rules to fallow by Computer Lab Users .........................................................66 Appendix B: Endorsement ..................................................................................................67 References…………………………………………………………………………..……………………… 68

Page 3: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 3

Laboratory Hardware and Software/Tools Requirements

In this lab the students will be using StarUML application software and MS Project

run on a PC with Windows operating system.

Page 4: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 4

Laboratory Schedule

# Lab Title Lab

activ

ity

1 Write up Scope Document & SRS Document

2 Introduction to StarUML

3 Use Case Diagram

4 Use Case Diagram Quiz#1

5 Sequence Diagram

6 Activity Diagram

7 State Machine Diagram Quiz#2

8 State Machine Diagram Quiz#3

9 HLD Diagrams

1

0

DFD Chart.............................................................................................................................. Quiz#4

1

1

Class Diagram .......................................................................................................................

1

2

Introduction to MS Project ......................................................................................................

1

3

PERT chart and Gantt chart ...................................................................................................

1

4

Review

1

5

Final Lab Final Lab

Page 5: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 5

Laboratory Policy

Fallow the laboratory rules listed in appendix “A”

Cheating in whatever form will result in F grade.

Attendance will be checked at the beginning of each Lab.

Number of absence hours will be combined with the absence hours of the course and

they are subject for applying the university absence regulations.

Cheating in Lab Work or Lab Project will result F grade in Lab.

There will be no make-up for any Quiz/Exam/Lab exercise.

Hard work and dedication are necessary ingredients for success in this course.

Page 6: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 6

Laboratory Grading Policy

Activity Weight

Lab Quizzes 5%

Lab Exercises 5%

Final Lab 10%

Total 20%

Page 7: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 7

Introduction This lab is an integral part of the course ISC 480 IS Development. The main

objectives of the lab are to experience using StarUML an open source tool for Unified

Modeling Language (UML) diagrams and modeling.

Familiarity with Lab Hardware and Software tools In this lab the students will be using StarUML and MS Project.

Laboratory Tools Setup

Install StarUML 2.7.0

1. Open download page http://staruml.io/download

2. Select Windows as operating system and start download.

3. After download: execute installation file and follow instructions

Page 8: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 8

Page 9: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 9

Page 10: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 10

Laboratory #1 –Write up Scope Document & SRS Document

1. Laboratory Objective

The objective of this introductory laboratory is to introduce scope and SRS documents.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know what scope and SRS documents are. b. Write a proposal c. Define functional and non-functional requirements d. Review samples of SRS documents. e. Write their own SRS documents.

3. Laboratory Introductory Concepts The scope documents consist of the following parts:

1. Business requirements and context 1.1 Product rationale and business opportunity 1.2 Business objectives 1.3 Business risks 1.4 Stakeholders 1.5 Context and environment

2. Product vision 2.1 Statement of product goals 2.2 Main features 2.3 Assumptions and dependencies

3. Project scope 3.1 Scope of current release 3.2 Scope in future releases 3.3 Limitations

3.4 Project priorities

1. Business requirements and context

In this section, we provide the rationale for the development of this software and the business opportunity justifying its existence. In addition, we list the business objectives and potential risks. Finally, we identify the potential stakeholders including the types of users, and we describe the context and environment within which this software will exist and operate. 1.1 Product rationale and business opportunity

Example [Kuwait University is a very large government institution of higher education. It includes 13 colleges in which more than 20 thousand students study, and about 5000 faculty and staff are employed. The university is spread over many geographically

Page 11: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 11

distributed campuses, Each campus includes different types of facilities, such as classrooms, laboratories, seminar rooms, and auditoriums. There is a need to automate the process of managing these facilities to speed up the processes needed for reservation, maintenance and security, among other processes, and to provide an accurate and high quality service to the intended users.]

1.2 Business objectives

List the main business objectives and some quantifiable success criteria for the objectives. The business objectives can refer to either financial or technical benefits to the target customers that are preferably quantifiable.

1.3 Business risks

List the business risks associated with the business requirements and their management, which include risk assessment, prioritization, monitoring, mitigation, and control

1.4 Stakeholders

Identify and describe the types of product users and other stakeholders.

1.5 Context and environment

Describe the context and environment in which the product will be operating. The operating context and environment will determine many of the non-functional product quality requirements such as security, performance, availability, and business continuity requirements.

2. Product vision

2.1 Statement of product goals

Provide a clear statement of the product goals. Indicate the views of the potential stakeholders and types of users, and clearly show the financial and non-financial business benefits over other existing systems.

2.2 Main features

Identify the main functionalities and features of the product being developed. The detailed functional requirements that are developed later must be traceable back to this section of the vision and scope document.

2.3 Assumptions and dependencies

List all the assumptions that are made and the dependencies that exist. Normally, dependencies are related to external conditions that have to be met, for example, the availability of a hardware device with which to interface. Stating the assumptions and dependencies helps to identify and reduce the risks and to clarify the constraints to the various project and product stakeholders.

Page 12: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 12

3. Project scope

List the functionalities and features that will be included in different releases or versions of the product. The scope for each release is developed in line with the stakeholders’ objectives and priorities. This also lessens the chance of future misunderstandings between the developers and the clients.

3.1 Scope of current release

Feature Release 1

FE-1

FE-2

FE-3

3.2 Scope of future releases

Feature id and name Release 2 Release 3 Release 4

3.3 Limitations

List the limitations including the functionalities and features that will not be provided by the product in any of its future releases. Clearly stating the limitations helps clarifying the expectations and functional boundaries of the product and reduces possible future conflicts between the various product stakeholders.

Annexes

Include any document or communications that was used to develop this document.

Page 13: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 13

The SRS consist of the following:

1. Use Case Model (it will be explained in details in Lab3)

1.1 Actors and relationships

1.2 Use Cases and relationships

1.3 Use Case Diagrams

2. System wide Non Functional Requirements

3. Detailed Use Case Descriptions (it will be explained in details in Lab3 & Lab4)

3.1 Use Case templates

3.2 Sequence diagrams

4. Behavior Specification Model (it will be explained in details in Lab5 & Lab6)

Input / output specification

State diagrams

Activity diagram

5. Process Specification Model (it will be explained in details in Lab7)

Data flow diagrams at all levels

Decision tables, decision trees

Object oriented Analysis

6. Data Specification Model (it will be explained in details in Lab8)

Entity relationship model

Data dictionary

Appendix

Index

4. Laboratory Problem Description You will receive an example of scope and SRS documents via your email.

Open the file and we will discuss each point.

5. Laboratory Exercises You will be divied into groups each group select one of the following topics and write scope

and SRS documents:

1- Library System

2- University Registration System

3- Pharmacy System

4- Hotel Reservation System

5- Any Product Ordering System

Page 14: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 14

Laboratory #2 – Introduction to StarUML

1. Laboratory Objective

The objective of this introductory laboratory is to introduce user interface for StarUML.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know how to enter/exit the StarUML environment. b. Be familiar with main menu c. Investigate toolbar area d. Creating Models.

3. Laboratory Introductory Concepts

This section describes in detail all of the StarUML™ windows. Main window Menu Toolbars

Main window

StarUML™ Main window consists of the following components.

Page 15: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 15

Main Menu

The main menu is at the top of the screen. Most of StarUML™'s functions are accessible through the main menu.

Toolbars

Toolbars are right below the main menu. They contain frequently used menu items.

Browser Area

The browser area is located in the upper left corner of the screen. This area contains the functions to facilitate easy exploring of the software project component elements. This area includes [Model Explorer] which shows the model elements in hierarchical structures, and [Diagram Explorer] which shows the diagram types.

Page 16: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 16

Inspector Area

The inspector area is located in the lower left corner of the screen. This area contains the functions to facilitate editing of the detailed information for elements. This area includes [Property Editor] which edits properties, [Documentation Editor] which records detailed descriptions, and [Attachments Editor] which

attaches additional files or URLs.

Information Area

The information area is located in the lower right corner of the screen. This area contains the functions to show various types of information throughout the StarUML™ application. This area includes [Output Window] which shows log recordings, [Messages Window] which shows the model search and inspection results.

Diagram Area

The diagram area is located in the upper right corner of the screen. This area contains the functions to edit and manage the diagrams.

Pallet

Located on the left-hand side of the area is Pallet, which contains the elements that can be created.

Menu

This section describes in detail all of the menu items included in StarUML™’s main menu.

File Menu

Edit Menu

Format Menu

Model Menu

View Menu

Tools Menu

Help Menu

Shortcuts

File Menu

The File menu contains the following menu items.

Menu Item Description

New Project[Ctrl+N] Creates a new project.

New Project By Approach[Ctrl+I] Opens the Select New Project dialog box.

Open[Ctrl+O] Opens a project file.

Save[Ctrl+S] Saves the project file.

Save As[Ctrl+A] Saves the project as another file.

Close Closes the current project.

Page 17: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 17

Export Diagram[Shift+Ctrl+D] Saves the currently active diagram as an image file.

Page Setup Configures the page for printing

Print[Ctrl+P] Prints the diagram.

Recent Files Contains a list of the recently opened files.

Exit Exits the program.

Edit Menu

The Edit menu contains the following menu items.

Menu Item Description

Undo[Ctrl+Z] Cancels the most recent action performed by the user.

Redo[Ctrl+Y] Repeats the most recent action performed by the user.

Cut[Ctrl+X] Copies the selected elements to clipboard and

removes them from the current location.

Copy[Ctrl+C] Copies the selected elements to clipboard.

Copy Diagram[Shift+Ctrl+C] Copies the currently active diagram to clipboard.

Copy Diagram as Bitmap[Shift+Ctrl+C] Copies the currently active diagram to clipboard as

Bitmap.

Paste[Ctrl+V] Pastes the clipboard contents into the currently

selected element (or diagram).

Delete[Del] Deletes the selected view elements in the diagram.

Delete From Model[Ctrl+Del] Deletes the selected model elements.

Find[Ctrl+F] Finds an element.

Select All[Ctrl+A] Selects all the elements in the current diagram.

Format Menu

The Format menu contains the following menu items.

Menu Item Description

Font Specifies the font for the selected view elements.

Line Color Specifies the line color for the selected view elements.

Fill Color Specifies the fill color for the selected view elements.

Line Style->Rectilinear[Ctrl+L] Specifies the line style of the selected connection view

element as rectilinear.

Page 18: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 18

Line Style->Oblique[Ctrl+B] Specifies the line style of the selected connection view

element as oblique.

Auto Resize Automatically resizes the selected view elements.

Alignment-> Bring to Front Brings the selected elements to front.

Alignment-> Send to Back Sends the selected elements to back.

Alignment-> Align Left Aligns the selected elements to left.

Alignment-> Align Right Aligns the selected elements to right.

Alignment-> Align Middle Centers the selected elements horizontally.

Alignment-> Align Top Aligns the selected elements to top.

Alignment-> Align Bottom Aligns the selected elements to bottom.

Alignment-> Align Center Centers the selected elements vertically.

Alignment-> Space Equally,

Horizontally

Evenly distributes the selected elements horizontally.

Alignment-> Space Equally,

Vertically

Evenly distributes the selected elements vertically.

Layout Diagram Lays out the view elements in the current diagram.

Model Menu

The Model menu contains the following menu items.

Menu Item Description

Add->... Adds a model element. The model elements that can be added under the currently selected model elements are displayed in the sub menu.

Add Diagram->... Adds a diagram. The diagrams that can be added under the currently selected model elements are displayed in the sub menu.

View Menu

The View menu contains the following menu items.

Menu Item Description

Close Diagram Closes the currently active diagram.

Close All Diagrams Closes all open diagrams.

Select In Model Explorer Shows the currently selected element in the model explorer.

Page 19: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 19

Referesh Refreshes the current diagram.

Model Explorer Toggles the Model Explorer on and off.

Diagram Explorer Toggles the Diagram Explorer on and off

Output Toggles the Output Window on and off.

Messages Toggles the Message Window on and off.

Toolbox Toggles the Toolbox on and off.

Zoom-> Zoom In Makes the diagram look larger.

Zoom-> Zoom Out Makes the diagram look smaller.

Zoom-> Fit To Window Automatically adjusts the zoom ratio to fit the whole diagram

in the window.

Toolbars->Standard Toggles the Standard toolbar on and off.

Toolbars->Format Toggles the Format toolbar on and off.

Toolbars->View Toggles the View toolbar on and off.

Toolbars->Alignment Toggles the Align toolbar on and off.

Tools Menu

The Tools menu contains the following menu items.

Menu Item Description

Options... Opens the Options dialog box that can be used to edit various environment configuration options.

Add-In Manager... Opens the Add-In Manager that can be used to manage the additionally installed Add-In programs.

Help Menu

The Help menu contains the following menu items.

Menu Item Description

Contents...[F1] Opens the StarUML™ help.

StarUML On the Web Moves to the StarUML™ website.

About Shows the StarUML™ information.

Create Model

To create a model go to Model add Model

Page 20: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 20

To select a diagram go to Model add Diagram

Page 21: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 21

Laboratory #3 – Use Case Diagram

1. Laboratory Objective

The objective of this laboratory is to have practice in drawing use case diagram.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know main component of use case diagram. b. Use StarUML to create a add use case diagram to a model. c. Translate the English text into use case diagram.

3. Laboratory Introductory Concepts

Definition: A use case is a methodology used in system analysis to identify, clarify, and organize system requirements. The use case is made up of a set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal.

Use case Diagram main component

1. Actors (people – computer hardware and devices – External systems) 2. Use cases 3. Interrelationships among actors and use cases

Why we use case diagram UCD answer the main question about your system:

Who’s your system for?

What must it do?

Why build it in the first place? Define System users : Actors Define System normal situation : Use cases Stay focus in your client’s goals. A complete set of use cases = system requirements.

Use Case Diagram relationships A UCD is made of actors, use cases and interrelationships among actors and use cases:

1. <<communicates>> : linking a use case and an actor – represents interactions

2. <<extend>> : linking use cases – represents one use case interrupted by another user case under certain conditions

Page 22: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 22

3. <<include>> : linking use cases – represents the inclusion of the steps of one use case in the other user case steps

4. generalization (inheritance): relationship among actors and among use cases (type-of relationship)

Example:

Actors: Resident (primary actor) and Alarm System Use case: Activate Alarm Two <<communicate>> relationships

4. Laboratory Problem Description

In this laboratory you are required to draw use case diagram for the following text:

Ex1: “The student either be a grad or undergrad student and he can borrow and return a

book from employee Library”

Solution:

1. Start starUML

2. Select Empty project

3. Create a model go to Model add Model

4. Select use case diagram from Model add Diagram

Page 23: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 23

System

Student

Borrow a Book

Return a Book

Employee Library

MAster StudentBAstudent

Ex2: “The Library system has two users Student and admin. Student can search for a book, add a book to the list, return a book and view the list of borrowed books. The admin can update Book DB by adding, deleting, and modifying book info. The admin also send reminder to student to return book on time.”

Solution:

1. Start starUML

2. Select Empty project

3. Create a model go to Model add Model

4. Select use case diagram from Model add Diagram

Page 24: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 24

5. Laboratory Exercises

Ex1: Draw the UCD showing all use cases, actors and relationships

“A patient record and scheduling system in a doctor’s office is used by the receptionists,

the nurses, and the doctors. The receptionists use the system to enter new patient

information when first-time patients visit the doctor and the data is saved in patient file.

They also schedule all appointments in appointment file. The nurses use the system to

keep track of the results of each visit and to enter information about patient care, such as

medications and diagnoses. The nurses can also access the information to print out patient

reports or the history of patient visits. The doctors primarily use the system to view patient

history. The doctors may enter some patient treatment information occasionally, but most

frequently they let the nurses enter this information”

Ex2: Given the following English description of a software subsystem:

‘A subscriber will be able to logon to his/her account and subscribe to a newspaper. In

addition the subscriber can cancel his subscription or modify his subscription information

like changing the address. When a new subscription is made, the subscriber will be able to

pay online and an email confirming his subscription will be sent. When canceling a

subscription, the subscriber will be refunded an amount depending on the unused number

of days and will be asked to provide account information into which the refund will be

deposited.’’

Draw the UCD corresponding to the above showing all use cases, actors and relationships.

EX3: Draw the UCD showing all use cases, actors and relationships

“The client is able to book a flight online. In addition, the client can cancel or modify the booking any time prior to the flight. The client can fill a report about his/her remarks online and can view if there are any comments returned on his remarks. The admin can add, remove or modify the information related to a given flight. In addition, the admin can view the client reports and provide some feedback on them. While booking or modifying a flight, the client can cancel at any time. The client should receive an email when any booking related activity is performed. The admin should logon to the system before he/she can perform any operation.”

Page 25: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 25

Laboratory #4 –Sequence Diagram

1. Laboratory Objective

The objective of this laboratory is to have practice in drawing sequence diagram.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know main component of sequence diagram b. Use StarUML to create a add sequence diagram to a model c. Translate the English text into sequence diagram

3. Laboratory Introductory Concepts Definition: A Sequence diagram is an interaction diagram that shows how processes operate with one another and in what order. It is a construct of a Message Sequence Chart. A sequence diagram shows object interactions arranged in time sequence.

Sequence Diagram Drawing elements

Why we use sequence diagram It shows the interaction logic between the objects in the system in the time order that the interactions take place.

4. Laboratory Problem Description

In this laboratory you are required to draw sequence diagram for the following:

Page 26: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 26

EX1: Here we have 3 use cases: Process Sale, Handle Returns and Cash In.With these, we must now create the use case descriptions. Let us say for now that we only have the use case process sale. Here is the use case description for that use case:

i. Customer arrives at a checkout ii. Cashier starts a new sale ( makeNewSale() ) iii. Cashier enters item ID ( enterItem(itemID, quantity) ) iv. System presents total amount with taxes calculated ( Description,

total and total() ) v. Cashier tells customer the total and asks for payment

(acknowledgements) ( endSale() ) vi. Customer pays up and the system handles payment

( makePayment() and Change / Receipt )

Solution:

1. Start starUML

2. Select Empty project

3. Create a model go to Model add Model

4. Select sequence diagram from Model add Diagram

5. The main actor here is the cahier, mainly also because they are the only ones

that can use the “handle payment” use case. So the SSD would be as follows:

Page 27: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 27

cashier system

1 : makeNewSale()

2 : enterItem()

3 : Description, quantity()

4 : endsale()

5 : total()

6 : makePayment()

7 : change due, receipt()

EX2:

Draw Sequence diagram for student registration process in optimistic scenario.

Solution:

1. Start starUML and Select Empty project

2. Create a model go to Model add Model

3. Select sequence diagram from Model add Diagram

student registration system student DB

1 : login() 2 : check()

3 : valid()4 : Registration page()

5 : select course()

6 : check status()

7 : valid()

8 : confirm()

5. Laboratory Exercises Draw sequence Diagram for EX1,EX2 and EX3 in Laboratory #3 – Use Case Diagram

Page 28: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 28

Laboratory #5 – Activity Diagram

1. Laboratory Objective

The objective of this laboratory is to have practice in drawing Activity diagram.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know main component of Activity diagram b. Use staruml to create a add Activity diagram to a model c. Translate the English text into Activity diagram

3. Laboratory Introductory Concepts Definition: is basically a flowchart to represent the flow from one activity to

another activity. Theactivity can be described as an operation of the system. The control flow is drawn from one operation to another.

Why we use sequence diagram

1. Demonstrate the logic of an algorithm. 2. Describe the steps performed in a UML use case. 3. Illustrate a business process or workflow between users and the system. 4. Simplify and improve any process by clarifying complicated use cases.

5. Model software architecture elements, such as method, function, and operation.

Activity Diagram Components

Some of the most common components of an activity diagram include:

1. Actions - a step in the activity wherein the users or software perform a given task. 2. Decision node - a conditional branch in the flow that is represented with a

diamond. It includes a single input and two or more outputs. 3. Control flows - this is another name for the connectors that show the flow between

steps in the diagram. 4. Start node - symbolizes the beginning of the activity. This is represented with a

black circle. 5. End node - represents the final step in the activity. It's modeled with an outlined

black circle.

4. Laboratory Problem Description

In this laboratory you are required to draw Activity diagram for the following:

Page 29: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 29

EX1: Activity Diagram Airline Reservation System

The first example shows the process of reserving a flight. First, you enter the dates. Once you submit your desired flight plan, you can enter your personal information and at the same time the system could be searching availability. The system flow then joins back into one and you can select the specific flight on the dates you want to fly. This activity diagram gives you two different paths dependent on whether you are using reward points. After entering payment information, the system performs two processes at the same time and then sends out a confirmation email.

Solution:

1. Start starUML and Select Empty project

2. Create a model go to Model add Model

3. Select Activity diagram from Model add Diagram

Page 30: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 30

EX2: Activity Diagram Library System checking out a book from your local library.

Solution:

1. Start StarUML and Select Empty project

2. Create a model go to Model add Model

3. Select Activity diagram from Model add Diagram

Page 31: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 31

5. Laboratory Exercises

Ex1: Activity Diagram for Login

Create an activity diagram for simple login process. When you enter a name and password, the system checks to see if the unique pairing is correct. If it is, the system allows you to login. If not, you're prompted to re-enter your information.

Ex2: Activity Diagram for Course Registration System

Create an activity diagram for class registration process for a client. This diagram uses notes to give more details about the initial and final states. After filling out the registration form, the client submits the form to a validation loop that is represented as a decision in the flow. If the information is correct, the system creates an account for the client and lets the client know about the creation of the account.

Page 32: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 32

Laboratory #6 – State Machine diagram

1. Laboratory Objective

The objective of this laboratory is to introduce how to draw Finite state machine in StarUML

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know main component of FSM diagram b. Use StarUML to create a add FSM diagram to a model c. Know when machine completely specified

d. Know when machine fully connected

e. Know when machine strongly connected

f. Know when machine deterministic

3. Laboratory Introductory Concepts

Definition A finite-state automaton, finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finitenumber of states at any given time.

State Machine Components

1. A state machine can be described as:

2. An initial state or record of something stored someplace

3. A set of possible input events

4. A set of new states that may result from the input

5. A set of possible actions or output events that result from a new state

4. Laboratory Problem Description

Given the following tabular representation

S1 S2 S3

S1 - a/0 b/0

S2 a/1 P: b/1 ~P: b/0

S3 Td=10 - /1 a/1 b/1

Page 33: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 33

a. Draw the equivalent graphical representation

Solution:

1. Start StarUML and Select Empty project

2. Create a model go to Model add Model

3. Select State Machine diagram from Model add Diagram

S1 S2

S3

b/0

a/0

a/1

p: b/1

P: b/0

Td=10 -/1 a/1

b/1

b. What is the set of inputs? a,b

c. What is the set of outputs? 0,1

d. List the predicates. P

e. Is this machine completely specified? Why

Yes, FMS is able to react to every to every input at every state

f. Is this machine fully connected?

Yes

g. Is this machine strongly connected? Why?

Yes, we can reach other state by executing one transition

h. Is the machine deterministic? Why?

No, the reaction to an input b in S2 is not unique

i. What is the meaning of Td=10 - /1 in the table?

If at state S3, no input is present within 10 time unit the system should go to S1 and deliver an output of 1

j. Add to the specification the fact that a variable V is incremented by two for every

continuous 5 seconds we remain at S2 without receiving any input.

Page 34: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 34

Td = 5 -/v+2 k. Add to the tabular specification the fact that a variable V is incremented by one every

time the self loop at state S3 is executed.

At S3 add v++

5. Laboratory Exercises

EX1: Draw the equivalent graphical representation for the given the following tabular

specification of an extended finite state machine:

S1 S2 S3

S1 Td=5 - /1 a/0 b/0

S2 a/1 P: b/1 ~P: b/0

S3 c/0 a/1 a/1

a. What is the set of inputs?

b. What is the set of outputs?

c. List the predicates.

d. Is this machine completely specified? Why

e. Is this machine fully connected?

f. Is this machine strongly connected? Why?

g. Is the machine deterministic? Why?

h. What is the meaning of Td=5 - /1 in the table?

i. Add to the specification the fact that a variable V is incremented by two for every

continuous 5 seconds we remain at S2 without receiving any input.

j. Add to the tabular specification the fact that a variable V is incremented by one every

time the self-loop at state S3 is executed.

Page 35: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 35

Laboratory #7 – High Level Design

1. Laboratory Objective

The objective of this laboratory is to introduce HLD in StarUML.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to Know levels of intermodal coupling

3. Laboratory Introductory Concepts

A software module, as a black box, is an abstraction of the control and data flows that

exist inside it. Specification is an abstraction of the design, and the design as an

abstraction of the implementation.

High level architectural design

Very important for meeting the non-functional requirements and enforcing good design

properties

Interconnected modules

o Fan in, fan out, height, width

o Inter-module coupling

o Intra-module cohesion

Levels of intermodal coupling are:

• Data coupling: M1 is passing the necessary data to M2 • Stamp coupling: M1 is passing a data structure to M2 - not all of its content is needed • Control coupling: M1 is passing a flag to M2 – flag controls the execution inside M2 • Common coupling: M1 and M2 have indirect relationship • Content coupling: M1 jumps inside M2 (go to in some programming languages)

Page 36: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 36

4. Laboratory Problem Description

Given the following pseudocode:

M1(string message) { print message in errorFile;}

M2() { value = M3() ; if value == 0 then call M4(); read from fileA}

Int M3() { call M5(); call M6(flag); read from FileC; return value; }

M4() { read from FileC; call M7(); }

M5() { call M1(“error 1”); read from FileB; write into FileC; }

M6(Boolean flag) { if flag==true call M1(“error 2”); else call M8(r2); }

M7() { call M1(“error 3”); read record from FileA; call M8(record); write into fileA; }

M8(studentrecord r) {print r.name and r.number};

a. Draw the high level design hierarchy.

What is?

The height of the design 4

The width of the design 3

The highest fan in? Which module? M1,3

The highest fan out? Which module? M2, M3, M6,M7,2

M1 M8 Error File

M3 M4

M2 File A

M5

File

C

File

B

M6 M7 File

A

Page 37: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 37

b. What is the coupling among modules?

M1 M2 M3 M4 M5 M6 M7 M8

M1 X

M2 X NC NC Common

M3 X Common Common Control

M4 Common X Common NC

M5 Data Common Common X

M6 Data X Stamp

M7 Data Common X Stamp

M8 X

5. Laboratory Exercises

Given the following pseudocode:

M1 () { write into file B; } M2(int x) { …; print x; …; } M3() { write into file A } M4(Record StudentRecord) { print Student Number; call M1(); } M5() { int = 0; call M2(0); } M6() { call M1(); } M7() { call M4(CompleteStudentRecord); call M5(); go to L1;} M8(Boolean x) { if ( x== true) call M9() ; else call M6(); call M11(); write into file B; } M9() { call M3() ; call M1(); } M10() { call M8(Boolean flag); call M7(); } M11() { …L1: write to file C; }

a. Draw the high level design hierarchy.

What is?

The height of the design

The width of the design

The highest fan in ? which module?

The highest fan out ? which module?

Page 38: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 38

b. What is the coupling among modules?

From - to M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11

M1

M2

M3

M4

M5

M6

M7

M8

M9

M10

M11

Page 39: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 39

Laboratory #8 – Data Flow Diagram

1. Laboratory Objective

The objective of this laboratory is to introduce Data Flow Design.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know type of DFD

b. Know DFD components

c. Develop context level

d. Develop level 0 and level 1 of DFD

3. Laboratory Introductory Concepts

Definition A chart which shows the breakdown of a system to its lowest manageable levels. They are used in structured programming to arrange program modules into a tree. Each module is represented by a box, which contains the module's name.

Data Flow Diagram

Data flow diagram is graphical representation of flow of data in an information system. It is

capable of depicting incoming data flow, outgoing data flow and stored data.

Types of DFD

Data Flow Diagrams are either Logical or Physical.

Logical DFD - This type of DFD concentrates on the system process, and flow of data

in the system.For example in a Banking software system, how data is moved between

different entities.

Physical DFD - This type of DFD shows how the data flow is actually implemented in

the system. It is more specific and close to the implementation.

DFD Components

DFD can represent Source, destination, storage and flow of data using the following set of

components.

Page 40: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 40

Entities - Entities are source and destination of information data. Entities are

represented by a rectangles with their respective names.

Process - Activities and action taken on the data are represented by Circle or Round-

edged rectangles.

Data Storage - There are two variants of data storage - it can either be represented as

a rectangle with absence of both smaller sides or as an open-sided rectangle with only

one side missing.

Data Flow - Movement of data is shown by pointed arrows. Data movement is shown

from the base of arrow as its source towards head of the arrow as destination.

Levels of DFD

Level 0 - Highest abstraction level DFD is known as Level 0 DFD, which depicts the

entire information system as one diagram concealing all the underlying details. Level 0

DFDs are also known as context level DFDs.

Level 1 - The Level 0 DFD is broken down into more specific, Level 1 DFD. Level 1

DFD depicts basic modules in the system and flow of data among various modules.

Level 1 DFD also mentions basic processes and sources of information.

Page 41: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 41

Level 2 - At this level, DFD shows how data flows inside the modules mentioned in

Level 1.

Higher level DFDs can be transformed into more specific lower level DFDs with deeper

level of understanding unless the desired level of specification is achieved.

Structure Charts

Structure chart is a chart derived from Data Flow Diagram. It represents the system in

more detail than DFD. It breaks down the entire system into lowest functional modules,

describes functions and sub-functions of each module of the system to a greater detail

than DFD.

Structure chart represents hierarchical structure of modules. At each layer a specific task

is performed.

Here are the symbols used in construction of structure charts: Module - It represents process or subroutine or task. A control module branches to

more than one sub-module. Library Modules are re-usable and invokable from any module.

Page 42: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 42

Condition - It is represented by small diamond at the base of module. It depicts that control module can select any of sub-routine based on some condition.

Jump - An arrow is shown pointing inside the module to depict that the control will jump

in the middle of the sub-module.

Loop - A curved arrow represents loop in the module. All sub-modules covered by loop

repeat execution of module.

Data flow - A directed arrow with empty circle at the end represents data flow.

Page 43: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 43

Control flow - A directed arrow with filled circle at the end represents control flow.

4. Laboratory Problem Description

The Food Ordering System Example

A context diagram is a data flow diagram that only shows the top level, otherwise known as Level 0. At this level, there is only one visible process node that represents the functions of a complete system in regards to how it interacts with external entities. Some of the benefits of a Context Diagram are:

1. Shows the overview of the boundaries of a system 2. No technical knowledge is required to understand with the simple notation 3. Simple to draw, amend and elaborate as its limited notation

The figure below shows a context Data Flow Diagram that is drawn for a Food Ordering System. It contains a process (shape) that represents the system to model, in this case, the "Food Ordering System". It also shows the participants who will interact with the system, called the external entities. In this example, Supplier, Kitchen, Manager and Customer are the entities who will interact with the system. In between the process and the external entities, there are data flow (connectors) that indicate the existence of information exchange between the entities and the system.

Page 44: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 44

Context DFD is the entrance of a data flow model. It contains one and only one process and does not show any data store.

Level 1 DFD

The figure below shows the level 1 DFD, which is the decomposition (i.e. break down) of the Food Ordering System process shown in the context DFD. Read through the diagram and then we will introduce some of the key concepts based on this diagram.

The Food Order System Data Flow Diagram example contains three processes, four external entities and two data stores.

Page 45: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 45

Based on the diagram, we know that a Customer can place an Order. The Order Food process receives the Order, forwards it to the Kitchen, store it in the Order data store, and store the updated Inventory details in the Inventory data store. The process also deliver a Bill to the Customer.

Manager can receive Reports through the Generate Reports process, which takes Inventory details and Orders as input from the Inventory and Order data store respectively.

Manager can also initiate the Order Inventory process by providing Inventory order. The process forwards the Inventory order to the Supplier and stores the updated Inventory details in the Inventory data store.

5. Laboratory Exercises

EX1: Given the following English specification for a Web-based order processing system

for a computer store. “A new user can connect to the company’s web page and create a new customer profile by providing personal information. This information will be validated and saved in a customer information file at the company’ s server. The user is then provided with a user id and password via an email sent by the system. Using the provided password, the user can then logon to the system and place an order. The user can also delete or update an order within a certain time after placing the order. In all cases, the system will verify the transaction and act accordingly. If the transaction is not allowed (e.g., deleting after the deadline) the user is informed. Before accepting the transaction, the system checks the customer information file for credit check and the inventory file for availability. If the ordered item is not available, the system will ask the user whether to keep the order in a back order file, otherwise the order is discarded. If the product is available, the inventory and customer information files are updated accordingly. The ordered product is delivered along with a bill, and the accounting file is updated. Once the payment is received, the accounting file and the customer information files are updated accordingly. From time to time, the system administrator send emails to customers informing them about special deals …”. Draw Data Flow Diagrams at all levels.

Page 46: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 46

Laboratory #9 – Class Diagram

1. Laboratory Objective

The objective of this laboratory is to introduce how to draw class diagram in StarUML

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Know main component of Class diagram b. Use staruml to create a add Class diagram to a model c. Translate the English text into Class diagram

3. Laboratory Introductory Concepts

Definition: is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, operations (or methods), and the relationships among objects. Class Diagram Components

Classes - a template for creating objects and implementing behavior in a system. In UML, a class represents an object or a set of objects that share a common structure and behavior. They're represented with a rectangle that includes rows of the class name, its attributes, and its operations. When drawing a class diagram on a class diagram, only the top row must be filled out—the others are optional if you'd like to provide more detail. Name - the first row in a class shape. Attributes - the second row in a class shape. Each attribute of the class is displayed on a separate line. Methods - the third row in a class shape. Also known as operations, these are displayed in list format with each operation on its own line. Signals - symbols that represent one-way, asynchronous communications between active objects. Data types - classifiers that define data values. Data types can model both primitive types and enumerations. Packages - this containing shape is designed to organize related classifiers in a diagram. It is symbolized with a large tabbed rectangle shape. Interfaces - similar to a class, except that a class can have an instance of its type, and an interface must have at least one class to implement it. Enumerations - representations of user-defined data types. An enumeration includes groups of identifiers that represent values of the enumeration. Objects - instances of a class or classes. Objects can be added to a class diagram when representing either concrete or prototypical instances. Artifacts - model elements that represent the concrete entities in a software system, such as documents, databases, executable files, software components, and so on.

Page 47: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 47

Interactions - a term for the various relationships and links that can exist in class and object diagrams. Some of the most common interactions include: Inheritance - also known as generalization, this is the process of a child or sub-class taking on the functionality of a parent or superclass. It's symbolized by a straight connected line with a closed arrowhead pointing towards the superclass. Bidirectional association - the default relationship between two classes; both classes are aware of each other and their relationship with the other. This association is represented by a straight line between two classes. Unidirectional association - a slightly less common relationship between two classes; one class is aware of the other and interacts with it. Unidirectional association is modeled with a straight connecting line that points an open arrowhead from the knowing class to the known class.

Why use class diagram

1. Illustrate data models for information systems. 2. Understand the general overview of an application's schematics. 3. Express the needs of a system and disseminate that information throughout the

business. 4. Create detailed charts that focus on the programming code needed to implement the

described structure. 5. Provide an implementation-independent description of types used in a system and

passed between its components.

Page 48: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 48

4. Laboratory Problem Description

In this laboratory you are required to draw class diagram for Class Diagrams for a Login Page

Solution:

4. Start StarUML and Select Empty project

5. Create a model go to Model add Model

6. Select Activity diagram from Model add Diagram

Page 49: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 49

Draw Class Diagrams for an Airline Reservation System

Solution:

1. Start StarUML and Select Empty project

2. Create a model go to Model add Model

3. Select Activity diagram from Model add Diagram

Page 50: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 50

5. Laboratory Exercises

EX1: Draw a Class Diagrams for Online Shopping Systems

EX2: Class Diagram for a Hotel Management System

Page 51: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 51

Laboratory #10 – Introduction to MS Project

1. Laboratory Objective

The objective of this introductory laboratory is to introduce MS Project.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to: a. Learn how to start new sheet in MS Project b. Learn how to create a Task List c. Learn how to add Start and Finish Dates to Each Task d. Learn how to add Tasks to the Timeline e. Learn how to Set Up Resources in Microsoft Project

3. Laboratory Introductory Concepts

1. Create a Task List

You’ll need to build a list of required tasks. While building the list, try to prioritize them in the

order they need to be completed. To get started, open Microsoft Project, click Blank Project,

and type each task into a cell under Task Name.

Page 52: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 52

2. Add Start and Finish Dates to Each Task

To enter start and end dates, click the Start cell that corresponds to the first task and enter a date

(if you click the down arrow in the cell, a calendar will appear and you can use that to select a

date). Then tab over to the Finish row and enter an end date. Microsoft will automatically enter the

amount of time it will take to complete the task in the Duration row. You’ll notice that as you add

the dates, bar charts will be added to the timeline in the right-hand pane.

Page 53: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 53

3. Add Tasks to the Timeline

To add tasks to the Timeline, click the View tab and click the Timeline bar that appears above the

task list. Then right-click on a Task cell and choose Add to Timeline from the list and click it to add

the task to the timeline.

Page 54: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 54

4. How to Set Up Resources in Microsoft Project

Now that you have the basic structure for your project, we’re going to add the resources you need

to get the job done. The term “resources” typically refers to people, but can also mean

documentation or a certain type of work that will be needed to complete the project.

Page 55: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 55

a. Open the Resource Sheet

From the View tab, click Resource Sheet. The Resource Sheet will appear on the screen.

b. Add Resources

Type the name of the resource needed in the Resource Name field and complete the remainder of

the information: Type, Material (if it’s a material), Initials, Max (max amount of time), Standard

Rate, Overtime, Cost/Use, Accrue, Base, and Code.

Page 56: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 56

4. Laboratory Problem Description

Use MS Project to create the following task table:

5. Laboratory Exercises

Each group is required to think of a project and set up the task with duration and required

resourses using MS Project.

Page 57: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 57

Laboratory #11 – PERT and Gantt charts

1. Laboratory Objective

The objective of this introductory laboratory is to introduce some of root finding methods build in MATLAB.

2. Laboratory Learning Outcomes: After conducting this laboratory students will be able to:

a. Learn how to create the Gantt chart b. Learn how to create the PERT chart

c. Learn how to Schedule Tasks Automatically or Manually

3. Laboratory Introductory Concepts

Once you have a list of resources for your project, you’ll want to assign tasks. This will help you

better manage the project and get work done in a specific time period. One of the benefits of MS

Project is that it can calculate how long it will take a person to complete the task based on their

availability. If it’s a particularly important part of the project that needs to be done quickly, you can

assign multiple people to it and Microsoft Project will decrease the time it takes to complete the

task based on how many resources are assigned. This also lets the people assigned to the project

know how much time is required of them.

1. Switch to the Gantt chart

To assign tasks, you’ll need to switch to the Gantt chart. Click the Gantt chart icon in top left corner

of the window.

2. Open the Task Form

You should still be in the View tab. Click the Details box in the ribbon. The Task Form should

appear on the lower half of the screen. If it doesn’t appear, click the down arrow in the Details box

and select Task Form.

Page 58: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 58

3. Select a Task to Assign

Click a task in the Gantt chart view and it will appear in the Name section of the Task Form. Click

the box under Resource Name and choose a resource from the drop-down menu. Then click OK.

Page 59: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 59

You can add another person to the same task by clicking the area under Resource Name and

choosing the name you want. Click OK. As you assign tasks, the amount of time will be added to

the Gantt chart.

Repeat steps to assign all the tasks.

Page 60: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 60

How to Schedule Tasks Automatically or Manually

With Microsoft Project 2016 you can schedule tasks manually or automatically. When you opt to

manually schedule tasks it’s up to you schedule all new tasks and track them to ensure they are

being completed on time. If you choose Automatic scheduling, Project will schedule tasks based

on dependencies, calendars, and constraints among other things. The default option when

creating tasks is to schedule them manually, so we’ll show you here how to change the setting to

automatic.

1. Access Microsoft Project Settings

Click File on the menu bar and choose Options (it’s the last choice in the left column). Click Edit

project settings.

2. Change Schedule Options

When the Project Options form appears on the screen, click Schedule in the left column.

Page 61: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 61

Next, under Scheduling Options for this Project section, click the drop-down menu for New Tasks

Created. The default is set to Manually Scheduled. Select and click Auto Scheduledand click

the OK button.

Page 62: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 62

How to Create Task Dependencies

Dependencies occur when one task can’t move on to the next phase until a particular task is

completed before it. Creating dependencies involves linking tasks in the Gantt chart view. In

Microsoft Project, you can link any two tasks. Once tasks are linked, every change made to the

predecessor affects the successor.

1. Switch to Gantt Chart View

You should still be in the Gantt chart view. If you’re not, click the Gantt chart icon in top left corner

of the window.

2. Select Tasks to Link

Click the Task tab in the menu bar. Identify the two tasks in the list that you want to link. Click the

Page 63: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 63

first task and press and hold the Ctrl key and select the second task. Click the chain icon in the

ribbon to link the tasks. You’ll see an arrow appear on the Gantt chart that connects the items.

Generate a Cost Report in Microsoft Project 2016

Once you’ve entered time and resources information to the best of your ability, you can use

Project to run a Cost Overview report. Here’s how to create a Resource Cost Overview report:

1. Select the Report Tab

Click the Report tab to get a quick overview of the reports you can run.

2. Choose a Cost Report to Run

Click the arrow below Costs in the ribbon and click Resource Cost Overview.

Page 64: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 64

A report like the one below will be generated.

4. Laboratory Problem Description In this laboratory you are requied to draw Gantt and PERT chart for the following:

Task No Task

Time

(weeks) Predecessors

1 Collect requirements 3

2 Analyze processes 2 1

3 Analyze data 2 2

4 Design processes 6 2

5 Design data 3 3

6 Design screens 2 3,4

7 Design reports 4 4,5

8 Program 5 6,7

Page 65: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 65

9 Test and Document 7 7

10 Install 2 8,9

5. Laboratory Exercises

Given the information provided below and the Gantt chart layout provided, you are to construct

a PERT and Gantt chart, with overlaps as specified.

Task Task Description

Predecessor

Duration

(months)

A Train project team None 1

B Project paperwork and systems design A 2 ½

C Modify purchased package B 2

D Manual systems flow B 1 ½

E Modify in-house procedures B 4

F Test and implement modifications to purchased package C 1 ½

G Test and implement manual D ¾

H Test and implement modifications to in-house procedures E 1

Page 66: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

Appendix A: Rules to fallow by Computer Lab Users

The loud conversations / discussion that disturbing the other users is prohibited.

Audio CDs or applications with audio output may only be used with headphones with minimum

volume that it should not be disturb other users.

All cell phones are to be turned off or set to silent while in the lab. If you receive a phone call,

you should exit the lab before answering your cell phone.

Do not bring food or beverages inside the lab.

Any file saved on the computer hard drive will be deleted without notice. Students should save

their work onto an external storage device such as USB drive or CD.

Changing hardware and software configurations in the computer labs is prohibited. This includes

modifications of the settings, modification of system software, unplugging equipment, etc.

Open labs are reserved for academic use only. Use of lab computers for other purposes, such as

personal email, non-academic printing, instant messaging, playing games, and listening to music

is not permitted.

Please leave the computer bench ready for the next patron. Leave the monitor on the login

screen, and do not forget to take goods related to you. While leaving computer bench please push

the chair inside the computer bench.

Users are responsible for their own personal belongings and equipment. Do not leave anything in

the Computer Lab unattended for any length of time. The Computer Labs staffs are not

responsible for lost or stolen items.

Users are not allowed to clear paper jams in the printer by themselves.

Operate the lab equipments with care.

After using white-board the user must clean for other user.

Thanks for your cooperation.

Information Science Department

Page 67: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 67

Appendix B: Endorsement

LABORARTORY MANUAL FOR

ISC 480 IS Development

# Instructor name Remarks Signature Date

1 Prof. Kassem Saleh

2 Prof. Jehad AlDallal

3 Dr. Kalim AlQurashi

4 Latifa Al-Dhafeeri

Page 68: Lab Manual - isc.ku.edu.k Manuals/ISC480 Lab Manual.pdf · run on a PC with Windows operating system. ISC 480 IS Development P a g e | 4 Laboratory Schedule # Lab Title Lab activ

ISC 480 IS Development P a g e | 68

References:

1- http://staruml.io/download

2- http://staruml.sourceforge.net/

3- https://www.smartsheet.com/

4- https://www.lucidchart.com

5- https://www.tutorialspoint.com

6- https://www.project-tutorial.com/