Download presentation
Presentation is loading. Please wait.
Published byAldous French Modified over 9 years ago
1
FIS 1311: October Review November 7, 2005
2
Outline Software development processes Standards and XML (RSS) UML use Cases Databases & ERD
3
Software Development Cathedral & Bazaar Proprietary & Open Source Waterfall & Iterative What is software development?
4
function disp_prompt() { var name=prompt("Please enter your name","") if (name!=null && name!="") { document.write("Hello " + name + "! How are you today?") }
5
Example, con’t
6
Cathedral vs. Bazaar “built like cathedrals, carefully crafted by individual wizards or small bands of mages working in splendid isolation, with no beta to be released before its time.” “a great babbling bazaar of differing agendas and approaches (aptly symbolized by the Linux archive sites, who'd take submissions from anyone) out of which a coherent and stable system could seemingly emerge.”
7
Cathedral & Bazaar Users should be treated as co-developers. Early Releases: To find co-developers early. Frequent Integration: Some Open Source projects have nightly builds Several Versions: new & buggier; stable & older High Modularization: allowing for parallel development. Dynamic decision making structure.
8
Waterfall vs. Iterative Emphasis is on developing software in an organization to meet very particular organizational needs. Applies to any kind of project with multiple design disciplines. High profile open source (bazaar) projects develop software for a broad audience Waterfall≈Proprietary; Iterative≈Bazaar
9
“Waterfall” Design Waterfall: you complete a number of phases in a strictly ordered sequence: requirements analysis, design, implementation / integration, and then testing. You also defer testing until the end of the project lifecycle Planning Requirements Analysis & Design Test Deploy
10
Iterative Design involves a sequence of incremental steps, or iterations. Each iteration includes some, or most, of the development disciplines (requirements, analysis, design, implementation, and so on)
11
Iterative Design
12
Proprietary vs. Open Source Proprietary software can use an Iterative, Bazaar-like approach (e.g. “Microsoft Changes How It Builds Software,” Wall Street Journal) Open source development can (has to) be controlled and “led”: Linux, SAKAI Licensing: –BSD, GNU (Lesser) General Public License
13
GPL the freedom to run the program, for any purpose. the freedom to study how the program works, and modify it. the freedom to redistribute copies. the freedom to improve the program, and release the improvements to the public.
14
GPL the GPL seeks to ensure that the above freedoms are preserved in copies and in derivative works. It does this using a legal mechanism known as copyleft, invented by Stallman, which requires derivative works of GPL-licensed programs to also be licensed under the GPL
15
BSD Berkeley Software Distribution Free, but not in perpetuity and derivative forms. copycenter, for comparison to both standard copyright and the GPL's copyleft: "Take it down to the copy center and make as many copies as you want.
16
Standards and XML (RSS) RSS allows Internet users to subscribe to websites that have provided RSS feeds; these are typically sites that change or add content regularly. Can Subscribe via a service like Blogspot, or can download an “RSS reader:” Amphetadesk, Browsers. Blogspot = server-based; others=client
17
XML/RSS con’t You created an RSS file describing 1 or more blog entries When new blog entries are created, you can update your RSS file Others can “subscribe” to your RSS file, and have *new* RSS entries appear on their RSS reader
18
XML/RSS Simple example of: –XML “specification” or “document type” –XML characteristics: Separation of form & content Structured data: “item” “title” “description” “language” (access points!) Validation –Metadata: a surrogate
19
XML/RSS: Wellformedness Check/Parse against XML rules generally Characters occurring in data which are reserved for XML tags must be“escaped” ' or ". Start tags & end tags for every element containing character data or sub-elements Pairs of tags must be nested Empty tags can be included with a “/>” ending or a separate end tag
20
XML/RSS: Validation Check the document/record against its definition: DTD or XSD When validating, the parser checks for: –misspelled tags or attributes –errors in types of attribute values and in elements’ content rules Element declarations/entity declarations
21
UML Use Cases Use case diagrams describe the general functionality of a system and the users of that system. Components: –Actor –Use case –“Communicates” association –System
22
Use Cases 1.A list of the actors and their roles. 2.Pre-conditions: list any circumstances to be satisfied in order for the use case or service to take place 3.Basic flow: a typical course of events presented as a numbered steps. 4.Post-conditions: circumstances changed as a result of the use case or service taking place.
24
Databases & ERD ERD: graphical notation for high-level descriptions of data models --especially for relational database systems used in the first, "requirements analysis" stage of information-system design
25
Entity Relationship Diagrams Entity/Noun Attributes/Characteristics –Key Attribute/Characteristic –Multivalued Attribute Relationship/verb -what connects entities –One-to-one –One-to-many –Many-to-many (via an associative entity)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.