Free Essay

Formal System Development Methodologies

In:

Submitted By carissagrayson
Words 1255
Pages 6
Formal System Development Methodologies

Carissa Robinson Grayson
June 6, 2010

Formal systems development methodologies, also sometimes referred to as Formal Methods, are used to model systems using mathematics. By using mathematics to model a complex system, properties of the system can be verified without empirical testing. (Collins) Formal systems development methodologies are different from other design systems through formal verification, the principles are proven correct before they are accepted. Traditional design systems have been used to verify behavior but testing is capable of only finite conclusions. (Collins) Formal design is usually a three step process. * Step one is when the engineer decides how a system will be using a modeling language. This step is similar to the formal software engineering technique developed by many others. This step helps the engineer to define their problems, goals and solutions. * Step two is the step that deals with verification. Formal methods put a huge emphasis on provability and correctness. Verification is difficult because even the simplest system has at least a dozen theorems that which all must be proven. * Step three is the implementation step. Once the model has been verified, the implementation must then be converting into code. (Collins) There are two important benefits of formal methods. The benefits would be discipline and precision. In formal systems, an engineer is required to think out the processes more than traditional methods. This causes the engineer to show great discipline. This causes the engineer to show great discipline. In formal methods, there is a need to be very precise and to show great clarity. (Collins) There are three main weaknesses in using formal methods. These weaknesses are expenses, limits of computational models, and usability. Formal methods are always going to be more expensive than traditional methods. Formal methods involve a large initial cost followed by less costs as the project progresses. Most formal methods introduce some type of computational models. Design limitations are usually considered intolerable from a developer’s perspective. (Collins) There are numerous formal methods that have been developed to design new systems. There are at least twenty or more. A few of the formal methods will be discussed here. mCRL2 stands for micro Common Representation Language 2. mCRL2 is a specification language that is used to specify and analyze distributed systems and protocols. mCRL2 is based on Algebra of Communications Process or ACP. It is extended to also include data and time. Model checking is provided using Parameterized Boolean Equations System (PBES). According to mCRL2 website, the toolset consists to automatically: * Translate any mCRL2 specification to a linear process. * Manipulate and simulate linear processes. * Generate the state space associated with a linear process. * Generate a PBES from a formula and a linear process. * Generate a BES from a PBES. * Manipulate and solve (P)BESs. (“mCRL2”)
Esterel is a synchronous system for development of complex reactive systems. The development of the language started in the early 80s although the language is still in development. There are several advantages to Esterel such as the model of time gives a programmer precise control, concurrency convenient for specifying control systems, and can be implemented in hardware as well as in software. The disadvantages of Esterel are the finite state nature of the language limits in flexibility and the semantic challenges such as difficult to compile in the general case, but simple correctness criteria exists. (“Esterel”) VDM or the Vienna Development Method is a collection of techniques for formal specification development of new systems. VDM consists of VDM-SL which are the rules in which data and operations refinement which allow one to establish links between abstract requirement specifications. VDM was created from the origins of the programming languages that were at IBM’s Vienna Laboratory in the 60s and 70s. (“VDM”) Construction and Analysis of Distributed Processes or CADP was formerly known as CAESAR/ALDEBARAN Development. CADP is popular in using for design of communication protocols and distributed systems. It is the only toolbox that offers high-level protocol description written in ISO language LOTOS, low-level protocol description specified as finite state machines, networks of communicating automata, several equivalence checking tools, several model checkers, several verification algorithms and tons of other tools such as visual checking, performance evaluation, etc. (“Construction and Analysis…”) Common Algebraic Specification Language or CASL is a specification language that was developed by CoFI. CASL is based on a critical selection of known constructs. CASL is usable for specifying the requirements and design for conventional software packages. CASL also has restriction to various sublanguages. (“CASL”) The B Method is a formal specification method which has highly accurate expressions of properties required by specification. This method allows the specifications to be structure, coherent, and ambiguous. It also allows for the development of software that is contractually guaranteed to be fault free. According the B Method website, the main objectives for the method are: * To create correct software by construction. * To model systems in their environment. * To formalize specifications. * To simply programming
(“Presentation of the B Method”)
Alloy was developed in which it was believed that a language like Z could bring a fully automatic analysis. Alloy gives up the ability to totally prove a system’s correctness. It tries to find counterexamples within a limited scope that violate the constraints of the system. The greatest benefit of Alloys in the ability to incremental analysis. A programmer may explore design ideas starting from a tiny model which is then scaled up. (“Introduction to Alloy”) The ANSI/ISO C Specification Language is a specification for C programs. It follows the design by contract paradigm. ACSL is a Behavioral Interface Specification Language (BISL). It looks for specific behavior properties in the C code. The main reason for this language is the specification of the Caduceous tool for deductive verification of behavioral properties of C programs. ACSL aims at static verification and deductive verification. (“ANSI/ISO C Specification Language”) Abstract State Machine (ASM) Project was created to try to bridge formal models of computation and practical specification models. One use of this methodology is to describe a system by a particular syntax and associated semantics. ASMs allow for the use of terms and concepts of the problem domain immediately. ASM programs use an extremely simple syntax. (“Abstract State Machines”) Software development is a difficult task. It takes choosing the correct items to build your design around which can be extremely difficult. Using different system methodologies can help with that process to make the design the best. Choosing a formal system methodology is a very complex process. There are so many methodologies to choose from. Besides the ones that are listed, there are also: * CafeOBJ * CCS – Calculus of Communicating Systems * CSP (Communicating Sequential Processes) * Duration Calculus, etc.
WORKS CITIED

“An Introduction to Alloy.” http://www.doc.ic.ac.uk/project/examples/2007/271j/suprema_on_alloy/Web/intro.php
“ANSI/ISO C Specification Language.” http://en.wikipedia.org/wiki/ANSI/ISO_C_Specification_Language
“CASL.” February 28, 2008. http://www.informatik.uni-bremen.de/cofi/wiki/index.php/CASL
Collins, Michael. “Formal Methods.” 1998. http://www.ece.cmu.edu/~koopman/des_s99/formal_methods/
“Construction and Analysis of Distributed Processes.” October 24, 2006. http://www.inrialpes.fv/rasp/cadp/
“Esterel.” April 25, 2010. http://en.wikipedia.org/wiki/Esterel
Huggins, Jim. “Abstract State Machines.” April 3, 2008. http://www.eecs.umich.edu/gasm/intro.html
“mCRL2.” March 12, 2010. http://www.mcrl2.org/mCRL2/wiki/index.php/About
“Presentation of the B Method.” http://www.bmethod.com/php/method-b-en.php
“VDM.” http://www.vienna.cc/e/evdm.htm

Similar Documents

Premium Essay

Information System Strategic Planning

...INFORMATION SYSTEM STRATEGIC PLANNING Information System Strategic Planning, the Cost of Efficiency Student Name University Any Town, Virginia September 2010 Certification and Approval A Directed Research Project on Information System Strategic Planning the Cost of Efficiency: Is there a preferred approach to information systems planning, submitted to the Graduate Faculty of Strayer University in candidacy for the degree of Master’s of Science in Information Systems. Submitted by: _________________________Date: _______________ Approved by: ___________________________ Date: _______________ ABSTRACT Information systems’ planning is often costly to implement and maintain; however, sound planning practices may reduce expenses associated with the development processes. A Formal methodical approach to systems analysis, requirements engineering, systems design, development, and construction may offer a reduction in development and certain aspects of life cycle support expenses. Corporate expenses may reach approximately 5% of their gross income on information systems development and support. This equates to approximately $15,000,000 to $35,000,000 annually (Whitemarsh Information Systems Corp. 2008, p.). Information systems may cost significantly less. In comparison, information systems, contingent upon other factors such as size of the company, and complexity of the information system cost may range anywhere from $2,000,000 to $10,000,000 per system. Corporate...

Words: 6140 - Pages: 25

Premium Essay

Software Engineering as Research

...Introduction The core of Information Systems (IS) has long been suggested to be software engineering. Software Engineering Research Methodology (SERM) can be known as an approach that mixed a galaxy of new concepts and emerging information technologies and then express this mixture in an innovative artefact in order to do some academic knowledge to basic research field and prompt the further research in the relevant fields. There need to construct a paradigm that can completely describes research using SERM approaches. A SERM framework based on this paradigm is presented to allow developmental research to be performed using a stringent methodology. Software Engineering as Research Research can be described as a scientific approach rather than one of the several different ways of promoting building and understanding of new knowledge. Moreover, scientific research is defined as a process of systemic inquiry conducted with the protection of a theoretical infrastructure. Research and evaluation, which is similar to research, can be distinguished by using theory as the fundamental. As Mertens argues that evaluation is associated with the acquiring of information for decision making in a given environment, however, research, which means a wider field, is more typically connected with contributing new knowledge that can be used in the relative fields Can software engineering be research? According to the definitions from Sir Karl Popper (1980) and Blake (1978), whether or...

Words: 846 - Pages: 4

Premium Essay

Cis510 Week 3 Case Study Establishing a Formal Systems Development Process

...ESTABLISHING A FORMAL SYSTEMS DEVELOPMENT PROCESS 1 Establishing a Formal Systems Development Process NAME Dr. Matthew Anyanwu CIS510 Advance System Analysis and Design 21 July 2010 ESTABLISHING A FORMAL SYSTEMS DEVELOPMENT PROCESS 2 Absract Brian and Carrie are systems analysts with many years of systems development experience at a large firm. Jane has recently been hired as the company’s first-ever process manager. She has been reviewing the company’s past practices of systems development with the intent of trying to establish a formal systems development process for the company. Brian has been a long-time proponent of the waterfall approach to systems development. Carrie has been a big proponent of the iterative/incremental development approach. Both are known to be very opinionated on the tools and techniques that should be used for systems development projects and both are lobbying Jane very hard to adopt their preferred techniques. This paper will describe how Jane should deal with the two system analysts from a technical and human resource perspective and explain the factors that Jane should consider in establishing a process management solution. Additionally, assuming you have two promising tools and techniques, we will suggest three or more ways you can foster a team environment when one analyst does not get his or her way. ESTABLISHING A FORMAL SYSTEMS DEVELOPMENT...

Words: 920 - Pages: 4

Free Essay

System Development Method

...SELECTING A DEVELOPMENT APPROACH Original Issuance: February 17, 2005 Revalidated: March 27, 2008 Introduction A system development methodology refers to the framework that is used to structure, plan, and control the process of developing an information system. A wide variety of such frameworks have evolved over the years, each with its own recognized strengths and weaknesses. One system development methodology is not necessarily suitable for use by all projects. Each of the available methodologies is best suited to specific kinds of projects, based on various technical, organizational, project and team considerations. CMS has considered each of the major prescribed methodologies in context with CMS’ business, applications, organization, and technical environments. As a result, CMS requires the use of any of the following linear and iterative methodologies for CMS systems development, as appropriate. Acceptable System Development Methodologies Waterfall Initial Investigation Requirements Definition System Design Coding, testing,... Implementation Operation & Support Framework Type: Linear Basic Principles: 1. Project is divided into sequential phases, with some overlap and splashback acceptable between phases. 2. Emphasis is on planning, time schedules, target dates, budgets and implementation of an entire system at one time. 3. Tight control is maintained over the life of the project through the use of extensive written documentation, as...

Words: 3573 - Pages: 15

Premium Essay

Mis Reviewer

...YOUR SYSTEM: 1. Insourcing 2. Selfsourcing (also called end-user development) 3. Outsourcing MAJOR SDLC PHASES: 1. Planning 2. Analysis 3. Design 4. Development 5. Testing 6. Implementation 7. Maintenance PRIMARY ACTIVITIES IN PLANNING PHASE: 1. Define the system to be developed 2. Set the project scope 3. Develop the project plan PRIMARY ACTIVITIES IN ANALYSIS PHASE: 1. Gathering the business requirements 2. Prioritize the requirements PRIMARY ACTIVITIES IN DESIGN PHASE: 1. Design the technical architecture 2. Design the system model PRIMARY ACTIVITIES IN DESIGN PHASE: 1. Build the technical architecture 2. Build the database and programs PRIMARY ACTIVITIES IN DESIGN PHASE: 1. Write the test conditions 2. Perform the testing of the system PRIMARY ACTIVITIES IN IMPLEMENTATION PHASE: 1. Write detailed user documentation 2. Provide training for the system users PRIMARY ACTIVITIES IN MAINTENANCE PHASE: 1. Build a help desk to support the system users 2. Provide an environment to support system changes COMMON TYPES OF TESTS: 1. Unit testing 2. System testing 3. Integration testing. 4. User acceptance testing (UAT) TYPES OF TRAINING: 1. Online training 2. Workshop training IMPLEMENTATION METHODS: 1. Parallel implementation 2. Plunge implementation 3. Pilot implementation 4. Phased implementation COMPONENT-BASED DEVELOPMENT METHODOLOGIES: ...

Words: 3227 - Pages: 13

Free Essay

Soft System Methodology

...Soft Systems Methodology A report by Dale Couprie Alan Goodbrand Bin Li David Zhu Department of Computer Science University of Calgary Table of Contents. Abstract. Introduction Map Stage 1. Problem situation unstructured. Stage 2. Problem Situation expressed. Rich Pictures Illustration of Stage 1 and Stage 2 as a whole in SSM Pitfalls that must be avoided. Stage 3: Naming of Relevant Systems Root Definitions CATWOE Stage 4: Conceptual Models Systems Thinking Formal Systems Model Monitoring a System Stage 5: Comparing Conceptual Models with Reality Using Conceptual Models as a Base for Ordered Questioning Comparing History with Model Prediction General Overall Comparison Model Overlay Stages 6 and 7. Implementing Feasible and Desirable Changes Case Study - Rethinking a Service Function in the Shell Group Stages 1 and 2 Stage 3: Naming of Relevant Systems Stage 4: Conceptual Models Stage 5: Comparing Conceptual Models with Reality Stages 6 and 7. Implementing Feasible and Desirable Changes Observations and Conclusions Exercise References Figures. Figure 1. Figure 2. Figure 3. Figure 4. Figure 5. Figure 6. Soft Systems Methodology map. Transformation process for producing Rich Picture. The routing of Systems Thinking. Shell's MF Rich Picture. Shell's MF world view of training. Shell's MF training conceptual model. Tables. Table 1. One to one transformations involving different world views. Table 2. Shell's Comparison with reality. Abstract This document deals with...

Words: 6553 - Pages: 27

Free Essay

Enterp

...Enterprise Systems Development: Impact of Various Software Development Methodologies By NAVEEN KARKONDA Id#110-00-4907 Abstract: Software Development Methodologies have always been the main focus in the software development life cycle of any project. Each evolutionary shift introduced new ways of thinking and viewing problems as well as introducing strengths and weaknesses in software development. However, identifying one stop solution in terms of a software development methodology for enterprise wide application development whose various sub-components or sub-stages can be best used to describe a software development scenario is still an evolving domain. This, coupled with the reality that computer science and its allied areas like information systems and information technology domains are moving forward rapidly with regards to available technologies, making it extremely difficult task for practitioners to maintain pace with the available information technologies and their application in various domains. It is to address these scenarios and probabilities that this research paper examines various software development methodologies or process models and their impact on the overall software development life cycle. 1. Introduction: Software Development Methodologies have always been the main focus during the software development life cycle of any project. Over the past 40 years, there have been significant paradigm shifts in software development, such as...

Words: 3677 - Pages: 15

Premium Essay

The Impact of Rural Banking on Rural Farmers in Uganda

...1.0 INTRODUCTION 4 1.1 BACKGROUND TO THE STUDY 4 1.2 STATEMENT OF THE PROBLEM 4 1.3 THE AIM OF THE STUDY. 5 1.4 OBJECTIVES OF THE STUDY 5 1.5 RESEARCH HYPOTHESIS 5 1.6 RESEARCH QUESTIONS 5 1.7 LIMITATION OF THE STUDY 6 1.8 ORGANIZATION OF STUDY 6 1.9 SIGNIFICANCE OF THE STUDY 6 CHAPTER TWO 7 2.0 LITERATURE REVIEW 7 2.1 STRUCTURE AND PERFORMANCE OF RURAL AND MICRO FINANCE INDUSTRY 7 2.2.0 RURAL AND COMMUNITY BANKS (RCBS) 9 2.2.1 SAVINGS & LOANS COMPANIES 10 2.3 NON-GOVERNMENTAL AND COMMUNITY-BASED ORGANIZATIONS 10 2.4 INFORMAL FINANCE 11 2.4.1 MONEYLENDERS 11 2.4.2 TRADERS 12 2.5 GOVERNMENT CREDIT PROGRAMS 12 2.5.1 INTEREST RATES 13 2.5.2 SECURITY 13 2.5.3 THE NEED FOR THE RURAL CREDIT 14 2.5.4 RURAL BANK OPERATIONS 16 3.0 METHODOLOGY 18 3.1 THE RESEARCH DESIGN 18 3.2 POPULATION 18 3.3 SAMPLE AND SAMPLING TECHNIQUE 18 3.4 INSTRUMENT 19 3.5 DATA COLLECTION PROCEDURE 19 3.6 DATA ANALYSIS 19 CHAPTER ONE INTRODUCTION 1.0 INTRODUCTION 1.1 BACKGROUND TO THE STUDY If current agricultural trends continue, by the year 2020 sub-Saharan Africa’s food shortage will...

Words: 4723 - Pages: 19

Free Essay

Student

...4/4/2016 49004 Systems Engineering for Managers Soft Systems Methodology (SSM) - An Introduction Last Lecture 2 We completed our introduction to systems concepts: Definitions Characteristics Significance Feedback 1 4/4/2016 This lecture 3 We will give a brief description of Checkland’s Soft Systems Methodology (SSM); We will indicate where it is appropriate to use; We will distinguish it from “hard” approaches. 4 Lecture Relevant Reading Checkland P (1993), “The Development of ‘Soft’ Systems Thinking”, Jackson MC (2004), “Soft Systems Methodology”, Optional Reading: Staker RJ (1999), An Application of Checkland’s Soft Systems Methodology to the Development of a Military Information Operations Capability for the Australian Defence Force 2 4/4/2016 “Classical” Systems Engineering 5 One way of thinking suggests… engineering begins when a need is established. the engineer’s task then provides a solution ... A “how to” oriented activity the need is expressed in terms of a system with defined objectives If there is a current situation S0 and a future, desired situation S1, then select the best of the available ways of getting from S0 to S1 so that the process becomes one of evaluating alternative solutions using models and criteria However… 6 More often than not, for managers, the problem is ill-defined – or the need is not readily established “What is the issue?” is the relevant question before...

Words: 3420 - Pages: 14

Premium Essay

App Programing

...Application Development (RAD) by outlining A brief history of development approaches leading to it  Rationale  Advantages/Disadvantages  GUI Builders/Designers  Event Driven Programming  Application Programming II Rapid Application Development and Prototyping Rapid Application Development and Prototyping What is RAD? 3 RAD Approaches 4   Rapid Application Development (RAD) is a development lifecycle designed to give much faster development and higher-quality results than those achieved with the traditional lifecycle. It is designed to take the maximum advantage of powerful development software that has evolved recently (Martin, 1991). By using a series of proven application development techniques, within a well-defined methodology, organisations can quickly and cheaply develop systems without compromising on quality . Rapid Application Development and Prototyping Barry Boem’s spiral model  James Martin's RAD methodology  Agile methods  Rapid Application Development and Prototyping 1 2/29/2016 What is RAD? 5 What is RAD? 6 Dr. James Martin came up with the RAD software development methodology/approach in the late 1980’s.  This was in response to the non-agile Stagewise or Waterfall Models methodologies of the 1970s. Unlike the traditional conventional approaches, RAD emphasises development rather than specification and planning.  It is thus a flexible and rapid development process where...

Words: 3016 - Pages: 13

Premium Essay

Sdlc

...Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved. . Planning Chapter 1 3-2 PowerPoint Presentation for Dennis, Wixom & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved. The Systems Development Life Cycle (SDLC) 3-3 PowerPoint Presentation for Dennis, Wixom & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved. The SDLC is composed of four fundamental phases: Planning Analysis Design Implementation 1-4 PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved. Each of the phases include a set of steps, which rely on techniques that produce specific document files that provide understanding about the project. 1-5 PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved. To Understand the SDLC: Each phase consists of steps that lead to specific deliverables The system evolves through gradual refinement 1-6 PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved. Phase I: Planning 1-7 PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and...

Words: 3126 - Pages: 13

Premium Essay

Open Source Software

...in both open and closed-source development. T he open source software community has published a substantial body of research on OSS quality. Focusing on this peer-reviewed body of work lets us draw conclusions from empirical data about how to achieve OSS quality, rather than relying on the large volume of evangelical opinion that has historically dominated this field. This body of published research has become much more critical and objective in its efforts to understand OSS development, and a consensus has emerged on the key components of high-quality OSS delivery. This article reviews this body of research and draws out lessons learned, investigating how the approaches for delivering high-quality OSS differ from, and can be incorporated into, closed-source software development. paring quality management in open source and closed-source software development. OSS development must also manage a geographically distributed team, requiring focus on coordination tasks. Yet OSS development seems to eschew best practices without software quality suffering. Indeed, an extensive study of 100 open source applications found that structural code quality was higher than expected and comparable with commercially developed software.1 The body of research demonstrates that OSS development does retain some of the underlying best-practice tasks from closed-source development—central management, code ownership, task ownership, planning and strategy, system testing, leadership, and decision...

Words: 4510 - Pages: 19

Premium Essay

Microfinance

...TERMS * Rural Financial Services Project (Africa Development Bank, German Agency for Technical Cooperation, World Bank): refers to a project being undertaken by the above bodies to provide financial services to the rural dwellers to enhance development. * Credit risk: This refers to the degree to which it is likely that a borrower or debtor may not repay a loan or debt. It also means a particular borrower or debtor perceived by a lender or creditor as being particularly not likely to repay a debt. (Microsoft Encarta 2007). | | | INTRODUCTION Poverty is one of the problems faced by the people living in the rural areas and this largely affects their lifestyles both socially and economically. Along with poverty, many other social problems or issues can be pointed out including unemployment, lack of education, lack of proper governance and over population. These problems are associated with poverty and most of the time regarded as causes or effects. In government’s bid to eradicate poverty from the rural areas, it adopted strategies and one of such strategies is microfinance. Microfinance involves the application of innovative methodologies that make financial services available to relatively poor households and microenterprises. Microfinance can also be termed as the practice of providing financial services including micro credit, micro savings and micro insurance to poverty stricken or poor individuals, such that they are assisted to collect large sums of money...

Words: 3433 - Pages: 14

Premium Essay

Chapter1Sqa

...Chapter 1 The Uniqueness of Software Quality Assurance • • • • • • Part 1 The software quality challenge What is software quality? Software quality factors The components of the software quality assurance system – overview The software quality challenge • The Software Quality Challenge • Differences between Software Products and Industrial Products • Only Chance to Discover Defects: • The Environment for which SQA Methods are Developed The Software Quality Challenge • This chapter is essentially about two major topics: – The uniqueness of software quality assurance – The environments for which SQA methods are developed. Introduction • Why study Quality Assurance and Testing? • With all the methodology wars, numerous processes, huge number of tools to assist in software development, why this separate topic? • What makes SQA important that it deserves so much attention? • SQA is a key course in software engineering curricula. Differences between Software Products and Industrial Products • High complexity – The potential ways in which a software product can be used with different data / data paths reflecting different incoming data is almost infinite. – Manner in which industrial products can be used are usually well-defined. – Think about software: • every loop with different values of data reflects a different opportunity to see software fail. • In truth, the number of paths through a non-trivial software product...

Words: 1574 - Pages: 7

Premium Essay

Software Design

...on the users’ requirements. A right software development methodology should be employed in order to develop a right product such as Waterfall modeling. Design process are steps that enable the software developer to describe, analyze all aspects of product to be developed. It should not suffer from the ‘tunnel vision’ that is the developer should consider alternative approaches judging each as per the user’s requirements. It should also be traceable to its analysis model since one design can be traced to many requirements, so they should be a clear means of tracking them. Design should use the backlog of existing system but not inventing the wheel. However, there should be uniformity and integration in the design and should regularly be reviewed to avoid semantic errors. The design should be developed in such a way that it can be altered when need arises. It should also be assessed to ensure software quality. Software design considerations are: compatibility in that the system is design to operate in any platform that is not limited to a specific environment. The design should be extensible; in that new elements can be added easily without altering the core functionality of the architecture. It should be scable; it should adapt well to the increasing number of users or data. It should also be robust design; that is should work under pressure i.e. low memory capacity. Software design should be done well with the real time system which processes concurrent inputs from many sources...

Words: 1271 - Pages: 6