Design with Reuse Building software from reusable components. Reuse-based software engineering Application system reuse. The modern embedded system needs to be designed to meet the tremendous changes due to high speed and advancement in technologies. The collaborative software or groupware design process involves issues of design, the method chosen for designing a collaborative software system will have.


Author: Terrill Ritchie
Country: Belgium
Language: English
Genre: Education
Published: 1 May 2016
Pages: 670
PDF File Size: 37.40 Mb
ePub File Size: 23.5 Mb
ISBN: 702-5-53688-508-4
Downloads: 25283
Price: Free
Uploader: Terrill Ritchie


For example, a telephone switching system must feed dial tone to thousands of subscribers within a recommended limit of one second. To meet these requirements, system software design issues off hook detection mechanism and the software message communication involved have to work within the limited time budget.

Software design issues: a very large information systems perspective

The system has to meet these requirements for all the calls being set up at any given time. The designers have system software design issues focus very early on the Realtime response requirements.

During the architecture design phase, the hardware and software engineers work together to select the right system architecture that will meet the requirements. This involves deciding inter connectivity of the processors, link speeds, processor speeds, etc.

Issues in Embedded and Realtime System Design

The main questions to be asked are: Is the architecture suitable? If message communication involves too many nodes, it is likely that the system software design issues may not be able to meet the Realtime requirement due to even mild congestion. Thus a simpler architecture has a better chance of meeting the Realtime requirements.

Are the link speeds adequate?

A higher link utilization causes the queues to build up on different nodes, thus causing variable amounts of delays in message communication. Are the processing components powerful enough?

A CPU with really high utilization will lead to unpredictable Realtime behavior. Also, it is possible that the high priority tasks in the system will starve system software design issues low priority tasks of any CPU time.


This can cause the low priority tasks to misbehave. Is the Operating System suitable? Assign high priority to tasks that are involved in processing Realtime critical events.


Consider preemptive scheduling if Realtime requirements are stringent. When choosing the operating system, the interrupt latency and scheduling variance should be verified. Scheduling variance refers to the predictability in task scheduling times. For example, a telephone switching system is expected to feed dialtone in system software design issues than ms.

Collaborative Software: Design Issues

This would typically involve scheduling three to five tasks within the stipulated time. Most operating systems would easily meet these numbers as far as the mean dialtone delay is concerned.

But general purpose operating systems would system software design issues much higher standard deviation in the dialtone numbers.