This course introduces the fundamental, logical, and design considerations addressed during system and application software development. It provides a background in applications software development and testing techniques through a combination of theory and application.
Braude, E. J. & Bernstein, M. E. (2011). Software engineering: Modern approaches (2nd ed.). John Wiley & Sons, Inc.
Everett, G. D. & McLeod, R. (2007). Software testing: Testing across the entire software development life cycle. Hoboken, NJ: Wiley.
Supplemental Resource
Element K. (2010). Introduction to Software Testing.
Article References
Barr, J. G. (2010). Outsourcing the enterprise development project. Faulkner Information Services.
Keston, G. (2010). Scrum project management techniques. Faulkner Information Services.
Woodward, K. (2010). Service oriented architecture platforms. Faulkner Information Services.
Woodward, K. (2010). Service oriented architecture. Faulkner Information Services.
Drumheller, R. (2009). Application server overview. Faulkner Information Services.
Woodward, K. (2007). Implementing a service oriented architecture. Faulkner Information Services.
Kercher, S. (2009). CA Web services management. Faulkner Information Services.
Kercher, S. (2011). Microsoft Office Live Small Business. Faulkner Information Services.
Keston, G. (2011). Web design programs and tools. Faulkner Information Services.
Woodward, K. (2011). Strategic capabilities architecture. Faulkner Information Services.
All electronic materials are available on the student website.
Week One: Software Development Methods
|
|
Details
|
Due
|
Points
|
Objectives
|
1.1 Identify software development trends.
1.2 Examine alternative development methods.
1.3 Describe the principles of software testing.
|
|
|
Readings
|
Read Ch. 1, “The Goals and Terminology of Software Engineering,” of Software Engineering: Modern Approaches.
Read Ch. 2, “Introduction to Quality and Metrics in Software Engineering,” of Software Engineering: Modern Approaches.
Read Ch. 3, “Software Process,” of Software Engineering: Modern Approaches.
Read Ch. 4, “Agile Software Processes,” of Software Engineering: Modern Approaches.
Read Ch. 5, “Quality in the Software Process,” of Software Engineering: Modern Approaches.
Read Ch. 6, “Software Configuration Management,” of Software Engineering: Modern Approaches.
Read Ch. 1, “Overview of Testing,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 2, “The Software Development Life Cycle,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 3, “Overview of Structured Testing,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read the Week One Read Me First.
Read this week’s Electronic Reserve Readings.
|
|
|
Participation
|
Participate in class discussion.
|
All Week
|
2.5
|
Discussion Questions
|
Respond to weekly discussion questions.
|
Thursday/
Saturday
|
2.5
|
Individual
|
Post your Bio and Learning Team preferences to the Chat-Room forum.
|
Wednesday
|
|
Individual Project Instructions
|
Individual Project background: Smith Consulting is a firm that has been contracted to develop the Frequent Shopper Program (FSP) for Kudler Fine Foods. The student will complete three individual assignments, in Weeks 2-4, in the context of the firm working on the project. The focus will be on the software architecture for the FSP but the key result will be a Technical Architecture Document that specifies the proposed system solution.
|
|
|
Learning Team Instructions
|
Create and post the Learning Team Charter this week.
Learning Team project background: Smith Consulting has received some feedback and concerns that their processes and procedures are not sufficiently documented. This lack of professional documentation has caused some loss of potential contracts for the firm. The Learning Team has been given the assignment to define, develop, and propose standards for a software development and testing environment at Smith Consulting.
The Learning Team will prepare a 20-25 page paper describing a Software Development & Testing Specification and a 15-20 slide PowerPoint® presentation on the specification. These deliverables will be developed by the Learning Team over the duration of the course with final submission in Week Five. Assume that the paper and the presentation are to be delivered to an executive management committee.
The paper should contain the following sections;
· Define the Smith Consulting engagement approach. This will include a statement of the way the firm works with clients and how projects are managed.
· Define the software development and quality assurance processes and procedures.
· Describe in detail the testing procedures to be exercised in the following areas:
o Programs
o Systems
o Interfaces
· Describe the infrastructure including hardware and software capabilities that will make up the software testing environment.
· Define the format and requirements for development of a formal program specification. This program specification is essentially the software design and development process strategy to be provided to the software developers working on a Smith development project.
The PowerPoint presentation should address the following items;
· The Smith Consulting engagement approach. This will include how the firm works with clients and how projects are managed.
· The key elements of the proposed software design and development specification and strategy.
· Why you believe the proposed development strategy will be cost-effective.
Start work this week on the paper section involving Smith Consulting’s client engagement approach.
|
Monday
|
|
Week Two: Software Architecture and Modeling
|
|
Details
|
Due
|
Points
|
Objectives
|
2
2.1 Identify the system architecture.
2.2 Examine software design principles.
2.3 Develop technical design specifications.
|
|
|
Readings
|
Read Ch. 15, “Principles of Software Design,” of Software Engineering: Modern Approaches.
Read Ch. 16, “The Unified Modeling Language,” of Software Engineering: Modern Approaches.
Read Ch. 17, “Software Design Patterns,” of Software Engineering: Modern Approaches.
Read Ch. 18, “Software Architecture,” of Software Engineering: Modern Approaches.
Read the Week Two Read Me First.
Read this week’s Electronic Reserve Readings.
|
|
|
Participation
|
Participate in class discussion.
|
All Week
|
2.5
|
Discussion Questions
|
Respond to weekly discussion questions.
|
Thursday/Saturday
|
2.5
|
Learning Team Instructions
|
Start work this week on the paper section involving the description of the software development and quality assurance processes and procedures. This description must include a guideline as to when the firm might consider using alternative development methods relative to specific project requirements. The Learning Team must consider that a single development is not likely to be a one-size-fits-all solution for the firm’s broad services.
Submit a 1 page outline of the above paper section showing the key headers you will use to delineate the important content areas.
Post your Learning Team Peer Evaluation for the week.
|
Monday
Monday
|
1
|
Individual
Frequent Shopper Program, Part I
|
Research, write, and provide a 4-6 page proposal of the alternative development methods the firm might consider for completing the Frequent Shopper Program. Include the following in the proposal:
· Explain the advantages and disadvantages for each method relative to this project.
· Explain how the firm would conduct testing for each development method.
|
Monday
|
15
|
Week Three: Software Interfaces
|
|
Details
|
Due
|
Points
|
Objectives
|
3
3.1 Describe software interfaces and controls.
3.2 Explain testing strategies and planning.
|
|
|
Readings
|
Read Ch. 19, “Detailed Design,” of Software Engineering: Modern Approaches.
Read Ch. 20, “Design Quality and Metrics,” of Software Engineering: Modern Approaches.
Read Ch. 21, “Advanced and Emerging Methods in Software Design,” of Software Engineering: Modern Approaches.
Read Ch. 27, “Module and Integration Testing,” of Software Engineering: Modern Approaches.
Read Ch. 4, “Testing Strategy,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 5, “Test Planning,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read the Week Three Read Me First.
Read this week’s Electronic Reserve Readings.
|
|
|
Participation
|
Participate in class discussion.
|
All Week
|
2.5
|
Discussion Questions
|
Respond to weekly discussion questions.
|
Thursday/Saturday
|
2.5
|
Learning Team Instructions
|
Start work this week on the paper section involving the software testing procedures (covering programs, systems, and interfaces). These procedures must be adequate to support both Smith developed software and any commercial off-the-shelf software they are delivering to their clients.
Submit a 1 page outline of the above paper section showing the key headers you will use to delineate the important content areas.
Start work this week on your PowerPoint presentation.
Post your Learning Team Peer Evaluation for the week.
|
Monday
Monday
|
1
|
Individual
Frequent Shopper Program, Part II
|
For the Frequent Shopper Program, create a Technical Architecture document of 6-8 pages using Logical Model and Physical Model delineations as appropriate. Cover the following as a minimum:
· Hardware platform: Describe the hardware environment to support the development and production of this system.
· Network connections between the stores and headquarters: A network diagram is required.
· Software Development Tools: Describe the software development tool proposed to build this application.
· Database information
· User interfaces: Describe the interface for data collection and notification to store personnel and customers.
· Controls: Describe the controls to make sure the customer information is accurately maintained and the purchase activity is accurately captured.
· Security: Describe the security measures to protect the customer’s personal and purchase history data.
|
Monday
|
20
|
Week Four: Software Development Activities
|
|
Details
|
Due
|
Points
|
Objectives
|
4
4.1 Determine software development and implementation activities.
4.2 Define software quality assurance.
4.3 Identify software testing techniques.
|
|
|
Readings
|
Read Ch. 22, “Principles on Implementation,” of Software Engineering: Modern Approaches.
Read Ch. 23, “Quality and Metrics in Implementation,” of Software Engineering: Modern Approaches.
Read Ch. 24, “Refactoring,” of Software Engineering: Modern Approaches.
Read Ch. 6, “Static Testing,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 7, “Functional Testing,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 8, “Structural (Non-functional) Testing,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 9, “Performance Testing,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read the Week Four Read Me First.
Read this week’s Electronic Reserve Readings.
|
|
|
Participation
|
Participate in class discussion.
|
All Week
|
2.5
|
Discussion Questions
|
Respond to weekly discussion questions.
|
Thursday/Saturday
|
2.5
|
Learning Team Instructions
|
Start work this week on the remaining paper sections involving hardware & software capabilities comprising the testing environment and also the format & requirements for the program specification.
Submit a 1 page outline for your hardware & software test environment section showing the key headers you will use to delineate the important content areas.
Post your Learning Team Peer Evaluation for the week.
|
Monday
Monday
|
1
|
Individual
Frequent Shopper Program Part III
|
For the items specified in your Technical Architecture document developed for the Frequent Shopper Program, write a 4-6 page paper describing the following:
· Quality assurance process and procedures to ensure the functionality and performance requirements are met
· Testing procedures to ensure the application is operational at all levels (program, network, systems, and interfaces)
· Implementation steps and procedures necessary to achieve operational status
|
Monday
|
15
|
Week Five: Software Testing
|
|
Details
|
Due
|
Points
|
Objectives
|
5
5.1 Define the software testing environment.
5.2 Develop a software testing plan.
|
|
|
Readings
|
Read Ch. 25, “Introduction to Software Testing,” of Software Engineering: Modern Approaches.
Read Ch. 26, “Unit Testing,” of Software Engineering: Modern Approaches.
Read Ch. 28, “Testing at the System Level,” of Software Engineering: Modern Approaches.
Read Ch. 29, “Software Maintenance,” of Software Engineering: Modern Approaches.
Read Ch. 10, “The Testing Environment,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 13, “A Full Software Development Lifecycle Testing Project,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read Ch. 14, “Testing Complex Applications,” of Software Testing: Testing Across the Entire Software Development Life Cycle.
Read the Week Five Read Me First.
Read this week’s Electronic Reserve Readings.
|
|
|
Participation
|
No class discussion this week.
|
|
|
Discussion Questions
|
No discussion questions this week.
|
|
|
Learning Team
Software Testing Paper
|
Submit the 20-25 page paper on the Software Development and Testing Specification.
|
Monday
|
17
|
Learning Team
Software Testing Presentation
|
Submit a 15-20 slide PowerPoint presentation on the Software Development and Testing Specification
|
Monday
|
10
|
Learning Team
|
Post your Learning Team Peer Evaluation for the week.
|
Monday
|
|