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

INF2011S Theory Notes

The document discusses system analysis and design, including: - System analysis involves gathering information to understand and specify what a system should accomplish. - System design defines and describes the structure and components of the system. - Key activities in design include examining design strategies, detailed class and method design, and UI, input, and output design.

Uploaded by

khmaponya
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views

INF2011S Theory Notes

The document discusses system analysis and design, including: - System analysis involves gathering information to understand and specify what a system should accomplish. - System design defines and describes the structure and components of the system. - Key activities in design include examining design strategies, detailed class and method design, and UI, input, and output design.

Uploaded by

khmaponya
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Theory

Lesson 1 – System Design

Lesson Objectives

System analysis and design


 System analysis
o represents those activities that enables a person to
understand and specify what an information system should
accomplish.
o It involves gathering information, defining problems, and
proposing solutions to improve or develop efficient and
effective systems.
o Provides the starting point for system design.
 System design
o represents those activities that enable a person to define
and describe in detail the system that solves the need.
o It involves defining the structure, components, and
architecture of the system.
o Provides the starting point for system development.
o Key activities undertaken during the design phase:
 Examine several design strategies and decide which
will be used to build the system.
 Detailed design of the individual classes and methods.
 Designing UI, system inputs, and system output.
 Making physical architecture decisions regarding the
hardware and software that will be purchased to
support the new system.
o The two levels of system design:
 System design deals with high level architecture of the
system.
 Hardware, network, and the system software
infrastructure.
 Communication between sub system.
 Standards for screen and reports.
 Detailed design adds detail to the analysis to provide a
detailed system specification.
 Class design – attributes and methods
 Sequence design
 UI and report design.
 Database design.
 Security and controls design.

Lesson 4 – System Sequence Diagram

Lesson Objectives:
 What are the three types of frames used on a sequence diagram.
 What are the steps involved in developing a detailed sequence
diagram.

System sequence diagram


 Represents the interactions taking place between the actor and
the system.
 Provides detail of the use case’s processing requirements
 The members in the process:
o Actor
o System
o The messages [input messages and return value messages]

Detailed sequence diagram


 Expands on the system sequence diagram by adding a use case
controller and domain classes for the use case.
 In other words, it emphasizes the sequence of messages involved
in a use case.
 For the multilayer sequence diagram, add the view and data layer:
o View layer: Represents the UI and is responsible for
displaying data to the user and capturing user input.
o Data layer: represents the data and business logic of the
application. Also used for updating and reading existing
persistent objects.
 General assumptions:
o Perfect technology: There are no login issues.
o Perfect memory: There’s no read or write data.
o Perfect solution: There are exception conditions, or error
handling.
 The three types of frames used on a sequence diagram:
o Alternative:
 represents alternative interactions that are based on
condition.
 Like a “if-else” statement in OOP.
o Optional:
 Refers to an optional interaction that is based on a
condition.
 It’s like an “if” statement without the else in OOP.
o Loop
 Represents a repetitive sequence of interactions.
 The loop consists of a guard condition and repetition
condition.
 Steps involved in developing a detailed sequence diagram.
o Step 1
 Choose a relevant use case,
 Utilize use case description, and activity diagrams.
o Step 2
 Create first cut design class diagram.
 This is usually done by expanding on the domain class
diagram.
o Step 3
 Extend input messages.
 Add internal messages.
 Add origin and destination objects.
o Add appropriate view and data layer.

Lesson 5 – UI design

Lesson objectives
 Why is interface design often referred to as dialog design?
 What are the four metaphors used to describe human-computer
interaction?
 What is the technique that shows a sequence of sketches of the
display screen during a dialogue?
 What is meant by the user experience? How does the user
interface relate to it?
 What is meant by a tooltip? How does it show up?
 How can use case diagrams help in the design of the user
interface?
 What is story boarding?
 What are five major considerations when designing the user
interface for mobile- systems?
User interface (UI)
 The user interface represents the point at which the human users
interact with the system.
 Focuses on the presentation, look, and feel of the product.
 The purpose of UI is to create an interface that is visually
appealing, coherent, and on-brand.
 Components of UI:
o Equipment: screens, keyboard, and mouse.
o Screen elements: buttons, fonts, windows, and menus.
o Application: screen content, ads, links, and functions.
o Mobile equipment: touch screen, screen size, and
brightness.

User experience (UX)


 Refers to the overall experience the user has when interacting with
the system.
 Focuses entirely on the Human Computer Interaction (HCI).
 The purpose of UX is to provide a seamless, efficient, and
enjoyable experience for the user, ensuring that the product is user
centric.

User Interface design


 This field focuses on the visual side of the software.
 Things like spacing, button styles, font styles should be considered
when designing the UI.
 The UI designer has the responsibility of creating the visual
language and identity of the app.

User experience design


 The UX designer has the responsibility of constructing wireframes,
and flowcharts.
 Includes aspects like user research, content strategy, and
information architecture.

Interaction design
 Focuses on how users interact with specific elements of the
software.
 Interaction designers are responsible for identifying what happens
when a user clicks a button or transitions between pages on apps.
 Includes aspects like animations and page transitions.
 Interface design is usually referred to as dialog design, because it
involves creating a two-way
 interaction between the user and the system.

Visual design
 The visual designer is responsible for illustrations, graphics, and
icon design.
 The role of a visual designer is not necessary, therefore may not
be needed.

Metaphors used in Human computer interaction.


 Direct manipulation metaphor
o Objects on display are manipulated to look like icons.
o For instance, dragging folder icon to delete collection.
 Desktop metaphor
o
 Document metaphor
o visually representing the data in files as paper pages.
o Like the adobe acrobat file.
 Dialog metaphor
o User and computer accomplish a task by engaging in a
conversation or dialog via text.
o Like when the user clicks the “troubleshoot” when the printer
is not working.

Principles of UI design
 Human interface objects
 Consistency
 Continuity
 Usability
 Readability

Transitioning from analysis to UI design


 design the interface one use case at a time to ensure that each
user goal is addressed.
 Menus and functionality are organized and determined based on
use cases.
Storyboarding
 Represents the technique that shows a sequence of sketches of
the display screen during a dialogue.

Considerations for a web-based application


 Layout and formatting.
 Data entry and user actions.
 Navigation and visibility.

Lesson 6 – Report design

Lesson objectives
 What is a report that contains only information about nonstandard
or out-of-bound conditions?
 What is the ability to link a summary field to the supporting detail,
and to dynamically view that detail on a screen?
 Mention one effective way to present large volumes of data is to
summarize it and present it.
 List the reports that are used by high-level managers to assess the
overall health and performance of the organization are called.
 Electronic reports can provide what on the report to activate a
lower-level report, which provides more detailed information.
 What are the two most used graphical charting techniques.

Designing Reports
 Reports refer to structured presentation of information generated
by the system based on specific information.
 Designing outputs comprises of designing operational, detailed,
summary, exception, and executive reports alike.
 Likewise, reports can’t be considered output without inputs, or
rather, data or information fed into the system.
 Designing inputs involves identifying the devices, and mechanism
for data content.

Different types of reports


 Electronic reports:
o Refers to reports that are specifically designed to be viewed
on electronic devices, such as computers, tablets, or
smartphones.
o Includes drill down, multimedia and dashboards.
 Operational reports:
o Reports that supports day to day operations.
o Usually available online and real-time.
o Detailed and presented around the business need.
o Sales items, invoices, shipping notes.
 Detailed reports:
o Provides specific information on business transactions.
o For instance, list of all account each including information
about the particular account
 Summary reports:
o Managers often use to track departmental or division
performance.
o Used to recap periodic activity.
o daily/weekly summary of all sales transactions.
 Exception reports:
o Provides details about transactions results that fall outside of
a predefined range of values.
o No report needed when business is progressing.
 Executive reports:
o Reports used by high level managers to assess overall
organization health and performance.
o Summary information from activities within the company.
o Show comparative performance with industry-wide
averages.
o

Lesson 7 – Testing and test cases

Lesson objectives
 Describe implementation, deployment and test activities.
 Describe different types of software tests and explain how and why
each is used.
 Writing a test case

Implementation, Deployment, and Testing


 Implementation and deployment are complex processes because
they consist of so many interdependent activities.
 Testing refers to those key activities of implementation and
deployment.
 Implementation activities.
o Program the software.
o Identify and build test cases.
o Integrate and test components.
 Deployment activities
o Perform system and stress tests.
o Perform user acceptance tests.
o Convert existing data.
 Testing activities
o Usability test
o Unit test
o Integration test

Testing concepts
 Testing
o Refers to the process of examining a component or system
to determine its operational characteristics.
 Test case
o A formal description of a starting state or one or more events
to which the software must respond, and the expected
response.
 Test data
o Refers to a set of starting states and events used to test the
entire system.

Types of tests
 Unit testing
o Tests of an individual method or class before it’s integrated
with the rest software.
o Comprises of driver and stub.
o Implementation
 Integration testing
o test of the behavior of a group of methods or classes.
o Implementation
 System and stress testing
o An integration test of an entire system
o Deployment
 User acceptance testing
o Usually performed near the end of the project
o Deployment

V model of testing (Waterfall/traditional)


 Represents verification and validation model.
 Software development model
 Sequential path of execution
 Advantages
o Simple and easy to use
o Time saver high chance of success - Protective defect
tracking
o Avoids toward flow of defects.
o Good for small projects
 Disadvantages
o Rigid and inflexible.
o No early prototypes of software.
o Document has to be updated for any changes

Full-lifecycle OO testing (FLOOT)


 Methodology is a collection of testing techniques to verify and
validate OO software
 Wide carroty of testing techniques available throughout software
development
 Wide range of options
 Techniques can be applied with evolutionary/agile processes as
well
 Test throughout not just during coding

Five principles of agile testing


1. Fast feedback
2. High level of automation
3. Low overhead
4. Termination of testing roles

Lesson 8 – Security and control

Lesson objectives
 Describe security methods and controls.
 Identify appropriate application controls to ensure the integrity of
inputs, outputs, processing, and storage.
 Discuss issues related to security that affect the design and
operation of information systems

Types of security
 Security
o Refers to the state of being safe and protected from harm or
threats.
o Loss, damage, alterations.
 Cybersecurity
o Defines as governance and information security to ensure a
safe cyber environment.
 Information security
o Based around confidentiality, availability, and integrity.

Security controls
 Access control
 Data encryption
 Digital signatures and certificates

Factors affecting fraud risks.


 Separation of duties
 Asset control and reconciliation
 Record and audit trails

Designing security controls


 Access control
o Authentication
o Authorization
 Digital encryption
o Encryption – alter data to make it unrecognizable.
o Decryption – convert encrypted data in readable format.
 Digital signatures and certificates
 Secure transaction

You might also like