Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
UNIT IV
DESIGN ENGINEERING
Design Considerations
There are many aspects to consider in the design of a piece of software. The
importance of each should reflect the goals the software is trying to
achieve. Some of these aspects are:
Packaging - Printed material such as the box and manuals should match
the style designated for the target market and should enhance usability. All
compatibility information should be visible on the outside of the package.
Usability - The software user interface must be usable for its target
user/audience. Default values for the parameters must be chosen so that
they are a good choice for the majority of the users.
ARCHITECTURAL DESIGN
Basic Steps
o A program module
o An object-oriented class
o A database
o Middleware
The software architecture highlights early design decisions that will have a
profound impact on all software engineering work that follows and, as
important, on the ultimate success of the system as an operational entity
• The software that is built for computer-based systems exhibit one of many
architectural styles
DETAILED DESIGN
Detailed Design starts with Software Architecture Design (SAD) and fill in the
details of the architectural components - - - may cause re-work on SAD, too.
o Mid-level
o Low-level
• In contrast to mid-level, low level detailed design fills in the details for later
programming purpose (PAID):
DESIGN PROCESS
DESIGN QUALITY
Quality guidelines
• A design should lead to data structures that are appropriate for the classes
to be implemented and are drawn from recognizable data patterns.
• Poor user interface design is the reason why so many software systems
are never used
Characteristic Description
Windows Multiple windows allow different information to be
displayed simultaneously on the user’s screen.
Icons Icons different types of information. On some systems,
icons represent files; on others, icons represent
processes.
Menus Commands are selected from a menu rather than typed
in a command language.
Pointing A pointing device such as a mouse is used for selecting
choices from a menu or indicating items of interest in a
window.
Graphics Graphical elements can be mixed with text on the same
display.
GUI Advantages
• The user may switch quickly from one task to another and can interact
with several different applications.
Produce
Design Evaluate design
dynamic design
prototype with end-users
prototype
Executable Implement
prototype final user
interface
UI design principles
Principle Description
User familiarity The interface should use terms and concepts which
are drawn from the experience of the people who will
make most use of the system.
IMPLEMENTATION ISSUES