0% found this document useful (0 votes)
8 views

Incomplete Data

The document provides a comprehensive guide on system analysis and design concepts, distinguishing between various methodologies such as Structured English, Pseudocode, Object-Oriented Analysis, and Structured Analysis. It also discusses tools like ERDs and Swimlanes, their applications in system development, and the importance of feasibility studies for projects like eCommerce systems. Additionally, it emphasizes the significance of user interfaces and outlines the differences between Data Flow Diagrams and Entity-Relationship Diagrams.

Uploaded by

deryquehenryques
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Incomplete Data

The document provides a comprehensive guide on system analysis and design concepts, distinguishing between various methodologies such as Structured English, Pseudocode, Object-Oriented Analysis, and Structured Analysis. It also discusses tools like ERDs and Swimlanes, their applications in system development, and the importance of feasibility studies for projects like eCommerce systems. Additionally, it emphasizes the significance of user interfaces and outlines the differences between Data Flow Diagrams and Entity-Relationship Diagrams.

Uploaded by

deryquehenryques
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

Page 1 of 18

BCS 215 | BIT 211: SYSTEM ANALYSIS AND DESIGN:


REVISION GUIDE:
Incomplete

1. Distinguish between the following system development concepts.


(i) Structured English and Pseudocode
Solution

Both Structured English and Pseudocode are used to describe the logic of a program or
system in a more human-readable format than traditional programming languages. However,
they differ in their approach:

• Structured English: Uses natural language with specific keywords and constructs to
define the sequence of steps. It's more like writing a paragraph about the process,
emphasizing readability.
• Pseudocode: Uses a simplified programming-like syntax, combining elements of
programming languages with plain English. It's closer to actual code, providing a
more detailed outline.

(ii) Object oriented system analysis and structured analysis


Solution

These two approaches to system analysis have different perspectives:

• Object-Oriented System Analysis: Focuses on identifying objects (entities with


properties and behaviors) and their relationships. It models the system as a collection
of interacting objects, promoting modularity and reusability.
• Structured Analysis: Emphasizes the decomposition of a system into smaller, well-
defined components (data flows, processes, and data stores). It follows a top-down
approach, breaking down a complex system into simpler parts.

(iii) Systems development and Software engineering


Solution

While both terms relate to the creation of software systems, they have different scopes:

• Systems Development: Encompasses the entire process of creating a system,


including hardware, software, and human elements. It's a broader term that considers
the system as a whole.
• Software Engineering: Specifically focuses on the technical aspects of software
development, applying engineering principles to design, develop, test, and maintain
software.

@crispusjoash on all platforms


Page 2 of 18

It's a subset of systems development.

(iv) Inclusive gateway and exclusive gateway on activity diagrams


Solution

In UML activity diagrams, gateways control the flow of execution.

• Inclusive Gateway: Allows multiple outgoing flows to execute simultaneously or


sequentially based on certain conditions. It's like a decision point where multiple
paths can be taken.
• Exclusive Gateway: Requires only one outgoing flow to be taken at a time.

It's like a decision point where you choose one path based on a condition.

2. The following are some of the tools available to a system analyst for use in system
development. Using suitable illustrations, describe them and explain how each is used.
(i) ERD
Solution

An ERD is a graphical representation used to model data entities and their relationships
within a database. It's a fundamental tool in system analysis for understanding the data
structure and relationships in a system.

An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities”
such as people, objects or concepts relate to each other within a system. ER Diagrams are
most often used to design or debug relational databases in the fields of software engineering,
business information systems, education and research. Also known as ERDs or ER Models,
they use a defined set of symbols such as rectangles, diamonds, ovals and connecting lines to
depict the interconnectedness of entities, relationships and their attributes. They mirror
grammatical structure, with entities as nouns and relationships as verbs.

Components of an ERD:

• Entity: A person, place, thing, or concept that stores data.


• Attribute: A property or characteristic of an entity.
• Relationship: A connection between two or more entities.

Example:

@crispusjoash on all platforms


Page 3 of 18

ER diagrams are related to data structure diagrams (DSDs), which focus on the relationships
of elements within entities instead of relationships between entities themselves. ER diagrams
also are often used in conjunction with data flow diagrams (DFDs), which map out the flow
of information for processes or systems.

@crispusjoash on all platforms


Page 4 of 18

!!!This are only samples!!!

ERD showing a customer entity with attributes like customerID, name, address, and a
relationship with an order entity

How ERDs are used:

• Data Modeling: ERDs help in defining the data requirements of a system, ensuring
that the database structure is efficient and accurate.
• Database Design: They serve as a blueprint for creating the database schema,
specifying tables, columns, and relationships.
@crispusjoash on all platforms
Page 5 of 18

• Communication: ERDs provide a visual representation of the data structure, making


it easier for stakeholders to understand the system's data requirements.

(ii) Swimlanes
Solution
Swimlane diagrams are a type of flowchart that delineates who does what in a process. They
use the metaphor of lanes in a swimming pool to provide clarity and accountability by
placing process steps within the horizontal or vertical “swimlanes” of a particular employee,
work group, or department.
Swimlane diagrams are used to map out processes that involve multiple actors or
departments. They help identify inefficiencies, redundancies, and bottlenecks in a process by
clearly showing who is responsible for each step and how tasks are handed off between
different parts of the organization

Swimlanes are used in process diagrams, such as BPMN (Business Process Model and
Notation), to visually represent different departments, roles, or organizational units involved
in a process. They help to clarify responsibilities and handoffs between different parties.

Example:

@crispusjoash on all platforms


Page 6 of 18

!!!This are only samples!!!


BPMN diagram with swimlanes showing different departments responsible for various steps
in a customer order process

How swimlanes are used:

• Process Visualization: Swimlanes provide a clear overview of who is responsible for


each step in a process, improving understanding and communication.
• Responsibility Allocation: They help in assigning tasks and responsibilities to the
appropriate departments or individuals.
• Handoff Identification: Swimlanes highlight the points where work transitions from
one department to another, identifying potential bottlenecks or handoff issues.
• Process Optimization: By visualizing the process with swimlanes, it becomes easier
to identify areas for improvement and streamline the workflow.

4. Feasibility study is an important part of systems development as it helps the


organization determine whether to proceed with the systems development project.
Imani Enterprises has been facing challenges growing their business in their local
market and are considering in investing on eCommerce systems before going online but
are not sure what to expect. As an IT consultant, You have been contracted to advise.
Solution
Feasibility Study for Imani Enterprises' eCommerce System

Understanding Imani Enterprises' Needs


@crispusjoash on all platforms
Page 7 of 18

Key Questions to Address:


• Current Business Model: What is Imani Enterprises' current business model, and
how does it function?
• Market Analysis: What is the competitive landscape in the local market? Are there
any existing eCommerce platforms that cater to a similar audience?
• Target Audience: Who is Imani Enterprises' target audience? What are their online
shopping habits and preferences?
• Business Goals: What specific goals does Imani Enterprises hope to achieve with an
eCommerce system? Are they looking to increase sales, expand their reach, or
improve customer service?

Technical Feasibility

• Existing Infrastructure: What is the current state of Imani Enterprises' IT


infrastructure? Do they have the necessary hardware, software, and network
capabilities to support an eCommerce platform?
• Integration: How will the eCommerce system integrate with existing systems like
accounting, inventory management, and customer relationship management?
• Scalability: Can the chosen eCommerce platform handle future growth and increased
traffic?
• Security: What security measures will be necessary to protect customer data and
prevent online fraud?

Economic Feasibility

• Cost-Benefit Analysis: What are the estimated costs associated with developing and
implementing an eCommerce system, including hardware, software, integration, and
ongoing maintenance?
• Return on Investment (ROI): How long will it take for Imani Enterprises to recoup
its initial investment in the eCommerce system? What are the potential revenue
streams and cost savings?
• Funding: How will Imani Enterprises fund the project? Will they need to secure
loans or investments?

@crispusjoash on all platforms


Page 8 of 18

Operational Feasibility

• Resources: Does Imani Enterprises have the necessary human resources (e.g., IT
staff, customer service representatives) to manage an eCommerce system?
• Processes: How will the organization's existing business processes need to adapt to
accommodate online sales?
• Timelines: What is the estimated timeline for development, implementation, and
launch of the eCommerce system?

Recommendations

Based on the findings of the feasibility study, I would provide recommendations to Imani
Enterprises, including:
• Proceed with the project: If the study indicates that the eCommerce system is
technically, economically, and operationally feasible, I would recommend moving
forward with the project.
• Revise the project: If certain areas require adjustments, I would suggest making
necessary changes to improve the feasibility of the project.
• Delay or abandon the project: If the study reveals significant challenges or risks, I
might advise postponing or abandoning the project.
Key Considerations:
• Risk Assessment: Identify potential risks associated with the project and develop
mitigation strategies.
• Pilot Program: Consider conducting a pilot program to test the eCommerce system
before a full-scale launch.
• Ongoing Evaluation: Monitor the performance of the eCommerce system and make
adjustments as needed.
By conducting a thorough feasibility study, Imani Enterprises can make an informed decision
about whether to invest in an eCommerce system and ensure that the project aligns with their
business goals and capabilities.
5. To many users, the interface is the system. Do you agree? Justify your answer
Solution
Yes, to many users, the interface is the system.

@crispusjoash on all platforms


Page 9 of 18

This is because the interface is the primary point of interaction between the user and the
system. It's what the user sees, hears, and touches. The complexity of the underlying system
is often hidden behind a user-friendly interface that simplifies tasks and makes the
technology accessible.
Here are some reasons why the interface is so important:
• First Impressions: The interface is often the first impression a user has of a system.
A well-designed interface can create a positive user experience, while a poorly
designed interface can lead to frustration and confusion.
• Ease of Use: A good interface makes it easy for users to accomplish their goals. It
should be intuitive and avoid unnecessary complexity.
• Efficiency: A well-designed interface can help users complete tasks more efficiently.
For example, a clear and concise layout can help users find the information they need
quickly.
• User Satisfaction: A positive user experience can lead to increased user satisfaction
and loyalty.
In conclusion, the interface is a critical component of any system. It is the bridge between the
user and the technology, and its design can significantly impact the success or failure of a
system.
6. One common experience that students in every college and university share is
enrolling in a college course
(a) Distinguish between DFD and ERD
Solution

• Data Flow Diagram (DFD): A graphical tool used to represent the flow of data
through a system. It focuses on the processes, data stores, and data flows within the
system.
• Entity-Relationship Diagram (ERD): A graphical representation of the relationships
between entities (data objects) in a database.

It focuses on the structure of the data and how it is organized.

(b) Draw a level one data flow diagram of data movement for enrolment in a college
course. Use a single sheet and label each data clearly
Solution
Student Registration System

@crispusjoash on all platforms


Page 10 of 18

Data Stores:

• Student Records
• Course Catalog
• Enrollment Records

Processes:

• Enroll in Course
• Verify Student Eligibility
• Update Student Records
• Update Course Enrollment

Data Flows:

• Student Information
• Course Information
• Enrollment Request
• Enrollment Confirmation

!!!This is only a sample!!!

(c) Explode one of the processes in your original data flow diagram into sub-processes,
adding data flows and data stores
Solution
Student Enrolment System

@crispusjoash on all platforms


Page 11 of 18

Student Management System

Sub-Processes:

• Check Student Status


• Verify Prerequisites
• Check Course Availability

Data Stores:

• Student Records
• Course Catalog
• Prerequisite Requirements

@crispusjoash on all platforms


Page 12 of 18

Data Flows:

• Student ID
• Course Code
• Prerequisite Information
• Eligibility Status

!!!This are only samples!!!

(d) List the parts of the enrolment process that are “hidden” to the outside observer and
about which you have had to make assumptions to complete a second-level diagram
Solution

The following parts of the enrollment process are "hidden" to the outside observer and
require assumptions for the second-level diagram:

• Internal validation rules: These are the specific criteria used to determine if a
student is eligible to enroll in a course, such as GPA requirements, credit hour
restrictions, or prerequisites.
• Course availability checks: The process of checking if a course has remaining seats
and is not full.
• Payment processing: The steps involved in processing tuition payments and updating
student accounts.
• Notification system: The mechanism used to notify students about enrollment status,
changes to course schedules, or other relevant information.

These hidden aspects would be further detailed in subsequent levels of the DFD, providing a
more granular view of the enrollment process.

7. Both systems development and software engineering share modelling tools that makes
them appear synonymous.

(a) Both processes have implementation stage. Distinguish between the implementation
activities in the two.

Solution

While both systems development and software engineering involve an implementation stage,
the focus and activities can differ slightly:

Systems Development:

• Focus: The overall system, including hardware, software, and processes.


• Activities:
o Acquiring hardware
o Installing software
o Configuring networks

@crispusjoash on all platforms


Page 13 of 18

o Integrating components
o Testing the entire system

Software Engineering:

• Focus: Primarily the software component of the system.


• Activities:
o Writing code
o Debugging
o Unit testing
o Integration testing
o System testing

(b) Briefly describe the following Object Oriented Systems development concepts. Give
examples of how they are used in system development.

(i) Encapsulation

Solution

• Description: Encapsulation is the concept of bundling data (attributes) and methods


(functions) that operate on the data into a single unit, or class. It restricts direct access
to some of the object’s components, which can prevent the accidental modification of
data.
• Example: In a banking system, a BankAccount class encapsulates the account
balance and methods to deposit or withdraw money. The balance attribute is private,
and access is controlled through public methods

Briefly

• Definition: Bundling of data (attributes) and methods (operations) that operate on that data
into a single unit (object).

• Example: A Customer class might have attributes like name, address, and
phone_number, as well as methods like placeOrder and updateAddress

(ii) Aggregation

Solution

• Description: Aggregation is a type of association that represents a “whole-part”


relationship between the aggregate (whole) and its parts. It implies a relationship
where the child can exist independently of the parent.
• Example: In a library system, a Library class may aggregate Book objects. The
Library can exist without any Book, and Books can exist independently of the Library

Briefly

@crispusjoash on all platforms


Page 14 of 18

• Definition: A relationship between two objects where one object is composed of other
objects.

• Example: An Order object might aggregate multiple OrderItem objects.

(iii) Object

Solution

• Description: An object is an instance of a class. It represents a real-world entity with


attributes (state) and methods (behavior).
• Example: In an eCommerce system, a Customer class can have objects like
customer1 and customer2, each with its own set of attributes like name, address, and
purchase history

Briefly

• Definition: A fundamental unit in object-oriented programming that represents a real-


world entity.

• Example: A Car object might have attributes like make, model, and year, and methods like
startEngine and accelerate.

(c) The purpose of the class diagram is to show the static structure of the system being
modelled. Briefly describe the structure of a class in a class diagram.

Solution
A class in a class diagram is represented as a rectangle divided into three sections:

Class Name: The top section contains the name of the class.
Attributes: The middle section lists the attributes or properties of the class. Each attribute is
typically shown with its name and type.
Operations (Methods): The bottom section shows the methods or functions the class can
perform. Each method is listed with its name and parameters89.
Here’s a simple example:

+------------------+
| Customer |
+------------------+
| - name: String |

@crispusjoash on all platforms


Page 15 of 18

| - address: String|
+------------------+
| + getName(): String |
| + setAddress(String)|
+------------------+
Class Name: Customer
Attributes: name (String), address (String)
Operations: getName(), setAddress(String)
This structure helps in visualizing the static aspects of the system and understanding the
relationships between different classes.
Briefly

A class in a class diagram typically consists of the following elements:

• Name: The identifier for the class.


• Attributes: The data elements that define the class.
• Methods: The operations that can be performed on the class.
• Visibility: Indicates whether the attribute or method is public, private, or protected.
• Relationships: Shows how the class interacts with other classes (e.g., inheritance,
aggregation, association).

Example:

+---------------------+
| Car |
+---------------------+
| - make |
| - model |
| - year |
| + startEngine() |
| + accelerate() |
+---------------------+

8. An activity diagram is a special case of a state diagram in which all (or at least most)
of the states are action or sub-activity states and in which all (or at least most) of the
transitions are triggered by completion of the actions or sub-activities in the source
states.
(a) Outline any four notations and briefly describe how they are used.
Solution
• Action State: Represents a single action or operation within the process. It is depicted as a
rounded rectangle.

• Example: "Add item to cart."

@crispusjoash on all platforms


Page 16 of 18

• Decision Node: Indicates a branching point where the flow of the process can diverge
based on a condition. It is represented by a diamond shape.

• Example: "Is the item in stock?"

• Merge Node: Joins multiple branches of the process back into a single flow. It is
represented by a diamond shape with a single outgoing flow.

• Example: "Combine items from different orders into a single shipment."

• Fork Node: Splits the process into parallel branches that can be executed concurrently. It
is represented by a horizontal line with two or more outgoing flows.

• Example: "Process payment and prepare shipment simultaneously."

(b) Outline the systematic process of ordering and taking delivery of items online using
an ecommerce facility such as Amazon or Jumia.
Solution
• Customer Browses: The customer searches for products or categories on the e-commerce
platform.
• Customer Adds to Cart: The customer selects desired items and adds them to their
shopping cart.
• Customer Proceeds to Checkout: The customer initiates the checkout process.
• Customer Enters Shipping Information: The customer provides their shipping address
and contact details.
• Customer Selects Payment Method: The customer chooses a preferred payment method
(e.g., credit card, PayPal).
• Customer Places Order: The customer confirms their order and submits it.
• Order Processing: The e-commerce platform processes the order, verifies payment, and
updates inventory.
• Shipment Preparation: The items are picked, packed, and prepared for shipment.
• Shipping: The order is shipped to the customer's address using a delivery service.
• Delivery: The customer receives the order and confirms delivery.
(c) Using activity diagram notations, represent the process outlined above.
Solution
A(Customer Browses) --> B(Customer Adds to Cart)
B --> C(Customer Proceeds to Checkout)
C --> D(Customer Enters Shipping Information)
D --> E(Customer Selects Payment Method)
E --> F(Customer Places Order)
F --> G(Order Processing)
G --> H(Shipment Preparation)

@crispusjoash on all platforms


Page 17 of 18

H --> I(Shipping)
I --> J(Delivery)
9. Estimating the time a project will take is a critical factor in controlling systems
development projects. Some of the tools available for a project manager include PERT,
CPM and Gantt Charts.
(a) Distinguish between milestones and critical activities.
Solution
Milestones: Key points in a project timeline that signify the completion of major phases or
deliverables. They do not have duration and serve as checkpoints for progress.
Critical Activities: Tasks that are essential for project completion. Delays in these activities
will directly impact the project's overall timeline. They are part of the critical path, which is
the sequence of activities that determines the minimum project duration.
(b) Consider the activities in the table below.
Activity Description Duration (days)
A Prepare foundation 7
B Make and position door frame 2
C Lay drains, floor base, screed 15
D Install services and fittings 8
E Erect walls 10
F Plaster ceiling 2
G Erect roof 5
H Install doors and windows 8
I Fit gutters and pipes 2
J Paint outside 3
The following is the order of precedence: activity D must follow E, E must follow A and
B, F must follow D and G, G must follow E, H must follow G, I must follow C and F, and
J must follow I.
(c) Draw a well labelled activity network to show how the project will progress from
start to end.
Solution
Based on the provided activities and precedence relationships, the activity network diagram
can be structured as follows:

@crispusjoash on all platforms


Page 18 of 18

▎Explanation of Dependencies
- A must finish before E.
- B must finish before E.
- C must finish before I.
- E must finish before both D and G.
- D must finish before F.
- G must finish before H.
- H must finish before I.
- I must finish before J.
(d) What is the total time required to complete the project if no delays occur.
Solution
To calculate the total time required, we will determine the longest path through the network:

1. Path 1: A → E → G → H → I → J
- Duration: 7 + 10 + 5 + 8 + 2 + 3 = 35 days

2. Path 2: B → E → G → H → I → J
- Duration: 2 + 10 + 5 + 8 + 2 + 3 = 30 days

3. Path 3: A → E → D → F
- Total Duration: 7 + 10 + 8 + 2 = 27 days
(e) Which are the critical activities where any delays must be avoided to prevent
delaying project implementation.
Solution
The critical activities are those on the longest path (Path 1):
The critical activities are those on the critical path:
• A (Prepare foundation)
• E (Erect walls)
• G (Erect roof)
• H (Install doors and windows)
• I (Fit gutters and pipes)
• J (Paint outside)
(f) What path has the shortest completion time.
Solution
• There is no path shorter than the critical path. The critical path represents the longest
path through the network, which determines the minimum time required to complete
the project.
Therefore, the total time required to complete the project is 35 days, and the critical
activities are A, E, G, H, I, and J.

Incomplete

@crispusjoash on all platforms

You might also like