Project Management

advertisement
Programming in C#
Group 6
Project Specification
Cameron McHugh
Group 6
C#
C# Basics
Basic syntax
 Control structures
 Types
 Object-oriented
 Polymorphism
 Delegates

Group 6
C#
C# vs. Java/C++/etc.







.NET Framework vs. Java API
JVM vs. CLR
Similarities (Intermediate language, Object
Oriented, Networking)
Differences (C# not cross platform, Java more
open source)
Java Sun One Studio -> Free
Visual Studio .NET -> $$$
Faster assembled IL vs. slower runtime
interpreted byte code
Group 6
C#
Threading & Process Control
Threading Basics
 Asynchronous Callbacks and Delegates
 Thread Control & Synchronization
 Deadlocks and Thread Starvation

Group 6
C#
Networking
TCP/IP Sockets (not as interesting)
 Remoting and Distributed Applications
(more interesting)
 SOAP and Object Serialization

Group 6
C#
What is .NET?






Definition of .NET
Multiple Languages (C#,
VB .NET, C++, J#)
XML Web Services
Framework/Environment
for Connecting Devices
Suitable environment for
developing mobile and
ubiquitous applications
What’s new in Visual
Studio .NET?
Group 6
Potential Learning Objects &
Interactive Components
C#





Quiz Applet for C# Basics
Visual demonstration of byte code assembly
Visual display of remoting functionality
Visual display of threading (including
synchronization issues)
Mini quizzes at end of major concept items
(i.e. What is .NET)
Project Documentation
Andrew Sutherland
Group 6
Project Documentation
Content
C#
 Web
Site Documentation
User manual, developer manual
 Description of the purpose of tutorial
 Introduction of the group members
 Directory structure diagram
 Information via a data dictionary

Group 6
Project Management
Documentation
C#
 Project
management documentation
Project task network and risk table
 Presentation content
 Details of person hours per individual task
 Summary table of total person hours
during each phase

Group 6
C#
Documentation




Documentation considered an integral aspect
of web development. Allocate resources
accordingly.
Develop documentation concurrently with
website content.
Reflect any changes in web design with
appropriate changes in documentation.
Record meeting minutes and attendees.
Group 6
C#
Documentation (cont’d)





Update task network as project proceeds.
Update risk table as project proceeds.
Record individual time expenditures.
Log all testing procedures and results.
Integrate required documentation into their
respective index pages.
Project Management
Dong Ju
Group 6
C#
Project
Risks
Not precise understanding the requirements
25%
1
Inefficient allocation of human resources
80%
4
Integration inconsistency of the project
50%
2
Poor organizational structure
30%
2
Not appropriate scope of the project
35%
2
Tasks can not be completed in the required time
frame
20%
2
Can not meet the deadline
5%
2
Failure in participation of some members due to
emergency problems
10%
3
Group 6
C#
Technical Risks
Failure in group communication
50%
3
Software version control would not be enforced
tightly enough
40%
2
Not enough information for the tutorial
25%
2
Lack of experience in C# and necessary tools
70%
2
Poor applets design
30%
2
Failure in applets implementation
25%
2
Time consumption of the applets for browsers
20%
3
Business Risks
Requirements changing
10%
2
Group 6
C#



Risk Analysis
Risk:
– Tasks not completed within required time
Mitigation:
– Careful analysis of project scope and tasks
– Reasonable allocation of resources
– Subtask division (milestones)
Management:
– Reallocation of the human resources
– Bigger whip
Group 6
C#
Risk Analysis



Risk:
– Misunderstanding requirements
Mitigation:
– Group discussion
Management:
– Recheck the requirements every
milestone
Group 6
C#
Risk Analysis



Risk:
– Failure in applet implementation
Mitigation:
– Careful determination of applet complexity
– Reasonable allocation of resources
Management:
– Reallocation of resources
– Utilize other techniques
Group 6
C#
Project Tasks Definition
T1. Determine project topic
 T2. Division of group
 T3. Perform initial topic research
 T4. Determine project scope
 T5. Determine initial list of applets
 T6. Construct the task network
 T7. Perform risk analysis
Milestone1 Requirement Presentation

Group 6
C#
Project Tasks Definition





T8. Perform initial website design
T9. Finalize research
T10. Design applets
T11. Finalize website design
T12. Initial testing
Milestone 2 Design Presentation
Group 6
C#




Project Tasks Definition
T13.
T14.
T15.
T16.
Implement applets
Integrate website content
Integrate applets
Complete project testing
Milestone 3 Product Presentation
Group 6
C#
Project Tasks Definition


T17. Complete project documentation
T18. Complete project packaging
Submit Final Project
Group 6
Task Network
C#
T4
T1
M1
T5
T3
T2
T6
M2
T7
T8
T9
T10
T11
M3
Final Submission
T13
T17
T12
T14
T15
T18
T16
Group 6
C#

Group organization
Group Coordinator
 Project coordinator ensures standard of the project and liaises
regularly with the professor and group members.

Project Manager
 Project manager ensures that project task and milestone
deadlines are met, and oversees resolution of any team issues.

Six development Team Leaders
 Teams divided according to skill and individual interest.
 Each group leaders responsible for making detailed decisions and
managing his/her sub-group. Also responsible for recording team
meeting minutes and time expenditures.
Group 6
C#
Group Organization (cont’d)
Group Coordinator
Andrew Sutherland
Project Manager
Ayan Chowdhury
Research Group
Cameron McHugh
Web-design Group
Presentation Group
Jesse Regier
Kenta Sugimoto
Applet Group
Documentation Group
Testing and Integration Group
Ryan Orth
Yu Gao
Karen (Chiu-Hui Hsu)
Group 6
C#
Group Organization (cont’d)
Research Group
Web design Group
Ryan Orth
Ayan Chowdhury
Andrew Sutherland
Dong Ju
Dong Ju
Yu Gao
Cameron McHugh
Karen (Chiu-Hui Hsu)
Jesse Regier
Group 6
C#
Group Organization (cont’d)
Presentation Group
Applet Group
Fangsheng Shuai
Cameron McHugh
Kenta Sugimoto
Kenta Sugimoto
Fangsheng Shuai
Ryan Orth
Group 6
C#
Group Organization (cont’d)
Documentation Group Testing and
Integration Group
Ayan Chowdhury
Karen (Chiu-Hui Hsu)
Jesse Regier
Kenta Sugimoto
Andrew Sutherland
Ayan Chowdhury
Yu Gao
Group 6
C#
Time Table
Name
Personal Time
spending
Group Meeting
Total
Jesse Regier
3
7
10
Ayan Chowdhurry
8
6
14
Yu gao
3
7
10
Chiu-Hui Hsu
1
5
6
Dong Ju
6
7
13
Ryan Orth
2
4
6
Andrew
Sutherland
2
7
9
Fangsheng Shuai
6
4
10
Kenta Sugimoto
6
4
10
Cameron McHugh
7
7
14
Total(hr)
44
57
101
Group 6
C#
Useful Links




http://java.oreilly.com/news/farley_0800.html
Comparison between J2EE and .NET
http://msdn.microsoft.com/vcsharp/
Microsoft official site for c# and .Net
www.c-sharpcorner.com
Non proprietary c# developers site
www.softsteel.co.uk/tutorials/cSharp/cIndex.html
Comprehensive c# tutorial
Group 6
C#
Questions ??
Download