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

Software Design - Essay Example

Comments (0) Cite this document
Summary
What are they? These are the emerging issues in software development that focus on the usability aspects of the system. They emerge from the interactions between usability design principles and software development principles. The “forgotten…
Download full paperFile format: .doc, available for editing
GRAB THE BEST PAPER98% of users find it useful
Software Design
Read TextPreview

Extract of sample "Software Design"

USABILITY AND SOFTWARE ARCHITECTURE: “THE FORGOTTEN PROBLEMS” The “forgotten problems”. What are they? These are the emerging issues in software development that focus on the usability aspects of the system. They emerge from the interactions between usability design principles and software development principles. The “forgotten problems” could follow these directions. Changes required in functionality. Changes in the user interface that focus on positioning aspects, “screen-deep changes”, and changes that go beyond positioning aspects, “non-screen deep changes”. These emerging issues will either be easier to implement, or harder to achieve. The software architecture in place will determine the easiness of change.
In as much these “forgotten problems” are crucial to be addressed, the software development principles have other factors that also need to be addressed. These are the performance, availability, maintainability, security, costs, benefits and schedule. Thus, it is more valuable to achieve a balance rather than focus on only one aspect which in the “forgotten problems” is the usability factor.
The Software architecture is the representation of the software development. It lists all the key modules, their responsibilities, and interactions. It has various representations. It is essential as a good architecture would reduce development time, maintenance costs and improve the quality of product.
How does software architecture interact with usability? This can be understood via enumerating all the phases in software development. These are; system formulation, requirement definition, architecture design, detailed design, implementation, system test and deployment. Each of these chapters is critical, and there exist a high level of interactions. The development cycle in place will dictate the level of interactions between these phases. These methodologies are; waterfall cycle, spiral circle, extreme programming and HCI cycle. The feedback mechanisms in these methodologies will show how effective a method is. (Smith & Williams, 2003).
The idea is to come up with an architectural pattern that best achieves usability factors. Various patterns can be applied. The Model view controller displays the module responsibilities and their interactions. A good model view controller shows productive interactions. It hides the unwanted aspects of the user interface from the remainder of the application. It provides a means of buffering changes in the user interface from the remainder of the application. It localizes the “screen-deep” changes to either the view or the controller. With regards to interactive design, it supports color change of text and order of dialogs. Appearance features are frequent changes that occur in systems. However, deeper changes such as cancellation or addition features may require modification of the various modules. They are complex.
These issues can be addressed in a number of ways. To achieve efficient usability requirements, then it calls for early planning in software design decision making. Usability requirements should be determined especially for those impacting software architecture. A relationship should be created between usability requirements and software architecture. Finally, we need to incorporate these relations in the software design principles. This calls for a meeting between the usability specialists and the software engineers. It is also crucial for the changes pointed to come up with their mechanisms of implementation. The early models only focused on what is to be done. They do not say how it should be done. (Nielsen & Mack, 1994). This will enable achievement of a rudimentary system. This has been the assumption in many usability development teams.
Not all “forgotten problems” can be solved. However, in order to obtain a good system, we can identify those critical aspects of usability features that are essential architecturally. That is it becomes difficult to sustain patterns that only separate the user interface from the application. For instance, changing color of text may not be architectural significant. However, a cancel command modification presents an architectural significance. We can provide a checklist of vital software responsibilities, user benefits and possible architectural patterns to meet the various scenarios. Then we integrate these details into the software architecture design and evaluation methods.
Once we have understood and formulated the architectural significant scenarios, we come up with a Usability-supporting architectural pattern. (R. Molich, & J. Nielsen, 1990). It has three components. The scenario, for example, change in color of text. In scenario stating, the cost of implementation and comprehensive benefits should be given to justify the scenario. A manual to the development team for implementing the solution is necessary. The second component is the general responsibilities. We acquire them from the user and other environmental factors. We consider each function individually to understand its relevance to the designed system. Not all responsibilities will be appropriate or implementable by the software development team. The third component is the sample solution. Here, we assign responsibilities using the model view controller pattern to different modules. At this stage, we can consider issuing sequence outline of activities.
Indeed, this pattern provides a systematic way of implementing the changes. Its reason for success is from the fact that when we use usability supporting architectural patterns, we get fewer usability changes that impact the model. It gives a valuable system for end users. The software developers, managers, researchers and other agencies, need to be convinced that these patterns work. Otherwise, they will not consider them. The assessment strategy could focus on surveys on friends and experts. Carrying out controlled experiments. Doing usability tests and doing documented case studies. This will present evidence of their success or ineffectiveness.
In summary, the “forgotten problems” are the usability issues emerging in software development. These are common issues that will appear in most software development projects. We can beat them with a well - structured pattern that emphasizes on relationships between usability specialists and the software engineers. Handling these issues is a guarantee of a quality product. End-users will appreciate this. Thus, it is necessary to understand and solve these emerging issues.
REFERENCES
Nielsen J., & Mack R. L. (1994). 10 Heuristics for User Interface Design. New York, NY.
Molich R., & Nielsen J. (March, 1990). Improving a human-computer dialogue: Communications of ACM. 338 – 348.
Smith C. U. & Williams L. G. (2003). Best Practices for software performance Engineering. MA, Addison Wesley. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(“Software Design Essay Example | Topics and Well Written Essays - 500 words - 3”, n.d.)
Software Design Essay Example | Topics and Well Written Essays - 500 words - 3. Retrieved from https://studentshare.org/miscellaneous/1610805-software-design
(Software Design Essay Example | Topics and Well Written Essays - 500 Words - 3)
Software Design Essay Example | Topics and Well Written Essays - 500 Words - 3. https://studentshare.org/miscellaneous/1610805-software-design.
“Software Design Essay Example | Topics and Well Written Essays - 500 Words - 3”, n.d. https://studentshare.org/miscellaneous/1610805-software-design.
  • Cited: 0 times
Comments (0)
Click to create a comment or rate a document

CHECK THESE SAMPLES OF Software Design

Software Design Defects Detection and Classification

...? Software Design Defects Detection and ification Year: The software process is typically a translation of information from form to form. That is, from the user needs to functional requirements to structure to design and finally code. This process is predominantly human based and errors are likely to occur when progressing through the forms. Being a process run by humans, it is crucial to manage the software process to ensure success of the project. It follows that, the parameter to measure software success is software quality. This essentially refers to “fitness for use”. On a detailed elucidation of quality,...
8 Pages(2000 words)Literature review

COMZ Group Assignment

4 Pages(1000 words)Assignment

Usability in Website and Software Design

...Usability in Website and Software Design Website: http www.usabilityfirst.com/index.txl Foraker Designs; Foraker Design was foundedin 1999 by Stirling Olson a graduate from the Duke University School of Engineering in 1993. Throughout the 90's, Stirling saw the need for a web development firm that was focused on user-centered design and value to its customers. Brief Synopsis: This web site provides relevant information about Usability; it's actual relevance, discusses various methods of achieving high usability level, usability evaluation methods and the benefits of planning usability in the design of websites among other...
4 Pages(1000 words)Research Proposal

Application Software Design

...Application Software Design Application software should be user friendly and should be made sure that it satisfies all the requirements of the user regarding that particular application. It should be able to handle various requests of the user in minimum expected time. Any application has to suit the environment in which it is being used. It should work effectively in all the situations. The basic requirements of the user must be analyzed before developing an application. It should not pose any sort of difficulty for the user as it may have negative effects. Word processors include various features that enable the user to develop any text based applications according to their...
2 Pages(500 words)Essay

Software Engineering Design Workshop

...Crossword Software Engineering Design Workshop Mobile gaming has been the favorite pastime for many, both the young and the old. Apart from variousforms of games that are available on phone, people do indulge into the other games that is available online or in the daily newspapers. Before the mobile and online games were made available to the customers, the crossword was considered a mind boggling game, which engrossed the people on all walks of life. It not only is an age old mind game, but it is considered to be a brain twister. One needs a good vocabulary, presence of mind and a logical orientation to crack the games. Almost all newspapers across the world have some form of crossword for their...
9 Pages(2250 words)Essay

Software design coursework (MSc Computer Science)

...1: Since the prime requirement is that every attraction ought to be dealt in the same manner, it is imperative that we supply the price for admittance for even the free attractions as “0”. However, this would defeat the purpose of having the flexibility of entering only those many input parameters as associated. Therefore, the OOP feature of polymorphism, which allows the usage of the same function name for different number of input parameters appears the most beneficial here. That, again, introduces another yet same hiccup: What about the prices for admittance for free attractions, i,e. how do you retrieve it? The answer to this is fairly simple: Use the same method of retrieval for these and if the output is NULL or zero... Since the prime...
4 Pages(1000 words)Coursework

Iphone Software design

...The document presents design, specifications and implementation of a Jacket-Search-Engine iPhone web application. Initially, I would specify the purpose of the application, user stories that would become the basis of application design, high level functionalities of the application, how the users will navigate through the application, the interface or screen layout of the application and in the end, the functionalities of upcoming versions of the Jacket-Search-Engine application. Purpose The purpose of the application is to provide users a search engine, especially for jackets and their respective designers. This application would facilitate the youngster using Smartphone to select and...
4 Pages(1000 words)Essay

Software Design

...Software Design Software Design Where software architecture ends and software design begins. Software architecture, as defined byShaw and Garlan (1996), includes a set of crucial decisions concerning the software system organization techniques such as the selection of structural elements and their interfaces; expected behaviors among the defined elements; composition of behavioral and structural elements; functionalities of the system i.e. performance, comprehensibility, usability, aesthetic issues, resilience and economic/technical constraints; and architectural guiding styles for the organization. Software Architecture is also the structure of a system which comprises the externally visible features of any software elements... and their...
2 Pages(500 words)Essay

Software Design

...Object-Oriented and Procedural Designs Compared Object oriented design Object oriented design is a process of coming up with a plan of any systems of interacting objects (encapsulated procedures and data grouped to represent an entity) with the intension of solving a software setback. The ability to hide certain sections of an object from entities considered external; a class to override the functionality of any other class; deferring implementation of a method; replacing an object with its subject, are some of the object oriented design which are at implementation level (Pooley R. and Stevens P., 1999). Procedural Design A procedural...
2 Pages(500 words)Essay

Software Design and Development

... Software Design and Development a. Input Screen Design for the Program i. Input screen for paint Output screen for itemized bill i. Data Flow Diagrams Selects Provides Provides Settles for Has Generates Chooses Has Generates Requests for Supplies dimensions Justification of Software Structures and Data Types The proposed software design presented in...
6 Pages(1500 words)Assignment
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.

Let us find you another Essay on topic Software Design for FREE!

Contact Us