Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSC 480 Software Engineering High Level Design. Topics Architectural Design Overview of Distributed Architectures User Interface Design Guidelines.

Similar presentations


Presentation on theme: "CSC 480 Software Engineering High Level Design. Topics Architectural Design Overview of Distributed Architectures User Interface Design Guidelines."— Presentation transcript:

1 CSC 480 Software Engineering High Level Design

2 Topics Architectural Design Overview of Distributed Architectures User Interface Design Guidelines

3 Software Architecture The design process for identifying the sub- systems making up a system and the framework for sub-system control and communication is architectural design The output of this design process is a description of the software architecture

4 Software Architecture The set of significant decisions about the organizations of a software system  Elements and their interfaces  Their behaviors and collaborations  Composition of these structural and behavioral elements into progressively larger subsystems Also concerns about  Performance, reliability, reuse, and trade-offs  Aesthetic concerns

5 Architectural Design An early stage of the system design process Represents the link between specification and design processes Often carried out in parallel with some specification activities It involves identifying major system components and their communications

6 Advantages of Explicit Architecture Stakeholder communication  Architecture may be used as a focus of discussion by system stakeholders System analysis  Means that analysis of whether the system can meet its non-functional requirements is possible Large-scale reuse  The architecture may be reusable across a range of systems

7 Sub-Systems and Modules A sub-system is a system in its own right whose operation is independent of the services provided by other sub-systems. A module is a system component that provides services to other components but would not normally be considered as a separate system

8 Architectural Models Different architectural models may be produced during the design process Each model presents different perspectives on the architecture  Static structural model that shows the major system components  Dynamic process model that shows the process structure of the system  Interface model that defines sub-system interfaces  Relationships model such as a data-flow model

9 Application Layers

10 Three-tier Architectures In a three-tier architecture, each of the application architecture layers may execute on a separate processor Allows for better performance than a thin-client approach and is simpler to manage than a fat- client approach A more scalable architecture - as demands increase, extra servers can be added

11 Client-Server Architecture Distributed system model which shows how data and processing is distributed across a range of components Set of stand-alone servers which provide specific services such as printing, data management, etc. Set of clients which call on these services Network which allows clients to access servers

12 Servers and Active Objects Servers.  The object is implemented as a parallel process (server) with entry points corresponding to object operations. If no calls are made to it, the object suspends itself and waits for further requests for service Active objects  Objects are implemented as parallel processes and the internal object state may be changed by the object itself and not simply by external calls

13 A 3-Tier System Architecture

14 An Internet Banking System Account service provision Application Server HTML file transfer

15 Use of C/S Architectures

16 The User Interface System users often judge a system by its interface rather than its functionality A poorly designed interface can cause a user to make catastrophic errors Poor user interface design is the reason why so many software systems are never used

17 Graphical User Interfaces Most users of business systems interact with these systems through graphical interfaces although, in some cases, legacy text-based interfaces are still used

18 GUI Characteristics

19 GUI Advantages They are easy to learn and use.  Users without experience can learn to use the system quickly. The user may switch quickly from one task to another and can interact with several different applications.  Information remains visible in its own window when attention is switched. Fast, full-screen interaction is possible with immediate access to anywhere on the screen

20 UI Design Guidelines Five general factors Rules for user interface design Five user-computer interaction styles


Download ppt "CSC 480 Software Engineering High Level Design. Topics Architectural Design Overview of Distributed Architectures User Interface Design Guidelines."

Similar presentations


Ads by Google