StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Software Engineering - Essay Example

Cite this document
Summary
This essay "Software Engineering" discusses the term design methodology means to develop a system for a unique solution. The design methodologies are mostly used in the technological field like web design, software, or information system design…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER95.8% of users find it useful
Software Engineering
Read Text Preview

Extract of sample "Software Engineering"

INTRODUCTION The term design methodology means to develop a system for a unique solution. The design methodologies are mostly used in the technological field like web design, software or information system design. The objective of design methodology is to find the best solution for each design situation. The major objective of the design methodology is to meet the end user expectancy and needs by analyzing and designing the product effectively. The best process is the one that is close to the people who will be doing the work. Every developer, or a team of developers, uses some process to build computer software or any other product for industries, architectural sector, or technical sector. Planning, analysis, and designing prior to implementation are very important. The process technology tools or the methodology framework are developed to help organizations explore the procedure, organize work tasks, control and monitor progress and manage technical quality (Pressman). The selection of a proper process modeling tool is necessary. If the process is weak, the end product will undoubtedly suffer, because when the planning and analysis is not done accurately, there remain some discrepancies in the end product. But an obsessive over- reliance on process is very dodgy too. The selection of an appropriate methodology gives a better end product, better developing process, and a much standardized process which can help in attaining the user requirements. The outcome of all the methodologies is not same. Some are product-oriented; others are more concerned about the user requirements. Some are for small projects while others are for organizational projects. The selection of the design methodology is done with respect to the users’ requirements, time scale, cost, and human resource. The methodologies are classified on different factors. Some methodologies focus on process orientation and functional decomposition such as STRADIS and YSM. Other methodologies like IE emphasize on analysis of data. Classification of methodologies is also done on the geographical location such as SSADM and MERISE. Methodology like ETHICS focuses on the socio-technical issues (Jayaratna, 1994). Different frameworks are used to evaluate design methodology. Frameworks are a systematic way to assess methodologies. It summarizes the methodologies and raise points that user himself has to solve accordingly, and then select the methodology. There are many frameworks which evaluate the methodologies but this essay will be presenting NIMSAD; this framework will then be used to compare two methodologies: namely ETHICS and SSADM. NIMSAD NIMSAD stands for Normative Information Model-based System Analysis and Design. It is a general framework for evaluating any design methodology. It enables for a comparison amongst different methodologies based on its own phases or stages. NIMSAD is useful for system developers to select, standardize, and use most suitable methodology. It evaluates the methodology using three criteria; firstly the problem situation, in which the context describes how the methodology helps in understanding the problem; secondly the problem solver, which is the user of the methodology; and lastly the problem solving process, which is the methodology itself. The last factor assists the analyzing, designing, and problem definition (Yaghini, 2009). NIMSAD framework uses the problem solving process as the basis of evaluation and it can be used to evaluate methodology of any category. It aims to understand the problem statement i.e. what the problem is. Then it evaluates the structure, steps, and nature of each methodology and examines which methodology is suitable for the offered problem. This examination is done by the problem solver i.e. the user or the developer of the system. The user selects the methodology on the basis of the summary produced by the framework. NIMSAD framework has three stages which are further divided into eight stages (Jayaratna, 1994). PHASE 1: Problem Formulation. Stages 1: Understanding the situation of concern. Stages 2: Performing the diagnosis. Stages 3: Defining the prognosis outline. Stages 4: Defining problems. Stages 5: Deriving notional systems. PHASE 2: Solution Design. Stages 6: Performing conceptual/logical design. Stages 7: Performing physical design. PHASE 3: Design Implementation. Stages 8: Implementing the designs. The details of the phases will be discussed later in the essay. The methodologies that will be discussed are the SSADM and ETHICS. ETHICS ETHICS is a shortened form of Effective Technical and Human Implementation of Computer- based Systems. Social and organizational factors are brought together and ranked in order to make application effective. The socio-technical analysis and design produces good systems, taking in account both users and their needs together with the help of the computer system and necessary task work (Avison, 1995). The main objectives of ETHICS are that it seeks a value position in which future users of the computer system at the organizational level play a major role in the designing of the system, the team concerned with the design task of the system set specific satisfaction objective in addition to technical and operational objective, job satisfaction and quality of the work are to be assured. When designing a system, ETHICS concern both the human and technical factor at the organization. This is the socio-technical approach to the system design procedure. ETHICS have thirteen phases, they are: 1. Why change, discussion is made and the result should be a convincing statement of the need for change. 2. System boundaries, the responsible start and end of the system, identify the boundary of the system around which the system is to be designed. 3. Description of existing system, analyze the working of the existing system and its input/output form. 4. Definition of key objectives and tasks (3 phases), key objectives are listed and these form the design. Objectives of the new system. The key tasks are defined in outline along with their key information needs. 5. Diagnosis of efficiency needs: aims to identify and document weak links in the existing system. 6. Diagnosis of job satisfaction needs: aims to measure the job satisfaction needs by using a standard questionnaire. 7. Future analysis: aims to identify future changes that may occur in the environment, technology, organization or fashion so that some amount of flexibility can be built into the new system. 8. Specifying and weighting efficiency and job satisfaction needs and objectives: a list of priority and secondary objectives is produced. 9. The organizational design of the new system: the organizational changes which are needed to meet the efficiency and job satisfaction objectives are specified. If possible, this should be done parallel with next phase. 10. Technical options: aims to specify technical options such as hardware, software and the design of the human-computer interface. 11. The preparation of a detailed work, data flows, tasks, groups, individuals, responsibilities and relationships are defined. Selected system is designed in detail. 12. Implementation, the strategy, the education and training, the co-ordination of parts and everything needed to ensure a smooth changeover is planned in detail. 13. Evaluation, aims to check the system to ensure that it is meeting its objectives in relation to efficiency and job satisfaction (Avison, 1995). If the objectives are not met and changes are necessary the process will have to start from the beginning. SSADM SSADM stands for Structured Systems Analysis and Design Method. It is a set of standards developed for system analysis and application design used for government computing projects in United Kingdom. It is a way of coordinating the system analysis and design of the projects related to computer based information system. SSADM uses a structural approach to modeling and design. In the whole structure, SSADM produces documents and diagrams, from initial design process to the final outcome of this design. Basically it follows the SDLC (Software Development Life Cycle) so in each phase documents are produced (Goodlland, Riha, 1999). SSADM application development projects are divided into five modules that are further decomposed into further stages, steps and tasks. The five main modules of this methodology are 1. Feasibility Study: the business area of the developing organization is analyzed to determine whether a system cost effectively supports the business requirements. 2. Requirements Analysis: the requirements of the system to be developed are identified, the processes that are to be carried out and the data structures that are needed for the design. 3. Requirements Specification: the detailed functional and non-functional requirements are identified and the required processes and data structures are defined. 4. Logical System Specification: the logical system is designed that includes diagram, and in which expected working of the system and its modeling is done. 5. Physical Design, the database design and program specifications are generated using the diagrams and modeling done in the logical design (Goodland, Riha, 1999). EVALUATION NIMSAD Stage 1: Understanding the situation of concern. This stage studies the role of the client or user for example what type of role the user will be playing, the method of analysis used by the methodology are investigated in this stage. SSADM: Data Flow Diagram provides the design analyst with the manner in which the system will perform and how the user will interact with the application. In SSADM methodology, the analysts do not arrange a formal meeting with the client in order to fully understand the user’s requirements. ETHICS: the step one and two of ETHICS evaluates the boundaries of the new system to be designed. The existing system, future demands, the need of an improvement and the change the new system can bring are discussed. This makes it easy for this structure to establish the boundary and concerns of the new system that is to be designed (Mumford ,1983). NIMSAD Stage 2: Performing the Diagnosis. In this stage, NIMSAD investigates the techniques used by the methodology. The analysis of the information provided by the user is done in this stage. The methodology techniques are listed. SSADM: The data flow diagram provides a good contribution in the diagnosis and analysis of the system to be designed. The different levels of DFD offer analyst and developers with the general to the detailed approach and view of the system. It mentions the flow of the functions, data and operations, user roles etc. in the diagnosis stage, SSADM uses the logical and physical data flow to get a transformed process. ETHICS: the diagnosis is done in this structure by first studying the existing system and then deciding what improvements can be established to make the existing system more reliable. The diagnosis also includes the type of technical things required and the human resource necessary. The analysis of input/output is also understood by the design team so that the new system is build on the same pattern NIMSAD Stage 3: Defining the prognosis In this stage, NIMSAD evaluates whether the methodology supports prognosis or not. If its supports, NIMSAD discusses how the methodology establishes the design states required to build the system or in other words, it predicts what action should be performed in a particular situation. SSADM: the prognosis is not defined in this methodology but the feasibility phase helps in estimating the cost and user’s requirement. This facilitates the analyst estimating whether the cost effectively supports the business requirements. As mentioned before, SSADM structure user do not consult or meet their clients for requirement gathering, rather they assume that they know what client wants. ETHICS: ETHICS also includes the prognosis. The design team defines the key objectives and needs, which makes it easy for the analyst to evaluate the prognosis. The objective defines what to do when a certain situation occurs. The states required to deal with all the situations are defined. NIMSAD Stage 4: Defining Problem. It investigates what types of problems are solved by which methodology. It evaluates the problem statement and finds out how a particular methodology will solve the problem. SSADM: SSADM assumes that DFD can help construct boundary. This establishes an implicit boundary in which everything that data flow diagrams can’t cover remains outside. It does not define how it will solve the problem. It only diagnose the system, that is the problem statement is defined but the solution is not provided, because it does not have any prognosis phase the solution of the problem can not be defined. ETHICS: ETHICS defines the problem statement, purpose of the new system and all the functions required. All this planning is done after a detailed meeting with the client and the design team. The future prospects and efficiency need is also analyzed. This helps in designing the system properly. NIMSAD Stage 5: Deriving notional systems. In this stage, NIMSAD investigates if a methodology derives and formulates a notional system from the identified problem statement. SSADM: SSADM clearly formalizes the client requirements with the help of DFD modeling so formulating a notional system becomes easy in SSADM structure. Data Flow Diagrams help in specifying system functions. ETHICS: in ETHICS, not only design is studied but also the human resource and proper technical support is made available for the developers so that a notional system is designed without any discrepancies. The evaluation of all the modules by all the developers is done. For every task a different team is conceived that makes the creation of notional system possible. NIMSAD Stage 6: Performing Conceptually/ Logical Design This stage investigates whether a methodology establishes a logical design or not. What type of logical design is established? What prospects were needed to design the system logically? SSADM: the logical and physical designing helps this structure to perform conceptually. The analysts have the designing and analysis in front of them, which helps the developers in conceptual building of system. SSADM uses user’s assumed requirements to modify the logical design and in building logical system design. ETHICS: the logical design in this structure is done through the flow charts. Like the DFD in SSADM, flow charts provide the logical design in this structure. They define the working of the modules, functions etc. NIMSAD Stage 7: Performing physical design. NIMSAD studies the physical design construction whether a methodology includes a physical design in its structure or not. SSADM: the logical design assists in formulating the physical design. The functional and non-functional requirements are defined in phase four of the structure, this helps in effective building of physical design. Moreover physical design, itself, is a phase of this methodology. This is the main advantage of this structure that it has over other structures, that is it defines a detailed logical and physical design. ETHICS: the design group in ETHICS formulates the logical design into physical design. This includes the draft of data structures, database and functions. NIMSAD Stage 8: Implementation. This stage investigates how the methodology implements the analysis and design and how it will deploy it to the client. SSADM: SSADM only designs the system. Implementation, testing and deployment are not the part of this structure. This is the main disadvantage of this structure. For implementation of the physical design, the developer has to use some other methodology. ETHICS: the implementation of the designed system is done in the end. This requires a properly designed and error free physical and logical design. The main advantage of this methodology is that it covers the system in a detailed manner; it involves all the steps and operation required for building a successful system. This structure also provides the client with the training DISCUSSION Based on the evaluation, both the methodologies have different characteristics which make them analyze the problem differently. Both the methodologies have there own set of advantages and disadvantages. Starting from the first step, SSADM and ETHICS both understand the boundaries in there own way. SSADM uses assumption and ETHICS uses the exact user requirement that it gathers from the client. In the second step, both analyze and diagnose the system in a positive way and gives out a fully designed system. SSADM uses DFD to design the system and ETHICS uses existing system and its evaluation in designing the system. The SSADM does not have prognosis as it is fully dependent on the DFDs whereas ETHICS structure has prognosis in its designing phase. In the fourth step, SSADM only understand the problem statement and does not provide with an appropriate solution but ETHICS understands the problem statement and also facilitate the developer team with a solution. Both the structures creates a notional system, both have logical and physical design phase. The SSADM does not implement whatever it has designed, but ETHICS not only implement the designed system but also test and deploy it on the clients end. Overall, if evaluated ETHICS is a better methodology to use because it examines and explore the system more details, keeping in view all the user requirements, technical requirements and human resource requirements. CONCLUSION Design methodology is a discipline that integrates process, methods, and tools for the development of a system. There are numerous process models or methodologies for the designing of system, but all define a set of framework activities, a collection of tasks that are conducted to accomplish each activity and work produced. Methodology process can be used to define the characteristics of the system. Selecting the appropriate methodology is half the designing of the application. When accurate design methodology is selected, user requirements are studied, the functions and activities are designed and proper implementation is done, it will result in the establishment of the user expected and cost effective system. Bibliography Avison, F., (1995), Information Systems Development: Methodologies, Techniques and Tools, page 353. Goodland, M. & Riha, K. (Feb. 1999), SSADM, an introduction. www.dcs.bbk.ac.uk Jayaratna N., (1994). “Understanding and evaluating methodologies: NIMSAD: a systematic framework”. McGraw-Hill, UK. Mumford, E., (1983), Designing Human Systems for New Technology - The ETHICS Method http://www.enid.u-net.com/C1book1.htm#Chapter%205 Pressman, R. n.a., Software Engineering, A practitioner’s approach, 6th edition. Yaghini, M., (2009), A Framework for Selection of Information Systems Development Methodologies, Computer and Information Science, Vol 2. http://www.ccsenet.org/journal/index.php/cis/article/viewFile/1848/1756 . Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(“NIMSAD Essay Example | Topics and Well Written Essays - 2750 words”, n.d.)
NIMSAD Essay Example | Topics and Well Written Essays - 2750 words. Retrieved from https://studentshare.org/miscellaneous/1572870-nimsad
(NIMSAD Essay Example | Topics and Well Written Essays - 2750 Words)
NIMSAD Essay Example | Topics and Well Written Essays - 2750 Words. https://studentshare.org/miscellaneous/1572870-nimsad.
“NIMSAD Essay Example | Topics and Well Written Essays - 2750 Words”, n.d. https://studentshare.org/miscellaneous/1572870-nimsad.
  • Cited: 0 times

CHECK THESE SAMPLES OF Software Engineering

Software Engineering Testing tools

This research paper details a study about the unreliability of Software Engineering testing tools as a result of the misuse of these testing tools in development.... This research aims to evaluate and present Software Engineering testing tools.... There are numerous Software Engineering testing tools available today.... Many of these tools have come to be adopted and utilized as solutions to the rising demand for assurance of software quality in the Software Engineering industry....
11 Pages (2750 words) Research Paper

Software Engineering and HCI

However, the statement by Reifer can be evaluated as a very appropriate note on the practical aspects of this complicated discipline of study covered under high level Software Engineering.... Analysing requirements at the business, corporate, technical and other functional spheres in a systematic way is the essence of requirements engineering.... ents engineering is the systematic use of proven principles, techniques, languages, and tools for the cost effective analysis, documentation, and on-going evolution of user needs and the specification of the external behavior of a system to satisfy those user needs....
9 Pages (2250 words) Essay

Aspect-Oriented Software Engineering

The paper "Aspect-Oriented Software Engineering" discusses some of the fundamental areas of aspect-oriented approach.... It also discusses the role of aspect-oriented Software Engineering in improving the performance of current software development lifecycles.... One of the most important advantages of aspect-oriented Software Engineering is that it is very useful in the separating the concerns.... The research has shown that splitting concerns into several autonomous components instead of merging a number of diverse concerns in the single consistent abstraction is a noble software development approach....
10 Pages (2500 words) Research Paper

Software Engineering Assignment

Software Engineering activities necessary to develop and maintain software products.... Partha Kar Academia-Research, Inc Software Engineering Assignment 4 February 2007 Software Engineering Assignment Answer to section 3 The four attributes which all software products should have are as follows:1.... Software Engineering.... Software process is the total set ofsoftware engineering activities necessary to develop and maintain software products....
2 Pages (500 words) Essay

Agile Software Engineering

The initiation of 'agile Software Engineering methodologies' was another response to a number of software development problems those have reasoned an intense debate amongst Software Engineering developers from the beginning of 2000, like that 'Spiral' or 'Waterfall' model has established a high value of agile Software Engineering methodologies.... In addition, the agile Software Engineering methodology has demonstrated to be an accepted addition to the Software Engineering toolbox, which is capable of considerable progress in excellence for small project development teams....
8 Pages (2000 words) Research Paper

Software Engineering Exam Questions

he main focus of agile Software Engineering approach is on the people as well as on the dynamics of their connections and communications, rather than on rigid software development and complex requirements planning procedures.... ISO 9001 is the quality assurance standard that is designed specially for the engineering products.... Because the ISO 9001 standard is applicable to all engineering disciplines, a special set of ISO guidelines that ISO 9000-3 have been developed to help interpret the standard for use in the software process....
12 Pages (3000 words) Essay

Cleanroom Software Engineering Implementation

This business plan "Cleanroom Software Engineering Implementation" focuses on a software development viewpoint that is based on preventing software faults by employing formal methods of creation.... The cleanroom Software Engineering procedure is the process that is geared towards is the construction of software with no faults during development (Mills 19).... The purpose of this strategy for software creation is a zero-defect program.... Cleanroom software manufacturing is corresponding to cleanroom hardware....
8 Pages (2000 words) Business Plan

Software Engineering Requirements

This literature review "Software Engineering Requirements" discusses the requirements engineering that is associated with the developments as well as documentation and maintenance of software requirements.... Software Engineering requirements are about the development of software requirements.... Software Engineering requirements are about the development, documentation, and maintenance of software requirements.... The requirements in Software Engineering are dependent on the project involved and the technicalities....
9 Pages (2250 words) Literature review
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us