Software Development Methodologies
Software Development Methodologies
Software Development Methodologies
A software development methodology or system development methodology in software engineering is a framework that is used to structure, plan, and control the process of developing an information system. It is made up of a collection of processes as well as a modeling language
A modeling language is any artificial language that can be used to express information or knowledge or systems in a structure that is defined by a consistent set of rules. The rules are used for interpretation of the meaning of components in the structure. In software engineering modeling language consist of several modeling methods.
Behavior Trees Unified Modeling Language(UML) Object-Role Modeling(ORM) Architectural Description Language(ADL) Jacksons Structured Programming
A software process model is an abstract representation of a process methodology. Process models outlines things that are done but not how it is done. However, methodologies are a specific way of conducting a software project. They define exactly what, when, and/or how various artifacts are produced and sometimes the tools to be used.
Systems thinking is the process of understanding a system by examining the linkages and interactions between the components that comprise the entirety of that defined system. Systems Thinking uses a variety of techniques that may be divided into hard systems and soft systems.
Hard systems (HS) involves simulations, often using computers and the techniques used in operations research. Hard systems look at the How? meaning, how to best achieve and test the selected option of development and analysis. Example of hard system : Payroll system
These
are considered as methods which consist of a clear definition but has a less user involvement . Hard systems methodologies are useful for problems that can justifiably be quantified.
Structured Systems Analysis and Design Methodology (SSADM) is an integrated set of standards and guides for the analysis and design of computer systems It is a way of formally organizing the systems analysis and design parts of computing projects.
It is an integrated set of standards and guidelines consisting of : Structural standards: which define the structure of a development project in the form of explicitly defined tasks, with clearly defined interfaces between them, and clearly defined tangible products; Technique guides: which provide development staff with a set of proven usable techniques and tools, and detailed rules and guidelines on when and how to use them Documentation standards, which provide the means of recording the products of development activity at a detailed level
SSADM is a waterfall view approach whereby there are sequences of events that run in series and each step leads on from the last. There are five steps in total, and each step can be broken down further
Feasibility study Requirements Analysis Requirements Specification Logical System Specification Physical System Design
This is where the analyst and users decide if the entire project is worth pursuing.It involves the analyst considering the problems faced by the organization and producing a set of options to resolve them. The users must then decide whether the costs involved in resolving the problem are worth it.
Identifying of the requirements and needs of the system and modelling these needs in terms of the processes carried out.
. Stage 01:
Investigation of Current Environment: Establish analysis framework Investigate and define requirements Investigate current processing/data Derive logical view of current services
This needs to be done so that the analyst and the users fully understand what the current system does. They need to be clear what problems they have and what they want from the new system
Stage 02:
Business System Options . A Business System Option (BSO) describes a
suggested new system in terms of its functionality and its boundary: inputs, outputs, processes and data are described. The aim is to help the users choose, from all the listed requirements, just what they want their new system to do.
Stage 02:
Business System Options
This Stage allows the analyst and users to come up with some ideas about what the new system might do. Usually, a range of options, with different costs and benefits, are considered. Users will need to be clear about the objectives of the business before they can choose the option to proceed with.
begins. The emphasis is on determining the desired system data, functions and events
Stage 3:
Definition of Requirements: Define required system processing Develop required data model
options
By now, the analyst and users will have a reasonable idea of what the
new system will be expected to do. This allows them to consider the technical options. For example, the key hardware components will need to be identified. Define technical options Select technical options
options
(TSOs) is very similar to that for BSOs. First, draw up an initial list of approximately six options. The skeletal TSOs should then be expanded to include details derived from potential suppliers such as: Cost; Facilities; Performance; Support etc.
will the new system do?What might it look like from a user perspective? Define user dialogues Define update processes
Stage 6 :This stage concentrates on the environment within which the new system will operate. Physical Environment Classification Scheme is used to categorize the physical environment. The scheme considers factors including: Data storage; Performance; Processing characteristics.
Stage 6 : Prepare for physical design Create physical data design Create function component implementation map Optimize physical data design